diff options
author | Diego Elio Pettenò <flameeyes@gentoo.org> | 2007-02-18 02:12:03 +0000 |
---|---|---|
committer | Diego Elio Pettenò <flameeyes@gentoo.org> | 2007-02-18 02:12:03 +0000 |
commit | 88d6d08c9b149b70e97e71b534ca67a479de6f29 (patch) | |
tree | b164ffd4c72fb2f30ba2acb13f43e3a83978ce4f /eclass | |
parent | Stable for HPPA (bug #166969). (diff) | |
download | gentoo-2-88d6d08c9b149b70e97e71b534ca67a479de6f29.tar.gz gentoo-2-88d6d08c9b149b70e97e71b534ca67a479de6f29.tar.bz2 gentoo-2-88d6d08c9b149b70e97e71b534ca67a479de6f29.zip |
Enable __cxa_atexit for FreeBSD too, as that's needed for proper C++ libraries cleanup, as x11-themes/domino pointed out.
Diffstat (limited to 'eclass')
-rw-r--r-- | eclass/toolchain.eclass | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass index c725b1b78817..2b7fb4bf0239 100644 --- a/eclass/toolchain.eclass +++ b/eclass/toolchain.eclass @@ -1,6 +1,6 @@ # Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.327 2007/02/17 11:00:19 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain.eclass,v 1.328 2007/02/18 02:12:03 flameeyes Exp $ HOMEPAGE="http://gcc.gnu.org/" LICENSE="GPL-2 LGPL-2.1" @@ -138,9 +138,9 @@ else if [[ ${PN} != "kgcc64" ]] ; then IUSE="${IUSE} altivec build fortran nls nocxx" [[ -n ${PIE_VER} ]] && IUSE="${IUSE} nopie" - [[ -n ${PP_VER} ]] && IUSE="${IUSE} nossp" + [[ -n ${PP_VER} ]] && IUSE="${IUSE} nossp" [[ -n ${HTB_VER} ]] && IUSE="${IUSE} boundschecking" - [[ -n ${D_VER} ]] && IUSE="${IUSE} d" + [[ -n ${D_VER} ]] && IUSE="${IUSE} d" if version_is_at_least 3 ; then IUSE="${IUSE} bootstrap doc gcj gtk hardened multilib objc vanilla" @@ -1115,7 +1115,7 @@ gcc_src_unpack() { einfo "Touching generated files" ./contrib/gcc_update --touch | \ while read f ; do - einfo " ${f%%...}" + einfo " ${f%%...}" done fi @@ -1269,15 +1269,15 @@ gcc_do_configure() { # disable a bunch of features or gcc goes boom local needed_libc="" case ${CTARGET} in - *-linux) needed_libc=no-fucking-clue;; - *-dietlibc) needed_libc=dietlibc;; - *-elf) needed_libc=newlib;; - *-freebsd*) needed_libc=freebsd-lib;; - *-gnu*) needed_libc=glibc;; - *-klibc) needed_libc=klibc;; - *-uclibc*) needed_libc=uclibc;; + *-linux) needed_libc=no-fucking-clue;; + *-dietlibc) needed_libc=dietlibc;; + *-elf) needed_libc=newlib;; + *-freebsd*) needed_libc=freebsd-lib;; + *-gnu*) needed_libc=glibc;; + *-klibc) needed_libc=klibc;; + *-uclibc*) needed_libc=uclibc;; mingw*|*-mingw*) needed_libc=mingw-runtime;; - avr) confgcc="${confgcc} --enable-shared --disable-threads";; + avr) confgcc="${confgcc} --enable-shared --disable-threads";; esac if [[ -n ${needed_libc} ]] ; then if ! has_version ${CATEGORY}/${needed_libc} ; then @@ -1311,6 +1311,8 @@ gcc_do_configure() { confgcc="${confgcc} --enable-sjlj-exceptions" elif [[ ${CTARGET} == *-gnu* ]] ; then confgcc="${confgcc} --enable-__cxa_atexit" + elif [[ ${CTARGET} == *-freebsd* ]]; then + confgcc="${confgcc} --enable-__cxa_atexit" fi [[ ${CTARGET} == *-gnu* ]] && confgcc="${confgcc} --enable-clocale=gnu" [[ ${CTARGET} == *-uclibc* ]] && [[ ${GCCMAJOR}.${GCCMINOR} > 3.3 ]] \ |