# Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc/gcc-4.7.3-r1.ebuild,v 1.1 2013/09/24 01:53:18 dirtyepic Exp $ PATCH_VER="1.3" UCLIBC_VER="1.0" # Hardened gcc 4 stuff PIE_VER="0.5.5" SPECS_VER="0.2.0" SPECS_GCC_VER="4.4.3" # arch/libc configurations known to be stable with {PIE,SSP}-by-default PIE_GLIBC_STABLE="x86 amd64 ppc ppc64 arm ia64" PIE_UCLIBC_STABLE="x86 arm amd64 ppc ppc64" SSP_STABLE="amd64 x86 ppc ppc64 arm" # uclibc need tls and nptl support for SSP support # uclibc need to be >= 0.9.33 SSP_UCLIBC_STABLE="x86 amd64 ppc ppc64 arm" #end Hardened stuff inherit toolchain DESCRIPTION="The GNU Compiler Collection" LICENSE="GPL-3+ LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 ) FDL-1.3+" KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 -amd64-fbsd -x86-fbsd" RDEPEND="" DEPEND="${RDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 ) >=${CATEGORY}/binutils-2.18" if [[ ${CATEGORY} != cross-* ]] ; then PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )" fi src_unpack() { if has_version '=glibc-2.12 #362315" EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch" fi # drop the x32 stuff once 4.7 goes stable if [[ ${CTARGET} != x86_64* ]] || ! has x32 $(get_all_abis TARGET) ; then EPATCH_EXCLUDE+=" 90_all_gcc-4.7-x32.patch" fi toolchain_src_unpack use vanilla && return 0 [[ ${CHOST} == ${CTARGET} ]] && epatch "${FILESDIR}"/gcc-spec-env.patch } pkg_setup() { toolchain_pkg_setup if use lto ; then ewarn ewarn "LTO support is still experimental and unstable." ewarn "Any bugs resulting from the use of LTO will not be fixed." ewarn fi }