patches/gcc/3.4.4/100-uclibc-conf.patch
changeset 1 eeea35fbf182
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/patches/gcc/3.4.4/100-uclibc-conf.patch	Sat Feb 24 11:00:05 2007 +0000
     1.3 @@ -0,0 +1,470 @@
     1.4 +--- gcc-3.4.1/gcc/config/t-linux-uclibc
     1.5 ++++ gcc-3.4.1/gcc/config/t-linux-uclibc
     1.6 +@@ -0,0 +1,5 @@
     1.7 ++# Remove glibc specific files added in t-linux
     1.8 ++SHLIB_MAPFILES := $(filter-out $(srcdir)/config/libgcc-glibc.ver, $(SHLIB_MAPFILES))
     1.9 ++
    1.10 ++# Use unwind-dw2-fde instead of unwind-dw2-fde-glibc
    1.11 ++LIB2ADDEH := $(subst unwind-dw2-fde-glibc.c,unwind-dw2-fde.c,$(LIB2ADDEH))
    1.12 +--- gcc-3.4.1/gcc/config.gcc
    1.13 ++++ gcc-3.4.1/gcc/config.gcc
    1.14 +@@ -2310,10 +2310,16 @@
    1.15 + *)
    1.16 + 	echo "*** Configuration ${target} not supported" 1>&2
    1.17 + 	exit 1
    1.18 + 	;;
    1.19 + esac
    1.20 ++
    1.21 ++# Rather than hook into each target, just do it after all the linux
    1.22 ++# targets have been processed
    1.23 ++case ${target} in
    1.24 ++*-linux-uclibc*) tm_defines="${tm_defines} USE_UCLIBC" ; tmake_file="${tmake_file} t-linux-uclibc"
    1.25 ++esac
    1.26 + 
    1.27 + # Support for --with-cpu and related options (and a few unrelated options,
    1.28 + # too).
    1.29 + case ${with_cpu} in
    1.30 +   yes | no)
    1.31 +--- gcc-3.4.4/gcc/config/alpha/linux-elf.h
    1.32 ++++ gcc-3.4.4/gcc/config/alpha/linux-elf.h
    1.33 +@@ -27,7 +27,11 @@
    1.34 + #define SUBTARGET_EXTRA_SPECS \
    1.35 + { "elf_dynamic_linker", ELF_DYNAMIC_LINKER },
    1.36 + 
    1.37 ++#ifdef USE_UCLIBC
    1.38 ++#define ELF_DYNAMIC_LINKER	"/lib/ld-uClibc.so.0"
    1.39 ++#else
    1.40 + #define ELF_DYNAMIC_LINKER	"/lib/ld-linux.so.2"
    1.41 ++#endif
    1.42 + 
    1.43 + #define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax}		\
    1.44 +   %{O*:-O3} %{!O*:-O1}						\
    1.45 +--- gcc-3.4.1-dist/gcc/config/arm/linux-elf.h	2004-01-31 00:18:11.000000000 -0600
    1.46 ++++ gcc-3.4.1/gcc/config/arm/linux-elf.h	2004-08-12 15:54:42.000000000 -0500
    1.47 +@@ -80,14 +80,19 @@
    1.48 + #define ENDFILE_SPEC \
    1.49 +   "%{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s"
    1.50 + 
    1.51 ++#ifdef USE_UCLIBC
    1.52 ++#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
    1.53 ++#else
    1.54 ++#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2"
    1.55 ++#endif
    1.56 + #undef  LINK_SPEC
    1.57 + #define LINK_SPEC "%{h*} %{version:-v} \
    1.58 +    %{b} %{Wl,*:%*} \
    1.59 +    %{static:-Bstatic} \
    1.60 +    %{shared:-shared} \
    1.61 +    %{symbolic:-Bsymbolic} \
    1.62 +    %{rdynamic:-export-dynamic} \
    1.63 +-   %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2} \
    1.64 ++   %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "} \
    1.65 +    -X \
    1.66 +    %{mbig-endian:-EB}" \
    1.67 +    SUBTARGET_EXTRA_LINK_SPEC
    1.68 +--- gcc-3.4.1-dist/gcc/config/cris/linux.h	2003-11-28 21:08:09.000000000 -0600
    1.69 ++++ gcc-3.4.1/gcc/config/cris/linux.h	2004-08-12 15:54:43.000000000 -0500
    1.70 +@@ -79,6 +79,25 @@
    1.71 + #undef CRIS_DEFAULT_CPU_VERSION
    1.72 + #define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG
    1.73 + 
    1.74 ++#ifdef USE_UCLIBC
    1.75 ++
    1.76 ++#undef CRIS_SUBTARGET_VERSION
    1.77 ++#define CRIS_SUBTARGET_VERSION " - cris-axis-linux-uclibc"
    1.78 ++
    1.79 ++#undef CRIS_LINK_SUBTARGET_SPEC
    1.80 ++#define CRIS_LINK_SUBTARGET_SPEC \
    1.81 ++ "-mcrislinux\
    1.82 ++  -rpath-link include/asm/../..%s\
    1.83 ++  %{shared} %{static}\
    1.84 ++  %{symbolic:-Bdynamic} %{shlib:-Bdynamic} %{static:-Bstatic}\
    1.85 ++  %{!shared: \
    1.86 ++    %{!static: \
    1.87 ++      %{rdynamic:-export-dynamic} \
    1.88 ++      %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}} \
    1.89 ++  %{!r:%{O2|O3: --gc-sections}}"
    1.90 ++
    1.91 ++#else  /* USE_UCLIBC */
    1.92 ++
    1.93 + #undef CRIS_SUBTARGET_VERSION
    1.94 + #define CRIS_SUBTARGET_VERSION " - cris-axis-linux-gnu"
    1.95 + 
    1.96 +@@ -93,6 +112,8 @@
    1.97 +   %{!shared:%{!static:%{rdynamic:-export-dynamic}}}\
    1.98 +   %{!r:%{O2|O3: --gc-sections}}"
    1.99 + 
   1.100 ++#endif  /* USE_UCLIBC */
   1.101 ++
   1.102 + 
   1.103 + /* Node: Run-time Target */
   1.104 + 
   1.105 +--- gcc-3.4.1-dist/gcc/config/i386/linux.h	2003-11-28 21:08:10.000000000 -0600
   1.106 ++++ gcc-3.4.1/gcc/config/i386/linux.h	2004-08-12 15:54:43.000000000 -0500
   1.107 +@@ -110,22 +110,21 @@
   1.108 + 
   1.109 + #undef	LINK_SPEC
   1.110 + #ifdef USE_GNULIBC_1
   1.111 +-#define LINK_SPEC "-m elf_i386 %{shared:-shared} \
   1.112 +-  %{!shared: \
   1.113 +-    %{!ibcs: \
   1.114 +-      %{!static: \
   1.115 +-	%{rdynamic:-export-dynamic} \
   1.116 +-	%{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.1}} \
   1.117 +-	%{static:-static}}}"
   1.118 ++#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.1"
   1.119 ++#else
   1.120 ++#ifdef USE_UCLIBC
   1.121 ++#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
   1.122 + #else
   1.123 ++#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2"
   1.124 ++#endif
   1.125 ++#endif
   1.126 + #define LINK_SPEC "-m elf_i386 %{shared:-shared} \
   1.127 +   %{!shared: \
   1.128 +     %{!ibcs: \
   1.129 +       %{!static: \
   1.130 + 	%{rdynamic:-export-dynamic} \
   1.131 +-	%{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
   1.132 ++	%{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
   1.133 + 	%{static:-static}}}"
   1.134 +-#endif
   1.135 + 
   1.136 + /* A C statement (sans semicolon) to output to the stdio stream
   1.137 +    FILE the assembler definition of uninitialized global DECL named
   1.138 +--- gcc-3.4.4/gcc/config/i386/linux64.h
   1.139 ++++ gcc-3.4.4/gcc/config/i386/linux64.h
   1.140 +@@ -54,14 +54,21 @@
   1.141 +    When the -shared link option is used a final link is not being
   1.142 +    done.  */
   1.143 + 
   1.144 ++#ifdef USE_UCLIBC
   1.145 ++#define ELF32_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
   1.146 ++#define ELF64_DYNAMIC_LINKER "/lib/ld64-uClibc.so.0"
   1.147 ++#else
   1.148 ++#define ELF32_DYNAMIC_LINKER "/lib/ld-linux.so.2"
   1.149 ++#define ELF64_DYNAMIC_LINKER "/lib64/ld-linux-x86-64.so.2"
   1.150 ++#endif
   1.151 + #undef	LINK_SPEC
   1.152 + #define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} \
   1.153 +   %{shared:-shared} \
   1.154 +   %{!shared: \
   1.155 +     %{!static: \
   1.156 +       %{rdynamic:-export-dynamic} \
   1.157 +-      %{m32:%{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
   1.158 +-      %{!m32:%{!dynamic-linker:-dynamic-linker /lib64/ld-linux-x86-64.so.2}}} \
   1.159 ++      %{m32:%{!dynamic-linker:-dynamic-linker " ELF32_DYNAMIC_LINKER "}} \
   1.160 ++      %{!m32:%{!dynamic-linker:-dynamic-linker " ELF64_DYNAMIC_LINKER "}}} \
   1.161 +     %{static:-static}}"
   1.162 + 
   1.163 + #define MULTILIB_DEFAULTS { "m64" }
   1.164 +--- gcc-3.4.4/gcc/config/ia64/linux.h
   1.165 ++++ gcc-3.4.4/gcc/config/ia64/linux.h
   1.166 +@@ -37,13 +37,18 @@
   1.167 + /* Define this for shared library support because it isn't in the main
   1.168 +    linux.h file.  */
   1.169 + 
   1.170 ++#ifdef USE_UCLIBC
   1.171 ++#define ELF_DYNAMIC_LINKER	"/lib/ld-uClibc.so.0"
   1.172 ++#else
   1.173 ++#define ELF_DYNAMIC_LINKER "/lib/ld-linux-ia64.so.2"
   1.174 ++#endif
   1.175 + #undef LINK_SPEC
   1.176 + #define LINK_SPEC "\
   1.177 +   %{shared:-shared} \
   1.178 +   %{!shared: \
   1.179 +     %{!static: \
   1.180 +       %{rdynamic:-export-dynamic} \
   1.181 +-      %{!dynamic-linker:-dynamic-linker /lib/ld-linux-ia64.so.2}} \
   1.182 ++      %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
   1.183 +       %{static:-static}}"
   1.184 + 
   1.185 + 
   1.186 +--- gcc-3.4.4/gcc/config/m68k/linux.h
   1.187 ++++ gcc-3.4.4/gcc/config/m68k/linux.h
   1.188 +@@ -131,12 +131,17 @@
   1.189 + 
   1.190 + /* If ELF is the default format, we should not use /lib/elf.  */
   1.191 + 
   1.192 ++#ifdef USE_UCLIBC
   1.193 ++#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
   1.194 ++#else
   1.195 ++#define ELF_DYNAMIC_LINKER "/lib/ld.so.1"
   1.196 ++#endif
   1.197 + #undef	LINK_SPEC
   1.198 + #define LINK_SPEC "-m m68kelf %{shared} \
   1.199 +   %{!shared: \
   1.200 +     %{!static: \
   1.201 +       %{rdynamic:-export-dynamic} \
   1.202 +-      %{!dynamic-linker*:-dynamic-linker /lib/ld.so.1}} \
   1.203 ++      %{!dynamic-linker*:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
   1.204 +     %{static}}"
   1.205 + 
   1.206 + /* For compatibility with linux/a.out */
   1.207 +--- gcc-3.4.1-dist/gcc/config/mips/linux.h	2004-06-15 20:42:24.000000000 -0500
   1.208 ++++ gcc-3.4.1/gcc/config/mips/linux.h	2004-08-12 15:54:43.000000000 -0500
   1.209 +@@ -109,14 +109,19 @@
   1.210 + 
   1.211 + /* Borrowed from sparc/linux.h */
   1.212 + #undef LINK_SPEC
   1.213 ++#ifdef USE_UCLIBC
   1.214 ++#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
   1.215 ++#else
   1.216 ++#define ELF_DYNAMIC_LINKER "/lib/ld.so.1"
   1.217 ++#endif
   1.218 + #define LINK_SPEC \
   1.219 +  "%(endian_spec) \
   1.220 +   %{shared:-shared} \
   1.221 +   %{!shared: \
   1.222 +     %{!ibcs: \
   1.223 +       %{!static: \
   1.224 +         %{rdynamic:-export-dynamic} \
   1.225 +-        %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
   1.226 ++        %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
   1.227 +         %{static:-static}}}"
   1.228 + 
   1.229 + #undef SUBTARGET_ASM_SPEC
   1.230 +--- gcc-3.4.4/gcc/config/pa/pa-linux.h
   1.231 ++++ gcc-3.4.4/gcc/config/pa/pa-linux.h
   1.232 +@@ -77,13 +77,18 @@
   1.233 + /* Define this for shared library support because it isn't in the main
   1.234 +    linux.h file.  */
   1.235 + 
   1.236 ++#ifdef USE_UCLIBC
   1.237 ++#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
   1.238 ++#else
   1.239 ++#define ELF_DYNAMIC_LINKER "/lib/ld.so.1"
   1.240 ++#endif
   1.241 + #undef LINK_SPEC
   1.242 + #define LINK_SPEC "\
   1.243 +   %{shared:-shared} \
   1.244 +   %{!shared: \
   1.245 +     %{!static: \
   1.246 +       %{rdynamic:-export-dynamic} \
   1.247 +-      %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
   1.248 ++      %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
   1.249 +       %{static:-static}}"
   1.250 + 
   1.251 + /* glibc's profiling functions don't need gcc to allocate counters.  */
   1.252 +--- gcc-3.4.1-dist/gcc/config/rs6000/linux.h	2004-02-25 09:11:19.000000000 -0600
   1.253 ++++ gcc-3.4.1/gcc/config/rs6000/linux.h	2004-08-12 15:54:43.000000000 -0500
   1.254 +@@ -69,7 +69,11 @@
   1.255 + #define LINK_START_DEFAULT_SPEC "%(link_start_linux)"
   1.256 + 
   1.257 + #undef	LINK_OS_DEFAULT_SPEC
   1.258 ++#ifdef USE_UCLIBC
   1.259 ++#define LINK_OS_DEFAULT_SPEC "%(link_os_linux_uclibc)"
   1.260 ++#else
   1.261 + #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)"
   1.262 ++#endif
   1.263 + 
   1.264 + #define LINK_GCC_C_SEQUENCE_SPEC \
   1.265 +   "%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}"
   1.266 +--- gcc-3.4.1-dist/gcc/config/rs6000/sysv4.h	2004-06-10 01:39:50.000000000 -0500
   1.267 ++++ gcc-3.4.1/gcc/config/rs6000/sysv4.h	2004-08-12 15:54:43.000000000 -0500
   1.268 +@@ -947,6 +947,7 @@
   1.269 +   mcall-linux  : %(link_os_linux)       ; \
   1.270 +   mcall-gnu    : %(link_os_gnu)         ; \
   1.271 +   mcall-netbsd : %(link_os_netbsd)      ; \
   1.272 ++  mcall-linux-uclibc : %(link_os_linux_uclibc); \
   1.273 +   mcall-openbsd: %(link_os_openbsd)     ; \
   1.274 +                : %(link_os_default)     }"
   1.275 + 
   1.276 +@@ -1125,6 +1126,10 @@
   1.277 +   %{rdynamic:-export-dynamic} \
   1.278 +   %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}"
   1.279 + 
   1.280 ++#define LINK_OS_LINUX_UCLIBC_SPEC "-m elf32ppclinux %{!shared: %{!static: \
   1.281 ++  %{rdynamic:-export-dynamic} \
   1.282 ++  %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}}"
   1.283 ++
   1.284 + #if defined(HAVE_LD_EH_FRAME_HDR)
   1.285 + # define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
   1.286 + #endif
   1.287 +@@ -1291,6 +1296,7 @@
   1.288 +   { "link_os_sim",		LINK_OS_SIM_SPEC },			\
   1.289 +   { "link_os_freebsd",		LINK_OS_FREEBSD_SPEC },			\
   1.290 +   { "link_os_linux",		LINK_OS_LINUX_SPEC },			\
   1.291 ++  { "link_os_linux_uclibc",	LINK_OS_LINUX_UCLIBC_SPEC },		\
   1.292 +   { "link_os_gnu",		LINK_OS_GNU_SPEC },			\
   1.293 +   { "link_os_netbsd",		LINK_OS_NETBSD_SPEC },			\
   1.294 +   { "link_os_openbsd",		LINK_OS_OPENBSD_SPEC },			\
   1.295 +--- gcc-3.4.4/gcc/config/s390/linux.h
   1.296 ++++ gcc-3.4.4/gcc/config/s390/linux.h
   1.297 +@@ -77,6 +77,13 @@
   1.298 + #define MULTILIB_DEFAULTS { "m31" }
   1.299 + #endif
   1.300 + 
   1.301 ++#ifdef USE_UCLIBC
   1.302 ++#define ELF31_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
   1.303 ++#define ELF64_DYNAMIC_LINKER "/lib/ld64-uClibc.so.0"
   1.304 ++#else
   1.305 ++#define ELF31_DYNAMIC_LINKER "/lib/ld.so.1"
   1.306 ++#define ELF64_DYNAMIC_LINKER "/lib/ld64.so.1"
   1.307 ++#endif
   1.308 + #undef  LINK_SPEC
   1.309 + #define LINK_SPEC \
   1.310 +   "%{m31:-m elf_s390}%{m64:-m elf64_s390} \
   1.311 +@@ -86,8 +93,8 @@
   1.312 +       %{!static: \
   1.313 + 	%{rdynamic:-export-dynamic} \
   1.314 + 	%{!dynamic-linker: \
   1.315 +-          %{m31:-dynamic-linker /lib/ld.so.1} \
   1.316 +-          %{m64:-dynamic-linker /lib/ld64.so.1}}}}"
   1.317 ++          %{m31:-dynamic-linker " ELF31_DYNAMIC_LINKER "} \
   1.318 ++          %{m64:-dynamic-linker " ELF64_DYNAMIC_LINKER "}}}}"
   1.319 + 
   1.320 + 
   1.321 + #define TARGET_ASM_FILE_END file_end_indicate_exec_stack
   1.322 +--- gcc-3.4.1-dist/gcc/config/sh/linux.h	2004-01-11 20:29:13.000000000 -0600
   1.323 ++++ gcc-3.4.1/gcc/config/sh/linux.h	2004-08-12 15:54:43.000000000 -0500
   1.324 +@@ -73,11 +73,16 @@
   1.325 + #undef SUBTARGET_LINK_EMUL_SUFFIX
   1.326 + #define SUBTARGET_LINK_EMUL_SUFFIX "_linux"
   1.327 + #undef SUBTARGET_LINK_SPEC
   1.328 ++#ifdef USE_UCLIBC
   1.329 ++#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
   1.330 ++#else
   1.331 ++#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2"
   1.332 ++#endif
   1.333 + #define SUBTARGET_LINK_SPEC \
   1.334 +   "%{shared:-shared} \
   1.335 +    %{!static: \
   1.336 +      %{rdynamic:-export-dynamic} \
   1.337 +-     %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
   1.338 ++     %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
   1.339 +    %{static:-static}"
   1.340 + 
   1.341 + #undef LIB_SPEC
   1.342 +--- gcc-3.4.4/gcc/config/sparc/linux.h
   1.343 ++++ gcc-3.4.4/gcc/config/sparc/linux.h
   1.344 +@@ -162,13 +162,18 @@
   1.345 +         %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.1}} \
   1.346 +         %{static:-static}}}"
   1.347 + #else
   1.348 ++#ifdef USE_UCLIBC
   1.349 ++#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
   1.350 ++#else
   1.351 ++#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2"
   1.352 ++#endif
   1.353 + #define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \
   1.354 +   %{!mno-relax:%{!r:-relax}} \
   1.355 +   %{!shared: \
   1.356 +     %{!ibcs: \
   1.357 +       %{!static: \
   1.358 +         %{rdynamic:-export-dynamic} \
   1.359 +-        %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
   1.360 ++        %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
   1.361 +         %{static:-static}}}"
   1.362 + #endif
   1.363 + 
   1.364 +--- gcc-3.4.4/gcc/config/sparc/linux64.h
   1.365 ++++ gcc-3.4.4/gcc/config/sparc/linux64.h
   1.366 +@@ -167,12 +166,17 @@
   1.367 +   { "link_arch_default", LINK_ARCH_DEFAULT_SPEC },	  \
   1.368 +   { "link_arch",	 LINK_ARCH_SPEC },
   1.369 +     
   1.370 ++#ifdef USE_UCLIBC
   1.371 ++#define ELF_DYNAMIC_LINKER	"/lib/ld-uClibc.so.0"
   1.372 ++#else
   1.373 ++#define ELF_DYNAMIC_LINKER  "/lib/ld-linux.so.2"
   1.374 ++#endif
   1.375 + #define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \
   1.376 +   %{!shared: \
   1.377 +     %{!ibcs: \
   1.378 +       %{!static: \
   1.379 +         %{rdynamic:-export-dynamic} \
   1.380 +-        %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
   1.381 ++        %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
   1.382 +         %{static:-static}}} \
   1.383 + "
   1.384 + 
   1.385 +--- gcc-3.4.1-dist/libtool.m4	2004-05-18 04:08:37.000000000 -0500
   1.386 ++++ gcc-3.4.1/libtool.m4	2004-08-12 15:54:43.000000000 -0500
   1.387 +@@ -689,6 +689,11 @@
   1.388 +   lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
   1.389 +   ;;
   1.390 + 
   1.391 ++linux-uclibc*)
   1.392 ++  lt_cv_deplibs_check_method=pass_all
   1.393 ++  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
   1.394 ++  ;;
   1.395 ++
   1.396 + netbsd*)
   1.397 +   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
   1.398 +     [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$']
   1.399 +--- gcc-3.4.1-dist/ltconfig	2004-03-05 15:05:41.000000000 -0600
   1.400 ++++ gcc-3.4.1/ltconfig	2004-08-12 15:55:48.000000000 -0500
   1.401 +@@ -602,6 +602,7 @@
   1.402 + 
   1.403 + # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
   1.404 + case $host_os in
   1.405 ++linux-uclibc*) ;;
   1.406 + linux-gnu*) ;;
   1.407 + linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
   1.408 + esac
   1.409 +@@ -1262,6 +1263,24 @@
   1.410 +   dynamic_linker='GNU/Linux ld.so'
   1.411 +   ;;
   1.412 + 
   1.413 ++linux-uclibc*)
   1.414 ++  version_type=linux
   1.415 ++  need_lib_prefix=no
   1.416 ++  need_version=no
   1.417 ++  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
   1.418 ++  soname_spec='${libname}${release}.so$major'
   1.419 ++  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
   1.420 ++  shlibpath_var=LD_LIBRARY_PATH
   1.421 ++  shlibpath_overrides_runpath=no
   1.422 ++  # This implies no fast_install, which is unacceptable.
   1.423 ++  # Some rework will be needed to allow for fast_install
   1.424 ++  # before this can be enabled.
   1.425 ++  # Note: copied from linux-gnu, and may not be appropriate.
   1.426 ++  hardcode_into_libs=yes
   1.427 ++  # Assume using the uClibc dynamic linker.
   1.428 ++  dynamic_linker="uClibc ld.so"
   1.429 ++  ;;
   1.430 ++
   1.431 + netbsd*)
   1.432 +   need_lib_prefix=no
   1.433 +   need_version=no
   1.434 +--- gcc-3.4.1-dist/boehm-gc/configure	2004-07-01 14:14:03.000000000 -0500
   1.435 ++++ gcc-3.4.1/boehm-gc/configure	2004-08-12 16:22:57.000000000 -0500
   1.436 +@@ -1947,6 +1947,11 @@
   1.437 +   lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
   1.438 +   ;;
   1.439 + 
   1.440 ++linux-uclibc*)
   1.441 ++  lt_cv_deplibs_check_method=pass_all
   1.442 ++  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
   1.443 ++  ;;
   1.444 ++
   1.445 + netbsd*)
   1.446 +   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
   1.447 +     lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
   1.448 +--- gcc-3.4.1-dist/boehm-gc/ltconfig	2002-11-20 09:59:06.000000000 -0600
   1.449 ++++ gcc-3.4.1/boehm-gc/ltconfig	2004-08-12 15:54:42.000000000 -0500
   1.450 +@@ -1981,6 +1981,23 @@
   1.451 +   fi
   1.452 +   ;;
   1.453 + 
   1.454 ++linux-uclibc*)
   1.455 ++  version_type=linux
   1.456 ++  need_lib_prefix=no
   1.457 ++  need_version=no
   1.458 ++  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
   1.459 ++  soname_spec='${libname}${release}.so$major'
   1.460 ++  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
   1.461 ++  shlibpath_var=LD_LIBRARY_PATH
   1.462 ++  shlibpath_overrides_runpath=no
   1.463 ++  deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
   1.464 ++  file_magic_cmd=/usr/bin/file
   1.465 ++  file_magic_test_file=`echo /lib/libuClibc-*.so`
   1.466 ++
   1.467 ++  # Assume using the uClibc dynamic linker.
   1.468 ++  dynamic_linker="uClibc ld.so"
   1.469 ++  ;;
   1.470 ++
   1.471 + netbsd*)
   1.472 +   version_type=sunos
   1.473 +   if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then