--- trunk/mage/usr/lib/mage/depwalker.sh 2014/10/22 12:27:17 2839 +++ trunk/mage/usr/lib/mage/depwalker.sh 2014/10/24 08:23:22 2840 @@ -48,6 +48,8 @@ echo " upgrade, srcupgrade," echo " install-build-prerequisites," echo " pretend-build-prerequisites" + echo " install-deep-build-prerequisites," + echo " pretend-deep-build-prerequisites" echo " -d --debug enable debug mode" echo " -s --smage use a smage to calculate dependencies" echo @@ -59,6 +61,7 @@ # set some sane defaults DEBUG=0 SMAGE_DEPEND=0 +SDEPEND_ONETIME=0 # very basic getops for i in $* @@ -177,8 +180,8 @@ [[ ${METHOD} = srcpretend ]] || [[ ${METHOD} = srcupgrade ]] || [[ ${METHOD} = srcuppretend ]] || - [[ ${METHOD} = install-build-prerequisites ]] || - [[ ${METHOD} = pretend-build-prerequisites ]] + [[ ${METHOD} = install-deep-build-prerequisites ]] || + [[ ${METHOD} = pretend-deep-build-prerequisites ]] then # only if SDEPEND is not zero if [ -n "${SDEPEND}" ] @@ -194,6 +197,29 @@ fi fi + # add sdepend for the smage/mage file only for the first time + # to catch sdepend only from the target + if [[ ${METHOD} = install-build-prerequisites ]] || + [[ ${METHOD} = pretend-build-prerequisites ]] + then + if [[ ${SDEPEND_ONETIME} = 0 ]] + then + # only if SDEPEND is not zero + if [ -n "${SDEPEND}" ] + then + # crlf is substantly needed !! + if [ -n "${MY_DEPEND}" ] + then + MY_DEPEND="${MY_DEPEND} + ${SDEPEND}" + else + MY_DEPEND="${SDEPEND}" + fi + fi + SDEPEND_ONETIME=1 + fi + fi + unset DEPEND unset SDEPEND @@ -334,6 +360,8 @@ if [[ ${METHOD} != install-build-prerequisites ]] && [[ ${METHOD} != pretend-build-prerequisites ]] && + [[ ${METHOD} != install-deep-build-prerequisites ]] && + [[ ${METHOD} != pretend-deep-build-prerequisites ]] && [[ ${METHOD} != upgrade ]] && [[ ${METHOD} != uppretend ]] && [[ ${METHOD} != srcupgrade ]] && @@ -352,7 +380,8 @@ [[ ${METHOD} = srcpretend ]] || \ [[ ${METHOD} = uppretend ]] || \ [[ ${METHOD} = srcuppretend ]] || \ - [[ ${METHOD} = pretend-build-prerequisites ]] && \ + [[ ${METHOD} = pretend-build-prerequisites ]] || \ + [[ ${METHOD} = pretend-deep-build-prerequisites ]] && \ echo "done" @@ -361,7 +390,8 @@ [[ ${METHOD} = srcpretend ]] || \ [[ ${METHOD} = uppretend ]] || \ [[ ${METHOD} = srcuppretend ]] || \ - [[ ${METHOD} = pretend-build-prerequisites ]] + [[ ${METHOD} = pretend-build-prerequisites ]] || \ + [[ ${METHOD} = pretend-deep-build-prerequisites ]] then # this is a little bit faster declare -i x=0 @@ -421,5 +451,6 @@ [[ ${METHOD} = srcinstall ]] || \ [[ ${METHOD} = upgrade ]] || \ [[ ${METHOD} = srcupgrade ]] || \ - [[ ${METHOD} = install-build-prerequisites ]] && \ + [[ ${METHOD} = install-build-prerequisites ]] || \ + [[ ${METHOD} = install-deep-build-prerequisites ]] && \ echo "${ALLDEPS}"