--- trunk/core/include/multilib.sminc 2008/12/22 11:33:39 307 +++ trunk/core/include/multilib.sminc 2010/08/23 11:25:26 6406 @@ -1,4 +1,4 @@ -# $Header: /magellan-cvs/smage/include/multilib.sminc,v 1.33 2007-11-13 15:49:09 niro Exp $ +# $Id$ # multilib abis # do not define EMUL_LINUX_32 after inherit of multlib !! @@ -14,8 +14,8 @@ # add linux32 to the dependencies if [[ ${EMUL_LINUX_32} = true ]] then - EMUL_LINUX_32_SDEPENDS_x86_64=">= dev-util/linux32-1" - SPECIAL_VARS="${SPECIAL_VARS} EMUL_LINUX_32_SDEPENDS_x86_64" + EMUL_LINUX_32_SDEPEND_x86_64=">= dev-util/linux32-1" + SPECIAL_VARS="${SPECIAL_VARS} EMUL_LINUX_32_SDEPEND_x86_64" fi ;; i*86) @@ -33,10 +33,10 @@ # the var ist decided with our common eval+echo magic if [[ -z ${SDEPEND} ]] then - SDEPEND="\$(eval echo \\\$EMUL_LINUX_32_SDEPENDS_\${ARCH/i*86/x86} | tr ';' '\n')" + SDEPEND="\$(eval echo \\\$EMUL_LINUX_32_SDEPEND_\${ARCH/i*86/x86} | tr ';' '\n')" else SDEPEND="${SDEPEND} - \$(eval echo \\\$EMUL_LINUX_32_SDEPENDS_\${ARCH/i*86/x86} | tr ';' '\n')" + \$(eval echo \\\$EMUL_LINUX_32_SDEPEND_\${ARCH/i*86/x86} | tr ';' '\n')" fi fi @@ -65,7 +65,9 @@ then export LDFLAGS="-L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}" fi - export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig" + # keep pkgconfig clean + local orig_pkg_config_path="${PKG_CONFIG_PATH}" + export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig:${PKG_CONFIG_PATH}" echo -e "${COLBLUE}*** ${COLGREEN}running with -${ABI} ABI${COLDEFAULT}" echo -e "${COLBLUE}*** ${COLGREEN} ABI${COLDEFAULT}='${ABI}'" @@ -92,7 +94,9 @@ # run any given command eval $@ || die - unset ABI CC CXX ABI_LIBDIR LDFLAGS PKG_CONFIG_PATH + unset ABI CC CXX ABI_LIBDIR LDFLAGS + # keep pkgconfig clean + export PKG_CONFIG_PATH="${orig_pkg_config_path}" # restore original settings if [[ ${EMUL_LINUX_32} = true ]] @@ -112,7 +116,9 @@ then export LDFLAGS="-L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}" fi - export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig" + # keep pkgconfig clean + local orig_pkg_config_path="${PKG_CONFIG_PATH}" + export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig:${PKG_CONFIG_PATH}" echo -e "${COLBLUE}*** ${COLGREEN}running with -${ABI} ABI${COLDEFAULT}" echo -e "${COLBLUE}*** ${COLGREEN} ABI${COLDEFAULT}='${ABI}'" @@ -131,7 +137,9 @@ # run any given command eval $@ || die - unset ABI CC CXX ABI_LIBDIR LDFLAGS PKG_CONFIG_PATH + unset ABI CC CXX ABI_LIBDIR LDFLAGS + # keep pkgconfig clean + export PKG_CONFIG_PATH="${orig_pkg_config_path}" } only-m32() @@ -186,13 +194,21 @@ done } +mabi() +{ + echo \${ABI} +} + ## # multilib compile functions ## -# rename the old one -old_mconfigure=old$(typeset -f mconfigure) -eval ${old_mconfigure} +if [[ ! -z $(typeset -f mconfigure) ]] +then + # rename the old one + old_mconfigure=old$(typeset -f mconfigure) + eval "${old_mconfigure}" +fi mconfigure() { local abi @@ -208,9 +224,35 @@ done } -# rename the old one -old_munpack=old$(typeset -f munpack) -eval "${old_munpack}" +if [[ ! -z $(typeset -f cmake_configure) ]] +then + # rename the old one + old_cmake_configure=old$(typeset -f cmake_configure) + eval "${old_cmake_configure}" +fi +cmake_configure() +{ + local abi + local abis_to_run="${MULTILIB_ABIS}" + + # respect MULTILIB_ONLY_ABI variable + [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}" + + local saved_SRCDIR="${SRCDIR}" + for abi in ${abis_to_run} + do + SRCDIR="${saved_SRCDIR}-${abi}" + cd ${SRCDIR} + abi-${abi} oldcmake_configure $@ || die + done +} + +if [[ ! -z $(typeset -f munpack) ]] +then + # rename the old one + old_munpack=old$(typeset -f munpack) + eval "${old_munpack}" +fi munpack() { local abi @@ -227,9 +269,12 @@ done } -# rename the old one -old_mmake=old$(typeset -f mmake) -eval "${old_mmake}" +if [[ ! -z $(typeset -f mmake) ]] +then + # rename the old one + old_mmake=old$(typeset -f mmake) + eval "${old_mmake}" +fi mmake() { local abi @@ -246,9 +291,12 @@ done } -# rename the old one -old_minstall=old$(typeset -f minstall) -eval "${old_minstall}" +if [[ ! -z $(typeset -f minstall) ]] +then + # rename the old one + old_minstall=old$(typeset -f minstall) + eval "${old_minstall}" +fi minstall() { local abi @@ -281,9 +329,12 @@ done } -# rename the old one -old_mpatch=old$(typeset -f mpatch) -eval "${old_mpatch}" +if [[ ! -z $(typeset -f mpatch) ]] +then + # rename the old one + old_mpatch=old$(typeset -f mpatch) + eval "${old_mpatch}" +fi mpatch() { local abi @@ -300,9 +351,12 @@ done } -# rename the old one -old_mlibtoolize=old$(typeset -f mlibtoolize) -eval "${old_mlibtoolize}" +if [[ ! -z $(typeset -f mlibtoolize) ]] +then + # rename the old one + old_mlibtoolize=old$(typeset -f mlibtoolize) + eval "${old_mlibtoolize}" +fi mlibtoolize() { local abi