mirror of the now-defunct rocklinux.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

624 lines
24 KiB

  1. diff -udNr binutils-2.14.90.0.7.orig/bfd/config.bfd binutils-2.14.90.0.7/bfd/config.bfd
  2. --- binutils-2.14.90.0.7.orig/bfd/config.bfd 2004-02-07 10:54:27.000000000 -0300
  3. +++ binutils-2.14.90.0.7/bfd/config.bfd 2004-02-07 11:30:19.000000000 -0300
  4. @@ -121,7 +121,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. @@ -131,7 +131,8 @@
  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* | \
  19. + ia64*-*-linux-uclibc* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu)
  20. targ_defvec=bfd_elf64_ia64_little_vec
  21. targ_selvecs="bfd_elf64_ia64_big_vec bfd_efi_app_ia64_vec"
  22. ;;
  23. @@ -214,7 +215,7 @@
  24. targ_defvec=bfd_elf32_littlearm_vec
  25. targ_selvecs=bfd_elf32_bigarm_vec
  26. ;;
  27. - armeb-*-elf | arm*b-*-linux-gnu*)
  28. + armeb-*-elf | arm*b-*-linux-gnu* | arm*b-*-linux-uclibc*)
  29. targ_defvec=bfd_elf32_bigarm_vec
  30. targ_selvecs=bfd_elf32_littlearm_vec
  31. ;;
  32. @@ -222,7 +223,8 @@
  33. targ_defvec=bfd_elf32_littlearm_vec
  34. targ_selvecs=bfd_elf32_bigarm_vec
  35. ;;
  36. - arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-conix* | arm*-*-uclinux* | arm-*-kfreebsd*-gnu)
  37. + arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-linux-uclibc* | \
  38. + arm*-*-conix* | arm*-*-uclinux* | arm-*-kfreebsd*-gnu)
  39. targ_defvec=bfd_elf32_littlearm_vec
  40. targ_selvecs=bfd_elf32_bigarm_vec
  41. ;;
  42. @@ -355,7 +357,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. @@ -366,7 +368,7 @@
  51. ;;
  52. #endif
  53. - hppa*-*-linux-gnu* | hppa*-*-netbsd*)
  54. + hppa*-*-linux-gnu* | hppa*-*-linux-uclibc* | hppa*-*-netbsd*)
  55. targ_defvec=bfd_elf32_hppa_linux_vec
  56. targ_selvecs=bfd_elf32_hppa_vec
  57. ;;
  58. @@ -488,7 +490,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. @@ -502,7 +504,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. @@ -662,7 +664,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. @@ -929,7 +931,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. @@ -961,8 +964,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. @@ -1110,7 +1113,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. @@ -1157,7 +1160,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. diff -udNr binutils-2.14.90.0.7.orig/bfd/configure binutils-2.14.90.0.7/bfd/configure
  125. --- binutils-2.14.90.0.7.orig/bfd/configure 2004-02-07 10:54:27.000000000 -0300
  126. +++ binutils-2.14.90.0.7/bfd/configure 2004-02-07 11:19:58.000000000 -0300
  127. @@ -1699,6 +1699,11 @@
  128. lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
  129. ;;
  130. +linux-uclibc*)
  131. + lt_cv_deplibs_check_method=pass_all
  132. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  133. + ;;
  134. +
  135. netbsd*)
  136. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  137. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
  138. @@ -5278,7 +5283,7 @@
  139. alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
  140. COREFILE=''
  141. ;;
  142. - alpha*-*-linux-gnu*)
  143. + alpha*-*-linux-gnu* | alpha*-*-linux-uclibc*)
  144. COREFILE=trad-core.lo
  145. TRAD_HEADER='"hosts/alphalinux.h"'
  146. ;;
  147. @@ -5338,7 +5343,7 @@
  148. COREFILE=trad-core.lo
  149. TRAD_HEADER='"hosts/i386mach3.h"'
  150. ;;
  151. - i[3-7]86-*-linux-gnu*)
  152. + i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*)
  153. COREFILE=trad-core.lo
  154. TRAD_HEADER='"hosts/i386linux.h"'
  155. ;;
  156. @@ -5388,7 +5393,7 @@
  157. COREFILE=trad-core.lo
  158. TRAD_HEADER='"hosts/hp300bsd.h"'
  159. ;;
  160. - m68*-*-linux-gnu*)
  161. + m68*-*-linux-gnu* | m68*-*-linux-uclibc*)
  162. COREFILE=trad-core.lo
  163. TRAD_HEADER='"hosts/m68klinux.h"'
  164. ;;
  165. diff -udNr binutils-2.14.90.0.7.orig/bfd/configure.in binutils-2.14.90.0.7/bfd/configure.in
  166. --- binutils-2.14.90.0.7.orig/bfd/configure.in 2004-02-07 10:54:27.000000000 -0300
  167. +++ binutils-2.14.90.0.7/bfd/configure.in 2004-02-07 11:19:55.000000000 -0300
  168. @@ -178,7 +178,7 @@
  169. alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
  170. COREFILE=''
  171. ;;
  172. - alpha*-*-linux-gnu*)
  173. + alpha*-*-linux-gnu* | alpha*-*-linux-uclibc*)
  174. COREFILE=trad-core.lo
  175. TRAD_HEADER='"hosts/alphalinux.h"'
  176. ;;
  177. @@ -259,7 +259,7 @@
  178. TRAD_HEADER='"hosts/i386mach3.h"'
  179. ;;
  180. changequote(,)dnl
  181. - i[3-7]86-*-linux-gnu*)
  182. + i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*)
  183. changequote([,])dnl
  184. COREFILE=trad-core.lo
  185. TRAD_HEADER='"hosts/i386linux.h"'
  186. @@ -312,7 +312,7 @@
  187. COREFILE=trad-core.lo
  188. TRAD_HEADER='"hosts/hp300bsd.h"'
  189. ;;
  190. - m68*-*-linux-gnu*)
  191. + m68*-*-linux-gnu* | m68*-*-linux-uclibc*)
  192. COREFILE=trad-core.lo
  193. TRAD_HEADER='"hosts/m68klinux.h"'
  194. ;;
  195. diff -udNr binutils-2.14.90.0.7.orig/configure binutils-2.14.90.0.7/configure
  196. --- binutils-2.14.90.0.7.orig/configure 2004-02-07 10:54:30.000000000 -0300
  197. +++ binutils-2.14.90.0.7/configure 2004-02-07 10:58:38.000000000 -0300
  198. @@ -1276,6 +1276,18 @@
  199. i[3456789]86-*-freebsd* | i[3456789]86-*-kfreebsd*-gnu)
  200. noconfigdirs="$noconfigdirs target-newlib target-libgloss"
  201. ;;
  202. + i[3456789]86-*-linux-uclibc)
  203. + # This section makes it possible to build newlib natively on linux.
  204. + # If we are using a cross compiler then don't configure newlib.
  205. + if test x${is_cross_compiler} != xno ; then
  206. + noconfigdirs="$noconfigdirs target-newlib"
  207. + fi
  208. + noconfigdirs="$noconfigdirs target-libgloss"
  209. + # If we are not using a cross compiler, do configure newlib.
  210. + # Note however, that newlib will only be configured in this situation
  211. + # if the --with-newlib option has been given, because otherwise
  212. + # 'target-newlib' will appear in skipdirs.
  213. + ;;
  214. i[3456789]86-*-linux*)
  215. # The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's
  216. # not build java stuff by default.
  217. diff -udNr binutils-2.14.90.0.7.orig/configure.in binutils-2.14.90.0.7/configure.in
  218. --- binutils-2.14.90.0.7.orig/configure.in 2004-02-07 10:54:30.000000000 -0300
  219. +++ binutils-2.14.90.0.7/configure.in 2004-02-07 10:58:41.000000000 -0300
  220. @@ -515,6 +515,19 @@
  221. i[[3456789]]86-*-freebsd* | i[[3456789]]86-*-kfreebsd*-gnu)
  222. noconfigdirs="$noconfigdirs target-newlib target-libgloss"
  223. ;;
  224. + i[3456789]86-*-linux-uclibc)
  225. + # This section makes it possible to build newlib natively on linux.
  226. + # If we are using a cross compiler then don't configure newlib.
  227. + if test x${is_cross_compiler} != xno ; then
  228. + noconfigdirs="$noconfigdirs target-newlib"
  229. + fi
  230. + noconfigdirs="$noconfigdirs target-libgloss"
  231. + build_modules=
  232. + # If we are not using a cross compiler, do configure newlib.
  233. + # Note however, that newlib will only be configured in this situation
  234. + # if the --with-newlib option has been given, because otherwise
  235. + # 'target-newlib' will appear in skipdirs.
  236. + ;;
  237. i[[3456789]]86-*-linux*)
  238. # The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's
  239. # not build java stuff by default.
  240. diff -udNr binutils-2.14.90.0.7.orig/demangler/configure binutils-2.14.90.0.7/demangler/configure
  241. --- binutils-2.14.90.0.7.orig/demangler/configure 2004-02-07 10:54:30.000000000 -0300
  242. +++ binutils-2.14.90.0.7/demangler/configure 2004-02-07 11:19:22.000000000 -0300
  243. @@ -1380,6 +1380,11 @@
  244. lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
  245. ;;
  246. +linux-uclibc*)
  247. + lt_cv_deplibs_check_method=pass_all
  248. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  249. + ;;
  250. +
  251. netbsd*)
  252. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  253. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
  254. diff -udNr binutils-2.14.90.0.7.orig/gas/configure binutils-2.14.90.0.7/gas/configure
  255. --- binutils-2.14.90.0.7.orig/gas/configure 2004-02-07 10:54:27.000000000 -0300
  256. +++ binutils-2.14.90.0.7/gas/configure 2004-02-07 11:12:45.000000000 -0300
  257. @@ -3215,6 +3215,11 @@
  258. lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
  259. ;;
  260. +linux-uclibc*)
  261. + lt_cv_deplibs_check_method=pass_all
  262. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  263. + ;;
  264. +
  265. netbsd*)
  266. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  267. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
  268. @@ -4028,6 +4033,7 @@
  269. alpha*-*-osf*) fmt=ecoff ;;
  270. alpha*-*-linuxecoff*) fmt=ecoff ;;
  271. alpha*-*-linux-gnu*) fmt=elf em=linux ;;
  272. + alpha*-*-linux-uclibc*) fmt=elf em=linux ;;
  273. alpha*-*-netbsd*) fmt=elf em=nbsd ;;
  274. alpha*-*-openbsd*) fmt=elf em=obsd ;;
  275. @@ -4044,6 +4050,7 @@
  276. arm*-*-conix*) fmt=elf ;;
  277. arm-*-linux*aout*) fmt=aout em=linux ;;
  278. arm*-*-linux-gnu*) fmt=elf em=linux ;;
  279. + arm*-*-linux-uclibc*) fmt=elf em=linux ;;
  280. arm*-*-uclinux*) fmt=elf em=linux ;;
  281. arm-*-netbsdelf*) fmt=elf em=nbsd ;;
  282. arm-*-*n*bsd*) fmt=aout em=nbsd ;;
  283. @@ -4058,6 +4065,7 @@
  284. avr-*-*) fmt=elf ;;
  285. cris-*-linux-gnu*) fmt=multi bfd_gas=yes em=linux ;;
  286. + cris-*-linux-uclibc*) fmt=multi bfd_gas=yes em=linux ;;
  287. cris-*-*) fmt=multi bfd_gas=yes ;;
  288. d10v-*-*) fmt=elf ;;
  289. @@ -4114,7 +4122,9 @@
  290. i386-*-linux*oldld) fmt=aout em=linux ;;
  291. i386-*-linux*coff*) fmt=coff em=linux ;;
  292. i386-*-linux-gnu*) fmt=elf em=linux ;;
  293. + i386-*-linux-uclibc*) fmt=elf em=linux ;;
  294. x86_64-*-linux-gnu*) fmt=elf em=linux ;;
  295. + x86_64-*-linux-uclibc*) fmt=elf em=linux ;;
  296. i386-*-lynxos*) fmt=coff em=lynx ;;
  297. i386-*-sysv[45]*) fmt=elf ;;
  298. i386-*-solaris*) fmt=elf ;;
  299. @@ -4175,6 +4185,7 @@
  300. ia64-*-elf*) fmt=elf ;;
  301. ia64-*-aix*) fmt=elf em=ia64aix ;;
  302. ia64-*-linux-gnu*) fmt=elf em=linux ;;
  303. + ia64-*-linux-uclibc*) fmt=elf em=linux ;;
  304. ia64-*-hpux*) fmt=elf em=hpux ;;
  305. ia64-*-netbsd*) fmt=elf em=nbsd ;;
  306. @@ -4201,6 +4212,7 @@
  307. m68k-*-hpux*) fmt=hp300 em=hp300 ;;
  308. m68k-*-linux*aout*) fmt=aout em=linux ;;
  309. m68k-*-linux-gnu*) fmt=elf em=linux ;;
  310. + m68k-*-linux-uclibc*) fmt=elf em=linux ;;
  311. m68k-*-gnu*) fmt=elf ;;
  312. m68k-*-lynxos*) fmt=coff em=lynx ;;
  313. m68k-*-netbsdelf*) fmt=elf em=nbsd ;;
  314. @@ -4257,6 +4269,7 @@
  315. ppc-*-beos*) fmt=coff ;;
  316. ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;;
  317. ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;;
  318. + ppc-*-linux-uclibc* | \
  319. ppc-*-linux-gnu*) fmt=elf em=linux
  320. case "$endian" in
  321. big) ;;
  322. @@ -4286,7 +4299,9 @@
  323. ppc-*-kaos*) fmt=elf ;;
  324. s390x-*-linux-gnu*) fmt=elf em=linux ;;
  325. + s390x-*-linux-uclibc*) fmt=elf em=linux ;;
  326. s390-*-linux-gnu*) fmt=elf em=linux ;;
  327. + s390-*-linux-uclibc*) fmt=elf em=linux ;;
  328. sh*-*-linux*) fmt=elf em=linux
  329. case ${cpu} in
  330. @@ -4319,6 +4334,7 @@
  331. sparc-*-coff) fmt=coff ;;
  332. sparc-*-linux*aout*) fmt=aout em=linux ;;
  333. sparc-*-linux-gnu*) fmt=elf em=linux ;;
  334. + sparc-*-linux-uclibc*) fmt=elf em=linux ;;
  335. sparc-*-lynxos*) fmt=coff em=lynx ;;
  336. sparc-fujitsu-none) fmt=aout ;;
  337. sparc-*-elf) fmt=elf ;;
  338. diff -udNr binutils-2.14.90.0.7.orig/gas/configure.in binutils-2.14.90.0.7/gas/configure.in
  339. --- binutils-2.14.90.0.7.orig/gas/configure.in 2004-02-07 10:54:27.000000000 -0300
  340. +++ binutils-2.14.90.0.7/gas/configure.in 2004-02-07 11:16:53.000000000 -0300
  341. @@ -192,6 +192,7 @@
  342. alpha*-*-osf*) fmt=ecoff ;;
  343. alpha*-*-linuxecoff*) fmt=ecoff ;;
  344. alpha*-*-linux-gnu*) fmt=elf em=linux ;;
  345. + alpha*-*-linux-uclibc*) fmt=elf em=linux ;;
  346. alpha*-*-netbsd*) fmt=elf em=nbsd ;;
  347. alpha*-*-openbsd*) fmt=elf em=obsd ;;
  348. @@ -208,6 +209,7 @@
  349. arm*-*-conix*) fmt=elf ;;
  350. arm-*-linux*aout*) fmt=aout em=linux ;;
  351. arm*-*-linux-gnu*) fmt=elf em=linux ;;
  352. + arm*-*-linux-uclibc*) fmt=elf em=linux ;;
  353. arm*-*-uclinux*) fmt=elf em=linux ;;
  354. arm-*-netbsdelf*) fmt=elf em=nbsd ;;
  355. arm-*-*n*bsd*) fmt=aout em=nbsd ;;
  356. @@ -222,6 +224,7 @@
  357. avr-*-*) fmt=elf ;;
  358. cris-*-linux-gnu*) fmt=multi bfd_gas=yes em=linux ;;
  359. + cris-*-linux-uclibc*) fmt=multi bfd_gas=yes em=linux ;;
  360. cris-*-*) fmt=multi bfd_gas=yes ;;
  361. d10v-*-*) fmt=elf ;;
  362. @@ -278,7 +281,9 @@
  363. i386-*-linux*oldld) fmt=aout em=linux ;;
  364. i386-*-linux*coff*) fmt=coff em=linux ;;
  365. i386-*-linux-gnu*) fmt=elf em=linux ;;
  366. + i386-*-linux-uclibc*) fmt=elf em=linux ;;
  367. x86_64-*-linux-gnu*) fmt=elf em=linux ;;
  368. + x86_64-*-linux-uclibc*) fmt=elf em=linux ;;
  369. i386-*-lynxos*) fmt=coff em=lynx ;;
  370. changequote(,)dnl
  371. i386-*-sysv[45]*) fmt=elf ;;
  372. @@ -332,6 +337,7 @@
  373. ia64-*-elf*) fmt=elf ;;
  374. ia64-*-aix*) fmt=elf em=ia64aix ;;
  375. ia64-*-linux-gnu*) fmt=elf em=linux ;;
  376. + ia64-*-linux-uclibc*) fmt=elf em=linux ;;
  377. ia64-*-hpux*) fmt=elf em=hpux ;;
  378. ia64-*-netbsd*) fmt=elf em=nbsd ;;
  379. @@ -358,6 +364,7 @@
  380. m68k-*-hpux*) fmt=hp300 em=hp300 ;;
  381. m68k-*-linux*aout*) fmt=aout em=linux ;;
  382. m68k-*-linux-gnu*) fmt=elf em=linux ;;
  383. + m68k-*-linux-uclibc*) fmt=elf em=linux ;;
  384. m68k-*-gnu*) fmt=elf ;;
  385. m68k-*-lynxos*) fmt=coff em=lynx ;;
  386. m68k-*-netbsdelf*) fmt=elf em=nbsd ;;
  387. @@ -412,6 +419,7 @@
  388. ppc-*-beos*) fmt=coff ;;
  389. ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;;
  390. ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;;
  391. + ppc-*-linux-uclibc* | \
  392. ppc-*-linux-gnu*) fmt=elf em=linux
  393. case "$endian" in
  394. big) ;;
  395. @@ -434,7 +442,9 @@
  396. ppc-*-kaos*) fmt=elf ;;
  397. s390x-*-linux-gnu*) fmt=elf em=linux ;;
  398. + s390x-*-linux-uclibc*) fmt=elf em=linux ;;
  399. s390-*-linux-gnu*) fmt=elf em=linux ;;
  400. + s390-*-linux-uclibc*) fmt=elf em=linux ;;
  401. sh*-*-linux*) fmt=elf em=linux
  402. case ${cpu} in
  403. @@ -467,6 +477,7 @@
  404. sparc-*-coff) fmt=coff ;;
  405. sparc-*-linux*aout*) fmt=aout em=linux ;;
  406. sparc-*-linux-gnu*) fmt=elf em=linux ;;
  407. + sparc-*-linux-uclibc*) fmt=elf em=linux ;;
  408. sparc-*-lynxos*) fmt=coff em=lynx ;;
  409. sparc-fujitsu-none) fmt=aout ;;
  410. sparc-*-elf) fmt=elf ;;
  411. diff -udNr binutils-2.14.90.0.7.orig/ld/configure binutils-2.14.90.0.7/ld/configure
  412. --- binutils-2.14.90.0.7.orig/ld/configure 2004-02-07 10:54:26.000000000 -0300
  413. +++ binutils-2.14.90.0.7/ld/configure 2004-02-07 11:02:23.000000000 -0300
  414. @@ -1578,6 +1578,11 @@
  415. lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
  416. ;;
  417. +linux-uclibc*)
  418. + lt_cv_deplibs_check_method=pass_all
  419. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  420. + ;;
  421. +
  422. netbsd*)
  423. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  424. lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
  425. diff -udNr binutils-2.14.90.0.7.orig/ld/configure.tgt binutils-2.14.90.0.7/ld/configure.tgt
  426. --- binutils-2.14.90.0.7.orig/ld/configure.tgt 2004-02-07 10:54:26.000000000 -0300
  427. +++ binutils-2.14.90.0.7/ld/configure.tgt 2004-02-07 11:02:19.000000000 -0300
  428. @@ -30,6 +30,7 @@
  429. targ_extra_emuls="criself crislinux"
  430. targ_extra_libpath=$targ_extra_emuls ;;
  431. cris-*-linux-gnu*) targ_emul=crislinux ;;
  432. +cris-*-linux-uclibc*) targ_emul=crislinux ;;
  433. cris-*-*) targ_emul=criself
  434. targ_extra_emuls="crisaout crislinux"
  435. targ_extra_libpath=$targ_extra_emuls ;;
  436. @@ -59,14 +60,16 @@
  437. tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/aout//'`
  438. tdir_sun4=sparc-sun-sunos4
  439. ;;
  440. -sparc64-*-linux-gnu*) targ_emul=elf64_sparc
  441. +sparc64-*-linux-gnu* | sparc64-*-linux-uclibc*) \
  442. + targ_emul=elf64_sparc
  443. targ_extra_emuls="elf32_sparc sparclinux sun4"
  444. targ_extra_libpath=elf32_sparc
  445. tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/64//'`
  446. tdir_sparclinux=${tdir_elf32_sparc}aout
  447. tdir_sun4=sparc-sun-sunos4
  448. ;;
  449. -sparc*-*-linux-gnu*) targ_emul=elf32_sparc
  450. +sparc*-*-linux-gnu* | sparc*-*-linux-gnu*) \
  451. + targ_emul=elf32_sparc
  452. targ_extra_emuls="sparclinux elf64_sparc sun4"
  453. targ_extra_libpath=elf64_sparc
  454. tdir_sparclinux=${targ_alias}aout
  455. @@ -125,7 +128,7 @@
  456. m68*-ericsson-ose) targ_emul=sun3 ;;
  457. m68*-apple-aux*) targ_emul=m68kaux ;;
  458. *-tandem-none) targ_emul=st2000 ;;
  459. -i370-*-elf* | i370-*-linux-gnu*) targ_emul=elf32i370 ;;
  460. +i370-*-elf* | i370-*-linux-gnu* | i370-*-linux-uclibc*) targ_emul=elf32i370 ;;
  461. i[3-7]86-*-nto-qnx*) targ_emul=i386nto ;;
  462. i[3-7]86-*-vsta) targ_emul=vsta ;;
  463. i[3-7]86-go32-rtems*) targ_emul=i386go32 ;;
  464. @@ -149,14 +152,16 @@
  465. tdir_elf_i386=`echo ${targ_alias} | sed -e 's/aout//'`
  466. ;;
  467. i[3-7]86-*-linux*oldld) targ_emul=i386linux; targ_extra_emuls=elf_i386 ;;
  468. -i[3-7]86-*-linux-gnu*) targ_emul=elf_i386
  469. +i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*) \
  470. + targ_emul=elf_i386
  471. targ_extra_emuls=i386linux
  472. if test x${want64} = xtrue; then
  473. targ_extra_emuls="$targ_extra_emuls elf_x86_64"
  474. fi
  475. tdir_i386linux=${targ_alias}aout
  476. ;;
  477. -x86_64-*-linux-gnu*) targ_emul=elf_x86_64
  478. +x86_64-*-linux-gnu* | x86_64-*-linux-uclibc*) \
  479. + targ_emul=elf_x86_64
  480. targ_extra_emuls="elf_i386 i386linux"
  481. targ_extra_libpath=elf_i386
  482. tdir_i386linux=`echo ${targ_alias}aout | sed -e 's/x86_64/i386/'`
  483. @@ -256,10 +261,13 @@
  484. arm9e-*-elf) targ_emul=armelf ;;
  485. arm-*-oabi) targ_emul=armelf_oabi ;;
  486. arm*b-*-linux-gnu*) targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;;
  487. +arm*b-*-linux-uclibc*) targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;;
  488. arm*-*-linux-gnu*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
  489. +arm*-*-linux-uclibc*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
  490. arm*-*-uclinux*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
  491. arm*-*-conix*) targ_emul=armelf ;;
  492. -thumb-*-linux-gnu* | thumb-*-uclinux*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
  493. +thumb-*-linux-gnu* | thumb-*-linux-uclibc* | thumb-*-uclinux*) \
  494. + targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
  495. strongarm-*-coff) targ_emul=armcoff ;;
  496. strongarm-*-elf) targ_emul=armelf ;;
  497. strongarm-*-kaos*) targ_emul=armelf ;;
  498. @@ -360,7 +368,8 @@
  499. targ_extra_emuls=m68kelf
  500. tdir_m68kelf=`echo ${targ_alias} | sed -e 's/aout//'`
  501. ;;
  502. -m68k-*-linux-gnu*) targ_emul=m68kelf
  503. +m68k-*-linux-gnu* | m68k-*-linux-uclibc*) \
  504. + targ_emul=m68kelf
  505. targ_extra_emuls=m68klinux
  506. tdir_m68klinux=`echo ${targ_alias} | sed -e 's/linux/linuxaout/'`
  507. ;;
  508. @@ -376,9 +385,9 @@
  509. m68*-*-psos*) targ_emul=m68kpsos ;;
  510. m68*-*-rtemscoff*) targ_emul=m68kcoff ;;
  511. m68*-*-rtems*) targ_emul=m68kelf ;;
  512. -hppa*64*-*-linux-gnu*) targ_emul=hppa64linux ;;
  513. +hppa*64*-*-linux-gnu* | hppa*64*-*-linux-uclibc*) targ_emul=hppa64linux ;;
  514. hppa*64*-*) targ_emul=elf64hppa ;;
  515. -hppa*-*-linux-gnu*) targ_emul=hppalinux ;;
  516. +hppa*-*-linux-gnu* | hppa*-*-linux-uclibc*) targ_emul=hppalinux ;;
  517. hppa*-*-*elf*) targ_emul=hppaelf ;;
  518. hppa*-*-lites*) targ_emul=hppaelf ;;
  519. hppa*-*-netbsd*) targ_emul=hppanbsd ;;
  520. @@ -422,16 +431,20 @@
  521. mips*-*-rtems*) targ_emul=elf32ebmip ;;
  522. mips*el-*-vxworks*) targ_emul=elf32elmip ;;
  523. mips*-*-vxworks*) targ_emul=elf32ebmip ;;
  524. -mips64*el-*-linux-gnu*) targ_emul=elf32ltsmipn32
  525. +mips64*el-*-linux-gnu* | mips64*el-*-linux-uclibc*) \
  526. + targ_emul=elf32ltsmipn32
  527. targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip"
  528. ;;
  529. -mips64*-*-linux-gnu*) targ_emul=elf32btsmipn32
  530. +mips64*-*-linux-gnu* | mips64*-*-linux-uclibc*) \
  531. + targ_emul=elf32btsmipn32
  532. targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip"
  533. ;;
  534. -mips*el-*-linux-gnu*) targ_emul=elf32ltsmip
  535. +mips*el-*-linux-gnu* | mips*el-*-linux-uclibc*) \
  536. + targ_emul=elf32ltsmip
  537. targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip"
  538. ;;
  539. -mips*-*-linux-gnu*) targ_emul=elf32btsmip
  540. +mips*-*-linux-gnu* | mips*-*-linux-uclibc*) \
  541. + targ_emul=elf32btsmip
  542. targ_extra_emuls="elf32ltsmip elf32btsmipn32 elf64btsmip elf32ltsmipn32 elf64ltsmip"
  543. ;;
  544. mips*-*-lnews*) targ_emul=mipslnews ;;
  545. @@ -454,6 +467,10 @@
  546. alpha*-*-linux-gnu*) targ_emul=elf64alpha targ_extra_emuls=alpha
  547. tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'`
  548. ;;
  549. +alpha*-*-linux-uclibc*) targ_emul=elf64alpha targ_extra_emuls=alpha
  550. + # The following needs to be checked...
  551. + tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'`
  552. + ;;
  553. alpha*-*-osf*) targ_emul=alpha ;;
  554. alpha*-*-gnu*) targ_emul=elf64alpha ;;
  555. alpha*-*-netware*) targ_emul=alpha ;;
  556. diff -udNr binutils-2.14.90.0.7.orig/libtool.m4 binutils-2.14.90.0.7/libtool.m4
  557. --- binutils-2.14.90.0.7.orig/libtool.m4 2004-02-07 10:54:30.000000000 -0300
  558. +++ binutils-2.14.90.0.7/libtool.m4 2004-02-07 11:00:54.000000000 -0300
  559. @@ -645,6 +645,11 @@
  560. lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
  561. ;;
  562. +linux-uclibc*)
  563. + lt_cv_deplibs_check_method=pass_all
  564. + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
  565. + ;;
  566. +
  567. netbsd*)
  568. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  569. [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$']
  570. diff -udNr binutils-2.14.90.0.7.orig/ltconfig binutils-2.14.90.0.7/ltconfig
  571. --- binutils-2.14.90.0.7.orig/ltconfig 2004-02-07 10:54:30.000000000 -0300
  572. +++ binutils-2.14.90.0.7/ltconfig 2004-02-07 11:01:00.000000000 -0300
  573. @@ -603,6 +603,7 @@
  574. # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
  575. case $host_os in
  576. linux-gnu*) ;;
  577. +linux-uclibc*) ;;
  578. linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
  579. esac
  580. @@ -1259,6 +1260,24 @@
  581. dynamic_linker='GNU/Linux ld.so'
  582. ;;
  583. +linux-uclibc*)
  584. + version_type=linux
  585. + need_lib_prefix=no
  586. + need_version=no
  587. + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  588. + soname_spec='${libname}${release}.so$major'
  589. + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
  590. + shlibpath_var=LD_LIBRARY_PATH
  591. + shlibpath_overrides_runpath=no
  592. + # This implies no fast_install, which is unacceptable.
  593. + # Some rework will be needed to allow for fast_install
  594. + # before this can be enabled.
  595. + # Note: copied from linux-gnu, and may not be appropriate.
  596. + hardcode_into_libs=yes
  597. + # Assume using the uClibc dynamic linker.
  598. + dynamic_linker="uClibc ld.so"
  599. + ;;
  600. +
  601. netbsd*)
  602. need_lib_prefix=no
  603. need_version=no