commit: f2b24dff8119550ca6ca5f3d1e1ce6ef29aa9679 Author: Benda Xu <heroxbd <AT> gentoo <DOT> org> AuthorDate: Thu Dec 4 08:24:38 2014 +0000 Commit: Benda XU <heroxbd <AT> gentoo <DOT> org> CommitDate: Thu Dec 4 08:24:38 2014 +0000 URL: http://sources.gentoo.org/gitweb/?p=dev/heroxbd.git;a=commit;h=f2b24dff
sys-devel/gcc: make the dynamic linker prefix configurable http://article.gmane.org/gmane.comp.gcc.patches/330588 --- sys-devel/gcc/Manifest | 4 +- sys-devel/gcc/files/gcc-4.9.2-rap.patch | 535 ++++++++++++++++++++++++++++++++ sys-devel/gcc/gcc-4.9.2.ebuild | 3 +- 3 files changed, 540 insertions(+), 2 deletions(-) diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest index 7577635..32ce59a 100644 --- a/sys-devel/gcc/Manifest +++ b/sys-devel/gcc/Manifest @@ -88,6 +88,8 @@ AUX gcc-4.4.1-interix.patch 12986 SHA256 33953e755b4de1e5b5d272b3e35a8d63a68a164 AUX gcc-4.4.1-linux-x86-on-amd64.patch 1559 SHA256 cf300a35076e42ab530d3c6b4a81fb0ebaf0174bfba5e26cf565d63cef5fd670 SHA512 53c929926837487678d80acfbfe24b37a7aec8af0def837d2c699a1df4c9839d54cc91de4f33c696aa114d52059e245aa9614b86fdfd5fe1c5c1a1715dc1cfdb WHIRLPOOL 4bb0644b6d147b9bb69f94212b414b108f35f1c6d4b8d3dbd41319aca0ccd70ceb9e2ca947f180ab2d1f7ff1408065024199e89e4796bbef226960ee58901d56 AUX gcc-4.7-rap.patch 1913 SHA256 75842d968d21d9916d41c4e75be12387d818221465fb2335546418c744b2eee1 SHA512 aee8bc93aebd9a217b53cd4c6d6fd79780eb77ef490164d35a056d08d0cc5b550ed7b6e298f963cbe61511caf2b03d47ff5df50a6de95b86c104dfac3ed0f273 WHIRLPOOL 7702b0cefb958f6fb7cef5bb0e1f056412d5f972e3a4653735f33b56245db7d984d7c21a5e47282d6283efadefb76bc850877d151d15bcd3f081aba1360a0d7d AUX gcc-4.9-extra-specs.patch 3894 SHA256 942654807a350bdfc1f587766238bea0caabe4d804e48a8705ea5faa56701641 SHA512 32a477d66b85793cdd6c51a1dee29393914b5ecd5db4022387457ff01e871a1efd1ad77be3b05275cdf96e0ae822a7d353ed40ad1476326c60e9bdd9054930cc WHIRLPOOL 47bf1ed50db265235f5f5cae5e45831c1059a2c26fa93d6ce86299c5986da2c38b10b2ca39e59ba8c796716f4e88eadf85f84c5b4a6b5acf25dc56e5a86c182a +AUX gcc-4.9-rap.patch 5188 SHA256 a956996f61caca8d29fd37169d111b025724b28ddf055a090a651f9673b747cd SHA512 036f4c7942009674064728e6c4bd88a0d05c00af2115c70c2b07a3286c7871239e08e4d6dc48b273ca3218f382489fa2ccea42fe9876305e1f63dbcf9a9288d2 WHIRLPOOL ab51de670355b39b4eac29169ab77a2172c0d2f8f6f8e2961dceb5f5ef1fe1ce9c0c1182fc0aa6fad4bcd1c3530bb57f319b1ac6084dd5cfe39ad1a8007fd211 +AUX gcc-4.9.2-rap.patch 21922 SHA256 09c77c4b535a653157a9bb6f282f6e92e5e4aa4aae0e3e9d3d40e079962e442c SHA512 d0c59eacda40f9969b5b94e8e7e8c514df7645aac83d9be434da78b42edbb6816aea7b36502c11af2c6fa8fce5ba412e181a14f6153601b6236f634b52e8aac7 WHIRLPOOL 86ee9f8d3df2db93e0229f7bf385dd8ed648ce09affe2993b0d532b9251cbec47e6f2135383138947c0ac0699c3f9479b06d4f6cedd7078359bbe79b82d6b075 AUX gcc-configure-LANG.patch 2052 SHA256 63de6d2dcfe14f21d147abeb1390405b9220c03f8e968f482d4b4c1cf279c88b SHA512 a694c7ac2f45cc657097ff5b0cf1356ac88a9c06035c9ba15167e9d444844d0d8a478eb1b9b62195dd063774f79697b9148b9cdb6c261640b472c291061b2129 WHIRLPOOL 3cc1ec912fb192ff1058de5b93e49a994ba30d1501a932290dd5b3df1cd783875621cda56edeb41894cd5fa10c04917e693a40a60be8d742ddd7992bf5d8afeb AUX gcc-configure-texinfo.patch 337 SHA256 74b73a7ecec2d88889876b4db480cd173632f49d5396bb8e5b3c93673f9b5b98 SHA512 a15fba8bf2ff02bdeca54d6f186bfa08c1079c6a8ba0a3beef154483ce5c1b8c497e7ffeec32371968f0037e0ff8384609eb0c367d0155a4e5a7eef8aad084d5 WHIRLPOOL 39d008aad06f7621e4e5db15f5e85a59e583b43f8d247029bd4944466bb60a9795bda157d185c45c329294078e282703a243aad5c468d90c77665dd6336870d4 AUX gcc-spec-env-r1.patch 3148 SHA256 da0a6442eb42bce58cbdc7858b110a2e65fc5bd5b4b780b9b491033de6e302fa SHA512 ecae71577543772cfe1711f1b4a8815c0b5d706ebd01edacd1f07586637d4805e25771f970a6e6d1bb696d4b1b5ef3e0036088a96a9f6beff7ddaee704175d16 WHIRLPOOL 3535605998eabccdee71ba396ed5cefbb8b0a8cb073101f6444c7d01233f3b3904c1b29f4daf0a3417c68de8dbd62a0b7dc367cacfcbfa0c4ee1b69b7df8c6fb @@ -160,6 +162,6 @@ EBUILD gcc-4.5.4.ebuild 7041 SHA256 4d49f90f887d6a077289e17b654d1f7a955923884072 EBUILD gcc-4.6.3.ebuild 7352 SHA256 ca575e64bb85597e876d4bfe8895fbc86eacbe96005917b234884b59c86157a1 SHA512 7f0bc77ed4eb4759f245af033dd76514bdb781a623ed71703e2e81d00d05a2ba6d64d07270d363b041a942986b9de124f606b6928391f2921eab3c1c64fff7ce WHIRLPOOL 7e469e72721751660e342df41eadbe6af9bf1046a8b24341c1171e80b1ac277f1394765b10e154e66e5e8b88d0633d454a93af56303bd7f9a54ad19e017127e9 EBUILD gcc-4.7.1.ebuild 7319 SHA256 00fa53c1dbde1f7cf3d6bbe2167b6efa7894bfb24c3e6f61d78181186a8ad6e6 SHA512 59e77f97c5439765a16b6d8c653bbde3688e2332a28b1c2ffa2be8745f4828f552448e00cb3293c0b004d6e474acb1ec328a89141f40d8e067e7538bd5613444 WHIRLPOOL 79783dffc3f9e1061b7e36235246ae5e38a81d1466d9dade0713405bd3b26f1ffa3ee48d92988e30b94650b1cac23e70683468cf2db53df85d6a61c88b812220 EBUILD gcc-4.7.3.ebuild 2006 SHA256 b1578b13fdbbd1ad3a492e5e0647c963b539b241d97f692c82e5702a28c93832 SHA512 8ecd14ec0e22e2f7f491848c69509d5bf22042dc762e093006d90d87c72981fd0f2fad4a2d728136a0712b0c2d00cadf9264aa8ac7992b721182e682d04d8fe6 WHIRLPOOL 02edd5aa9da56a12ee8097f9b881da257d2ec35cb8c358ecdbd8ed467cdbe228358a97f50de7366d42cba5133d6f3592ee86592933344c05ade29be7aefc9fe5 -EBUILD gcc-4.9.2.ebuild 1522 SHA256 5981353af8627a6468c1ce83dc24c932e5e4f1130c06b3d2d2ba082df902cc68 SHA512 28a92f4a05cd41d85efb4071122d83a66f9f0593bf00c7b4070b64d4e974ccb643e48ce2580ef4c9b4bb1b381e171c32ffe72f5ab580bb0a405b3456dd3ccb74 WHIRLPOOL 05aee45edae6c08c89922aca128725c3912012d685cce8100cfd08f8ed98d6be3074ce2a6886e219e8da7f03720321ae30049b35fd8aee48ddb157485514ef58 +EBUILD gcc-4.9.2.ebuild 1598 SHA256 7460ca1434afd83ad6864690c59f18547dce9fcacde30dfdd1ebee505b632ca8 SHA512 9f1dc10c94f774a2c58c96aa877834ea6ce213393dbe04f5065cfafbb4c4194f0856890be7900183cf42f2c952928d19dd0da7a7bf02a9a5353c336fc193cfc1 WHIRLPOOL 464d86c27265b5ab19b9af8608a44d7322d546302f91279d0e7b9432ac7bace7170c1034cf5a36e629cdd28aeb998060e74891309518252afe1da5001dc8254b MISC ChangeLog 165527 SHA256 afc6b5620b6f54646b5de780489b3bedc3be4fecef955555840da9bd77e7db0f SHA512 7dbbb73644ba270c5534fc9e86a3e67ec220f792558b13522d1ad6c0ae0121dd1729d4bcdfedfa568e9f4abc98db21d02811913348de5e141423c08c9f33552a WHIRLPOOL a4553cf71e29cf99aecbf132d7764ad2eeae079fd2ccd8133dc2bdd279e400e58ad8fedf6880fb0688ed3b3c2cdffef275f9df4c8ee62bf772d0a8e70d3a0917 MISC metadata.xml 2017 SHA256 b8397e7ce9649b9086d020ee865f1ccd616b338cdae5be3d57494fd15748d132 SHA512 231a34104c4c0fc8f2a2733572236d7638bc9e7241a6d60b90601f24204c2a7ae5d61d351c75179dce05b4e1b7e367b9ef4f8c6d19c58d3695f5e6cb15ab519a WHIRLPOOL 01599d282637b293265f57c05a91447434d8bb33be54d6e89b8739e0f549b2045e4bc9fb6df8c7a6d0e7d6899b818b6f18454906a73edd529fc9ee57f212cce7 diff --git a/sys-devel/gcc/files/gcc-4.9.2-rap.patch b/sys-devel/gcc/files/gcc-4.9.2-rap.patch new file mode 100644 index 0000000..136a689 --- /dev/null +++ b/sys-devel/gcc/files/gcc-4.9.2-rap.patch @@ -0,0 +1,535 @@ +Index: gcc-4.9.2/gcc/config/i386/linux64.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/i386/linux64.h ++++ gcc-4.9.2/gcc/config/i386/linux64.h +@@ -27,6 +27,6 @@ see the files COPYING3 and COPYING.RUNTI + #define GNU_USER_LINK_EMULATION64 "elf_x86_64" + #define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64" + +-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" +-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2" +-#define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2" ++#define GLIBC_DYNAMIC_LINKER32 DYNAMIC_LINKER_PREFIX "/lib/ld-linux.so.2" ++#define GLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/lib64/ld-linux-x86-64.so.2" ++#define GLIBC_DYNAMIC_LINKERX32 DYNAMIC_LINKER_PREFIX "/libx32/ld-linux-x32.so.2" +Index: gcc-4.9.2/gcc/config/arm/linux-eabi.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/arm/linux-eabi.h ++++ gcc-4.9.2/gcc/config/arm/linux-eabi.h +@@ -68,8 +68,8 @@ + GLIBC_DYNAMIC_LINKER_DEFAULT and TARGET_DEFAULT_FLOAT_ABI. */ + + #undef GLIBC_DYNAMIC_LINKER +-#define GLIBC_DYNAMIC_LINKER_SOFT_FLOAT "/lib/ld-linux.so.3" +-#define GLIBC_DYNAMIC_LINKER_HARD_FLOAT "/lib/ld-linux-armhf.so.3" ++#define GLIBC_DYNAMIC_LINKER_SOFT_FLOAT DYNAMIC_LINKER_PREFIX "/lib/ld-linux.so.3" ++#define GLIBC_DYNAMIC_LINKER_HARD_FLOAT DYNAMIC_LINKER_PREFIX "/lib/ld-linux-armhf.so.3" + #define GLIBC_DYNAMIC_LINKER_DEFAULT GLIBC_DYNAMIC_LINKER_SOFT_FLOAT + + #define GLIBC_DYNAMIC_LINKER \ +Index: gcc-4.9.2/gcc/config/i386/linux.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/i386/linux.h ++++ gcc-4.9.2/gcc/config/i386/linux.h +@@ -20,4 +20,4 @@ along with GCC; see the file COPYING3. + <http://www.gnu.org/licenses/>. */ + + #define GNU_USER_LINK_EMULATION "elf_i386" +-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld-linux.so.2" +Index: gcc-4.9.2/gcc/config.in +=================================================================== +--- gcc-4.9.2.orig/gcc/config.in ++++ gcc-4.9.2/gcc/config.in +@@ -39,6 +39,12 @@ + #endif + + ++/* root directory of the dynamic linker */ ++#ifndef USED_FOR_TARGET ++#undef DYNAMIC_LINKER_PREFIX ++#endif ++ ++ + /* Define if you want assertions enabled. This is a cheap check. */ + #ifndef USED_FOR_TARGET + #undef ENABLE_ASSERT_CHECKING +Index: gcc-4.9.2/gcc/configure +=================================================================== +--- gcc-4.9.2.orig/gcc/configure ++++ gcc-4.9.2/gcc/configure +@@ -894,6 +894,7 @@ enable_objc_gc + with_dwarf2 + enable_shared + with_native_system_header_dir ++with_dynamic_linker_prefix + with_build_sysroot + with_sysroot + with_specs +@@ -1682,6 +1683,8 @@ Optional Packages: + --with-native-system-header-dir=dir + use dir as the directory to look for standard + system header files in. Defaults to /usr/include. ++ --with-dynamic-linker-prefix=dir ++ use dir as the root directory of the dynamic linker. + --with-build-sysroot=sysroot + use sysroot as the system root during the build + --with-sysroot[=DIR] search for usr/lib, usr/include, et al, within DIR +@@ -7154,6 +7157,22 @@ fi + + + ++# Check whether --with-dynamic-linker-prefix was given. ++if test "${with_dynamic_linker_prefix+set}" = set; then : ++ withval=$with_dynamic_linker_prefix; if test x"$withval" != x ; then ++ DYNAMIC_LINKER_PREFIX="$withval" ++ fi ++else ++ DYNAMIC_LINKER_PREFIX= ++fi ++ ++ ++cat >>confdefs.h <<_ACEOF ++#define DYNAMIC_LINKER_PREFIX "$DYNAMIC_LINKER_PREFIX" ++_ACEOF ++ ++ ++ + # Check whether --with-build-sysroot was given. + if test "${with_build_sysroot+set}" = set; then : + withval=$with_build_sysroot; if test x"$withval" != x ; then +@@ -17936,7 +17955,7 @@ else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +-#line 17939 "configure" ++#line 17958 "configure" + #include "confdefs.h" + + #if HAVE_DLFCN_H +@@ -18042,7 +18061,7 @@ else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +-#line 18045 "configure" ++#line 18064 "configure" + #include "confdefs.h" + + #if HAVE_DLFCN_H +Index: gcc-4.9.2/gcc/configure.ac +=================================================================== +--- gcc-4.9.2.orig/gcc/configure.ac ++++ gcc-4.9.2/gcc/configure.ac +@@ -751,6 +751,16 @@ AC_ARG_WITH([native-system-header-dir], + configured_native_system_header_dir="${withval}" + ], [configured_native_system_header_dir=]) + ++AC_ARG_WITH([dynamic-linker-prefix], ++ [AS_HELP_STRING([--with-dynamic-linker-prefix=dir], ++ [use dir as the root directory of the dynamic linker.])], ++ [if test x"$withval" != x ; then ++ DYNAMIC_LINKER_PREFIX="$withval" ++ fi], ++ [DYNAMIC_LINKER_PREFIX=]) ++AC_DEFINE_UNQUOTED(DYNAMIC_LINKER_PREFIX, "$DYNAMIC_LINKER_PREFIX", ++ [root directory of the dynamic linker]) ++ + AC_ARG_WITH(build-sysroot, + [AS_HELP_STRING([--with-build-sysroot=sysroot], + [use sysroot as the system root during the build])], +Index: gcc-4.9.2/gcc/config/aarch64/aarch64-linux.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/aarch64/aarch64-linux.h ++++ gcc-4.9.2/gcc/config/aarch64/aarch64-linux.h +@@ -21,7 +21,7 @@ + #ifndef GCC_AARCH64_LINUX_H + #define GCC_AARCH64_LINUX_H + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-aarch64%{mbig-endian:_be}.so.1" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld-linux-aarch64%{mbig-endian:_be}.so.1" + + #define CPP_SPEC "%{pthread:-D_REENTRANT}" + +Index: gcc-4.9.2/gcc/config/alpha/linux-elf.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/alpha/linux-elf.h ++++ gcc-4.9.2/gcc/config/alpha/linux-elf.h +@@ -24,7 +24,7 @@ along with GCC; see the file COPYING3. + { "elf_dynamic_linker", ELF_DYNAMIC_LINKER }, + + #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" +-#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" ++#define UCLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld-uClibc.so.0" + #if DEFAULT_LIBC == LIBC_UCLIBC + #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" + #elif DEFAULT_LIBC == LIBC_GLIBC +Index: gcc-4.9.2/gcc/config/arm/linux-elf.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/arm/linux-elf.h ++++ gcc-4.9.2/gcc/config/arm/linux-elf.h +@@ -62,7 +62,7 @@ + + #define LIBGCC_SPEC "%{mfloat-abi=soft*:-lfloat} -lgcc" + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld-linux.so.2" + + #define LINUX_TARGET_LINK_SPEC "%{h*} \ + %{static:-Bstatic} \ +Index: gcc-4.9.2/gcc/config/c6x/uclinux-elf.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/c6x/uclinux-elf.h ++++ gcc-4.9.2/gcc/config/c6x/uclinux-elf.h +@@ -36,7 +36,7 @@ + #define STARTFILE_SPEC \ + "%{!shared:crt1%O%s} crti%O%s %{shared|pie:crtbeginS.o%s;:crtbegin.o%s}" + +-#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" ++#define UCLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld-uClibc.so.0" + + #undef LINK_SPEC + #define LINK_SPEC ENDIAN_LINK_SPEC \ +Index: gcc-4.9.2/gcc/config/cris/linux.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/cris/linux.h ++++ gcc-4.9.2/gcc/config/cris/linux.h +@@ -102,7 +102,7 @@ along with GCC; see the file COPYING3. + #undef CRIS_DEFAULT_CPU_VERSION + #define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld.so.1" + + #undef CRIS_LINK_SUBTARGET_SPEC + #define CRIS_LINK_SUBTARGET_SPEC \ +Index: gcc-4.9.2/gcc/config/freebsd-spec.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/freebsd-spec.h ++++ gcc-4.9.2/gcc/config/freebsd-spec.h +@@ -128,9 +128,9 @@ is built with the --enable-threads confi + #endif + + #if FBSD_MAJOR < 6 +-#define FBSD_DYNAMIC_LINKER "/usr/libexec/ld-elf.so.1" ++#define FBSD_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/usr/libexec/ld-elf.so.1" + #else +-#define FBSD_DYNAMIC_LINKER "/libexec/ld-elf.so.1" ++#define FBSD_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/libexec/ld-elf.so.1" + #endif + + /* NOTE: The freebsd-spec.h header is included also for various +Index: gcc-4.9.2/gcc/config/frv/linux.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/frv/linux.h ++++ gcc-4.9.2/gcc/config/frv/linux.h +@@ -34,7 +34,7 @@ + #define ENDFILE_SPEC \ + "%{shared|pie:crtendS.o%s;:crtend.o%s} crtn.o%s" + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld.so.1" + + #undef LINK_SPEC + #define LINK_SPEC "\ +Index: gcc-4.9.2/gcc/config/i386/gnu.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/i386/gnu.h ++++ gcc-4.9.2/gcc/config/i386/gnu.h +@@ -22,7 +22,7 @@ along with GCC. If not, see <http://www + #define GNU_USER_LINK_EMULATION "elf_i386" + + #undef GNU_USER_DYNAMIC_LINKER +-#define GNU_USER_DYNAMIC_LINKER "/lib/ld.so" ++#define GNU_USER_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld.so" + + #undef STARTFILE_SPEC + #if defined HAVE_LD_PIE +Index: gcc-4.9.2/gcc/config/i386/kfreebsd-gnu64.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/i386/kfreebsd-gnu64.h ++++ gcc-4.9.2/gcc/config/i386/kfreebsd-gnu64.h +@@ -22,6 +22,6 @@ along with GCC; see the file COPYING3. + #define GNU_USER_LINK_EMULATION64 "elf_x86_64_fbsd" + #define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64_fbsd" + +-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1" +-#define GLIBC_DYNAMIC_LINKER64 "/lib/ld-kfreebsd-x86-64.so.1" +-#define GLIBC_DYNAMIC_LINKERX32 "/lib/ld-kfreebsd-x32.so.1" ++#define GLIBC_DYNAMIC_LINKER32 DYNAMIC_LINKER_PREFIX "/lib/ld.so.1" ++#define GLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/lib/ld-kfreebsd-x86-64.so.1" ++#define GLIBC_DYNAMIC_LINKERX32 DYNAMIC_LINKER_PREFIX "/lib/ld-kfreebsd-x32.so.1" +Index: gcc-4.9.2/gcc/config/i386/kfreebsd-gnu.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/i386/kfreebsd-gnu.h ++++ gcc-4.9.2/gcc/config/i386/kfreebsd-gnu.h +@@ -19,4 +19,4 @@ along with GCC; see the file COPYING3. + <http://www.gnu.org/licenses/>. */ + + #define GNU_USER_LINK_EMULATION "elf_i386_fbsd" +-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld.so.1" +Index: gcc-4.9.2/gcc/config/ia64/linux.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/ia64/linux.h ++++ gcc-4.9.2/gcc/config/ia64/linux.h +@@ -55,7 +55,7 @@ do { \ + /* Define this for shared library support because it isn't in the main + linux.h file. */ + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-ia64.so.2" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld-linux-ia64.so.2" + + #undef LINK_SPEC + #define LINK_SPEC "\ +Index: gcc-4.9.2/gcc/config/knetbsd-gnu.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/knetbsd-gnu.h ++++ gcc-4.9.2/gcc/config/knetbsd-gnu.h +@@ -32,4 +32,4 @@ along with GCC; see the file COPYING3. + + + #undef GNU_USER_DYNAMIC_LINKER +-#define GNU_USER_DYNAMIC_LINKER "/lib/ld.so.1" ++#define GNU_USER_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld.so.1" +Index: gcc-4.9.2/gcc/config/kopensolaris-gnu.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/kopensolaris-gnu.h ++++ gcc-4.9.2/gcc/config/kopensolaris-gnu.h +@@ -31,4 +31,4 @@ along with GCC; see the file COPYING3. + while (0) + + #undef GNU_USER_DYNAMIC_LINKER +-#define GNU_USER_DYNAMIC_LINKER "/lib/ld.so.1" ++#define GNU_USER_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld.so.1" +Index: gcc-4.9.2/gcc/config/linux.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/linux.h ++++ gcc-4.9.2/gcc/config/linux.h +@@ -73,11 +73,11 @@ see the files COPYING3 and COPYING.RUNTI + GLIBC_DYNAMIC_LINKER must be defined for each target using them, or + GLIBC_DYNAMIC_LINKER32 and GLIBC_DYNAMIC_LINKER64 for targets + supporting both 32-bit and 64-bit compilation. */ +-#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" ++#define UCLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld-uClibc.so.0" + #define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0" + #define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0" + #define UCLIBC_DYNAMIC_LINKERX32 "/lib/ldx32-uClibc.so.0" +-#define BIONIC_DYNAMIC_LINKER "/system/bin/linker" ++#define BIONIC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/system/bin/linker" + #define BIONIC_DYNAMIC_LINKER32 "/system/bin/linker" + #define BIONIC_DYNAMIC_LINKER64 "/system/bin/linker64" + #define BIONIC_DYNAMIC_LINKERX32 "/system/bin/linkerx32" +Index: gcc-4.9.2/gcc/config/m32r/linux.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/m32r/linux.h ++++ gcc-4.9.2/gcc/config/m32r/linux.h +@@ -37,7 +37,7 @@ + When the -shared link option is used a final link is not being + done. */ + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld-linux.so.2" + + #undef LINK_SPEC + #if TARGET_LITTLE_ENDIAN +Index: gcc-4.9.2/gcc/config/m68k/linux.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/m68k/linux.h ++++ gcc-4.9.2/gcc/config/m68k/linux.h +@@ -71,7 +71,7 @@ along with GCC; see the file COPYING3. + When the -shared link option is used a final link is not being + done. */ + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld.so.1" + + #undef LINK_SPEC + #define LINK_SPEC "-m m68kelf %{shared} \ +Index: gcc-4.9.2/gcc/config/microblaze/linux.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/microblaze/linux.h ++++ gcc-4.9.2/gcc/config/microblaze/linux.h +@@ -25,7 +25,7 @@ + #undef TLS_NEEDS_GOT + #define TLS_NEEDS_GOT 1 + +-#define DYNAMIC_LINKER "/lib/ld.so.1" ++#define DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld.so.1" + #undef SUBTARGET_EXTRA_SPECS + #define SUBTARGET_EXTRA_SPECS \ + { "dynamic_linker", DYNAMIC_LINKER } +Index: gcc-4.9.2/gcc/config/mips/linux64.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/mips/linux64.h ++++ gcc-4.9.2/gcc/config/mips/linux64.h +@@ -38,7 +38,7 @@ along with GCC; see the file COPYING3. + #define UCLIBC_DYNAMIC_LINKERN32 \ + "%{mnan=2008:/lib32/ld-uClibc-mipsn8.so.0;:/lib32/ld-uClibc.so.0}" + +-#define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32" ++#define BIONIC_DYNAMIC_LINKERN32 DYNAMIC_LINKER_PREFIX "/system/bin/linker32" + #define GNU_USER_DYNAMIC_LINKERN32 \ + CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32, \ + BIONIC_DYNAMIC_LINKERN32) +Index: gcc-4.9.2/gcc/config/mn10300/linux.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/mn10300/linux.h ++++ gcc-4.9.2/gcc/config/mn10300/linux.h +@@ -32,7 +32,7 @@ + #undef ASM_SPEC + #define ASM_SPEC "" + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld.so.1" + + #undef LINK_SPEC + #define LINK_SPEC "%{mrelax:--relax} %{shared:-shared} \ +Index: gcc-4.9.2/gcc/config/nios2/linux.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/nios2/linux.h ++++ gcc-4.9.2/gcc/config/nios2/linux.h +@@ -26,7 +26,7 @@ + } \ + while (0) + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-nios2.so.1" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld-linux-nios2.so.1" + + #undef LINK_SPEC + #define LINK_SPEC LINK_SPEC_ENDIAN \ +Index: gcc-4.9.2/gcc/config/pa/pa-linux.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/pa/pa-linux.h ++++ gcc-4.9.2/gcc/config/pa/pa-linux.h +@@ -40,7 +40,7 @@ along with GCC; see the file COPYING3. + /* Define this for shared library support because it isn't in the main + linux.h file. */ + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld.so.1" + + #undef LINK_SPEC + #define LINK_SPEC "\ +Index: gcc-4.9.2/gcc/config/rs6000/freebsd64.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/rs6000/freebsd64.h ++++ gcc-4.9.2/gcc/config/rs6000/freebsd64.h +@@ -154,8 +154,8 @@ extern int dot_symbols; + { "link_os_freebsd_spec32", LINK_OS_FREEBSD_SPEC32 }, \ + { "link_os_freebsd_spec64", LINK_OS_FREEBSD_SPEC64 }, + +-#define FREEBSD_DYNAMIC_LINKER32 "/libexec/ld-elf32.so.1" +-#define FREEBSD_DYNAMIC_LINKER64 "/libexec/ld-elf.so.1" ++#define FREEBSD_DYNAMIC_LINKER32 DYNAMIC_LINKER_PREFIX "/libexec/ld-elf32.so.1" ++#define FREEBSD_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/libexec/ld-elf.so.1" + + #define LINK_OS_FREEBSD_SPEC_DEF32 "\ + %{p:%nconsider using `-pg' instead of `-p' with gprof(1)} \ +Index: gcc-4.9.2/gcc/config/rs6000/linux64.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/rs6000/linux64.h ++++ gcc-4.9.2/gcc/config/rs6000/linux64.h +@@ -367,14 +367,14 @@ extern int dot_symbols; + #undef LINK_OS_DEFAULT_SPEC + #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" + +-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1" ++#define GLIBC_DYNAMIC_LINKER32 DYNAMIC_LINKER_PREFIX "/lib/ld.so.1" + #ifdef LINUX64_DEFAULT_ABI_ELFv2 +-#define GLIBC_DYNAMIC_LINKER64 "%{mabi=elfv1:/lib64/ld64.so.1;:/lib64/ld64.so.2}" ++#define GLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "%{mabi=elfv1:/lib64/ld64.so.1;:/lib64/ld64.so.2}" + #else +-#define GLIBC_DYNAMIC_LINKER64 "%{mabi=elfv2:/lib64/ld64.so.2;:/lib64/ld64.so.1}" ++#define GLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "%{mabi=elfv2:/lib64/ld64.so.2;:/lib64/ld64.so.1}" + #endif +-#define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0" +-#define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0" ++#define UCLIBC_DYNAMIC_LINKER32 DYNAMIC_LINKER_PREFIX "/lib/ld-uClibc.so.0" ++#define UCLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/lib/ld64-uClibc.so.0" + #if DEFAULT_LIBC == LIBC_UCLIBC + #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" + #elif DEFAULT_LIBC == LIBC_GLIBC +Index: gcc-4.9.2/gcc/config/rs6000/sysv4.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/rs6000/sysv4.h ++++ gcc-4.9.2/gcc/config/rs6000/sysv4.h +@@ -761,8 +761,8 @@ ENDIAN_SELECT(" -mbig", " -mlittle", DEF + + #define LINK_START_LINUX_SPEC "" + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" +-#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld.so.1" ++#define UCLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld-uClibc.so.0" + #if DEFAULT_LIBC == LIBC_UCLIBC + #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" + #elif !defined (DEFAULT_LIBC) || DEFAULT_LIBC == LIBC_GLIBC +Index: gcc-4.9.2/gcc/config/s390/linux.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/s390/linux.h ++++ gcc-4.9.2/gcc/config/s390/linux.h +@@ -60,8 +60,8 @@ along with GCC; see the file COPYING3. + #define MULTILIB_DEFAULTS { "m31" } + #endif + +-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1" +-#define GLIBC_DYNAMIC_LINKER64 "/lib/ld64.so.1" ++#define GLIBC_DYNAMIC_LINKER32 DYNAMIC_LINKER_PREFIX "/lib/ld.so.1" ++#define GLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/lib/ld64.so.1" + + #undef LINK_SPEC + #define LINK_SPEC \ +Index: gcc-4.9.2/gcc/config/sh/linux.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/sh/linux.h ++++ gcc-4.9.2/gcc/config/sh/linux.h +@@ -43,7 +43,7 @@ along with GCC; see the file COPYING3. + + #define TARGET_ASM_FILE_END file_end_indicate_exec_stack + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld-linux.so.2" + + #undef SUBTARGET_LINK_EMUL_SUFFIX + #define SUBTARGET_LINK_EMUL_SUFFIX "_linux" +Index: gcc-4.9.2/gcc/config/sparc/linux64.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/sparc/linux64.h ++++ gcc-4.9.2/gcc/config/sparc/linux64.h +@@ -92,8 +92,8 @@ along with GCC; see the file COPYING3. + When the -shared link option is used a final link is not being + done. */ + +-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" +-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux.so.2" ++#define GLIBC_DYNAMIC_LINKER32 DYNAMIC_LINKER_PREFIX "/lib/ld-linux.so.2" ++#define GLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/lib64/ld-linux.so.2" + + #ifdef SPARC_BI_ARCH + +Index: gcc-4.9.2/gcc/config/sparc/linux.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/sparc/linux.h ++++ gcc-4.9.2/gcc/config/sparc/linux.h +@@ -83,7 +83,7 @@ extern const char *host_detect_local_cpu + When the -shared link option is used a final link is not being + done. */ + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld-linux.so.2" + + #undef LINK_SPEC + #define LINK_SPEC "-m elf32_sparc %{shared:-shared} \ +Index: gcc-4.9.2/gcc/config/xtensa/linux.h +=================================================================== +--- gcc-4.9.2.orig/gcc/config/xtensa/linux.h ++++ gcc-4.9.2/gcc/config/xtensa/linux.h +@@ -44,7 +44,7 @@ along with GCC; see the file COPYING3. + %{mlongcalls:--longcalls} \ + %{mno-longcalls:--no-longcalls}" + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/lib/ld.so.1" + + #undef LINK_SPEC + #define LINK_SPEC \ diff --git a/sys-devel/gcc/gcc-4.9.2.ebuild b/sys-devel/gcc/gcc-4.9.2.ebuild index ad3324d..89592c6 100644 --- a/sys-devel/gcc/gcc-4.9.2.ebuild +++ b/sys-devel/gcc/gcc-4.9.2.ebuild @@ -41,9 +41,10 @@ src_prepare() { fi if use rap; then - epatch "${FILESDIR}"/gcc-4.7-rap.patch + epatch "${FILESDIR}"/${P}-rap.patch prefix_gcc_dynamic_loader fi + EXTRA_ECONF="${EXTRA_ECONF} $(use_with rap dynamic-linker-prefix ${EPREFIX})" toolchain_src_prepare