100-uclibc-conf.patch 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544
  1. --- gcc-4.1.0/gcc/config/t-linux-uclibc
  2. +++ gcc-4.1.0/gcc/config/t-linux-uclibc
  3. @@ -0,0 +1,5 @@
  4. +# Remove glibc specific files added in t-linux
  5. +SHLIB_MAPFILES := $(filter-out $(srcdir)/config/libgcc-glibc.ver, $(SHLIB_MAPFILES))
  6. +
  7. +# Use unwind-dw2-fde instead of unwind-dw2-fde-glibc
  8. +LIB2ADDEH := $(subst unwind-dw2-fde-glibc.c,unwind-dw2-fde.c,$(LIB2ADDEH))
  9. --- gcc-4.1.0/gcc/config.gcc
  10. +++ gcc-4.1.0/gcc/config.gcc
  11. @@ -1887,7 +1887,7 @@ s390x-ibm-tpf*)
  12. ;;
  13. sh-*-elf* | sh[12346l]*-*-elf* | sh*-*-kaos* | \
  14. sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \
  15. - sh-*-linux* | sh[346lbe]*-*-linux* | \
  16. + sh*-*-linux* | sh[346lbe]*-*-linux* | \
  17. sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \
  18. sh64-*-netbsd* | sh64l*-*-netbsd*)
  19. tmake_file="${tmake_file} sh/t-sh sh/t-elf"
  20. @@ -2341,6 +2341,12 @@ m32c-*-elf*)
  21. ;;
  22. esac
  23. +# Rather than hook into each target, just do it after all the linux
  24. +# targets have been processed
  25. +case ${target} in
  26. +*-linux-uclibc*) tm_defines="${tm_defines} USE_UCLIBC" ; tmake_file="${tmake_file} t-linux-uclibc"
  27. +esac
  28. +
  29. case ${target} in
  30. i[34567]86-*-linux*aout* | i[34567]86-*-linux*libc1)
  31. tmake_file="${tmake_file} i386/t-gmm_malloc"
  32. --- gcc-4.1.0/boehm-gc/configure
  33. +++ gcc-4.1.0/boehm-gc/configure
  34. @@ -4320,6 +4320,11 @@ linux-gnu*)
  35. lt_cv_deplibs_check_method=pass_all
  36. ;;
  37. +linux-uclibc*)
  38. + lt_cv_deplibs_check_method=pass_all
  39. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  40. + ;;
  41. +
  42. netbsd* | knetbsd*-gnu)
  43. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  44. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
  45. --- gcc-4.1.0/configure
  46. +++ gcc-4.1.0/configure
  47. @@ -1133,7 +1133,7 @@ no)
  48. ;;
  49. "")
  50. case "${target}" in
  51. - *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu)
  52. + *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*)
  53. # Enable libmudflap by default in GNU and friends.
  54. ;;
  55. *-*-freebsd*)
  56. --- gcc-4.1.0/configure.in
  57. +++ gcc-4.1.0/configure.in
  58. @@ -341,7 +341,7 @@ no)
  59. ;;
  60. "")
  61. case "${target}" in
  62. - *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu)
  63. + *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*)
  64. # Enable libmudflap by default in GNU and friends.
  65. ;;
  66. *-*-freebsd*)
  67. --- gcc-4.1.0/contrib/regression/objs-gcc.sh
  68. +++ gcc-4.1.0/contrib/regression/objs-gcc.sh
  69. @@ -105,6 +105,10 @@ if [ $H_REAL_TARGET = $H_REAL_HOST -a $H
  70. then
  71. make all-gdb all-dejagnu all-ld || exit 1
  72. make install-gdb install-dejagnu install-ld || exit 1
  73. +elif [ $H_REAL_TARGET = $H_REAL_HOST -a $H_REAL_TARGET = i686-pc-linux-uclibc ]
  74. + then
  75. + make all-gdb all-dejagnu all-ld || exit 1
  76. + make install-gdb install-dejagnu install-ld || exit 1
  77. elif [ $H_REAL_TARGET = $H_REAL_HOST ] ; then
  78. make bootstrap || exit 1
  79. make install || exit 1
  80. --- gcc-4.1.0/gcc/config/alpha/linux-elf.h
  81. +++ gcc-4.1.0/gcc/config/alpha/linux-elf.h
  82. @@ -27,7 +27,11 @@ Boston, MA 02110-1301, USA. */
  83. #define SUBTARGET_EXTRA_SPECS \
  84. { "elf_dynamic_linker", ELF_DYNAMIC_LINKER },
  85. +#if defined USE_UCLIBC
  86. +#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
  87. +#else
  88. #define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2"
  89. +#endif
  90. #define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \
  91. %{O*:-O3} %{!O*:-O1} \
  92. --- gcc-4.1.0/gcc/config/arm/linux-elf.h
  93. +++ gcc-4.1.0/gcc/config/arm/linux-elf.h
  94. @@ -51,7 +51,11 @@
  95. #define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
  96. +#ifdef USE_UCLIBC
  97. +#define LINUX_TARGET_INTERPRETER "/lib/ld-uClibc.so.0"
  98. +#else
  99. #define LINUX_TARGET_INTERPRETER "/lib/ld-linux.so.2"
  100. +#endif
  101. #define LINUX_TARGET_LINK_SPEC "%{h*} %{version:-v} \
  102. %{b} \
  103. --- gcc-4.1.0/gcc/config/cris/linux.h
  104. +++ gcc-4.1.0/gcc/config/cris/linux.h
  105. @@ -73,6 +73,25 @@ Boston, MA 02110-1301, USA. */
  106. #undef CRIS_DEFAULT_CPU_VERSION
  107. #define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG
  108. +#ifdef USE_UCLIBC
  109. +
  110. +#undef CRIS_SUBTARGET_VERSION
  111. +#define CRIS_SUBTARGET_VERSION " - cris-axis-linux-uclibc"
  112. +
  113. +#undef CRIS_LINK_SUBTARGET_SPEC
  114. +#define CRIS_LINK_SUBTARGET_SPEC \
  115. + "-mcrislinux\
  116. + -rpath-link include/asm/../..%s\
  117. + %{shared} %{static}\
  118. + %{symbolic:-Bdynamic} %{shlib:-Bdynamic} %{static:-Bstatic}\
  119. + %{!shared: \
  120. + %{!static: \
  121. + %{rdynamic:-export-dynamic} \
  122. + %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}} \
  123. + %{!r:%{O2|O3: --gc-sections}}"
  124. +
  125. +#else /* USE_UCLIBC */
  126. +
  127. #undef CRIS_SUBTARGET_VERSION
  128. #define CRIS_SUBTARGET_VERSION " - cris-axis-linux-gnu"
  129. @@ -87,6 +106,8 @@ Boston, MA 02110-1301, USA. */
  130. %{!shared:%{!static:%{rdynamic:-export-dynamic}}}\
  131. %{!r:%{O2|O3: --gc-sections}}"
  132. +#endif /* USE_UCLIBC */
  133. +
  134. /* Node: Run-time Target */
  135. --- gcc-4.1.0/gcc/config/i386/linux.h
  136. +++ gcc-4.1.0/gcc/config/i386/linux.h
  137. @@ -107,6 +107,11 @@ Boston, MA 02110-1301, USA. */
  138. #define LINK_EMULATION "elf_i386"
  139. #define DYNAMIC_LINKER "/lib/ld-linux.so.2"
  140. +#if defined USE_UCLIBC
  141. +#undef DYNAMIC_LINKER
  142. +#define DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
  143. +#endif
  144. +
  145. #undef SUBTARGET_EXTRA_SPECS
  146. #define SUBTARGET_EXTRA_SPECS \
  147. { "link_emulation", LINK_EMULATION },\
  148. --- gcc-4.1.0/gcc/config/i386/linux64.h
  149. +++ gcc-4.1.0/gcc/config/i386/linux64.h
  150. @@ -54,14 +54,21 @@ Boston, MA 02110-1301, USA. */
  151. When the -shared link option is used a final link is not being
  152. done. */
  153. +#ifdef USE_UCLIBC
  154. +#define ELF32_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
  155. +#define ELF64_DYNAMIC_LINKER "/lib/ld64-uClibc.so.0"
  156. +#else
  157. +#define ELF32_DYNAMIC_LINKER "/lib/ld-linux.so.2"
  158. +#define ELF64_DYNAMIC_LINKER "/lib64/ld-linux-x86-64.so.2"
  159. +#endif
  160. #undef LINK_SPEC
  161. #define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} \
  162. %{shared:-shared} \
  163. %{!shared: \
  164. %{!static: \
  165. %{rdynamic:-export-dynamic} \
  166. - %{m32:%{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
  167. - %{!m32:%{!dynamic-linker:-dynamic-linker /lib64/ld-linux-x86-64.so.2}}} \
  168. + %{m32:%{!dynamic-linker:-dynamic-linker " ELF32_DYNAMIC_LINKER "}} \
  169. + %{!m32:%{!dynamic-linker:-dynamic-linker " ELF64_DYNAMIC_LINKER "}}} \
  170. %{static:-static}}"
  171. /* Similar to standard Linux, but adding -ffast-math support. */
  172. --- gcc-4.1.0/gcc/config/ia64/linux.h
  173. +++ gcc-4.1.0/gcc/config/ia64/linux.h
  174. @@ -37,13 +37,18 @@ do { \
  175. /* Define this for shared library support because it isn't in the main
  176. linux.h file. */
  177. +#ifdef USE_UCLIBC
  178. +#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
  179. +#else
  180. +#define ELF_DYNAMIC_LINKER "/lib/ld-linux-ia64.so.2"
  181. +#endif
  182. #undef LINK_SPEC
  183. #define LINK_SPEC "\
  184. %{shared:-shared} \
  185. %{!shared: \
  186. %{!static: \
  187. %{rdynamic:-export-dynamic} \
  188. - %{!dynamic-linker:-dynamic-linker /lib/ld-linux-ia64.so.2}} \
  189. + %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
  190. %{static:-static}}"
  191. --- gcc-4.1.0/gcc/config/m68k/linux.h
  192. +++ gcc-4.1.0/gcc/config/m68k/linux.h
  193. @@ -123,12 +123,17 @@ Boston, MA 02110-1301, USA. */
  194. /* If ELF is the default format, we should not use /lib/elf. */
  195. +#ifdef USE_UCLIBC
  196. +#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
  197. +#else
  198. +#define ELF_DYNAMIC_LINKER "/lib/ld.so.1"
  199. +#endif
  200. #undef LINK_SPEC
  201. #define LINK_SPEC "-m m68kelf %{shared} \
  202. %{!shared: \
  203. %{!static: \
  204. %{rdynamic:-export-dynamic} \
  205. - %{!dynamic-linker*:-dynamic-linker /lib/ld.so.1}} \
  206. + %{!dynamic-linker*:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
  207. %{static}}"
  208. /* For compatibility with linux/a.out */
  209. --- gcc-4.1.0/gcc/config/mips/linux.h
  210. +++ gcc-4.1.0/gcc/config/mips/linux.h
  211. @@ -105,6 +105,11 @@ Boston, MA 02110-1301, USA. */
  212. /* Borrowed from sparc/linux.h */
  213. #undef LINK_SPEC
  214. +#ifdef USE_UCLIBC
  215. +#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
  216. +#else
  217. +#define ELF_DYNAMIC_LINKER "/lib/ld.so.1"
  218. +#endif
  219. #define LINK_SPEC \
  220. "%(endian_spec) \
  221. %{shared:-shared} \
  222. @@ -112,7 +117,7 @@ Boston, MA 02110-1301, USA. */
  223. %{!ibcs: \
  224. %{!static: \
  225. %{rdynamic:-export-dynamic} \
  226. - %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
  227. + %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
  228. %{static:-static}}}"
  229. #undef SUBTARGET_ASM_SPEC
  230. --- gcc-4.1.0/gcc/config/pa/pa-linux.h
  231. +++ gcc-4.1.0/gcc/config/pa/pa-linux.h
  232. @@ -49,13 +49,18 @@ Boston, MA 02110-1301, USA. */
  233. /* Define this for shared library support because it isn't in the main
  234. linux.h file. */
  235. +#ifdef USE_UCLIBC
  236. +#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
  237. +#else
  238. +#define ELF_DYNAMIC_LINKER "/lib/ld.so.1"
  239. +#endif
  240. #undef LINK_SPEC
  241. #define LINK_SPEC "\
  242. %{shared:-shared} \
  243. %{!shared: \
  244. %{!static: \
  245. %{rdynamic:-export-dynamic} \
  246. - %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
  247. + %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
  248. %{static:-static}}"
  249. /* glibc's profiling functions don't need gcc to allocate counters. */
  250. --- gcc-4.1.0/gcc/config/rs6000/linux.h
  251. +++ gcc-4.1.0/gcc/config/rs6000/linux.h
  252. @@ -72,7 +72,11 @@
  253. #define LINK_START_DEFAULT_SPEC "%(link_start_linux)"
  254. #undef LINK_OS_DEFAULT_SPEC
  255. +#ifdef USE_UCLIBC
  256. +#define LINK_OS_DEFAULT_SPEC "%(link_os_linux_uclibc)"
  257. +#else
  258. #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)"
  259. +#endif
  260. #define LINK_GCC_C_SEQUENCE_SPEC \
  261. "%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}"
  262. --- gcc-4.1.0/gcc/config/rs6000/sysv4.h
  263. +++ gcc-4.1.0/gcc/config/rs6000/sysv4.h
  264. @@ -866,6 +866,7 @@ extern int fixuplabelno;
  265. mcall-linux : %(link_os_linux) ; \
  266. mcall-gnu : %(link_os_gnu) ; \
  267. mcall-netbsd : %(link_os_netbsd) ; \
  268. + mcall-linux-uclibc : %(link_os_linux_uclibc); \
  269. mcall-openbsd: %(link_os_openbsd) ; \
  270. : %(link_os_default) }"
  271. @@ -1043,6 +1044,10 @@ extern int fixuplabelno;
  272. %{rdynamic:-export-dynamic} \
  273. %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}"
  274. +#define LINK_OS_LINUX_UCLIBC_SPEC "-m elf32ppclinux %{!shared: %{!static: \
  275. + %{rdynamic:-export-dynamic} \
  276. + %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}}"
  277. +
  278. #if defined(HAVE_LD_EH_FRAME_HDR)
  279. # define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
  280. #endif
  281. @@ -1209,6 +1214,7 @@ ncrtn.o%s"
  282. { "link_os_sim", LINK_OS_SIM_SPEC }, \
  283. { "link_os_freebsd", LINK_OS_FREEBSD_SPEC }, \
  284. { "link_os_linux", LINK_OS_LINUX_SPEC }, \
  285. + { "link_os_linux_uclibc", LINK_OS_LINUX_UCLIBC_SPEC }, \
  286. { "link_os_gnu", LINK_OS_GNU_SPEC }, \
  287. { "link_os_netbsd", LINK_OS_NETBSD_SPEC }, \
  288. { "link_os_openbsd", LINK_OS_OPENBSD_SPEC }, \
  289. --- gcc-4.1.0/gcc/config/s390/linux.h
  290. +++ gcc-4.1.0/gcc/config/s390/linux.h
  291. @@ -77,6 +77,13 @@ Software Foundation, 51 Franklin Street,
  292. #define MULTILIB_DEFAULTS { "m31" }
  293. #endif
  294. +#ifdef USE_UCLIBC
  295. +#define ELF31_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
  296. +#define ELF64_DYNAMIC_LINKER "/lib/ld64-uClibc.so.0"
  297. +#else
  298. +#define ELF31_DYNAMIC_LINKER "/lib/ld.so.1"
  299. +#define ELF64_DYNAMIC_LINKER "/lib/ld64.so.1"
  300. +#endif
  301. #undef LINK_SPEC
  302. #define LINK_SPEC \
  303. "%{m31:-m elf_s390}%{m64:-m elf64_s390} \
  304. @@ -86,8 +93,8 @@ Software Foundation, 51 Franklin Street,
  305. %{!static: \
  306. %{rdynamic:-export-dynamic} \
  307. %{!dynamic-linker: \
  308. - %{m31:-dynamic-linker /lib/ld.so.1} \
  309. - %{m64:-dynamic-linker /lib/ld64.so.1}}}}"
  310. + %{m31:-dynamic-linker " ELF31_DYNAMIC_LINKER "} \
  311. + %{m64:-dynamic-linker " ELF64_DYNAMIC_LINKER "}}}}"
  312. #define TARGET_ASM_FILE_END file_end_indicate_exec_stack
  313. --- gcc-4.1.0/gcc/config/sh/linux.h
  314. +++ gcc-4.1.0/gcc/config/sh/linux.h
  315. @@ -56,12 +56,21 @@ Boston, MA 02110-1301, USA. */
  316. #undef SUBTARGET_LINK_EMUL_SUFFIX
  317. #define SUBTARGET_LINK_EMUL_SUFFIX "_linux"
  318. #undef SUBTARGET_LINK_SPEC
  319. +#ifdef USE_UCLIBC
  320. +#define SUBTARGET_LINK_SPEC \
  321. + "%{shared:-shared} \
  322. + %{!static: \
  323. + %{rdynamic:-export-dynamic} \
  324. + %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \
  325. + %{static:-static}"
  326. +#else
  327. #define SUBTARGET_LINK_SPEC \
  328. "%{shared:-shared} \
  329. %{!static: \
  330. %{rdynamic:-export-dynamic} \
  331. %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
  332. %{static:-static}"
  333. +#endif
  334. /* Output assembler code to STREAM to call the profiler. */
  335. --- gcc-4.1.0/gcc/config/sparc/linux.h
  336. +++ gcc-4.1.0/gcc/config/sparc/linux.h
  337. @@ -125,6 +125,11 @@ Boston, MA 02110-1301, USA. */
  338. /* If ELF is the default format, we should not use /lib/elf. */
  339. +#ifdef USE_UCLIBC
  340. +#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
  341. +#else
  342. +#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2"
  343. +#endif
  344. #undef LINK_SPEC
  345. #define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \
  346. %{!mno-relax:%{!r:-relax}} \
  347. @@ -132,7 +137,7 @@ Boston, MA 02110-1301, USA. */
  348. %{!ibcs: \
  349. %{!static: \
  350. %{rdynamic:-export-dynamic} \
  351. - %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
  352. + %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
  353. %{static:-static}}}"
  354. /* The sun bundled assembler doesn't accept -Yd, (and neither does gas).
  355. --- gcc-4.1.0/gcc/config/sparc/linux64.h
  356. +++ gcc-4.1.0/gcc/config/sparc/linux64.h
  357. @@ -162,12 +162,17 @@ Boston, MA 02110-1301, USA. */
  358. { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \
  359. { "link_arch", LINK_ARCH_SPEC },
  360. +#ifdef USE_UCLIBC
  361. +#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
  362. +#else
  363. +#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2"
  364. +#endif
  365. #define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \
  366. %{!shared: \
  367. %{!ibcs: \
  368. %{!static: \
  369. %{rdynamic:-export-dynamic} \
  370. - %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
  371. + %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
  372. %{static:-static}}} \
  373. "
  374. --- gcc-4.1.0/libffi/configure
  375. +++ gcc-4.1.0/libffi/configure
  376. @@ -3457,6 +3457,11 @@ linux-gnu*)
  377. lt_cv_deplibs_check_method=pass_all
  378. ;;
  379. +linux-uclibc*)
  380. + lt_cv_deplibs_check_method=pass_all
  381. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  382. + ;;
  383. +
  384. netbsd* | knetbsd*-gnu)
  385. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  386. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
  387. --- gcc-4.1.0/libgfortran/configure
  388. +++ gcc-4.1.0/libgfortran/configure
  389. @@ -3699,6 +3699,11 @@ linux-gnu*)
  390. lt_cv_deplibs_check_method=pass_all
  391. ;;
  392. +linux-uclibc*)
  393. + lt_cv_deplibs_check_method=pass_all
  394. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  395. + ;;
  396. +
  397. netbsd* | knetbsd*-gnu)
  398. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  399. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
  400. --- gcc-4.1.0/libjava/configure
  401. +++ gcc-4.1.0/libjava/configure
  402. @@ -5137,6 +5137,11 @@ linux-gnu*)
  403. lt_cv_deplibs_check_method=pass_all
  404. ;;
  405. +linux-uclibc*)
  406. + lt_cv_deplibs_check_method=pass_all
  407. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  408. + ;;
  409. +
  410. netbsd* | knetbsd*-gnu)
  411. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  412. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
  413. --- gcc-4.1.0/libmudflap/configure
  414. +++ gcc-4.1.0/libmudflap/configure
  415. @@ -5382,6 +5382,11 @@ linux-gnu*)
  416. lt_cv_deplibs_check_method=pass_all
  417. ;;
  418. +linux-uclibc*)
  419. + lt_cv_deplibs_check_method=pass_all
  420. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  421. + ;;
  422. +
  423. netbsd* | knetbsd*-gnu)
  424. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  425. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
  426. --- gcc-4.1.0/libobjc/configure
  427. +++ gcc-4.1.0/libobjc/configure
  428. @@ -3312,6 +3312,11 @@ linux-gnu*)
  429. lt_cv_deplibs_check_method=pass_all
  430. ;;
  431. +linux-uclibc*)
  432. + lt_cv_deplibs_check_method=pass_all
  433. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  434. + ;;
  435. +
  436. netbsd* | knetbsd*-gnu)
  437. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  438. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
  439. --- gcc-4.1.0/libtool.m4
  440. +++ gcc-4.1.0/libtool.m4
  441. @@ -743,6 +743,11 @@ linux-gnu*)
  442. lt_cv_deplibs_check_method=pass_all
  443. ;;
  444. +linux-uclibc*)
  445. + lt_cv_deplibs_check_method=pass_all
  446. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  447. + ;;
  448. +
  449. netbsd* | knetbsd*-gnu)
  450. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  451. [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$']
  452. --- gcc-4.1.0/ltconfig
  453. +++ gcc-4.1.0/ltconfig
  454. @@ -603,6 +603,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)-
  455. # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
  456. case $host_os in
  457. +linux-uclibc*) ;;
  458. linux-gnu*) ;;
  459. linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
  460. esac
  461. @@ -1274,6 +1275,23 @@ linux-gnu*)
  462. dynamic_linker='GNU/Linux ld.so'
  463. ;;
  464. +linux-uclibc*)
  465. + version_type=linux
  466. + need_lib_prefix=no
  467. + need_version=no
  468. + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  469. + soname_spec='${libname}${release}.so$major'
  470. + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
  471. + shlibpath_var=LD_LIBRARY_PATH
  472. + shlibpath_overrides_runpath=no
  473. + # This implies no fast_install, which is unacceptable.
  474. + # Some rework will be needed to allow for fast_install
  475. + # before this can be enabled.
  476. + hardcode_into_libs=yes
  477. + # Assume using the uClibc dynamic linker.
  478. + dynamic_linker="uClibc ld.so"
  479. + ;;
  480. +
  481. netbsd*)
  482. need_lib_prefix=no
  483. need_version=no
  484. --- gcc-4.1.0/zlib/configure
  485. +++ gcc-4.1.0/zlib/configure
  486. @@ -3426,6 +3426,11 @@ linux-gnu*)
  487. lt_cv_deplibs_check_method=pass_all
  488. ;;
  489. +linux-uclibc*)
  490. + lt_cv_deplibs_check_method=pass_all
  491. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  492. + ;;
  493. +
  494. netbsd* | knetbsd*-gnu)
  495. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  496. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'