--- trunk/mage/usr/lib/mage/smage2.sh 2013/02/01 09:50:07 2042 +++ branches/mage-next/usr/lib/mage/smage2.sh 2014/01/29 10:42:21 2525 @@ -18,6 +18,9 @@ source ${MLIBDIR}/mage4.functions.sh source ${MLIBDIR}/smage2.functions.sh +# export default path +export PATH="${PATH}:${MLIBDIR}" + ## setup ## SMAGENAME="$1" SMAGEVERSION="$(< ${MLIBDIR}/version)" @@ -154,23 +157,8 @@ regen_mage_tree - # build several targets - if [[ -n ${MAGE_TARGETS} ]] - then - for target in ${MAGE_TARGETS} - do - # build md5sum for existing packages - generate_package_md5sum \ - --pcat "${PCAT}" \ - --pname "${PNAME}" \ - --pver "${PVER}" \ - --pbuild "${PBUILD}" \ - --parch "${ARCH}" \ - --target "${target}" - done - # build several subpackages - elif [[ -n ${SPLIT_PACKAGES} ]] + if [[ -n ${SPLIT_PACKAGES} ]] then split_save_variables for subpackage in ${SPLIT_PACKAGES} @@ -318,6 +306,10 @@ # setup for distcc goes *before* ccache, so ccache comes before distcc in path mqueryfeature "distcc" && setup_distcc_environment +# setup icecc +# setup for icecc goes *before* ccache, so ccache comes before icecc in path +mqueryfeature "icecc" && setup_icecc_environment + # setup ccache mqueryfeature "ccache" && setup_ccache_environment @@ -471,6 +463,11 @@ do # honor split_info split_info_${subpackage} + if [[ ${PKGTYPE} = virtual ]] + then + # automatically set !pkgbuild here too + msetfeature "!pkgbuild" + fi if mqueryfeature "!compressdoc" then @@ -507,6 +504,11 @@ do # honor split_info split_info_${subpackage} + if [[ ${PKGTYPE} = virtual ]] + then + # automatically set !pkgbuild here too + msetfeature "!pkgbuild" + fi if mqueryfeature "!libtool" then @@ -547,6 +549,11 @@ do # honor split_info split_info_${subpackage} + if [[ ${PKGTYPE} = virtual ]] + then + # automatically set !pkgbuild here too + msetfeature "!pkgbuild" + fi if mqueryfeature "purge" then @@ -589,6 +596,11 @@ do # honor split_info split_info_${subpackage} + if [[ ${PKGTYPE} = virtual ]] + then + # automatically set !pkgbuild here too + msetfeature "!pkgbuild" + fi if mqueryfeature "!strip" then @@ -626,43 +638,55 @@ fi fi -if mqueryfeature "!pkgbuild" +if mqueryfeature "qalint" then - echo -e "!pkgbuild detected; Package will not be build ..." -else - # build several targets - if [[ -n ${MAGE_TARGETS} ]] + if mqueryfeature "!pkgbuild" + then + echo "!pkgbuild detected; skipping QA lint checks ..." + else + if [[ -n ${SPLIT_PACKAGES} ]] then - for target in ${MAGE_TARGETS} + # save smage environment + split_save_variables + for subpackage in ${SPLIT_PACKAGES} do - # check if a special target_pkgbuild exists - if typeset -f ${target}_pkgbuild > /dev/null + # honor split_info + split_info_${subpackage} + if [[ ${PKGTYPE} = virtual ]] then - # run it - run_resume post-${target}_pkgbuild || ${target}_pkgbuild - resume_stamp post-${target}_pkgbuild + # automatically set !pkgbuild here too + msetfeature "!pkgbuild" + fi + + if mqueryfeature "qalint" + then + if mqueryfeature "!pkgbuild" + then + echo "!pkgbuild detected; skipping QA lint checks for '${subpackage}' ..." + else + echo -e "${COLBLUE}===${COLGREEN} running QA lint checks for '${subpackage}' ...${COLDEFAULT}" + mqalint ${BINDIR}_${subpackage} + fi fi - # now create the target package - run_resume post-pkg_builddir_${target} || ${MLIBDIR}/pkgbuild_dir.sh \ - "${PNAME}-${target}-${PVER}-${ARCH}$(print_distrotag)-${PBUILD}" \ - ${BINDIR} || die "target: ${target} package-build failed" - resume_stamp post-pkg_builddir_${target} - - # build pkg-md5-sum if requested - run_resume post-md5sum_${target} || generate_package_md5sum \ - --pcat "${PCAT}" \ - --pname "${PNAME}" \ - --pver "${PVER}" \ - --pbuild "${PBUILD}" \ - --parch "${ARCH}" \ - --target "${target}" - resume_stamp post-md5sum_${target} - echo -e "${COLGREEN}\nPackage ${PNAME}-${target}-${PVER}-${ARCH}$(print_distrotag)-${PBUILD} successfully builded.\n${COLDEFAULT}" + # restore smage environment + split_restore_variables done + # unset saved variables + split_unset_variables + else + echo -e "${COLBLUE}===${COLGREEN} running QA lint checks ...${COLDEFAULT}" + mqalint ${BINDIR} + fi + fi +fi +if mqueryfeature "!pkgbuild" +then + echo -e "!pkgbuild detected; Package will not be build ..." +else # build several subpackages - elif [[ -n ${SPLIT_PACKAGES} ]] + if [[ -n ${SPLIT_PACKAGES} ]] then split_save_variables for subpackage in ${SPLIT_PACKAGES} @@ -676,6 +700,11 @@ PCAT="${PCATEGORIE}" unset PCATEGORIE fi + if [[ ${PKGTYPE} = virtual ]] + then + # automatically set !pkgbuild here too + msetfeature "!pkgbuild" + fi # jump to next one if !pkgbuild is set in split_info if mqueryfeature "!pkgbuild"