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

* [gentoo-amd64]  Re: eselect-compiler and multilib toolchain support
  2005-10-01  3:48 [gentoo-amd64] eselect-compiler and multilib toolchain support Jeremy Huddleston
@ 2005-10-01  6:53 ` Duncan
  0 siblings, 0 replies; 2+ messages in thread
From: Duncan @ 2005-10-01  6:53 UTC (permalink / raw
  To: gentoo-amd64

Jeremy Huddleston posted <1128138531.768.5.camel@cloud.outersquare.org>,
excerpted below,  on Fri, 30 Sep 2005 20:48:51 -0700:

> 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

Very cool!  I've followed the intro on the dev list, but I've been busy
and not as bleeding edge lately as normal, so haven't yet merged it as I
had no time to manually configure it and trace down errors.  Things are
getting a bit more sane again, lately, and I'm about caught up, so this
looks to be one of my first "new" projects I'll be trying...

-- 
Duncan - List replies preferred.   No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master."  Richard Stallman in
http://www.linuxdevcenter.com/pub/a/linux/2004/12/22/rms_interview.html


-- 
gentoo-amd64@gentoo.org mailing list



^ 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