diff options
-rw-r--r-- | mk/package.mk | 2 | ||||
-rw-r--r-- | package/pkgmaker | 45 |
2 files changed, 34 insertions, 13 deletions
diff --git a/mk/package.mk b/mk/package.mk index df2c027b2..22d60e23c 100644 --- a/mk/package.mk +++ b/mk/package.mk @@ -137,6 +137,8 @@ build-all-pkgs: ${_IPKGS_COOKIE} # cleaning (needed for toolchain packages like glibc/eglibc) # should be package format independent and modular in the future define PKG_template +ALL_PKGOPTS+= $(1) +PKGNAME_$(1)= $(2) IPKG_$(1)= $(PACKAGE_DIR)/$(2)_$(3)_${CPU_ARCH}.${PKG_SUFFIX} IDIR_$(1)= $(WRKDIR)/fake-${CPU_ARCH}/pkg-$(2) ifneq (${ADK_PACKAGE_$(1)}${DEVELOPER},) diff --git a/package/pkgmaker b/package/pkgmaker index 5cc957ff9..46b8b1b15 100644 --- a/package/pkgmaker +++ b/package/pkgmaker @@ -5,25 +5,44 @@ else export GMAKE=make fi -for subdir in bash; do +for subdir in bash bc; do cd $subdir pn=$($GMAKE show=PKG_NAME) + pa=$($GMAKE show=ALL_PKGOPTS) typeset -u pnu=$pn pd=$($GMAKE show=PKG_DESCR) ph=$($GMAKE show=PKG_URL) - (print "config ADK_PACKAGE_$pnu" - pnf=$pn - while (( ${#pnf} < 34 )); do - pnf=$pnf. - done - print "\tprompt \"$pnf ${pd:-$pn}\"" + + ( + print "config ADK_COMPILE_$pnu" print \\ttristate + print -n \\tdepends on + sp=' ' + for xu in $pa; do + print -n "${sp}ADK_PACKAGE_$xu" + sp=' || ' + done + print print \\tdefault n - if [[ -n $pd$ph ]]; then - print \\thelp - [[ -n $pd ]] && print "\t $pd" - [[ -n $pd && -n $ph ]] && print '\t ' - [[ -n $ph ]] && print "\t $ph" - fi + + for xu in $pa; do + x=$($GMAKE show=PKGNAME_$xu) + print \\nconfig ADK_PACKAGE_$xu + xf=$x + while (( ${#xf} < 34 )); do + xf=$xf. + done + print "\tprompt \"$xf ${pd:-$pn}\"" + print \\ttristate + print \\tdefault n + print \\tselect ADK_COMPILE_$pnu + if [[ -n $pd$ph ]]; then + print \\thelp + [[ -n $pd ]] && print "\t $pd" + [[ -n $pd && -n $ph ]] && print '\t ' + [[ -n $ph ]] && print "\t $ph" + fi + done ) >Config.in + cd .. done |