--- /dev/null
+Submitted By: Joe Ciccone <jciccone@gmail.com>
+Date: 04-16-2011
+Initial Package Version: 3.4.6
+Origin: Idea originally developed by Ryan Oliver and Greg Schafer for
+ the Pure LFS project.
+Upstream Status: Not Applied - CLFS Specific
+Description: The specs patch changes the location of the dynamic linker as
+ well as the link spec to /tools/lib{,32,64}.
+
+ Rediffed Against 4.5.2 By Joe Ciccone <jciccone@gmail.com>
+ Rediffed Against 4.6.0 By Joe Ciccone <jciccone@gmail.com>
+
+diff -Naur gcc-4.6.0.orig/gcc/config/alpha/gnu.h gcc-4.6.0/gcc/config/alpha/gnu.h
+--- gcc-4.6.0.orig/gcc/config/alpha/gnu.h 2010-10-06 03:49:52.000000000 -0400
++++ gcc-4.6.0/gcc/config/alpha/gnu.h 2011-04-16 15:31:47.519213210 -0400
+@@ -34,7 +34,7 @@
+ } while (0)
+
+ #undef ELF_DYNAMIC_LINKER
+-#define ELF_DYNAMIC_LINKER "/lib/ld.so"
++#define ELF_DYNAMIC_LINKER "/tools/lib/ld.so"
+
+ #undef STARTFILE_SPEC
+ #define STARTFILE_SPEC \
+diff -Naur gcc-4.6.0.orig/gcc/config/alpha/linux-elf.h gcc-4.6.0/gcc/config/alpha/linux-elf.h
+--- gcc-4.6.0.orig/gcc/config/alpha/linux-elf.h 2010-12-09 08:27:07.000000000 -0500
++++ gcc-4.6.0/gcc/config/alpha/linux-elf.h 2011-04-16 15:33:20.991213246 -0400
+@@ -27,8 +27,8 @@
+ #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 "/tools/lib/ld-linux.so.2"
++#define UCLIBC_DYNAMIC_LINKER "/tools/lib/ld-uClibc.so.0"
+ #if DEFAULT_LIBC == LIBC_UCLIBC
+ #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
+ #elif DEFAULT_LIBC == LIBC_GLIBC
+diff -Naur gcc-4.6.0.orig/gcc/config/arm/linux-eabi.h gcc-4.6.0/gcc/config/arm/linux-eabi.h
+--- gcc-4.6.0.orig/gcc/config/arm/linux-eabi.h 2011-01-12 09:29:14.000000000 -0500
++++ gcc-4.6.0/gcc/config/arm/linux-eabi.h 2011-04-16 15:31:47.911213210 -0400
+@@ -62,7 +62,7 @@
+ /* Use ld-linux.so.3 so that it will be possible to run "classic"
+ GNU/Linux binaries on an EABI system. */
+ #undef GLIBC_DYNAMIC_LINKER
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.3"
++#define GLIBC_DYNAMIC_LINKER "/tools/lib/ld-linux.so.3"
+
+ /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to
+ use the GNU/Linux version, not the generic BPABI version. */
+diff -Naur gcc-4.6.0.orig/gcc/config/arm/linux-elf.h gcc-4.6.0/gcc/config/arm/linux-elf.h
+--- gcc-4.6.0.orig/gcc/config/arm/linux-elf.h 2011-01-14 13:42:32.000000000 -0500
++++ gcc-4.6.0/gcc/config/arm/linux-elf.h 2011-04-16 15:31:48.087213212 -0400
+@@ -62,7 +62,7 @@
+
+ #define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER "/tools/lib/ld-linux.so.2"
+
+ #define LINUX_TARGET_LINK_SPEC "%{h*} \
+ %{static:-Bstatic} \
+diff -Naur gcc-4.6.0.orig/gcc/config/bfin/linux.h gcc-4.6.0/gcc/config/bfin/linux.h
+--- gcc-4.6.0.orig/gcc/config/bfin/linux.h 2010-12-09 08:27:07.000000000 -0500
++++ gcc-4.6.0/gcc/config/bfin/linux.h 2011-04-16 15:33:51.791213258 -0400
+@@ -45,7 +45,7 @@
+ %{shared:-G -Bdynamic} \
+ %{!shared: %{!static: \
+ %{rdynamic:-export-dynamic} \
+- -dynamic-linker /lib/ld-uClibc.so.0} \
++ -dynamic-linker /tools/lib/ld-uClibc.so.0} \
+ %{static}} -init __init -fini __fini"
+
+ #define MD_UNWIND_SUPPORT "config/bfin/linux-unwind.h"
+diff -Naur gcc-4.6.0.orig/gcc/config/cris/linux.h gcc-4.6.0/gcc/config/cris/linux.h
+--- gcc-4.6.0.orig/gcc/config/cris/linux.h 2011-01-14 13:51:46.000000000 -0500
++++ gcc-4.6.0/gcc/config/cris/linux.h 2011-04-16 15:31:48.239213212 -0400
+@@ -103,7 +103,7 @@
+ #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 "/tools/lib/ld.so.1"
+
+ #undef CRIS_LINK_SUBTARGET_SPEC
+ #define CRIS_LINK_SUBTARGET_SPEC \
+diff -Naur gcc-4.6.0.orig/gcc/config/freebsd-spec.h gcc-4.6.0/gcc/config/freebsd-spec.h
+--- gcc-4.6.0.orig/gcc/config/freebsd-spec.h 2011-02-13 19:40:15.000000000 -0500
++++ gcc-4.6.0/gcc/config/freebsd-spec.h 2011-04-16 15:31:48.239213212 -0400
+@@ -131,7 +131,7 @@
+ #if FBSD_MAJOR < 6
+ #define FBSD_DYNAMIC_LINKER "/usr/libexec/ld-elf.so.1"
+ #else
+-#define FBSD_DYNAMIC_LINKER "/libexec/ld-elf.so.1"
++#define FBSD_DYNAMIC_LINKER "/tools/libexec/ld-elf.so.1"
+ #endif
+
+ #if defined(HAVE_LD_EH_FRAME_HDR)
+diff -Naur gcc-4.6.0.orig/gcc/config/frv/linux.h gcc-4.6.0/gcc/config/frv/linux.h
+--- gcc-4.6.0.orig/gcc/config/frv/linux.h 2010-12-09 08:27:07.000000000 -0500
++++ gcc-4.6.0/gcc/config/frv/linux.h 2011-04-16 15:31:48.239213212 -0400
+@@ -35,7 +35,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 "/tools/lib/ld.so.1"
+
+ #undef LINK_SPEC
+ #define LINK_SPEC "\
+diff -Naur gcc-4.6.0.orig/gcc/config/i386/gnu.h gcc-4.6.0/gcc/config/i386/gnu.h
+--- gcc-4.6.0.orig/gcc/config/i386/gnu.h 2011-02-08 14:14:04.000000000 -0500
++++ gcc-4.6.0/gcc/config/i386/gnu.h 2011-04-16 15:31:48.239213212 -0400
+@@ -21,7 +21,7 @@
+ */
+
+ #undef GLIBC_DYNAMIC_LINKER
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so"
++#define GLIBC_DYNAMIC_LINKER "/tools/lib/ld.so"
+
+ #undef TARGET_VERSION
+ #define TARGET_VERSION fprintf (stderr, " (i386 GNU)");
+diff -Naur gcc-4.6.0.orig/gcc/config/i386/linux.h gcc-4.6.0/gcc/config/i386/linux.h
+--- gcc-4.6.0.orig/gcc/config/i386/linux.h 2011-01-14 13:45:06.000000000 -0500
++++ gcc-4.6.0/gcc/config/i386/linux.h 2011-04-16 15:31:48.239213212 -0400
+@@ -92,7 +92,7 @@
+
+ /* These macros may be overridden in k*bsd-gnu.h and i386/k*bsd-gnu.h. */
+ #define LINK_EMULATION "elf_i386"
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER "/tools/lib/ld-linux.so.2"
+
+ #undef ASM_SPEC
+ #define ASM_SPEC \
+diff -Naur gcc-4.6.0.orig/gcc/config/i386/linux64.h gcc-4.6.0/gcc/config/i386/linux64.h
+--- gcc-4.6.0.orig/gcc/config/i386/linux64.h 2011-03-02 17:35:36.000000000 -0500
++++ gcc-4.6.0/gcc/config/i386/linux64.h 2011-04-16 15:31:48.239213212 -0400
+@@ -62,8 +62,8 @@
+ 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-x86-64.so.2"
++#define GLIBC_DYNAMIC_LINKER32 "/tools/lib/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER64 "/tools/lib64/ld-linux-x86-64.so.2"
+
+ #if TARGET_64BIT_DEFAULT
+ #define SPEC_32 "m32"
+diff -Naur gcc-4.6.0.orig/gcc/config/ia64/linux.h gcc-4.6.0/gcc/config/ia64/linux.h
+--- gcc-4.6.0.orig/gcc/config/ia64/linux.h 2010-12-09 08:27:07.000000000 -0500
++++ gcc-4.6.0/gcc/config/ia64/linux.h 2011-04-16 15:31:48.239213212 -0400
+@@ -61,7 +61,7 @@
+ /* 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 "/tools/lib/ld-linux-ia64.so.2"
+
+ #undef LINK_SPEC
+ #define LINK_SPEC "\
+diff -Naur gcc-4.6.0.orig/gcc/config/kfreebsd-gnu.h gcc-4.6.0/gcc/config/kfreebsd-gnu.h
+--- gcc-4.6.0.orig/gcc/config/kfreebsd-gnu.h 2007-08-02 06:49:31.000000000 -0400
++++ gcc-4.6.0/gcc/config/kfreebsd-gnu.h 2011-04-16 15:31:48.239213212 -0400
+@@ -33,5 +33,5 @@
+
+ #ifdef GLIBC_DYNAMIC_LINKER
+ #undef GLIBC_DYNAMIC_LINKER
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
++#define GLIBC_DYNAMIC_LINKER "/tools/lib/ld.so.1"
+ #endif
+diff -Naur gcc-4.6.0.orig/gcc/config/knetbsd-gnu.h gcc-4.6.0/gcc/config/knetbsd-gnu.h
+--- gcc-4.6.0.orig/gcc/config/knetbsd-gnu.h 2007-08-02 06:49:31.000000000 -0400
++++ gcc-4.6.0/gcc/config/knetbsd-gnu.h 2011-04-16 15:31:48.239213212 -0400
+@@ -34,5 +34,5 @@
+
+ #ifdef GLIBC_DYNAMIC_LINKER
+ #undef GLIBC_DYNAMIC_LINKER
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
++#define GLIBC_DYNAMIC_LINKER "/tools/lib/ld.so.1"
+ #endif
+diff -Naur gcc-4.6.0.orig/gcc/config/kopensolaris-gnu.h gcc-4.6.0/gcc/config/kopensolaris-gnu.h
+--- gcc-4.6.0.orig/gcc/config/kopensolaris-gnu.h 2009-01-29 13:48:41.000000000 -0500
++++ gcc-4.6.0/gcc/config/kopensolaris-gnu.h 2011-04-16 15:31:48.239213212 -0400
+@@ -33,5 +33,5 @@
+
+ #ifdef GLIBC_DYNAMIC_LINKER
+ #undef GLIBC_DYNAMIC_LINKER
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
++#define GLIBC_DYNAMIC_LINKER "/tools/lib/ld.so.1"
+ #endif
+diff -Naur gcc-4.6.0.orig/gcc/config/linux.h gcc-4.6.0/gcc/config/linux.h
+--- gcc-4.6.0.orig/gcc/config/linux.h 2011-01-12 09:29:14.000000000 -0500
++++ gcc-4.6.0/gcc/config/linux.h 2011-04-16 15:34:53.103213282 -0400
+@@ -74,9 +74,9 @@
+ 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_LINKER "/tools/lib/ld-uClibc.so.0"
++#define UCLIBC_DYNAMIC_LINKER32 "/tools/lib/ld-uClibc.so.0"
++#define UCLIBC_DYNAMIC_LINKER64 "/tools/lib/ld64-uClibc.so.0"
+ #define BIONIC_DYNAMIC_LINKER "/system/bin/linker"
+ #define BIONIC_DYNAMIC_LINKER32 "/system/bin/linker"
+ #define BIONIC_DYNAMIC_LINKER64 "/system/bin/linker64"
+diff -Naur gcc-4.6.0.orig/gcc/config/lm32/uclinux-elf.h gcc-4.6.0/gcc/config/lm32/uclinux-elf.h
+--- gcc-4.6.0.orig/gcc/config/lm32/uclinux-elf.h 2011-01-14 13:42:32.000000000 -0500
++++ gcc-4.6.0/gcc/config/lm32/uclinux-elf.h 2011-04-16 15:38:23.975213362 -0400
+@@ -72,7 +72,7 @@
+ %{shared:-shared} \
+ %{symbolic:-Bsymbolic} \
+ %{rdynamic:-export-dynamic} \
+- -dynamic-linker /lib/ld-linux.so.2"
++ -dynamic-linker /tools/lib/ld-linux.so.2"
+
+ #define TARGET_OS_CPP_BUILTINS() LINUX_TARGET_OS_CPP_BUILTINS()
+
+diff -Naur gcc-4.6.0.orig/gcc/config/m32r/linux.h gcc-4.6.0/gcc/config/m32r/linux.h
+--- gcc-4.6.0.orig/gcc/config/m32r/linux.h 2011-01-14 13:45:06.000000000 -0500
++++ gcc-4.6.0/gcc/config/m32r/linux.h 2011-04-16 15:31:48.395213212 -0400
+@@ -47,7 +47,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 "/tools/lib/ld-linux.so.2"
+
+ #undef LINK_SPEC
+ #if TARGET_LITTLE_ENDIAN
+diff -Naur gcc-4.6.0.orig/gcc/config/m68k/linux.h gcc-4.6.0/gcc/config/m68k/linux.h
+--- gcc-4.6.0.orig/gcc/config/m68k/linux.h 2011-01-26 15:30:12.000000000 -0500
++++ gcc-4.6.0/gcc/config/m68k/linux.h 2011-04-16 15:31:48.395213212 -0400
+@@ -75,7 +75,7 @@
+ 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 "/tools/lib/ld.so.1"
+
+ #undef LINK_SPEC
+ #define LINK_SPEC "-m m68kelf %{shared} \
+diff -Naur gcc-4.6.0.orig/gcc/config/microblaze/linux.h gcc-4.6.0/gcc/config/microblaze/linux.h
+--- gcc-4.6.0.orig/gcc/config/microblaze/linux.h 2010-12-09 08:27:07.000000000 -0500
++++ gcc-4.6.0/gcc/config/microblaze/linux.h 2011-04-16 15:40:09.295213402 -0400
+@@ -20,7 +20,7 @@
+ <http://www.gnu.org/licenses/>. */
+
+
+-#define DYNAMIC_LINKER "/lib/ld.so.1"
++#define DYNAMIC_LINKER "/tools/lib/ld.so.1"
+ #undef SUBTARGET_EXTRA_SPECS
+ #define SUBTARGET_EXTRA_SPECS \
+ { "dynamic_linker", DYNAMIC_LINKER }
+diff -Naur gcc-4.6.0.orig/gcc/config/mips/linux.h gcc-4.6.0/gcc/config/mips/linux.h
+--- gcc-4.6.0.orig/gcc/config/mips/linux.h 2011-01-14 13:45:06.000000000 -0500
++++ gcc-4.6.0/gcc/config/mips/linux.h 2011-04-16 15:31:48.395213212 -0400
+@@ -61,7 +61,7 @@
+ #undef MIPS_DEFAULT_GVALUE
+ #define MIPS_DEFAULT_GVALUE 0
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
++#define GLIBC_DYNAMIC_LINKER "/tools/lib/ld.so.1"
+
+ /* Borrowed from sparc/linux.h */
+ #undef LINK_SPEC
+diff -Naur gcc-4.6.0.orig/gcc/config/mips/linux64.h gcc-4.6.0/gcc/config/mips/linux64.h
+--- gcc-4.6.0.orig/gcc/config/mips/linux64.h 2011-01-19 15:39:09.000000000 -0500
++++ gcc-4.6.0/gcc/config/mips/linux64.h 2011-04-16 15:35:35.847213298 -0400
+@@ -35,10 +35,10 @@
+ %{!shared: \
+ %{profile:-lc_p} %{!profile:-lc}}"
+
+-#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 GLIBC_DYNAMIC_LINKER32 "/tools/lib/ld.so.1"
++#define GLIBC_DYNAMIC_LINKER64 "/tools/lib64/ld.so.1"
++#define GLIBC_DYNAMIC_LINKERN32 "/tools/lib32/ld.so.1"
++#define UCLIBC_DYNAMIC_LINKERN32 "/tools/lib32/ld-uClibc.so.0"
+ #define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32"
+ #define LINUX_DYNAMIC_LINKERN32 \
+ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32, \
+diff -Naur gcc-4.6.0.orig/gcc/config/mn10300/linux.h gcc-4.6.0/gcc/config/mn10300/linux.h
+--- gcc-4.6.0.orig/gcc/config/mn10300/linux.h 2010-12-31 09:34:26.000000000 -0500
++++ gcc-4.6.0/gcc/config/mn10300/linux.h 2011-04-16 15:31:48.395213212 -0400
+@@ -32,7 +32,7 @@
+ #undef ASM_SPEC
+ #define ASM_SPEC ""
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
++#define GLIBC_DYNAMIC_LINKER "/tools/lib/ld.so.1"
+
+ #undef LINK_SPEC
+ #define LINK_SPEC "%{mrelax:--relax} %{shared:-shared} \
+diff -Naur gcc-4.6.0.orig/gcc/config/pa/pa-linux.h gcc-4.6.0/gcc/config/pa/pa-linux.h
+--- gcc-4.6.0.orig/gcc/config/pa/pa-linux.h 2011-01-26 15:27:04.000000000 -0500
++++ gcc-4.6.0/gcc/config/pa/pa-linux.h 2011-04-16 15:31:48.395213212 -0400
+@@ -39,7 +39,7 @@
+ /* 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 "/tools/lib/ld.so.1"
+
+ #undef LINK_SPEC
+ #define LINK_SPEC "\
+diff -Naur gcc-4.6.0.orig/gcc/config/rs6000/linux64.h gcc-4.6.0/gcc/config/rs6000/linux64.h
+--- gcc-4.6.0.orig/gcc/config/rs6000/linux64.h 2011-03-07 02:50:23.000000000 -0500
++++ gcc-4.6.0/gcc/config/rs6000/linux64.h 2011-04-16 15:36:11.471213312 -0400
+@@ -372,10 +372,10 @@
+ #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 "/tools/lib/ld.so.1"
++#define GLIBC_DYNAMIC_LINKER64 "/tools/lib64/ld64.so.1"
++#define UCLIBC_DYNAMIC_LINKER32 "/tools/lib/ld-uClibc.so.0"
++#define UCLIBC_DYNAMIC_LINKER64 "/tools/lib/ld64-uClibc.so.0"
+ #if DEFAULT_LIBC == LIBC_UCLIBC
+ #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
+ #elif DEFAULT_LIBC == LIBC_GLIBC
+diff -Naur gcc-4.6.0.orig/gcc/config/rs6000/sysv4.h gcc-4.6.0/gcc/config/rs6000/sysv4.h
+--- gcc-4.6.0.orig/gcc/config/rs6000/sysv4.h 2011-03-07 02:50:23.000000000 -0500
++++ gcc-4.6.0/gcc/config/rs6000/sysv4.h 2011-04-16 15:37:33.279213342 -0400
+@@ -818,8 +818,8 @@
+
+ #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 "/tools/lib/ld.so.1"
++#define UCLIBC_DYNAMIC_LINKER "/tools/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
+@@ -863,7 +863,7 @@
+
+ #define LINK_OS_GNU_SPEC "-m elf32ppclinux %{!shared: %{!static: \
+ %{rdynamic:-export-dynamic} \
+- -dynamic-linker /lib/ld.so.1}}"
++ -dynamic-linker /tools/lib/ld.so.1}}"
+
+ #define CPP_OS_GNU_SPEC "-D__unix__ -D__gnu_hurd__ -D__GNU__ \
+ %{!undef: \
+diff -Naur gcc-4.6.0.orig/gcc/config/s390/linux.h gcc-4.6.0/gcc/config/s390/linux.h
+--- gcc-4.6.0.orig/gcc/config/s390/linux.h 2010-12-09 08:27:07.000000000 -0500
++++ gcc-4.6.0/gcc/config/s390/linux.h 2011-04-16 15:31:48.399213212 -0400
+@@ -72,8 +72,8 @@
+ #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 "/tools/lib/ld.so.1"
++#define GLIBC_DYNAMIC_LINKER64 "/tools/lib/ld64.so.1"
+
+ #undef LINK_SPEC
+ #define LINK_SPEC \
+diff -Naur gcc-4.6.0.orig/gcc/config/sh/linux.h gcc-4.6.0/gcc/config/sh/linux.h
+--- gcc-4.6.0.orig/gcc/config/sh/linux.h 2010-12-09 08:27:07.000000000 -0500
++++ gcc-4.6.0/gcc/config/sh/linux.h 2011-04-16 15:31:48.399213212 -0400
+@@ -47,7 +47,7 @@
+
+ #define TARGET_ASM_FILE_END file_end_indicate_exec_stack
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER "/tools/lib/ld-linux.so.2"
+
+ #undef SUBTARGET_LINK_EMUL_SUFFIX
+ #define SUBTARGET_LINK_EMUL_SUFFIX "_linux"
+diff -Naur gcc-4.6.0.orig/gcc/config/sparc/linux.h gcc-4.6.0/gcc/config/sparc/linux.h
+--- gcc-4.6.0.orig/gcc/config/sparc/linux.h 2011-01-26 15:30:12.000000000 -0500
++++ gcc-4.6.0/gcc/config/sparc/linux.h 2011-04-16 15:31:48.399213212 -0400
+@@ -71,10 +71,10 @@
+ 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 "/tools/lib/ld-linux.so.2"
+
+ #undef LINK_SPEC
+-#define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \
++#define LINK_SPEC "-m elf32_sparc -Y P,/tools/lib %{shared:-shared} \
+ %{!mno-relax:%{!r:-relax}} \
+ %{!shared: \
+ %{!static: \
+diff -Naur gcc-4.6.0.orig/gcc/config/sparc/linux64.h gcc-4.6.0/gcc/config/sparc/linux64.h
+--- gcc-4.6.0.orig/gcc/config/sparc/linux64.h 2011-02-17 08:57:21.000000000 -0500
++++ gcc-4.6.0/gcc/config/sparc/linux64.h 2011-04-16 15:31:48.399213212 -0400
+@@ -101,8 +101,8 @@
+ 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 "/tools/lib/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER64 "/tools/lib64/ld-linux.so.2"
+
+ #ifdef SPARC_BI_ARCH
+
+@@ -113,7 +113,7 @@
+ { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \
+ { "link_arch", LINK_ARCH_SPEC },
+
+-#define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,%R/usr/lib %{shared:-shared} \
++#define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,%R/tools/lib %{shared:-shared} \
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+@@ -121,7 +121,7 @@
+ %{static:-static}} \
+ "
+
+-#define LINK_ARCH64_SPEC "-m elf64_sparc -Y P,%R/usr/lib64 %{shared:-shared} \
++#define LINK_ARCH64_SPEC "-m elf64_sparc -Y P,%R/tools/lib64 %{shared:-shared} \
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+@@ -193,7 +193,7 @@
+ #else /* !SPARC_BI_ARCH */
+
+ #undef LINK_SPEC
+-#define LINK_SPEC "-m elf64_sparc -Y P,%R/usr/lib64 %{shared:-shared} \
++#define LINK_SPEC "-m elf64_sparc -Y P,%R/tools/lib64 %{shared:-shared} \
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+diff -Naur gcc-4.6.0.orig/gcc/config/vax/linux.h gcc-4.6.0/gcc/config/vax/linux.h
+--- gcc-4.6.0.orig/gcc/config/vax/linux.h 2010-12-09 20:03:33.000000000 -0500
++++ gcc-4.6.0/gcc/config/vax/linux.h 2011-04-16 15:38:05.583213354 -0400
+@@ -44,7 +44,7 @@
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+- -dynamic-linker /lib/ld.so.1} \
++ -dynamic-linker /tools/lib/ld.so.1} \
+ %{static:-static}}"
+
+ #undef WCHAR_TYPE
+diff -Naur gcc-4.6.0.orig/gcc/config/xtensa/linux.h gcc-4.6.0/gcc/config/xtensa/linux.h
+--- gcc-4.6.0.orig/gcc/config/xtensa/linux.h 2011-01-14 13:45:06.000000000 -0500
++++ gcc-4.6.0/gcc/config/xtensa/linux.h 2011-04-16 15:31:48.399213212 -0400
+@@ -48,7 +48,7 @@
+ %{mlongcalls:--longcalls} \
+ %{mno-longcalls:--no-longcalls}"
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
++#define GLIBC_DYNAMIC_LINKER "/tools/lib/ld.so.1"
+
+ #undef LINK_SPEC
+ #define LINK_SPEC \