OpenSDE Packages Database (without history before r20070)
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.

197 lines
6.3 KiB

  1. #!/bin/sh -x
  2. # --- SDE-COPYRIGHT-NOTE-BEGIN ---
  3. # This copyright note is auto-generated by ./scripts/Create-CopyPatch.
  4. #
  5. # Filename: package/.../uclibc/parse-config-9
  6. # Copyright (C) 2006 The OpenSDE Project
  7. # Copyright (C) 2004 - 2006 The T2 SDE Project
  8. #
  9. # More information can be found in the files COPYING and README.
  10. #
  11. # This program is free software; you can redistribute it and/or modify
  12. # it under the terms of the GNU General Public License as published by
  13. # the Free Software Foundation; version 2 of the License. A copy of the
  14. # GNU General Public License can be found in the file COPYING.
  15. # --- SDE-COPYRIGHT-NOTE-END ---
  16. if [ "$SDECFG_LIBC" == "uclibc" ]; then
  17. pkg_uclibc_dir=$base/package/base/uclibc
  18. if [ $pkg != "gettext" ]; then
  19. var_append flistdel "|" "usr/share/locale/locale.alias"
  20. fi
  21. # the most tipical fix is to config.sub
  22. #
  23. uclibc_fix_configsub() {
  24. local x; for x; do
  25. echo "uclibc_fix_configsub: adding uclibc_arch_target support to $x"
  26. cp -f $x $x.orig
  27. sed -e 's,\([-]\?linux\)-gnu\*,\1-gnu\* | \1-uclibc\*,g' $x.orig > $x
  28. diff -u $x.orig $x || true
  29. done
  30. }
  31. uclibc_auto_fix_configsub() {
  32. local f
  33. for f in . ./config ./support; do
  34. if [ -e $f/config.sub ] ; then
  35. if ! grep -q '\-uclibc' $f/config.sub; then
  36. uclibc_fix_configsub $f/config.sub
  37. fi
  38. fi
  39. done
  40. }
  41. uclibc_findall_fix_configsub() {
  42. local f
  43. for f in `find . -name config.sub`; do
  44. uclibc_fix_configsub $f
  45. done
  46. }
  47. # FIXME: i forgot what makes uclibc_fix_addcases different than uclibc_fix_configsub //mnemoc
  48. uclibc_fix_addcases() {
  49. local file; for file; do
  50. echo "uclibc_fix_addcases: adding *-linux-uclibc* support to $file"
  51. cp -f $file $file.orig
  52. sed -i -e 's,\([^ ]*\)linux-gnu\*\(.*\)\([\)\\]\),\1linux-gnu* | \1linux-uclibc*\2\3,g' $file
  53. diff -u $file.orig $file || true
  54. done
  55. }
  56. uclibc_fix_addcases2() {
  57. local file; for file; do
  58. echo "uclibc_fix_addcases2: adding *-linux-uclibc* support to $file"
  59. cp -f $file $file.orig
  60. sed -i -e 's,\( *.*\)linux-gnu\*)\(.*\)\;\;$,\1linux-uclibc*)\2;;\n\1linux-gnu*)\2;;,g' \
  61. -e 's,\( *.*\)linux-gnu\*)\(.*[^;][^;]\)$,\1linux-uclibc* \| \\\n\1linux-gnu*)\2,g' \
  62. $file
  63. diff -u $file.orig $file || true
  64. done
  65. }
  66. # fix tipical locations
  67. hook_add postpatch 5 'uclibc_auto_fix_configsub'
  68. # and some others
  69. case "$pkg" in
  70. gcc)
  71. hook_add postpatch 6 'uclibc_fix_configsub libjava/libltdl/config.sub'
  72. ;;
  73. apache|minicom|nmap|expat|libiconv)
  74. hook_add postpatch 6 'uclibc_findall_fix_configsub'
  75. ;;
  76. ntp)
  77. hook_add postpatch 6 'uclibc_fix_configsub sntp/config.sub'
  78. ;;
  79. lzo)
  80. hook_add postpatch 6 'uclibc_fix_configsub autoconf/config.sub'
  81. ;;
  82. binutils)
  83. hook_add postpatch 4 'uclibc_fix_addcases ./bfd/config.bfd ./bfd/configure \
  84. ./bfd/configure.in ./ld/configure.tgt'
  85. hook_add postpatch 5 'uclibc_fix_addcases2 ./gas/configure ./gas/configure.in'
  86. ;;
  87. gdb)
  88. hook_add postpatch 4 'uclibc_fix_addcases ./bfd/config.bfd ./bfd/configure'
  89. ;;
  90. bdb)
  91. hook_add postpatch 6 'uclibc_fix_configsub ./dist/config.sub'
  92. ;;
  93. bdb33)
  94. hook_add postpatch 6 'uclibc_fix_configsub ./dist/config.sub'
  95. hook_add postpatch 6 'uclibc_fix_configsub ./dist/configure'
  96. ;;
  97. a2ps)
  98. hook_add postpatch 6 'uclibc_fix_configsub ./auxdir/config.sub'
  99. ;;
  100. pidentd)
  101. hook_add postpatch 6 'uclibc_fix_configsub ./aux/config.sub'
  102. ;;
  103. apollon)
  104. hook_add postpatch 6 'uclibc_fix_configsub ./admin/config.sub'
  105. ;;
  106. openldap)
  107. hook_add postpatch 6 'uclibc_fix_configsub ./contrib/ldapc++/config.sub'
  108. hook_add postpatch 6 'uclibc_fix_configsub ./build/config.sub'
  109. ;;
  110. pkgconfig)
  111. hook_add postpatch 6 'uclibc_fix_configsub ./configure'
  112. hook_add postpatch 6 'uclibc_fix_configsub ./glib-1.2.8/ltconfig'
  113. hook_add postpatch 6 'uclibc_fix_configsub ./glib-1.2.8/config.sub'
  114. ;;
  115. libsigc++12)
  116. hook_add postpatch 6 'uclibc_fix_configsub ./scripts/config.sub'
  117. ;;
  118. libsigc++1)
  119. hook_add postpatch 6 'uclibc_fix_configsub ./scripts/config.sub'
  120. hook_add postpatch 6 'uclibc_fix_configsub ./scripts/ltconfig'
  121. ;;
  122. jasper)
  123. # jasper is autoextract=0 so postpatch is never evaluated
  124. hook_add preconf 6 'uclibc_fix_configsub ./acaux/config.sub'
  125. hook_add preconf 6 'uclibc_fix_configsub ./configure'
  126. hook_add preconf 6 'uclibc_fix_configsub ./aclocal.m4'
  127. ;;
  128. gdbm)
  129. hook_add postpatch 6 'uclibc_fix_configsub ./configure'
  130. ;;
  131. mono)
  132. hook_add postpatch 6 'uclibc_fix_configsub ./libgc/config.sub'
  133. hook_add postpatch 6 'uclibc_fix_configsub ./libgc/configure'
  134. hook_add postpatch 6 'uclibc_fix_configsub ./libgc/libtool.m4'
  135. ;;
  136. gsmlib)
  137. hook_add postpatch 6 'uclibc_fix_configsub ./configure'
  138. hook_add postpatch 6 'uclibc_fix_configsub ./aclocal.m4'
  139. hook_add postpatch 6 'uclibc_fix_configsub ./scripts/config.sub'
  140. hook_add postpatch 6 'uclibc_fix_configsub ./scripts/ltconfig'
  141. ;;
  142. libxml1|librep)
  143. hook_add postpatch 6 'uclibc_fix_configsub ./configure'
  144. hook_add postpatch 6 'uclibc_fix_configsub ./aclocal.m4'
  145. ;;
  146. fribidi)
  147. hook_add postpatch 6 'uclibc_fix_configsub ./configure'
  148. ;;
  149. rpm)
  150. hook_add postpatch 6 'uclibc_fix_configsub ./*/config.sub'
  151. hook_add postpatch 6 'uclibc_fix_configsub ./*/configure'
  152. hook_add postpatch 6 'uclibc_fix_configsub ./*/aclocal.m4'
  153. hook_add postpatch 6 'uclibc_fix_configsub ./*/*/config.sub'
  154. hook_add postpatch 6 'uclibc_fix_configsub ./*/*/configure'
  155. ;;
  156. libgd)
  157. hook_add postpatch 6 'uclibc_fix_configsub ./configure'
  158. hook_add postpatch 6 'uclibc_fix_configsub ./aclocal.m4'
  159. hook_add postpatch 6 'uclibc_fix_configsub ./config/config.sub'
  160. ;;
  161. device-mapper|lvm2)
  162. hook_add postpatch 6 'uclibc_fix_configsub ./autoconf/config.sub'
  163. ;;
  164. libdvdcss|libdvbpsi3|libmpeg2|a52dec)
  165. hook_add postpatch 6 'uclibc_fix_configsub ./autotools/config.sub'
  166. ;;
  167. apr|apr-util)
  168. hook_add postpatch 6 'uclibc_fix_configsub ./build/config.sub'
  169. ;;
  170. esac
  171. # same package translations to look for patches
  172. case "$pkg" in
  173. linux24*)
  174. pkg_uclibc_pkg=linux24 ;;
  175. linux26*|linux-header)
  176. pkg_uclibc_pkg=linux26 ;;
  177. *)
  178. pkg_uclibc_pkg=$pkg ;;
  179. esac
  180. pkg_uclubc_patches=$( ls -1 $pkg_uclibc_dir/pkg_patch/$pkg_uclibc_pkg-*.patch 2> /dev/null | tr '\n' ' ' )
  181. if [ -n "$pkg_uclubc_patches" ]; then
  182. echo_status "uClibc: appending patches ..."
  183. var_append patchfiles ' ' "$pkg_uclubc_patches"
  184. fi
  185. if [ -f $pkg_uclibc_dir/pkg_conf/$pkg_uclibc_pkg.conf ]; then
  186. . $pkg_uclibc_dir/pkg_conf/$pkg_uclibc_pkg.conf
  187. fi
  188. fi