pkgmaker 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. cd "$(dirname "$0")"
  2. export TOPDIR=$(realpath ..)
  3. if gmake --help >/dev/null 2>&1; then
  4. export GMAKE=gmake
  5. else
  6. export GMAKE=make
  7. fi
  8. for subdir in alsa-lib bash bc mksh; do
  9. cd $subdir
  10. pn=$($GMAKE show=PKG_NAME) # pn: package name
  11. pa=$($GMAKE show=ALL_PKGOPTS) # pa: all subpackage options
  12. pfl=$($GMAKE show=PKG_FLAVOURS) # pfl: all package flavours
  13. typeset -u pnu=${pn//-/_} # pnu: package name uppercase
  14. pd=$($GMAKE show=PKG_DESCR) # pd: package description
  15. ph=$($GMAKE show=PKG_URL) # ph: package homepage
  16. (
  17. print "config ADK_COMPILE_$pnu"
  18. print \\ttristate
  19. print -n \\tdepends on
  20. sp=' ' # local sp: space (or ' || ')
  21. for xu in $pa; do # xu: package option uppercase
  22. print -n "${sp}ADK_PACKAGE_$xu"
  23. sp=' || '
  24. done
  25. print
  26. print \\tdefault n
  27. for xu in $pa; do # xu: package option uppercase
  28. x=$($GMAKE show=PKGNAME_$xu) # x: subpackage name
  29. print \\nconfig ADK_PACKAGE_$xu
  30. xf=$x # xf: subpackage name ........
  31. while (( ${#xf} < 34 )); do
  32. xf=$xf.
  33. done
  34. print "\tprompt \"$xf ${pd:-$pn}\""
  35. print \\ttristate
  36. print \\tdefault n
  37. print \\tselect ADK_COMPILE_$pnu
  38. if [[ -n $pd$ph ]]; then
  39. print \\thelp
  40. [[ -n $pd ]] && print "\t $pd"
  41. [[ -n $pd && -n $ph ]] && print '\t '
  42. [[ -n $ph ]] && print "\t $ph"
  43. fi
  44. done
  45. for pf in $pfl; do # pf: package flavour
  46. pfd=$($GMAKE show=PKGFD_$pf)
  47. print
  48. print config ADK_PACKAGE_${pnu}_$pf
  49. print "\tbool \"${pfd:-flavour ADK_PACKAGE_${pnu}_$pf}\""
  50. print \\tdefault n
  51. print \\tdepends on ADK_COMPILE_$pnu
  52. print \\thelp
  53. print "\t flavour ADK_PACKAGE_${pnu}_$pf"
  54. done
  55. ) >Config.in
  56. cd ..
  57. done