100-uclibc-conf.patch 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749
  1. diff -ur binutils-2.15.94.0.2.orig/bfd/config.bfd binutils-2.15.94.0.2/bfd/config.bfd
  2. --- binutils-2.15.94.0.2.orig/bfd/config.bfd 2004-12-22 15:00:57.219024360 -0500
  3. +++ binutils-2.15.94.0.2/bfd/config.bfd 2004-12-22 15:01:18.982715776 -0500
  4. @@ -140,7 +140,7 @@
  5. targ_defvec=ecoffalpha_little_vec
  6. targ_selvecs=bfd_elf64_alpha_vec
  7. ;;
  8. - alpha*-*-linux-gnu* | alpha*-*-elf*)
  9. + alpha*-*-linux-gnu* | alpha*-*-linux-uclibc* | alpha*-*-elf*)
  10. targ_defvec=bfd_elf64_alpha_vec
  11. targ_selvecs=ecoffalpha_little_vec
  12. ;;
  13. @@ -150,7 +150,7 @@
  14. alpha*-*-*)
  15. targ_defvec=ecoffalpha_little_vec
  16. ;;
  17. - ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu)
  18. + ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-linux-uclibc* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu)
  19. targ_defvec=bfd_elf64_ia64_little_vec
  20. targ_selvecs="bfd_elf64_ia64_big_vec bfd_efi_app_ia64_vec"
  21. ;;
  22. @@ -227,7 +227,7 @@
  23. targ_defvec=bfd_elf32_littlearm_vec
  24. targ_selvecs=bfd_elf32_bigarm_vec
  25. ;;
  26. - armeb-*-elf | arm*b-*-linux-gnu*)
  27. + armeb-*-elf | arm*b-*-linux-gnu* | arm*b-*-linux-uclibc*)
  28. targ_defvec=bfd_elf32_bigarm_vec
  29. targ_selvecs=bfd_elf32_littlearm_vec
  30. ;;
  31. @@ -235,8 +235,8 @@
  32. targ_defvec=bfd_elf32_littlearm_vec
  33. targ_selvecs=bfd_elf32_bigarm_vec
  34. ;;
  35. - arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-conix* | \
  36. - arm*-*-uclinux* | arm-*-kfreebsd*-gnu | arm-*-vxworks | \
  37. + arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-linux-uclibc* | \
  38. + arm*-*-conix* | arm*-*-uclinux* | arm-*-kfreebsd*-gnu | arm-*-vxworks | \
  39. arm*-*-eabi* )
  40. targ_defvec=bfd_elf32_littlearm_vec
  41. targ_selvecs=bfd_elf32_bigarm_vec
  42. @@ -381,7 +381,7 @@
  43. ;;
  44. #ifdef BFD64
  45. - hppa*64*-*-linux-gnu*)
  46. + hppa*64*-*-linux-gnu* | hppa*64*-*-linux-uclibc*)
  47. targ_defvec=bfd_elf64_hppa_linux_vec
  48. targ_selvecs=bfd_elf64_hppa_vec
  49. ;;
  50. @@ -392,7 +392,7 @@
  51. ;;
  52. #endif
  53. - hppa*-*-linux-gnu*)
  54. + hppa*-*-linux-gnu* | hppa*-*-linux-uclibc*)
  55. targ_defvec=bfd_elf32_hppa_linux_vec
  56. targ_selvecs=bfd_elf32_hppa_vec
  57. ;;
  58. @@ -525,7 +525,7 @@
  59. targ_selvecs=bfd_elf32_i386_vec
  60. targ_underscore=yes
  61. ;;
  62. - i[3-7]86-*-linux-gnu*)
  63. + i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*)
  64. targ_defvec=bfd_elf32_i386_vec
  65. targ_selvecs="i386linux_vec bfd_efi_app_ia32_vec"
  66. targ64_selvecs=bfd_elf64_x86_64_vec
  67. @@ -539,7 +539,7 @@
  68. targ_defvec=bfd_elf64_x86_64_vec
  69. targ_selvecs="bfd_elf32_i386_vec i386netbsd_vec i386coff_vec bfd_efi_app_ia32_vec"
  70. ;;
  71. - x86_64-*-linux-gnu*)
  72. + x86_64-*-linux-gnu* | x86_64-*-linux-uclibc*)
  73. targ_defvec=bfd_elf64_x86_64_vec
  74. targ_selvecs="bfd_elf32_i386_vec i386linux_vec bfd_efi_app_ia32_vec"
  75. ;;
  76. @@ -715,7 +715,7 @@
  77. targ_selvecs=bfd_elf32_m68k_vec
  78. targ_underscore=yes
  79. ;;
  80. - m68*-*-linux-gnu*)
  81. + m68*-*-linux-gnu* | m68*-*-linux-uclibc*)
  82. targ_defvec=bfd_elf32_m68k_vec
  83. targ_selvecs=m68klinux_vec
  84. ;;
  85. @@ -1001,7 +1001,8 @@
  86. ;;
  87. #endif
  88. powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \
  89. - powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-rtems* | \
  90. + powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-linux-uclibc* | \
  91. + powerpc-*-rtems* | \
  92. powerpc-*-chorus* | powerpc-*-vxworks* | powerpc-*-windiss*)
  93. targ_defvec=bfd_elf32_powerpc_vec
  94. targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec"
  95. @@ -1038,8 +1039,8 @@
  96. targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec"
  97. ;;
  98. powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \
  99. - powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-vxworks* |\
  100. - powerpcle-*-rtems*)
  101. + powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-linux-uclibc* |\
  102. + powerpcle-*-vxworks* | powerpcle-*-rtems*)
  103. targ_defvec=bfd_elf32_powerpcle_vec
  104. targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec"
  105. targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec"
  106. @@ -1209,7 +1210,7 @@
  107. targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec"
  108. targ_underscore=yes
  109. ;;
  110. - sparc-*-linux-gnu*)
  111. + sparc-*-linux-gnu* | sparc-*-linux-uclibc*)
  112. targ_defvec=bfd_elf32_sparc_vec
  113. targ_selvecs="sparclinux_vec bfd_elf64_sparc_vec sunos_big_vec"
  114. ;;
  115. @@ -1256,7 +1257,7 @@
  116. targ_defvec=sunos_big_vec
  117. targ_underscore=yes
  118. ;;
  119. - sparc64-*-linux-gnu*)
  120. + sparc64-*-linux-gnu* | sparc64-*-linux-uclibc*)
  121. targ_defvec=bfd_elf64_sparc_vec
  122. targ_selvecs="bfd_elf32_sparc_vec sparclinux_vec sunos_big_vec"
  123. ;;
  124. @@ -1325,7 +1326,7 @@
  125. targ_underscore=yes
  126. ;;
  127. - vax-*-linux-gnu*)
  128. + vax-*-linux-gnu* | vax-*-linux-uclibc*)
  129. targ_defvec=bfd_elf32_vax_vec
  130. ;;
  131. diff -ur binutils-2.15.94.0.2.orig/bfd/configure binutils-2.15.94.0.2/bfd/configure
  132. --- binutils-2.15.94.0.2.orig/bfd/configure 2004-12-22 15:00:57.221024056 -0500
  133. +++ binutils-2.15.94.0.2/bfd/configure 2004-12-22 15:01:18.996713648 -0500
  134. @@ -3583,6 +3583,11 @@
  135. lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
  136. ;;
  137. +linux-uclibc*)
  138. + lt_cv_deplibs_check_method=pass_all
  139. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  140. + ;;
  141. +
  142. netbsd* | knetbsd*-gnu)
  143. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  144. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
  145. @@ -9914,7 +9919,7 @@
  146. alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
  147. COREFILE=''
  148. ;;
  149. - alpha*-*-linux-gnu*)
  150. + alpha*-*-linux-gnu* | alpha*-*-linux-uclibc*)
  151. COREFILE=trad-core.lo
  152. TRAD_HEADER='"hosts/alphalinux.h"'
  153. ;;
  154. @@ -9978,7 +9983,7 @@
  155. COREFILE=trad-core.lo
  156. TRAD_HEADER='"hosts/i386mach3.h"'
  157. ;;
  158. - i[3-7]86-*-linux-gnu*)
  159. + i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*)
  160. COREFILE=trad-core.lo
  161. TRAD_HEADER='"hosts/i386linux.h"'
  162. ;;
  163. @@ -10016,7 +10021,7 @@
  164. COREFILE=trad-core.lo
  165. TRAD_HEADER='"hosts/hp300bsd.h"'
  166. ;;
  167. - m68*-*-linux-gnu*)
  168. + m68*-*-linux-gnu* | m68*-*-linux-uclibc*)
  169. COREFILE=trad-core.lo
  170. TRAD_HEADER='"hosts/m68klinux.h"'
  171. ;;
  172. @@ -10150,7 +10155,7 @@
  173. COREFILE=trad-core.lo
  174. TRAD_HEADER='"hosts/vaxult2.h"'
  175. ;;
  176. - vax-*-linux-gnu*)
  177. + vax-*-linux-gnu* | vax-*-linux-uclibc*)
  178. COREFILE=trad-core.lo
  179. TRAD_HEADER='"hosts/vaxlinux.h"'
  180. ;;
  181. diff -ur binutils-2.15.94.0.2.orig/bfd/configure.in binutils-2.15.94.0.2/bfd/configure.in
  182. --- binutils-2.15.94.0.2.orig/bfd/configure.in 2004-12-22 15:00:57.223023752 -0500
  183. +++ binutils-2.15.94.0.2/bfd/configure.in 2004-12-22 15:01:18.998713344 -0500
  184. @@ -163,7 +163,7 @@
  185. alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
  186. COREFILE=''
  187. ;;
  188. - alpha*-*-linux-gnu*)
  189. + alpha*-*-linux-gnu* | alpha*-*-linux-uclibc*)
  190. COREFILE=trad-core.lo
  191. TRAD_HEADER='"hosts/alphalinux.h"'
  192. ;;
  193. @@ -248,7 +248,7 @@
  194. TRAD_HEADER='"hosts/i386mach3.h"'
  195. ;;
  196. changequote(,)dnl
  197. - i[3-7]86-*-linux-gnu*)
  198. + i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*)
  199. changequote([,])dnl
  200. COREFILE=trad-core.lo
  201. TRAD_HEADER='"hosts/i386linux.h"'
  202. @@ -289,7 +289,7 @@
  203. COREFILE=trad-core.lo
  204. TRAD_HEADER='"hosts/hp300bsd.h"'
  205. ;;
  206. - m68*-*-linux-gnu*)
  207. + m68*-*-linux-gnu* | m68*-*-linux-uclibc*)
  208. COREFILE=trad-core.lo
  209. TRAD_HEADER='"hosts/m68klinux.h"'
  210. ;;
  211. @@ -375,7 +375,7 @@
  212. COREFILE=trad-core.lo
  213. TRAD_HEADER='"hosts/vaxult2.h"'
  214. ;;
  215. - vax-*-linux-gnu*)
  216. + vax-*-linux-gnu* | vax-*-linux-uclibc*)
  217. COREFILE=trad-core.lo
  218. TRAD_HEADER='"hosts/vaxlinux.h"'
  219. ;;
  220. diff -ur binutils-2.15.94.0.2.orig/binutils/configure binutils-2.15.94.0.2/binutils/configure
  221. --- binutils-2.15.94.0.2.orig/binutils/configure 2004-12-22 15:00:57.351004296 -0500
  222. +++ binutils-2.15.94.0.2/binutils/configure 2004-12-22 15:01:19.002712736 -0500
  223. @@ -1575,6 +1575,11 @@
  224. lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
  225. ;;
  226. +linux-uclibc*)
  227. + lt_cv_deplibs_check_method=pass_all
  228. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  229. + ;;
  230. +
  231. netbsd* | knetbsd*-gnu)
  232. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  233. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
  234. diff -ur binutils-2.15.94.0.2.orig/configure binutils-2.15.94.0.2/configure
  235. --- binutils-2.15.94.0.2.orig/configure 2004-12-22 15:00:57.321008856 -0500
  236. +++ binutils-2.15.94.0.2/configure 2004-12-22 15:01:19.007711976 -0500
  237. @@ -1352,6 +1352,18 @@
  238. i[3456789]86-*-coff | i[3456789]86-*-elf)
  239. noconfigdirs="$noconfigdirs ${libgcj}"
  240. ;;
  241. + i[3456789]86-*-linux-uclibc*)
  242. + # This section makes it possible to build newlib natively on linux.
  243. + # If we are using a cross compiler then don't configure newlib.
  244. + if test x${is_cross_compiler} != xno ; then
  245. + noconfigdirs="$noconfigdirs target-newlib"
  246. + fi
  247. + noconfigdirs="$noconfigdirs target-libgloss"
  248. + # If we are not using a cross compiler, do configure newlib.
  249. + # Note however, that newlib will only be configured in this situation
  250. + # if the --with-newlib option has been given, because otherwise
  251. + # 'target-newlib' will appear in skipdirs.
  252. + ;;
  253. i[3456789]86-*-linux*)
  254. # The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's
  255. # not build java stuff by default.
  256. diff -ur binutils-2.15.94.0.2.orig/configure.in binutils-2.15.94.0.2/configure.in
  257. --- binutils-2.15.94.0.2.orig/configure.in 2004-12-22 15:00:57.321008856 -0500
  258. +++ binutils-2.15.94.0.2/configure.in 2004-12-22 15:01:19.010711520 -0500
  259. @@ -561,6 +561,18 @@
  260. i[[3456789]]86-*-coff | i[[3456789]]86-*-elf)
  261. noconfigdirs="$noconfigdirs ${libgcj}"
  262. ;;
  263. + i[[3456789]]86-*-linux-uclibc*)
  264. + # This section makes it possible to build newlib natively on linux.
  265. + # If we are using a cross compiler then don't configure newlib.
  266. + if test x${is_cross_compiler} != xno ; then
  267. + noconfigdirs="$noconfigdirs target-newlib"
  268. + fi
  269. + noconfigdirs="$noconfigdirs target-libgloss"
  270. + # If we are not using a cross compiler, do configure newlib.
  271. + # Note however, that newlib will only be configured in this situation
  272. + # if the --with-newlib option has been given, because otherwise
  273. + # 'target-newlib' will appear in skipdirs.
  274. + ;;
  275. i[[3456789]]86-*-linux*)
  276. # The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's
  277. # not build java stuff by default.
  278. diff -ur binutils-2.15.94.0.2.orig/gas/configure binutils-2.15.94.0.2/gas/configure
  279. --- binutils-2.15.94.0.2.orig/gas/configure 2004-12-22 15:00:57.461987424 -0500
  280. +++ binutils-2.15.94.0.2/gas/configure 2004-12-22 15:01:19.019710152 -0500
  281. @@ -3420,6 +3420,11 @@
  282. lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
  283. ;;
  284. +linux-uclibc*)
  285. + lt_cv_deplibs_check_method=pass_all
  286. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  287. + ;;
  288. +
  289. netbsd* | knetbsd*-gnu)
  290. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  291. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
  292. @@ -4256,6 +4261,7 @@
  293. alpha*-*-osf*) fmt=ecoff ;;
  294. alpha*-*-linuxecoff*) fmt=ecoff ;;
  295. alpha*-*-linux-gnu*) fmt=elf em=linux ;;
  296. + alpha*-*-linux-uclibc*) fmt=elf em=linux ;;
  297. alpha*-*-netbsd*) fmt=elf em=nbsd ;;
  298. alpha*-*-openbsd*) fmt=elf em=obsd ;;
  299. @@ -4272,6 +4278,7 @@
  300. arm-*-linux*aout*) fmt=aout em=linux ;;
  301. arm*-*-linux-gnueabi*) fmt=elf em=armlinuxeabi ;;
  302. arm*-*-linux-gnu*) fmt=elf em=linux ;;
  303. + arm*-*-linux-uclibc*) fmt=elf em=linux ;;
  304. arm*-*-uclinux*) fmt=elf em=linux ;;
  305. arm-*-netbsdelf*) fmt=elf em=nbsd ;;
  306. arm-*-*n*bsd*) fmt=aout em=nbsd ;;
  307. @@ -4285,6 +4292,7 @@
  308. cris-*-linux-gnu* | crisv32-*-linux-gnu*)
  309. fmt=multi bfd_gas=yes em=linux ;;
  310. + cris-*-linux-uclibc*) fmt=multi bfd_gas=yes em=linux ;;
  311. cris-*-* | crisv32-*-*) fmt=multi bfd_gas=yes ;;
  312. crx-*-elf*) fmt=elf ;;
  313. @@ -4344,7 +4352,9 @@
  314. i386-*-linux*oldld) fmt=aout em=linux ;;
  315. i386-*-linux*coff*) fmt=coff em=linux ;;
  316. i386-*-linux-gnu*) fmt=elf em=linux ;;
  317. + i386-*-linux-uclibc*) fmt=elf em=linux ;;
  318. x86_64-*-linux-gnu*) fmt=elf em=linux ;;
  319. + x86_64-*-linux-uclibc*) fmt=elf em=linux ;;
  320. i386-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;;
  321. i386-*-sysv[45]*) fmt=elf ;;
  322. i386-*-solaris*) fmt=elf ;;
  323. @@ -4404,6 +4414,7 @@
  324. ia64-*-elf*) fmt=elf ;;
  325. ia64-*-aix*) fmt=elf em=ia64aix ;;
  326. ia64-*-linux-gnu*) fmt=elf em=linux ;;
  327. + ia64-*-linux-uclibc*) fmt=elf em=linux ;;
  328. ia64-*-hpux*) fmt=elf em=hpux ;;
  329. ia64-*-netbsd*) fmt=elf em=nbsd ;;
  330. @@ -4431,6 +4442,7 @@
  331. m68k-*-hpux*) fmt=hp300 em=hp300 ;;
  332. m68k-*-linux*aout*) fmt=aout em=linux ;;
  333. m68k-*-linux-gnu*) fmt=elf em=linux ;;
  334. + m68k-*-linux-uclibc*) fmt=elf em=linux ;;
  335. m68k-*-uclinux*) fmt=elf ;;
  336. m68k-*-gnu*) fmt=elf ;;
  337. m68k-*-lynxos*) fmt=coff em=lynx ;;
  338. @@ -4505,6 +4517,7 @@
  339. ppc-*-beos*) fmt=coff ;;
  340. ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;;
  341. ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;;
  342. + ppc-*-linux-uclibc* | \
  343. ppc-*-linux-gnu*) fmt=elf em=linux
  344. case "$endian" in
  345. big) ;;
  346. @@ -4532,7 +4545,9 @@
  347. ppc-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;;
  348. s390x-*-linux-gnu*) fmt=elf em=linux ;;
  349. + s390x-*-linux-uclibc*) fmt=elf em=linux ;;
  350. s390-*-linux-gnu*) fmt=elf em=linux ;;
  351. + s390-*-linux-uclibc*) fmt=elf em=linux ;;
  352. s390-*-tpf*) fmt=elf ;;
  353. sh*-*-linux*) fmt=elf em=linux
  354. @@ -4568,6 +4583,7 @@
  355. sparc-*-coff) fmt=coff ;;
  356. sparc-*-linux*aout*) fmt=aout em=linux ;;
  357. sparc-*-linux-gnu*) fmt=elf em=linux ;;
  358. + sparc-*-linux-uclibc*) fmt=elf em=linux ;;
  359. sparc-*-lynxos*) fmt=coff em=lynx ;;
  360. sparc-fujitsu-none) fmt=aout ;;
  361. sparc-*-elf) fmt=elf ;;
  362. diff -ur binutils-2.15.94.0.2.orig/gas/configure.in binutils-2.15.94.0.2/gas/configure.in
  363. --- binutils-2.15.94.0.2.orig/gas/configure.in 2004-12-22 15:00:57.461987424 -0500
  364. +++ binutils-2.15.94.0.2/gas/configure.in 2004-12-22 15:01:19.022709696 -0500
  365. @@ -202,6 +202,7 @@
  366. alpha*-*-osf*) fmt=ecoff ;;
  367. alpha*-*-linuxecoff*) fmt=ecoff ;;
  368. alpha*-*-linux-gnu*) fmt=elf em=linux ;;
  369. + alpha*-*-linux-uclibc*) fmt=elf em=linux ;;
  370. alpha*-*-netbsd*) fmt=elf em=nbsd ;;
  371. alpha*-*-openbsd*) fmt=elf em=obsd ;;
  372. @@ -218,6 +219,7 @@
  373. arm-*-linux*aout*) fmt=aout em=linux ;;
  374. arm*-*-linux-gnueabi*) fmt=elf em=armlinuxeabi ;;
  375. arm*-*-linux-gnu*) fmt=elf em=linux ;;
  376. + arm*-*-linux-uclibc*) fmt=elf em=linux ;;
  377. arm*-*-uclinux*) fmt=elf em=linux ;;
  378. arm-*-netbsdelf*) fmt=elf em=nbsd ;;
  379. arm-*-*n*bsd*) fmt=aout em=nbsd ;;
  380. @@ -231,6 +233,7 @@
  381. cris-*-linux-gnu* | crisv32-*-linux-gnu*)
  382. fmt=multi bfd_gas=yes em=linux ;;
  383. + cris-*-linux-uclibc*) fmt=multi bfd_gas=yes em=linux ;;
  384. cris-*-* | crisv32-*-*) fmt=multi bfd_gas=yes ;;
  385. crx-*-elf*) fmt=elf ;;
  386. @@ -290,7 +293,9 @@
  387. i386-*-linux*oldld) fmt=aout em=linux ;;
  388. i386-*-linux*coff*) fmt=coff em=linux ;;
  389. i386-*-linux-gnu*) fmt=elf em=linux ;;
  390. + i386-*-linux-uclibc*) fmt=elf em=linux ;;
  391. x86_64-*-linux-gnu*) fmt=elf em=linux ;;
  392. + x86_64-*-linux-uclibc*) fmt=elf em=linux ;;
  393. i386-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;;
  394. changequote(,)dnl
  395. i386-*-sysv[45]*) fmt=elf ;;
  396. @@ -343,6 +348,7 @@
  397. ia64-*-elf*) fmt=elf ;;
  398. ia64-*-aix*) fmt=elf em=ia64aix ;;
  399. ia64-*-linux-gnu*) fmt=elf em=linux ;;
  400. + ia64-*-linux-uclibc*) fmt=elf em=linux ;;
  401. ia64-*-hpux*) fmt=elf em=hpux ;;
  402. ia64-*-netbsd*) fmt=elf em=nbsd ;;
  403. @@ -370,6 +376,7 @@
  404. m68k-*-hpux*) fmt=hp300 em=hp300 ;;
  405. m68k-*-linux*aout*) fmt=aout em=linux ;;
  406. m68k-*-linux-gnu*) fmt=elf em=linux ;;
  407. + m68k-*-linux-uclibc*) fmt=elf em=linux ;;
  408. m68k-*-uclinux*) fmt=elf ;;
  409. m68k-*-gnu*) fmt=elf ;;
  410. m68k-*-lynxos*) fmt=coff em=lynx ;;
  411. @@ -441,6 +448,7 @@
  412. ppc-*-beos*) fmt=coff ;;
  413. ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;;
  414. ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;;
  415. + ppc-*-linux-uclibc* | \
  416. ppc-*-linux-gnu*) fmt=elf em=linux
  417. case "$endian" in
  418. big) ;;
  419. @@ -461,7 +469,9 @@
  420. ppc-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;;
  421. s390x-*-linux-gnu*) fmt=elf em=linux ;;
  422. + s390x-*-linux-uclibc*) fmt=elf em=linux ;;
  423. s390-*-linux-gnu*) fmt=elf em=linux ;;
  424. + s390-*-linux-uclibc*) fmt=elf em=linux ;;
  425. s390-*-tpf*) fmt=elf ;;
  426. sh*-*-linux*) fmt=elf em=linux
  427. @@ -493,6 +503,7 @@
  428. sparc-*-coff) fmt=coff ;;
  429. sparc-*-linux*aout*) fmt=aout em=linux ;;
  430. sparc-*-linux-gnu*) fmt=elf em=linux ;;
  431. + sparc-*-linux-uclibc*) fmt=elf em=linux ;;
  432. sparc-*-lynxos*) fmt=coff em=lynx ;;
  433. sparc-fujitsu-none) fmt=aout ;;
  434. sparc-*-elf) fmt=elf ;;
  435. diff -ur binutils-2.15.94.0.2.orig/gprof/configure binutils-2.15.94.0.2/gprof/configure
  436. --- binutils-2.15.94.0.2.orig/gprof/configure 2004-12-22 15:00:57.949913248 -0500
  437. +++ binutils-2.15.94.0.2/gprof/configure 2004-12-22 15:01:19.030708480 -0500
  438. @@ -3418,6 +3418,11 @@
  439. lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
  440. ;;
  441. +linux-uclibc*)
  442. + lt_cv_deplibs_check_method=pass_all
  443. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  444. + ;;
  445. +
  446. netbsd* | knetbsd*-gnu)
  447. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  448. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
  449. diff -ur binutils-2.15.94.0.2.orig/ld/configure binutils-2.15.94.0.2/ld/configure
  450. --- binutils-2.15.94.0.2.orig/ld/configure 2004-12-22 15:00:58.032900632 -0500
  451. +++ binutils-2.15.94.0.2/ld/configure 2004-12-22 15:01:19.035707720 -0500
  452. @@ -1579,6 +1579,11 @@
  453. lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
  454. ;;
  455. +linux-uclibc*)
  456. + lt_cv_deplibs_check_method=pass_all
  457. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  458. + ;;
  459. +
  460. netbsd* | knetbsd*-gnu)
  461. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  462. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
  463. diff -ur binutils-2.15.94.0.2.orig/ld/configure.tgt binutils-2.15.94.0.2/ld/configure.tgt
  464. --- binutils-2.15.94.0.2.orig/ld/configure.tgt 2004-12-22 15:00:58.033900480 -0500
  465. +++ binutils-2.15.94.0.2/ld/configure.tgt 2004-12-22 15:01:19.036707568 -0500
  466. @@ -32,6 +32,7 @@
  467. targ_extra_libpath=$targ_extra_emuls ;;
  468. cris-*-linux-gnu* | cris-*-linux-gnu*)
  469. targ_emul=crislinux ;;
  470. +cris-*-linux-uclibc*) targ_emul=crislinux ;;
  471. cris-*-* | crisv32-*-*) targ_emul=criself
  472. targ_extra_emuls="crisaout crislinux"
  473. targ_extra_libpath=$targ_extra_emuls ;;
  474. @@ -62,14 +63,16 @@
  475. tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/aout//'`
  476. tdir_sun4=sparc-sun-sunos4
  477. ;;
  478. -sparc64-*-linux-gnu*) targ_emul=elf64_sparc
  479. +sparc64-*-linux-gnu* | sparc64-*-linux-uclibc*) \
  480. + targ_emul=elf64_sparc
  481. targ_extra_emuls="elf32_sparc sparclinux sun4"
  482. targ_extra_libpath=elf32_sparc
  483. tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/64//'`
  484. tdir_sparclinux=${tdir_elf32_sparc}aout
  485. tdir_sun4=sparc-sun-sunos4
  486. ;;
  487. -sparc*-*-linux-gnu*) targ_emul=elf32_sparc
  488. +sparc*-*-linux-gnu* | sparc*-*-linux-uclibc*) \
  489. + targ_emul=elf32_sparc
  490. targ_extra_emuls="sparclinux elf64_sparc sun4"
  491. targ_extra_libpath=elf64_sparc
  492. tdir_sparclinux=${targ_alias}aout
  493. @@ -121,7 +124,9 @@
  494. m32r*le-*-elf*) targ_emul=m32rlelf ;;
  495. m32r*-*-elf*) targ_emul=m32relf ;;
  496. m32r*le-*-linux-gnu*) targ_emul=m32rlelf_linux ;;
  497. +m32r*le-*-linux-uclibc*) targ_emul=m32rlelf_linux ;;
  498. m32r*-*-linux-gnu*) targ_emul=m32relf_linux ;;
  499. +m32r*-*-linux-uclibc*) targ_emul=m32relf_linux ;;
  500. m68hc11-*-*|m6811-*-*) targ_emul=m68hc11elf
  501. targ_extra_emuls="m68hc11elfb m68hc12elf m68hc12elfb" ;;
  502. m68hc12-*-*|m6812-*-*) targ_emul=m68hc12elf
  503. @@ -132,7 +137,7 @@
  504. m68*-apple-aux*) targ_emul=m68kaux ;;
  505. maxq-*-coff) targ_emul=maxqcoff;;
  506. *-tandem-none) targ_emul=st2000 ;;
  507. -i370-*-elf* | i370-*-linux-gnu*) targ_emul=elf32i370 ;;
  508. +i370-*-elf* | i370-*-linux-gnu* | i370-*-linux-uclibc*) targ_emul=elf32i370 ;;
  509. i[3-7]86-*-nto-qnx*) targ_emul=i386nto ;;
  510. i[3-7]86-*-vsta) targ_emul=vsta ;;
  511. i[3-7]86-go32-rtems*) targ_emul=i386go32 ;;
  512. @@ -156,14 +161,16 @@
  513. tdir_elf_i386=`echo ${targ_alias} | sed -e 's/aout//'`
  514. ;;
  515. i[3-7]86-*-linux*oldld) targ_emul=i386linux; targ_extra_emuls=elf_i386 ;;
  516. -i[3-7]86-*-linux-gnu*) targ_emul=elf_i386
  517. +i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*) \
  518. + targ_emul=elf_i386
  519. targ_extra_emuls=i386linux
  520. if test x${want64} = xtrue; then
  521. targ_extra_emuls="$targ_extra_emuls elf_x86_64"
  522. fi
  523. tdir_i386linux=${targ_alias}aout
  524. ;;
  525. -x86_64-*-linux-gnu*) targ_emul=elf_x86_64
  526. +x86_64-*-linux-gnu* | x86_64-*-linux-uclibc*) \
  527. + targ_emul=elf_x86_64
  528. targ_extra_emuls="elf_i386 i386linux"
  529. targ_extra_libpath=elf_i386
  530. tdir_i386linux=`echo ${targ_alias}aout | sed -e 's/x86_64/i386/'`
  531. @@ -263,11 +270,14 @@
  532. arm-*-kaos*) targ_emul=armelf ;;
  533. arm9e-*-elf) targ_emul=armelf ;;
  534. arm*b-*-linux-gnu*) targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;;
  535. +arm*b-*-linux-uclibc*) targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;;
  536. arm*-*-linux-gnueabi) targ_emul=armelf_linux_eabi ;;
  537. arm*-*-linux-gnu*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
  538. +arm*-*-linux-uclibc*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
  539. arm*-*-uclinux*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
  540. arm*-*-conix*) targ_emul=armelf ;;
  541. -thumb-*-linux-gnu* | thumb-*-uclinux*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
  542. +thumb-*-linux-gnu* | thumb-*-linux-uclibc* | thumb-*-uclinux*) \
  543. + targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
  544. strongarm-*-coff) targ_emul=armcoff ;;
  545. strongarm-*-elf) targ_emul=armelf ;;
  546. strongarm-*-kaos*) targ_emul=armelf ;;
  547. @@ -371,7 +381,8 @@
  548. targ_extra_emuls=m68kelf
  549. tdir_m68kelf=`echo ${targ_alias} | sed -e 's/aout//'`
  550. ;;
  551. -m68k-*-linux-gnu*) targ_emul=m68kelf
  552. +m68k-*-linux-gnu* | m68k-*-linux-uclibc*) \
  553. + targ_emul=m68kelf
  554. targ_extra_emuls=m68klinux
  555. tdir_m68klinux=`echo ${targ_alias} | sed -e 's/linux/linuxaout/'`
  556. ;;
  557. @@ -388,9 +399,9 @@
  558. m68*-*-psos*) targ_emul=m68kpsos ;;
  559. m68*-*-rtemscoff*) targ_emul=m68kcoff ;;
  560. m68*-*-rtems*) targ_emul=m68kelf ;;
  561. -hppa*64*-*-linux-gnu*) targ_emul=hppa64linux ;;
  562. +hppa*64*-*-linux-gnu* | hppa*64*-*-linux-uclibc*) targ_emul=hppa64linux ;;
  563. hppa*64*-*) targ_emul=elf64hppa ;;
  564. -hppa*-*-linux-gnu*) targ_emul=hppalinux ;;
  565. +hppa*-*-linux-gnu* | hppa*-*-linux-uclibc*) targ_emul=hppalinux ;;
  566. hppa*-*-*elf*) targ_emul=hppaelf ;;
  567. hppa*-*-lites*) targ_emul=hppaelf ;;
  568. hppa*-*-netbsd*) targ_emul=hppanbsd ;;
  569. @@ -403,6 +414,7 @@
  570. targ_emul=vaxnbsd
  571. targ_extra_emuls=elf32vax ;;
  572. vax-*-linux-gnu*) targ_emul=elf32vax ;;
  573. +vax-*-linux-uclibc*) targ_emul=elf32vax ;;
  574. mips*-*-pe) targ_emul=mipspe ;
  575. targ_extra_ofiles="deffilep.o pe-dll.o" ;;
  576. mips*-dec-ultrix*) targ_emul=mipslit ;;
  577. @@ -436,16 +448,16 @@
  578. mips*-*-vxworks*) targ_emul=elf32ebmip
  579. targ_extra_emuls="elf32elmip" ;;
  580. mips*-*-windiss) targ_emul=elf32mipswindiss ;;
  581. -mips64*el-*-linux-gnu*) targ_emul=elf32ltsmipn32
  582. +mips64*el-*-linux-gnu* | mips64*el-*-linux-uclibc*) targ_emul=elf32ltsmipn32
  583. targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip"
  584. ;;
  585. -mips64*-*-linux-gnu*) targ_emul=elf32btsmipn32
  586. +mips64*-*-linux-gnu* | mips64*-*-linux-uclibc*) targ_emul=elf32btsmipn32
  587. targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip"
  588. ;;
  589. -mips*el-*-linux-gnu*) targ_emul=elf32ltsmip
  590. +mips*el-*-linux-gnu* | mips*el-*-linux-uclibc*) targ_emul=elf32ltsmip
  591. targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip"
  592. ;;
  593. -mips*-*-linux-gnu*) targ_emul=elf32btsmip
  594. +mips*-*-linux-gnu* | mips*-*-linux-uclibc*) targ_emul=elf32btsmip
  595. targ_extra_emuls="elf32ltsmip elf32btsmipn32 elf64btsmip elf32ltsmipn32 elf64ltsmip"
  596. ;;
  597. mips*-*-lnews*) targ_emul=mipslnews ;;
  598. @@ -468,6 +480,10 @@
  599. alpha*-*-linux-gnu*) targ_emul=elf64alpha targ_extra_emuls=alpha
  600. tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'`
  601. ;;
  602. +alpha*-*-linux-uclibc*) targ_emul=elf64alpha targ_extra_emuls=alpha
  603. + # The following needs to be checked...
  604. + tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'`
  605. + ;;
  606. alpha*-*-osf*) targ_emul=alpha ;;
  607. alpha*-*-gnu*) targ_emul=elf64alpha ;;
  608. alpha*-*-netware*) targ_emul=alpha ;;
  609. diff -ur binutils-2.15.94.0.2.orig/ld/emultempl/elf32.em binutils-2.15.94.0.2/ld/emultempl/elf32.em
  610. --- binutils-2.15.94.0.2.orig/ld/emultempl/elf32.em 2004-12-22 15:00:58.044898808 -0500
  611. +++ binutils-2.15.94.0.2/ld/emultempl/elf32.em 2004-12-22 15:01:19.038707264 -0500
  612. @@ -65,7 +65,7 @@
  613. if [ "x${USE_LIBPATH}" = xyes ] ; then
  614. case ${target} in
  615. - *-*-linux-gnu*)
  616. + *-*-linux-gnu* | *-*-linux-uclibc*)
  617. cat >>e${EMULATION_NAME}.c <<EOF
  618. #include <glob.h>
  619. EOF
  620. @@ -337,7 +337,7 @@
  621. EOF
  622. case ${target} in
  623. - *-*-linux-gnu*)
  624. + *-*-linux-gnu* | *-*-linux-uclibc*)
  625. cat >>e${EMULATION_NAME}.c <<EOF
  626. {
  627. struct bfd_link_needed_list *l;
  628. @@ -510,7 +510,7 @@
  629. EOF
  630. case ${target} in
  631. - *-*-linux-gnu*)
  632. + *-*-linux-gnu* | *-*-linux-uclibc*)
  633. cat >>e${EMULATION_NAME}.c <<EOF
  634. /* For a native linker, check the file /etc/ld.so.conf for directories
  635. in which we may find shared libraries. /etc/ld.so.conf is really
  636. @@ -894,7 +894,7 @@
  637. EOF
  638. if [ "x${USE_LIBPATH}" = xyes ] ; then
  639. case ${target} in
  640. - *-*-linux-gnu*)
  641. + *-*-linux-gnu* | *-*-linux-uclibc*)
  642. cat >>e${EMULATION_NAME}.c <<EOF
  643. if (gld${EMULATION_NAME}_check_ld_so_conf (l->name, force))
  644. break;
  645. diff -ur binutils-2.15.94.0.2.orig/libiberty/configure binutils-2.15.94.0.2/libiberty/configure
  646. --- binutils-2.15.94.0.2.orig/libiberty/configure 2004-12-22 15:00:59.263713520 -0500
  647. +++ binutils-2.15.94.0.2/libiberty/configure 2004-12-22 15:03:55.744884304 -0500
  648. @@ -3682,6 +3682,11 @@
  649. lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
  650. ;;
  651. +linux-uclibc*)
  652. + lt_cv_deplibs_check_method=pass_all
  653. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  654. + ;;
  655. +
  656. netbsd* | knetbsd*-gnu)
  657. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  658. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
  659. diff -ur binutils-2.15.94.0.2.orig/libtool.m4 binutils-2.15.94.0.2/libtool.m4
  660. --- binutils-2.15.94.0.2.orig/libtool.m4 2004-12-22 15:00:57.329007640 -0500
  661. +++ binutils-2.15.94.0.2/libtool.m4 2004-12-22 15:01:19.039707112 -0500
  662. @@ -645,6 +645,11 @@
  663. lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
  664. ;;
  665. +linux-uclibc*)
  666. + lt_cv_deplibs_check_method=pass_all
  667. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  668. + ;;
  669. +
  670. netbsd* | knetbsd*-gnu)
  671. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  672. [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$']
  673. diff -ur binutils-2.15.94.0.2.orig/ltconfig binutils-2.15.94.0.2/ltconfig
  674. --- binutils-2.15.94.0.2.orig/ltconfig 2004-12-22 15:00:57.330007488 -0500
  675. +++ binutils-2.15.94.0.2/ltconfig 2004-12-22 15:01:19.041706808 -0500
  676. @@ -603,6 +603,7 @@
  677. # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
  678. case $host_os in
  679. linux-gnu*) ;;
  680. +linux-uclibc*) ;;
  681. linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
  682. esac
  683. @@ -1270,6 +1271,24 @@
  684. dynamic_linker='GNU/Linux ld.so'
  685. ;;
  686. +linux-uclibc*)
  687. + version_type=linux
  688. + need_lib_prefix=no
  689. + need_version=no
  690. + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  691. + soname_spec='${libname}${release}.so$major'
  692. + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
  693. + shlibpath_var=LD_LIBRARY_PATH
  694. + shlibpath_overrides_runpath=no
  695. + # This implies no fast_install, which is unacceptable.
  696. + # Some rework will be needed to allow for fast_install
  697. + # before this can be enabled.
  698. + # Note: copied from linux-gnu, and may not be appropriate.
  699. + hardcode_into_libs=yes
  700. + # Assume using the uClibc dynamic linker.
  701. + dynamic_linker="uClibc ld.so"
  702. + ;;
  703. +
  704. netbsd*)
  705. need_lib_prefix=no
  706. need_version=no
  707. diff -ur binutils-2.15.94.0.2.orig/opcodes/configure binutils-2.15.94.0.2/opcodes/configure
  708. --- binutils-2.15.94.0.2.orig/opcodes/configure 2004-12-22 15:00:59.334702728 -0500
  709. +++ binutils-2.15.94.0.2/opcodes/configure 2004-12-22 15:01:19.053704984 -0500
  710. @@ -3587,6 +3587,11 @@
  711. lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
  712. ;;
  713. +linux-uclibc*)
  714. + lt_cv_deplibs_check_method=pass_all
  715. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  716. + ;;
  717. +
  718. netbsd* | knetbsd*-gnu)
  719. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  720. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'