finally move buildroot-ng to trunk
[openwrt/staging/dedeckeh.git] / toolchain / gcc / patches / 3.4.4 / 100-uclibc-conf.patch
1 diff -urN gcc-3.4.1-dist/boehm-gc/configure gcc-3.4.1/boehm-gc/configure
2 --- gcc-3.4.1-dist/boehm-gc/configure 2004-07-01 14:14:03.000000000 -0500
3 +++ gcc-3.4.1/boehm-gc/configure 2004-08-12 16:22:57.000000000 -0500
4 @@ -1947,6 +1947,11 @@
5 lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
6 ;;
7
8 +linux-uclibc*)
9 + lt_cv_deplibs_check_method=pass_all
10 + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
11 + ;;
12 +
13 netbsd*)
14 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
15 lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
16 diff -urN gcc-3.4.1-dist/boehm-gc/ltconfig gcc-3.4.1/boehm-gc/ltconfig
17 --- gcc-3.4.1-dist/boehm-gc/ltconfig 2002-11-20 09:59:06.000000000 -0600
18 +++ gcc-3.4.1/boehm-gc/ltconfig 2004-08-12 15:54:42.000000000 -0500
19 @@ -1981,6 +1981,23 @@
20 fi
21 ;;
22
23 +linux-uclibc*)
24 + version_type=linux
25 + need_lib_prefix=no
26 + need_version=no
27 + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
28 + soname_spec='${libname}${release}.so$major'
29 + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
30 + shlibpath_var=LD_LIBRARY_PATH
31 + shlibpath_overrides_runpath=no
32 + deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
33 + file_magic_cmd=/usr/bin/file
34 + file_magic_test_file=`echo /lib/libuClibc-*.so`
35 +
36 + # Assume using the uClibc dynamic linker.
37 + dynamic_linker="uClibc ld.so"
38 + ;;
39 +
40 netbsd*)
41 version_type=sunos
42 if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
43 diff -urN gcc-3.4.1-dist/gcc/config/arm/linux-elf.h gcc-3.4.1/gcc/config/arm/linux-elf.h
44 --- gcc-3.4.1-dist/gcc/config/arm/linux-elf.h 2004-01-31 00:18:11.000000000 -0600
45 +++ gcc-3.4.1/gcc/config/arm/linux-elf.h 2004-08-12 15:54:42.000000000 -0500
46 @@ -81,6 +81,18 @@
47 "%{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s"
48
49 #undef LINK_SPEC
50 +#ifdef USE_UCLIBC
51 +#define LINK_SPEC "%{h*} %{version:-v} \
52 + %{b} %{Wl,*:%*} \
53 + %{static:-Bstatic} \
54 + %{shared:-shared} \
55 + %{symbolic:-Bsymbolic} \
56 + %{rdynamic:-export-dynamic} \
57 + %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0} \
58 + -X \
59 + %{mbig-endian:-EB}" \
60 + SUBTARGET_EXTRA_LINK_SPEC
61 +#else
62 #define LINK_SPEC "%{h*} %{version:-v} \
63 %{b} %{Wl,*:%*} \
64 %{static:-Bstatic} \
65 @@ -91,6 +103,7 @@
66 -X \
67 %{mbig-endian:-EB}" \
68 SUBTARGET_EXTRA_LINK_SPEC
69 +#endif
70
71 #define TARGET_OS_CPP_BUILTINS() LINUX_TARGET_OS_CPP_BUILTINS()
72
73 diff -urN gcc-3.4.1-dist/gcc/config/cris/linux.h gcc-3.4.1/gcc/config/cris/linux.h
74 --- gcc-3.4.1-dist/gcc/config/cris/linux.h 2003-11-28 21:08:09.000000000 -0600
75 +++ gcc-3.4.1/gcc/config/cris/linux.h 2004-08-12 15:54:43.000000000 -0500
76 @@ -79,6 +79,25 @@
77 #undef CRIS_DEFAULT_CPU_VERSION
78 #define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG
79
80 +#ifdef USE_UCLIBC
81 +
82 +#undef CRIS_SUBTARGET_VERSION
83 +#define CRIS_SUBTARGET_VERSION " - cris-axis-linux-uclibc"
84 +
85 +#undef CRIS_LINK_SUBTARGET_SPEC
86 +#define CRIS_LINK_SUBTARGET_SPEC \
87 + "-mcrislinux\
88 + -rpath-link include/asm/../..%s\
89 + %{shared} %{static}\
90 + %{symbolic:-Bdynamic} %{shlib:-Bdynamic} %{static:-Bstatic}\
91 + %{!shared: \
92 + %{!static: \
93 + %{rdynamic:-export-dynamic} \
94 + %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}} \
95 + %{!r:%{O2|O3: --gc-sections}}"
96 +
97 +#else /* USE_UCLIBC */
98 +
99 #undef CRIS_SUBTARGET_VERSION
100 #define CRIS_SUBTARGET_VERSION " - cris-axis-linux-gnu"
101
102 @@ -93,6 +112,8 @@
103 %{!shared:%{!static:%{rdynamic:-export-dynamic}}}\
104 %{!r:%{O2|O3: --gc-sections}}"
105
106 +#endif /* USE_UCLIBC */
107 +
108
109 /* Node: Run-time Target */
110
111 diff -urN gcc-3.4.1-dist/gcc/config/cris/t-linux-uclibc gcc-3.4.1/gcc/config/cris/t-linux-uclibc
112 --- gcc-3.4.1-dist/gcc/config/cris/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600
113 +++ gcc-3.4.1/gcc/config/cris/t-linux-uclibc 2004-08-12 15:54:43.000000000 -0500
114 @@ -0,0 +1,3 @@
115 +T_CFLAGS = -DUSE_UCLIBC
116 +TARGET_LIBGCC2_CFLAGS += -fPIC
117 +CRTSTUFF_T_CFLAGS_S = $(TARGET_LIBGCC2_CFLAGS)
118 diff -urN gcc-3.4.1-dist/gcc/config/i386/linux.h gcc-3.4.1/gcc/config/i386/linux.h
119 --- gcc-3.4.1-dist/gcc/config/i386/linux.h 2003-11-28 21:08:10.000000000 -0600
120 +++ gcc-3.4.1/gcc/config/i386/linux.h 2004-08-12 15:54:43.000000000 -0500
121 @@ -118,6 +118,15 @@
122 %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.1}} \
123 %{static:-static}}}"
124 #else
125 +#if defined USE_UCLIBC
126 +#define LINK_SPEC "-m elf_i386 %{shared:-shared} \
127 + %{!shared: \
128 + %{!ibcs: \
129 + %{!static: \
130 + %{rdynamic:-export-dynamic} \
131 + %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \
132 + %{static:-static}}}"
133 +#else
134 #define LINK_SPEC "-m elf_i386 %{shared:-shared} \
135 %{!shared: \
136 %{!ibcs: \
137 @@ -126,6 +135,7 @@
138 %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
139 %{static:-static}}}"
140 #endif
141 +#endif
142
143 /* A C statement (sans semicolon) to output to the stdio stream
144 FILE the assembler definition of uninitialized global DECL named
145 diff -urN gcc-3.4.1-dist/gcc/config/mips/linux.h gcc-3.4.1/gcc/config/mips/linux.h
146 --- gcc-3.4.1-dist/gcc/config/mips/linux.h 2004-06-15 20:42:24.000000000 -0500
147 +++ gcc-3.4.1/gcc/config/mips/linux.h 2004-08-12 15:54:43.000000000 -0500
148 @@ -109,6 +109,17 @@
149
150 /* Borrowed from sparc/linux.h */
151 #undef LINK_SPEC
152 +#ifdef USE_UCLIBC
153 +#define LINK_SPEC \
154 + "%(endian_spec) \
155 + %{shared:-shared} \
156 + %{!shared: \
157 + %{!ibcs: \
158 + %{!static: \
159 + %{rdynamic:-export-dynamic} \
160 + %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \
161 + %{static:-static}}}"
162 +#else
163 #define LINK_SPEC \
164 "%(endian_spec) \
165 %{shared:-shared} \
166 @@ -118,6 +129,7 @@
167 %{rdynamic:-export-dynamic} \
168 %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
169 %{static:-static}}}"
170 +#endif
171
172 #undef SUBTARGET_ASM_SPEC
173 #define SUBTARGET_ASM_SPEC "\
174 diff -urN gcc-3.4.1-dist/gcc/config/rs6000/linux.h gcc-3.4.1/gcc/config/rs6000/linux.h
175 --- gcc-3.4.1-dist/gcc/config/rs6000/linux.h 2004-02-25 09:11:19.000000000 -0600
176 +++ gcc-3.4.1/gcc/config/rs6000/linux.h 2004-08-12 15:54:43.000000000 -0500
177 @@ -61,7 +61,11 @@
178 #define LINK_START_DEFAULT_SPEC "%(link_start_linux)"
179
180 #undef LINK_OS_DEFAULT_SPEC
181 +#ifdef USE_UCLIBC
182 +#define LINK_OS_DEFAULT_SPEC "%(link_os_linux_uclibc)"
183 +#else
184 #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)"
185 +#endif
186
187 #define LINK_GCC_C_SEQUENCE_SPEC \
188 "%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}"
189 diff -urN gcc-3.4.1-dist/gcc/config/rs6000/sysv4.h gcc-3.4.1/gcc/config/rs6000/sysv4.h
190 --- gcc-3.4.1-dist/gcc/config/rs6000/sysv4.h 2004-06-10 01:39:50.000000000 -0500
191 +++ gcc-3.4.1/gcc/config/rs6000/sysv4.h 2004-08-12 15:54:43.000000000 -0500
192 @@ -947,6 +947,7 @@
193 mcall-linux : %(link_os_linux) ; \
194 mcall-gnu : %(link_os_gnu) ; \
195 mcall-netbsd : %(link_os_netbsd) ; \
196 + mcall-linux-uclibc : %(link_os_linux_uclibc); \
197 mcall-openbsd: %(link_os_openbsd) ; \
198 : %(link_os_default) }"
199
200 @@ -1124,6 +1125,10 @@
201 %{rdynamic:-export-dynamic} \
202 %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}"
203
204 +#define LINK_OS_LINUX_UCLIBC_SPEC "-m elf32ppclinux %{!shared: %{!static: \
205 + %{rdynamic:-export-dynamic} \
206 + %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}}"
207 +
208 #if defined(HAVE_LD_EH_FRAME_HDR)
209 # define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
210 #endif
211 @@ -1290,6 +1295,7 @@
212 { "link_os_sim", LINK_OS_SIM_SPEC }, \
213 { "link_os_freebsd", LINK_OS_FREEBSD_SPEC }, \
214 { "link_os_linux", LINK_OS_LINUX_SPEC }, \
215 + { "link_os_linux_uclibc", LINK_OS_LINUX_UCLIBC_SPEC }, \
216 { "link_os_gnu", LINK_OS_GNU_SPEC }, \
217 { "link_os_netbsd", LINK_OS_NETBSD_SPEC }, \
218 { "link_os_openbsd", LINK_OS_OPENBSD_SPEC }, \
219 diff -urN gcc-3.4.1-dist/gcc/config/sh/linux.h gcc-3.4.1/gcc/config/sh/linux.h
220 --- gcc-3.4.1-dist/gcc/config/sh/linux.h 2004-01-11 20:29:13.000000000 -0600
221 +++ gcc-3.4.1/gcc/config/sh/linux.h 2004-08-12 15:54:43.000000000 -0500
222 @@ -73,12 +73,21 @@
223 #undef SUBTARGET_LINK_EMUL_SUFFIX
224 #define SUBTARGET_LINK_EMUL_SUFFIX "_linux"
225 #undef SUBTARGET_LINK_SPEC
226 +#ifdef USE_UCLIBC
227 +#define SUBTARGET_LINK_SPEC \
228 + "%{shared:-shared} \
229 + %{!static: \
230 + %{rdynamic:-export-dynamic} \
231 + %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \
232 + %{static:-static}"
233 +#else
234 #define SUBTARGET_LINK_SPEC \
235 "%{shared:-shared} \
236 %{!static: \
237 %{rdynamic:-export-dynamic} \
238 %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
239 %{static:-static}"
240 +#endif
241
242 #undef LIB_SPEC
243 #define LIB_SPEC \
244 diff -urN gcc-3.4.1-dist/gcc/config/sh/t-linux-uclibc gcc-3.4.1/gcc/config/sh/t-linux-uclibc
245 --- gcc-3.4.1-dist/gcc/config/sh/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600
246 +++ gcc-3.4.1/gcc/config/sh/t-linux-uclibc 2004-08-12 15:54:43.000000000 -0500
247 @@ -0,0 +1,13 @@
248 +T_CFLAGS = -DUSE_UCLIBC
249 +
250 +TARGET_LIBGCC2_CFLAGS = -fpic -DNO_FPSCR_VALUES
251 +LIB1ASMFUNCS_CACHE = _ic_invalidate
252 +
253 +LIB2FUNCS_EXTRA=
254 +
255 +MULTILIB_OPTIONS= $(MULTILIB_ENDIAN) m3e/m4
256 +MULTILIB_DIRNAMES=
257 +MULTILIB_MATCHES =
258 +MULTILIB_EXCEPTIONS=
259 +
260 +EXTRA_MULTILIB_PARTS= crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o
261 diff -urN gcc-3.4.1-dist/gcc/config/sh/t-sh64-uclibc gcc-3.4.1/gcc/config/sh/t-sh64-uclibc
262 --- gcc-3.4.1-dist/gcc/config/sh/t-sh64-uclibc 1969-12-31 18:00:00.000000000 -0600
263 +++ gcc-3.4.1/gcc/config/sh/t-sh64-uclibc 2004-08-12 15:54:43.000000000 -0500
264 @@ -0,0 +1,13 @@
265 +EXTRA_MULTILIB_PARTS= crt1.o crti.o crtn.o crtbegin.o crtend.o
266 +
267 +LIB1ASMFUNCS = \
268 + _sdivsi3 _sdivsi3_i4 _udivsi3 _udivsi3_i4 _set_fpscr \
269 + _shcompact_call_trampoline _shcompact_return_trampoline \
270 + _shcompact_incoming_args _ic_invalidate _nested_trampoline \
271 + _push_pop_shmedia_regs \
272 + _udivdi3 _divdi3 _umoddi3 _moddi3
273 +
274 +MULTILIB_OPTIONS = $(MULTILIB_ENDIAN) m5-32media-nofpu/m5-compact/m5-compact-nofpu/m5-64media/m5-64media-nofpu
275 +MULTILIB_DIRNAMES= $(MULTILIB_ENDIAN) nofpu compact nofpu/compact media64 nofpu/media64
276 +MULTILIB_MATCHES=
277 +MULTILIB_EXCEPTIONS=
278 diff -urN gcc-3.4.1-dist/gcc/config/t-linux-uclibc gcc-3.4.1/gcc/config/t-linux-uclibc
279 --- gcc-3.4.1-dist/gcc/config/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600
280 +++ gcc-3.4.1/gcc/config/t-linux-uclibc 2004-08-12 15:54:43.000000000 -0500
281 @@ -0,0 +1,15 @@
282 +T_CFLAGS = -DUSE_UCLIBC
283 +
284 +# Compile crtbeginS.o and crtendS.o with pic.
285 +CRTSTUFF_T_CFLAGS_S = $(CRTSTUFF_T_CFLAGS) -fPIC
286 +# Compile libgcc2.a with pic.
287 +TARGET_LIBGCC2_CFLAGS = -fPIC
288 +
289 +# Override t-slibgcc-elf-ver to export some libgcc symbols with
290 +# the symbol versions that glibc used.
291 +#SHLIB_MAPFILES += $(srcdir)/config/libgcc-glibc.ver
292 +
293 +# Use unwind-dw2-fde
294 +LIB2ADDEH = $(srcdir)/unwind-dw2.c $(srcdir)/unwind-dw2-fde.c \
295 + $(srcdir)/unwind-sjlj.c $(srcdir)/gthr-gnat.c $(srcdir)/unwind-c.c
296 +LIB2ADDEHDEP = unwind.inc unwind-dw2-fde.h
297 diff -urN gcc-3.4.1-dist/gcc/config.gcc gcc-3.4.1/gcc/config.gcc
298 --- gcc-3.4.1-dist/gcc/config.gcc 2004-04-21 10:12:35.000000000 -0500
299 +++ gcc-3.4.1/gcc/config.gcc 2004-08-12 15:59:46.000000000 -0500
300 @@ -664,6 +664,12 @@
301 extra_parts=""
302 use_collect2=yes
303 ;;
304 +arm*-*-linux-uclibc*) # ARM GNU/Linux with ELF - uClibc
305 + tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h"
306 + tmake_file="t-slibgcc-elf-ver t-linux-uclibc arm/t-linux"
307 + extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
308 + gnu_ld=yes
309 + ;;
310 arm*-*-linux*) # ARM GNU/Linux with ELF
311 tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h"
312 tmake_file="t-slibgcc-elf-ver t-linux arm/t-linux"
313 @@ -725,6 +731,10 @@
314 tmake_file="cris/t-cris cris/t-elfmulti"
315 gas=yes
316 ;;
317 +cris-*-linux-uclibc*)
318 + tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.h cris/linux.h"
319 + tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux-uclibc"
320 + ;;
321 cris-*-linux*)
322 tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.h cris/linux.h"
323 tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux"
324 @@ -988,6 +998,11 @@
325 thread_file='single'
326 fi
327 ;;
328 +i[34567]86-*-linux*uclibc*) # Intel 80386's running GNU/Linux
329 + # with ELF format using uClibc
330 + tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h"
331 + tmake_file="t-slibgcc-elf-ver t-linux-uclibc i386/t-crtstuff"
332 + ;;
333 i[34567]86-*-linux*) # Intel 80386's running GNU/Linux
334 # with ELF format using glibc 2
335 # aka GNU/Linux C library 6
336 @@ -1547,6 +1562,16 @@
337 gnu_ld=yes
338 gas=yes
339 ;;
340 +mips*-*-linux-uclibc*) # Linux MIPS, either endian. uClibc
341 + tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h"
342 + case ${target} in
343 + mipsisa32*-*)
344 + target_cpu_default="MASK_SOFT_FLOAT"
345 + tm_defines="MIPS_ISA_DEFAULT=32"
346 + ;;
347 + esac
348 + tmake_file="t-slibgcc-elf-ver t-linux-uclibc"
349 + ;;
350 mips*-*-linux*) # Linux MIPS, either endian.
351 tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h"
352 case ${target} in
353 @@ -1764,6 +1789,10 @@
354 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h rs6000/linuxspe.h"
355 tmake_file="rs6000/t-fprules rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm"
356 ;;
357 +powerpc-*-linux-uclibc*)
358 + tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h"
359 + tmake_file="rs6000/t-fprules rs6000/t-ppcos t-slibgcc-elf-ver t-linux-uclibc rs6000/t-ppccomm"
360 + ;;
361 powerpc-*-linux*)
362 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h"
363 tmake_file="rs6000/t-fprules rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm"
364 @@ -1916,7 +1945,7 @@
365 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/embed-elf.h sh/rtemself.h rtems.h"
366 ;;
367 sh-*-linux* | sh[2346lbe]*-*-linux*)
368 - tmake_file="sh/t-sh sh/t-elf t-slibgcc-elf-ver t-linux"
369 + tmake_file="sh/t-sh sh/t-elf t-slibgcc-elf-ver"
370 case ${target} in
371 sh*be-*-* | sh*eb-*-*) ;;
372 *)
373 @@ -1924,9 +1953,17 @@
374 tmake_file="${tmake_file} sh/t-le"
375 ;;
376 esac
377 - tmake_file="${tmake_file} sh/t-linux"
378 + case ${target} in
379 + *-*-linux-uclibc*) tmake_file="${tmake_file} t-linux-uclibc sh/t-linux-uclibc" ;;
380 + *) tmake_file="${tmake_file} t-linux sh/t-linux" ;;
381 + esac
382 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/linux.h"
383 case ${target} in
384 + sh64*-*-linux-uclibc*)
385 + tmake_file="${tmake_file} sh/t-sh64-uclibc"
386 + tm_file="${tm_file} sh/sh64.h"
387 + extra_headers="shmedia.h ushmedia.h sshmedia.h"
388 + ;;
389 sh64*)
390 tmake_file="${tmake_file} sh/t-sh64"
391 tm_file="${tm_file} sh/sh64.h"
392 diff -urN gcc-3.4.1-dist/libtool.m4 gcc-3.4.1/libtool.m4
393 --- gcc-3.4.1-dist/libtool.m4 2004-05-18 04:08:37.000000000 -0500
394 +++ gcc-3.4.1/libtool.m4 2004-08-12 15:54:43.000000000 -0500
395 @@ -689,6 +689,11 @@
396 lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
397 ;;
398
399 +linux-uclibc*)
400 + lt_cv_deplibs_check_method=pass_all
401 + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
402 + ;;
403 +
404 netbsd*)
405 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
406 [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$']
407 diff -urN gcc-3.4.1-dist/ltconfig gcc-3.4.1/ltconfig
408 --- gcc-3.4.1-dist/ltconfig 2004-03-05 15:05:41.000000000 -0600
409 +++ gcc-3.4.1/ltconfig 2004-08-12 15:55:48.000000000 -0500
410 @@ -602,6 +602,7 @@
411
412 # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
413 case $host_os in
414 +linux-uclibc*) ;;
415 linux-gnu*) ;;
416 linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
417 esac
418 @@ -1262,6 +1263,24 @@
419 dynamic_linker='GNU/Linux ld.so'
420 ;;
421
422 +linux-uclibc*)
423 + version_type=linux
424 + need_lib_prefix=no
425 + need_version=no
426 + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
427 + soname_spec='${libname}${release}.so$major'
428 + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
429 + shlibpath_var=LD_LIBRARY_PATH
430 + shlibpath_overrides_runpath=no
431 + # This implies no fast_install, which is unacceptable.
432 + # Some rework will be needed to allow for fast_install
433 + # before this can be enabled.
434 + # Note: copied from linux-gnu, and may not be appropriate.
435 + hardcode_into_libs=yes
436 + # Assume using the uClibc dynamic linker.
437 + dynamic_linker="uClibc ld.so"
438 + ;;
439 +
440 netbsd*)
441 need_lib_prefix=no
442 need_version=no