public inbox for gentoo-amd64@lists.gentoo.org
 help / color / mirror / Atom feed
From: Jeremy Huddleston <eradicator@gentoo.org>
To: gentoo-amd64@lists.gentoo.org
Subject: [gentoo-amd64] eselect-compiler and multilib toolchain support
Date: Fri, 30 Sep 2005 20:48:51 -0700	[thread overview]
Message-ID: <1128138531.768.5.camel@cloud.outersquare.org> (raw)


[-- Attachment #1.1: Type: text/plain, Size: 1411 bytes --]

So we're one step closer to getting multilib toolchain to the point
where we can drop ABI and base everything off of CHOST.  I just
committed eselect-compiler to portage (in package.mask) which will be
replacing gcc-config.  If you'd like to test it out, add the following
to /etc/portage/package.unmask:

app-admin/eselect-compiler
sys-devel/gcc-config

Most of the gcc-config commands should be the same, but you have a bit
more control using 'eselect compiler'.  If you've emerged gcc within the
last week, then you'll have the multilib profiles automatically.  If
not, the upgrade process tries to set it up for you automatically.  It
works fine for the normal user, but it's not smart enough to figure out
how to create the multilib profiles, so you'll either have to re-emerge
gcc or edit the configs in /etc/eselect/compiler yourself (see attached
examples).

If you edit the configs manually, do a 'eselect compiler update' to make
sure the wrappers are up to date.  This will result in you having an
i686-pc-linux-gnu- prefixed compiler set rather than using 'gcc32' or
remembering the '-m32' in CFLAGS.  You can also use a separate version
and specs for the x86 and amd64 toolchains this way.

Please test this out, break it, and send me feedback and patches.  Once
this gets cleaned up and hammered out, we can do the same for
binutils-config as well...

Thanks,
Jeremy

[-- Attachment #1.2: selection.conf --]
[-- Type: text/plain, Size: 318 bytes --]

[global]
	default_ctarget=x86_64-pc-linux-gnu
	native_ctarget=x86_64-pc-linux-gnu
	scan_path=0

[i386-pc-linux-gnu]
	profile=x86_64-pc-linux-gnu-3.4.4/x86-vanilla

[i686-pc-linux-gnu]
	profile=x86_64-pc-linux-gnu-3.4.4/x86-hardened

[x86_64-pc-linux-gnu]
	profile=x86_64-pc-linux-gnu-3.4.4/amd64-hardened

[-- Attachment #1.3: x86_64-pc-linux-gnu-3.4.3.conf --]
[-- Type: text/plain, Size: 2135 bytes --]

[global]
	version=x86_64-pc-linux-gnu-3.4.3
	binpath=/usr/x86_64-pc-linux-gnu/gcc-bin/3.4.3
	manpath=/usr/share/gcc-data/x86_64-pc-linux-gnu/3.4.3/man
	infopath=/usr/share/gcc-data/x86_64-pc-linux-gnu/3.4.3/info
	stdcxx_incdir=g++-v3
	alias_cc=gcc
	alias_f77=g77
	alias_gfortran=g77

[x86-vanilla]
	ctarget=i686-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/32
	cflags=-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib

[x86-hardened]
	ctarget=i686-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/32
	spec=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/hardened.specs
	cflags=-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib

[x86-hardenednossp]
	ctarget=i686-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/32
	spec=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/hardenednossp.specs
	cflags=-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib

[x86-hardenednopie]
	ctarget=i686-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/32
	spec=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/hardenednopie.specs
	cflags=-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib

[x86-hardenednopiessp]
	ctarget=i686-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/32
	spec=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/hardenednopiessp.specs
	cflags=-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib

[amd64-vanilla]
	ctarget=x86_64-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3

[amd64-hardened]
	ctarget=x86_64-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3
	spec=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/hardened.specs

[amd64-hardenednossp]
	ctarget=x86_64-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3
	spec=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/hardenednossp.specs

[amd64-hardenednopie]
	ctarget=x86_64-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3
	spec=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/hardenednopie.specs

[amd64-hardenednopiessp]
	ctarget=x86_64-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3
	spec=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/hardenednopiessp.specs

[-- Attachment #1.4: x86_64-pc-linux-gnu-3.4.4.conf --]
[-- Type: text/plain, Size: 2135 bytes --]

[global]
	version=x86_64-pc-linux-gnu-3.4.4
	binpath=/usr/x86_64-pc-linux-gnu/gcc-bin/3.4.4
	manpath=/usr/share/gcc-data/x86_64-pc-linux-gnu/3.4.4/man
	infopath=/usr/share/gcc-data/x86_64-pc-linux-gnu/3.4.4/info
	stdcxx_incdir=g++-v3
	alias_cc=gcc
	alias_f77=g77
	alias_gfortran=g77

[x86-vanilla]
	ctarget=i686-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4/32
	cflags=-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib

[x86-hardened]
	ctarget=i686-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4/32
	spec=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4/hardened.specs
	cflags=-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib

[x86-hardenednossp]
	ctarget=i686-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4/32
	spec=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4/hardenednossp.specs
	cflags=-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib

[x86-hardenednopie]
	ctarget=i686-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4/32
	spec=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4/hardenednopie.specs
	cflags=-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib

[x86-hardenednopiessp]
	ctarget=i686-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4/32
	spec=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4/hardenednopiessp.specs
	cflags=-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib

[amd64-vanilla]
	ctarget=x86_64-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4

[amd64-hardened]
	ctarget=x86_64-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4
	spec=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4/hardened.specs

[amd64-hardenednossp]
	ctarget=x86_64-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4
	spec=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4/hardenednossp.specs

[amd64-hardenednopie]
	ctarget=x86_64-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4
	spec=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4/hardenednopie.specs

[amd64-hardenednopiessp]
	ctarget=x86_64-pc-linux-gnu
	ldpath=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4
	spec=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4/hardenednopiessp.specs

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

             reply	other threads:[~2005-10-01  3:50 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-10-01  3:48 Jeremy Huddleston [this message]
2005-10-01  6:53 ` [gentoo-amd64] Re: eselect-compiler and multilib toolchain support Duncan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1128138531.768.5.camel@cloud.outersquare.org \
    --to=eradicator@gentoo.org \
    --cc=gentoo-amd64@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox