--- trunk/mage/usr/lib/mage/smage2.sh 2009/11/20 22:39:11 943 +++ trunk/mage/usr/lib/mage/smage2.sh 2009/11/21 01:31:33 945 @@ -898,6 +898,13 @@ export SAVED_DEPEND="${DEPEND}" export SAVED_SDEPEND="${SDEPEND}" export SAVED_PROVIDE="${PROVIDE}" + export SAVED_NOPKGBUILD="${NOPKGBUILD}" + + # bindir too + export SAVED_BINDIR="${BINDIR}" + + # export the SPLIT_PACKAGE_BASE + export SPLIT_PACKAGE_BASE="${SAVED_PNAME}" # functions if [[ ! -z $(typeset -f preinstall) ]] @@ -952,6 +959,10 @@ export DEPEND="${SAVED_DEPEND}" export SDEPEND="${SAVED_SDEPEND}" export PROVIDE="${SAVED_PROVIDE}" + export NOPKGBUILD="${SAVED_NOPKGBUILD}" + + # bindir too + export BINDIR="${SAVED_BINDIR}" # functions if [[ ! -z $(typeset -f SAVED_preinstall) ]] @@ -1004,6 +1015,9 @@ unset SAVED_DEPEND unset SAVED_SDEPEND unset SAVED_PROVIDE + unset SAVED_BINDIR + unset SAVED_NOPKGBUILD + unset SPLIT_PACKAGE_BASE unset -f SAVED_preinstall unset -f SAVED_postinstall unset -f SAVED_preremove @@ -1133,7 +1147,7 @@ { if [[ ${STEP_BY_STEP} = true ]] then - echo "${COLRED}Step-by-step enabled! Paused after $1.${COLDEFAULT}" + echo -e "${COLRED}Step-by-step enabled! Paused after $1.${COLDEFAULT}" echo "Press [enter] to continue" read fi @@ -1456,7 +1470,8 @@ # build several subpackages if [[ -n ${SPLIT_PACKAGES} ]] then - # save bindir + # save bindir & pname + split_save_variables export SAVED_BINDIR="${BINDIR}" for subpackage in ${SPLIT_PACKAGES} do @@ -1464,22 +1479,29 @@ 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 - export BINDIR="${SAVED_BINDIR}" - unset SAVED_BINDIR + # restore bindir & pname + split_restore_variables else src_install | ${SMAGE_LOG_CMD} die_pipestatus 0 "src_install failed" step_by_step $_ fi -echo -e "${COLGREEN}DEB${COLRED}UG!${COLDEFAULT}" - # compressing doc, info & man files if [[ -n ${SPLIT_PACKAGES} ]] then