--- trunk/mage/usr/lib/mage/smage2.sh 2011/12/29 15:15:34 1592 +++ trunk/mage/usr/lib/mage/smage2.sh 2011/12/29 15:20:20 1593 @@ -1440,62 +1440,72 @@ [[ ! -d /var/log/smage ]] && install -d /var/log/smage echo -e "### Build started on $(date) ###\n" > /var/log/smage/${PKGNAME}.log -src_prepare | ${SMAGE_LOG_CMD} -die_pipestatus 0 "src_prepare failed" -step_by_step $_ - -src_compile | ${SMAGE_LOG_CMD} -die_pipestatus 0 "src_compile failed" -step_by_step $_ - -# only run checks if requested -if mqueryfeature "!check" +if [[ ${PKGTYPE} = virtual ]] then - echo "!check detected; src_check() will not be run!" | ${SMAGE_LOG_CMD} - step_by_step src_check + echo "virtual package detected; nothing will be build ..." + # automatically set !pkgbuild here too + msetfeature "!pkgbuild" else - src_check | ${SMAGE_LOG_CMD} - die_pipestatus 0 "src_check failed" + src_prepare | ${SMAGE_LOG_CMD} + die_pipestatus 0 "src_prepare failed" step_by_step $_ -fi -# build several subpackages -if [[ -n ${SPLIT_PACKAGES} ]] -then - # save bindir & pname - split_save_variables - export SAVED_BINDIR="${BINDIR}" - for subpackage in ${SPLIT_PACKAGES} - do - if typeset -f src_install_${subpackage} > /dev/null - then - # export subpackage bindir - export BINDIR="${SAVED_BINDIR}_${subpackage}" - # export PNAME, several internal function and include - # rely on this variable - export PNAME="${subpackage}" - - echo - echo -en "${COLBLUE}*** ${COLDEFAULT}" - echo -en " Running ${COLGREEN}split src_install()${COLDEFAULT}" - echo -en " for subpkg: ${COLBLUE}${PNAME}${COLDEFAULT}" - echo -e " - basepkg: ${COLBLUE}${SPLIT_PACKAGE_BASE}${COLDEFAULT} ..." - - src_install_${subpackage} | ${SMAGE_LOG_CMD} - die_pipestatus 0 "src_install_${subpackage} failed" - step_by_step $_ - fi - done - # restore bindir & pname - split_restore_variables - # unset all saved smage variables - split_unset_variables -else - src_install | ${SMAGE_LOG_CMD} - die_pipestatus 0 "src_install failed" + src_compile | ${SMAGE_LOG_CMD} + die_pipestatus 0 "src_compile failed" step_by_step $_ + + # only run checks if requested + if mqueryfeature "!check" + then + echo "!check detected; src_check() will not be run!" | ${SMAGE_LOG_CMD} + step_by_step src_check + else + src_check | ${SMAGE_LOG_CMD} + die_pipestatus 0 "src_check failed" + step_by_step $_ + fi + + # build several subpackages + if [[ -n ${SPLIT_PACKAGES} ]] + then + # save bindir & pname + split_save_variables + export SAVED_BINDIR="${BINDIR}" + for subpackage in ${SPLIT_PACKAGES} + do + if typeset -f src_install_${subpackage} > /dev/null + then + # export subpackage bindir + export BINDIR="${SAVED_BINDIR}_${subpackage}" + # export PNAME, several internal function and include + # rely on this variable + export PNAME="${subpackage}" + + echo + echo -en "${COLBLUE}*** ${COLDEFAULT}" + echo -en " Running ${COLGREEN}split src_install()${COLDEFAULT}" + echo -en " for subpkg: ${COLBLUE}${PNAME}${COLDEFAULT}" + echo -e " - basepkg: ${COLBLUE}${SPLIT_PACKAGE_BASE}${COLDEFAULT} ..." + + src_install_${subpackage} | ${SMAGE_LOG_CMD} + die_pipestatus 0 "src_install_${subpackage} failed" + step_by_step $_ + fi + done + # restore bindir & pname + split_restore_variables + # unset all saved smage variables + split_unset_variables + else + src_install | ${SMAGE_LOG_CMD} + die_pipestatus 0 "src_install failed" + step_by_step $_ + fi fi +# echo for sake of good-looking +echo + if mqueryfeature "!compressdoc" then echo -e "!compressdoc detected; documentation will not be compressed ..."