diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2013-07-12 15:56:45 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2013-07-12 15:56:45 +0000 |
commit | 3e800bf8214c23fd8ebce936f9f846949750034e (patch) | |
tree | 057e4560c6198189f98f6c2829a1549a7fb45c16 /main/gcc/gcc-4.8-dynamic-linker.patch | |
parent | 0a61db5bf5537be193aada0990fcdd355ebc264d (diff) | |
download | aports-3e800bf8214c23fd8ebce936f9f846949750034e.tar.bz2 aports-3e800bf8214c23fd8ebce936f9f846949750034e.tar.xz |
main/gcc: upgrade to 4.8.1
TODO: fix gcc-go
Diffstat (limited to 'main/gcc/gcc-4.8-dynamic-linker.patch')
-rw-r--r-- | main/gcc/gcc-4.8-dynamic-linker.patch | 449 |
1 files changed, 449 insertions, 0 deletions
diff --git a/main/gcc/gcc-4.8-dynamic-linker.patch b/main/gcc/gcc-4.8-dynamic-linker.patch new file mode 100644 index 0000000000..d49b85b36e --- /dev/null +++ b/main/gcc/gcc-4.8-dynamic-linker.patch @@ -0,0 +1,449 @@ +diff --git a/gcc/Makefile.in b/gcc/Makefile.in +index 4b04d64..2fc3b95 100644 +--- a/gcc/Makefile.in ++++ b/gcc/Makefile.in +@@ -987,7 +987,7 @@ INTERNAL_CFLAGS = -DIN_GCC @CROSS@ + # This is the variable actually used when we compile. If you change this, + # you probably want to update BUILD_CFLAGS in configure.ac + ALL_CFLAGS = $(T_CFLAGS) $(CFLAGS-$@) \ +- $(CFLAGS) $(INTERNAL_CFLAGS) $(COVERAGE_FLAGS) $(WARN_CFLAGS) @DEFS@ ++ $(CFLAGS) $(INTERNAL_CFLAGS) $(COVERAGE_FLAGS) $(WARN_CFLAGS) @DEFS@ @NOSTDINC@ + + # The C++ version. + ALL_CXXFLAGS = $(T_CFLAGS) $(CFLAGS-$@) $(CXXFLAGS) $(INTERNAL_CFLAGS) \ +@@ -2030,6 +2030,8 @@ DRIVER_DEFINES = \ + -DSTANDARD_STARTFILE_PREFIX=\"$(unlibsubdir)/\" \ + -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc/\" \ + -DSTANDARD_LIBEXEC_PREFIX=\"$(libexecdir)/gcc/\" \ ++ -DDYNAMIC_LINKER_PREFIX=\"@DYNAMICLINKERPREFIX@\" \ ++ -DDYNAMIC_LINKER=\"@DYNAMICLINKER@\" \ + -DDEFAULT_TARGET_VERSION=\"$(version)\" \ + -DDEFAULT_TARGET_MACHINE=\"$(target_noncanonical)\" \ + -DSTANDARD_BINDIR_PREFIX=\"$(bindir)/\" \ +diff --git a/gcc/config/alpha/linux-elf.h b/gcc/config/alpha/linux-elf.h +index 84e0596..59b9e80 100644 +--- a/gcc/config/alpha/linux-elf.h ++++ b/gcc/config/alpha/linux-elf.h +@@ -23,8 +23,8 @@ along with GCC; see the file COPYING3. If not see + #define EXTRA_SPECS \ + { "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 GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER ++#define UCLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER + #if DEFAULT_LIBC == LIBC_UCLIBC + #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" + #elif DEFAULT_LIBC == LIBC_GLIBC +diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h +index 4a425c8..0ec2653 100644 +--- a/gcc/config/arm/linux-eabi.h ++++ b/gcc/config/arm/linux-eabi.h +@@ -59,23 +59,8 @@ + #undef SUBTARGET_EXTRA_LINK_SPEC + #define SUBTARGET_EXTRA_LINK_SPEC " -m " TARGET_LINKER_EMULATION + +-/* GNU/Linux on ARM currently supports three dynamic linkers: +- - ld-linux.so.2 - for the legacy ABI +- - ld-linux.so.3 - for the EABI-derived soft-float ABI +- - ld-linux-armhf.so.3 - for the EABI-derived hard-float ABI. +- All the dynamic linkers live in /lib. +- We default to soft-float, but this can be overridden by changing both +- 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_DEFAULT GLIBC_DYNAMIC_LINKER_SOFT_FLOAT +- +-#define GLIBC_DYNAMIC_LINKER \ +- "%{mfloat-abi=hard:" GLIBC_DYNAMIC_LINKER_HARD_FLOAT "} \ +- %{mfloat-abi=soft*:" GLIBC_DYNAMIC_LINKER_SOFT_FLOAT "} \ +- %{!mfloat-abi=*:" GLIBC_DYNAMIC_LINKER_DEFAULT "}" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER + + /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to + use the GNU/Linux version, not the generic BPABI version. */ +diff --git a/gcc/config/arm/linux-elf.h b/gcc/config/arm/linux-elf.h +index 488efa4..23c8efb 100644 +--- a/gcc/config/arm/linux-elf.h ++++ b/gcc/config/arm/linux-elf.h +@@ -57,7 +57,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 "/" DYNAMIC_LINKER + + #define LINUX_TARGET_LINK_SPEC "%{h*} \ + %{static:-Bstatic} \ +diff --git a/gcc/config/bfin/linux.h b/gcc/config/bfin/linux.h +index 2cd7c51..b0c8531 100644 +--- a/gcc/config/bfin/linux.h ++++ b/gcc/config/bfin/linux.h +@@ -45,7 +45,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + %{shared:-G -Bdynamic} \ + %{!shared: %{!static: \ + %{rdynamic:-export-dynamic} \ +- -dynamic-linker /lib/ld-uClibc.so.0} \ ++ -dynamic-linker DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER} \ + %{static}} -init __init -fini __fini" + + #undef TARGET_SUPPORTS_SYNC_CALLS +diff --git a/gcc/config/cris/linux.h b/gcc/config/cris/linux.h +index 8d0941c..4ea98a4 100644 +--- a/gcc/config/cris/linux.h ++++ b/gcc/config/cris/linux.h +@@ -102,7 +102,7 @@ along with GCC; see the file COPYING3. If not see + #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 "/" DYNAMIC_LINKER + + #undef CRIS_LINK_SUBTARGET_SPEC + #define CRIS_LINK_SUBTARGET_SPEC \ +diff --git a/gcc/config/freebsd-spec.h b/gcc/config/freebsd-spec.h +index e46449c..17fae77 100644 +--- a/gcc/config/freebsd-spec.h ++++ b/gcc/config/freebsd-spec.h +@@ -128,9 +128,9 @@ is built with the --enable-threads configure-time option.} \ + #endif + + #if FBSD_MAJOR < 6 +-#define FBSD_DYNAMIC_LINKER "/usr/libexec/ld-elf.so.1" ++#define FBSD_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER + #else +-#define FBSD_DYNAMIC_LINKER "/libexec/ld-elf.so.1" ++#define FBSD_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER + #endif + + /* NOTE: The freebsd-spec.h header is included also for various +diff --git a/gcc/config/frv/linux.h b/gcc/config/frv/linux.h +index 2c0d35c..86f653b 100644 +--- a/gcc/config/frv/linux.h ++++ b/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 "/" DYNAMIC_LINKER + + #undef LINK_SPEC + #define LINK_SPEC "\ +diff --git a/gcc/config/i386/linux.h b/gcc/config/i386/linux.h +index 3c95ee0..89cc00c 100644 +--- a/gcc/config/i386/linux.h ++++ b/gcc/config/i386/linux.h +@@ -20,4 +20,4 @@ along with GCC; see the file COPYING3. If not see + <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 "/" DYNAMIC_LINKER +diff --git a/gcc/config/i386/linux64.h b/gcc/config/i386/linux64.h +index b793e08..e7c41b5 100644 +--- a/gcc/config/i386/linux64.h ++++ b/gcc/config/i386/linux64.h +@@ -27,6 +27,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + #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_LINKER32 "/" DYNAMIC_LINKER ++#define GLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER + #define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2" ++ +diff --git a/gcc/config/ia64/linux.h b/gcc/config/ia64/linux.h +index bdd6248..3558443 100644 +--- a/gcc/config/ia64/linux.h ++++ b/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 "/" DYNAMIC_LINKER + + #undef LINK_SPEC + #define LINK_SPEC "\ +diff --git a/gcc/config/knetbsd-gnu.h b/gcc/config/knetbsd-gnu.h +index 75d9e11..bf8409d 100644 +--- a/gcc/config/knetbsd-gnu.h ++++ b/gcc/config/knetbsd-gnu.h +@@ -32,4 +32,5 @@ along with GCC; see the file COPYING3. If not see + + + #undef GNU_USER_DYNAMIC_LINKER +-#define GNU_USER_DYNAMIC_LINKER "/lib/ld.so.1" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER ++ +diff --git a/gcc/config/linux.h b/gcc/config/linux.h +index 2be1079..3db010b 100644 +--- a/gcc/config/linux.h ++++ b/gcc/config/linux.h +@@ -73,10 +73,10 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + 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_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 UCLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER ++#define UCLIBC_DYNAMIC_LINKER32 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER ++#define UCLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER ++#define UCLIBC_DYNAMIC_LINKERX32 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER + #define BIONIC_DYNAMIC_LINKER "/system/bin/linker" + #define BIONIC_DYNAMIC_LINKER32 "/system/bin/linker" + #define BIONIC_DYNAMIC_LINKER64 "/system/bin/linker64" +@@ -107,3 +107,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + /* Whether we have Bionic libc runtime */ + #undef TARGET_HAS_BIONIC + #define TARGET_HAS_BIONIC (OPTION_BIONIC) ++ ++#ifdef NOSTDINC ++#undef STANDARD_INCLUDE_DIR ++#define STANDARD_INCLUDE_DIR 0 ++#endif +diff --git a/gcc/config/m32r/linux.h b/gcc/config/m32r/linux.h +index a6dff08..54fe8e2 100644 +--- a/gcc/config/m32r/linux.h ++++ b/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 "/" DYNAMIC_LINKER + + #undef LINK_SPEC + #if TARGET_LITTLE_ENDIAN +diff --git a/gcc/config/m68k/linux.h b/gcc/config/m68k/linux.h +index 6450f3b..09f9d70 100644 +--- a/gcc/config/m68k/linux.h ++++ b/gcc/config/m68k/linux.h +@@ -71,7 +71,7 @@ along with GCC; see the file COPYING3. If not see + 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 "/" DYNAMIC_LINKER + + #undef LINK_SPEC + #define LINK_SPEC "-m m68kelf %{shared} \ +diff --git a/gcc/config/mips/linux.h b/gcc/config/mips/linux.h +index 9b4c68d..5eab217 100644 +--- a/gcc/config/mips/linux.h ++++ b/gcc/config/mips/linux.h +@@ -17,4 +17,5 @@ You should have received a copy of the GNU General Public License + along with GCC; see the file COPYING3. If not see + <http://www.gnu.org/licenses/>. */ + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER ++ +diff --git a/gcc/config/mips/linux64.h b/gcc/config/mips/linux64.h +index dbba47a..d320d82 100644 +--- a/gcc/config/mips/linux64.h ++++ b/gcc/config/mips/linux64.h +@@ -22,11 +22,11 @@ along with GCC; see the file COPYING3. If not see + #define GNU_USER_LINK_EMULATION64 "elf64%{EB:b}%{EL:l}tsmip" + #define GNU_USER_LINK_EMULATIONN32 "elf32%{EB:b}%{EL:l}tsmipn32" + +-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1" +-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld.so.1" +-#define GLIBC_DYNAMIC_LINKERN32 "/lib32/ld.so.1" +-#define UCLIBC_DYNAMIC_LINKERN32 "/lib32/ld-uClibc.so.0" +-#define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32" ++#define GLIBC_DYNAMIC_LINKER32 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER ++#define GLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER ++#define GLIBC_DYNAMIC_LINKERN32 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER ++#define UCLIBC_DYNAMIC_LINKERN32 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER ++#define BIONIC_DYNAMIC_LINKERN32 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER + #define GNU_USER_DYNAMIC_LINKERN32 \ + CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32, \ + BIONIC_DYNAMIC_LINKERN32) +diff --git a/gcc/config/mn10300/linux.h b/gcc/config/mn10300/linux.h +index 16d3047..e03d463 100644 +--- a/gcc/config/mn10300/linux.h ++++ b/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 "/" DYNAMIC_LINKER + + #undef LINK_SPEC + #define LINK_SPEC "%{mrelax:--relax} %{shared:-shared} \ +diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h +index dc6f67f..7d5d290 100644 +--- a/gcc/config/rs6000/linux64.h ++++ b/gcc/config/rs6000/linux64.h +@@ -360,10 +360,10 @@ 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_LINKER64 "/lib64/ld64.so.1" +-#define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0" +-#define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0" ++#define GLIBC_DYNAMIC_LINKER32 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER ++#define GLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER ++#define UCLIBC_DYNAMIC_LINKER32 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER ++#define UCLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER + #if DEFAULT_LIBC == LIBC_UCLIBC + #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" + #elif DEFAULT_LIBC == LIBC_GLIBC +diff --git a/gcc/config/s390/linux.h b/gcc/config/s390/linux.h +index 3b4966a..46df5f6 100644 +--- a/gcc/config/s390/linux.h ++++ b/gcc/config/s390/linux.h +@@ -60,8 +60,8 @@ along with GCC; see the file COPYING3. If not see + #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 "/" DYNAMIC_LINKER ++#define GLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER + + #undef LINK_SPEC + #define LINK_SPEC \ +diff --git a/gcc/config/sh/linux.h b/gcc/config/sh/linux.h +index 9e8f32d..ad31782 100644 +--- a/gcc/config/sh/linux.h ++++ b/gcc/config/sh/linux.h +@@ -43,7 +43,7 @@ along with GCC; see the file COPYING3. If not see + + #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 "/" DYNAMIC_LINKER + + #undef SUBTARGET_LINK_EMUL_SUFFIX + #define SUBTARGET_LINK_EMUL_SUFFIX "_linux" +diff --git a/gcc/config/sparc/linux.h b/gcc/config/sparc/linux.h +index 49283d3..d068de6 100644 +--- a/gcc/config/sparc/linux.h ++++ b/gcc/config/sparc/linux.h +@@ -83,7 +83,7 @@ extern const char *host_detect_local_cpu (int argc, const char **argv); + 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 "/" DYNAMIC_LINKER + + #undef LINK_SPEC + #define LINK_SPEC "-m elf32_sparc %{shared:-shared} \ +diff --git a/gcc/config/sparc/linux64.h b/gcc/config/sparc/linux64.h +index 7d48e96..07e4112 100644 +--- a/gcc/config/sparc/linux64.h ++++ b/gcc/config/sparc/linux64.h +@@ -92,8 +92,8 @@ along with GCC; see the file COPYING3. If not see + 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 "/" DYNAMIC_LINKER ++#define GLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER + + #ifdef SPARC_BI_ARCH + +diff --git a/gcc/config/xtensa/linux.h b/gcc/config/xtensa/linux.h +index 10e22a4..52fa40b 100644 +--- a/gcc/config/xtensa/linux.h ++++ b/gcc/config/xtensa/linux.h +@@ -44,7 +44,7 @@ along with GCC; see the file COPYING3. If not see + %{mlongcalls:--longcalls} \ + %{mno-longcalls:--no-longcalls}" + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" ++#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER + + #undef LINK_SPEC + #define LINK_SPEC \ +diff --git a/gcc/configure b/gcc/configure +index feb9a5e..a020d8f 100755 +--- a/gcc/configure ++++ b/gcc/configure +@@ -755,6 +755,9 @@ AWK + SET_MAKE + REPORT_BUGS_TEXI + REPORT_BUGS_TO ++DYNAMICLINKER ++DYNAMICLINKERPREFIX ++NOSTDINC + PKGVERSION + CONFIGURE_SPECS + CROSS_SYSTEM_HEADER_DIR +@@ -1673,6 +1676,17 @@ Optional Packages: + choose the garbage collection mechanism to use with + the compiler + --with-system-zlib use installed libz ++ --with-dynamic-linker=PATH ++ specifies path to dynamic linker. ++ example: "/lib/ld-linux.so.2", where this defines ++ "ld-linux.so.2" ++ --with-dynamic-linker-prefix=PATH ++ specifies path to dynamic linker. ++ example: "/lib/ld-linux.so.2", where this defines ++ "/lib" ++ --with-nostdinc build gcc to ignore standard include directories. ++ You will have to use --with-local-prefix with this ++ option. + --with-linker-hash-style={sysv,gnu,both} + specify the linker hash style + +@@ -6384,6 +6398,47 @@ fi + + + ++# Check whether --with-dynamic-linker was given. ++ ++DYNAMICLINKER="ld-linux.so.2" ; ++if test "${with_dynamic_linker+set}" = set; then ++ withval="$with_dynamic_linker" ++ case "${withval}" in ++yes) { { echo "$as_me:$LINENO: error: bad value "${withval}". Use something like --with-dynamic-linker=$DYNAMICLINKER" >&5 ++echo "$as_me: error: bad value "${withval}". Use something like --with-dynamic-linker=$DYNAMICLINKER" >&2;} ++ { (exit 1); exit 1; }; } ;; ++no) ;; ++*) DYNAMICLINKER=$withval ;; ++esac ++fi; ++ ++# Check whether --with-dynamic-linker-prefix= was given. ++ ++DYNAMICLINKERPREFIX="/lib" ; ++if test "${with_dynamic_linker_prefix+set}" = set; then ++ withval="$with_dynamic_linker_prefix" ++ case "${withval}" in ++yes) { { echo "$as_me:$LINENO: error: bad value "${withval}". Use --with-dynamic-linker-prefix=/path/to/lib/" >&5 ++echo "$as_me: error: bad value "${withval}". Use --with-dynamic-linker-prefix=/path/to/lib/" >&2;} ++ { (exit 1); exit 1; }; } ;; ++no) ;; ++*) DYNAMICLINKERPREFIX=$withval ;; ++esac ++ ++fi; ++ ++# Check whether --with-nostdinc was given. ++ ++if test "${with_nostdinc+set}" = set; then ++ withval="$with_nostdinc" ++ case "${withval}" in ++yes) NOSTDINC="-DNOSTDINC" ;; ++no) ;; ++*) NOSTDINC="-DNOSTDINC" ;; ++esac ++fi; ++ ++ + + # --------------------- + # Warnings and checking |