commit:     5174c8c5cefc29026932769f944d1de86bed805e
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Dec  3 22:05:52 2014 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Dec  3 22:05:52 2014 +0000
URL:        
http://sources.gentoo.org/gitweb/?p=dev/mgorny.git;a=commit;h=5174c8c5

sys-devel/gcc: Remove USE=ssp, fix hardened env install.

Package-Manager: portage-2.2.14

---
 sys-devel/gcc/gcc-4.9.2-r100.ebuild | 34 +++++++++++++---------------------
 sys-devel/gcc/metadata.xml          |  1 -
 2 files changed, 13 insertions(+), 22 deletions(-)

diff --git a/sys-devel/gcc/gcc-4.9.2-r100.ebuild 
b/sys-devel/gcc/gcc-4.9.2-r100.ebuild
index cb81f0a..3ef83c8 100644
--- a/sys-devel/gcc/gcc-4.9.2-r100.ebuild
+++ b/sys-devel/gcc/gcc-4.9.2-r100.ebuild
@@ -27,7 +27,7 @@ SLOT="${PV%.*}"
 KEYWORDS="~amd64 ~x86"
 IUSE="abi_x86_32 abi_x86_64 abi_x86_x32
        altivec +cxx doc fixed-point +fortran go graphite hardened libssp
-       multilib +nls +nptl objc objc-gc objc++ +openmp +pie +sanitize +ssp
+       multilib +nls +nptl objc objc-gc objc++ +openmp +pie +sanitize
        test vanilla"
 
 RDEPEND="
@@ -59,10 +59,9 @@ PDEPEND="elibc_glibc? ( >=sys-libs/glibc-2.8 )
 REQUIRED_USE="
        doc? ( cxx )
        go? ( cxx )
-       hardened? ( pie ssp )
+       hardened? ( pie !vanilla )
        objc++? ( cxx )
-       pie? ( !vanilla )
-       ssp? ( !vanilla )"
+       pie? ( !vanilla )"
 
 # Custom magic.
 RESTRICT="strip"
@@ -515,22 +514,6 @@ create_gcc_env_entry() {
        EOF
 }
 
-copy_minispecs_gcc_specs() {
-       # setup the hardenedno* specs files and the vanilla specs file.
-       if hardened_gcc_works ; then
-               create_gcc_env_entry hardenednopiessp
-       fi
-       if hardened_gcc_works pie ; then
-               create_gcc_env_entry hardenednopie
-       fi
-       if hardened_gcc_works ssp ; then
-               create_gcc_env_entry hardenednossp
-       fi
-       create_gcc_env_entry vanilla
-       insinto "${LIBPATH}"
-       doins "${WORKDIR}"/specs/*.specs
-}
-
 src_install() {
        cd "${WORKDIR}"/build || die
 
@@ -576,8 +559,17 @@ src_install() {
 
        prune_libtool_files
 
+       # entries and specs
        create_gcc_env_entry
-       use hardened && copy_minispecs_gcc_specs
+       if use hardened; then
+               # setup the hardenedno* specs files and the vanilla specs file.
+               create_gcc_env_entry hardenednopiessp
+               create_gcc_env_entry hardenednopie
+               create_gcc_env_entry hardenednossp
+               create_gcc_env_entry vanilla
+               insinto "${LIBPATH}"
+               doins "${WORKDIR}"/specs/*.specs
+       fi
 }
 
 switch_gcc() {

diff --git a/sys-devel/gcc/metadata.xml b/sys-devel/gcc/metadata.xml
index 313c609..0a0abbb 100644
--- a/sys-devel/gcc/metadata.xml
+++ b/sys-devel/gcc/metadata.xml
@@ -14,7 +14,6 @@
                <flag name="libssp">Build SSP support into a dedicated library 
rather than use the
                        code in the C library (DO NOT ENABLE THIS IF YOU DON'T 
KNOW WHAT IT DOES)</flag>
                <flag name="pie">Enable PIE support (DO NOT DISABLE)</flag>
-               <flag name="ssp">Enable SSP support (DO NOT DISABLE)</flag>
                <flag name="objc">Build support for the Objective C code 
language</flag>
                <flag name="objc++">Build support for the Objective C++ 
language</flag>
                <flag name="objc-gc">Build support for the Objective C code 
language Garbage

Reply via email to