public inbox for gentoo-amd64@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-amd64] eselect-compiler and multilib toolchain support
@ 2005-10-01  3:48 Jeremy Huddleston
  2005-10-01  6:53 ` [gentoo-amd64] " Duncan
  0 siblings, 1 reply; 2+ messages in thread
From: Jeremy Huddleston @ 2005-10-01  3:48 UTC (permalink / raw
  To: gentoo-amd64


[-- 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 --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2005-10-01  6:57 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-10-01  3:48 [gentoo-amd64] eselect-compiler and multilib toolchain support Jeremy Huddleston
2005-10-01  6:53 ` [gentoo-amd64] " Duncan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox