--- trunk/mage-buildserver/helper/buildserver-build-install-prerequisites.sh 2014/08/28 08:17:36 2763 +++ trunk/mage-buildserver/helper/buildserver-build-install-prerequisites.sh 2019/03/19 16:12:08 3113 @@ -81,21 +81,34 @@ die "smagefile '${SMAGESCRIPTSDIR}/${SMAGEFILE}' not found." fi +# don't want to run any exported post/preinstall or post/preremove +# functions of the smage here because they will be exported globally +# and honored by every package which does not override these function. +# the final package (the smage itself) will not be installed via this script, +# so these functions can be safely ignored. +for func in {pre,post}{install,remove} +do + if [[ $(typeset -f ${func}) ]] + then + unset "${func}" + fi +done + # create build info dir -install -d ${BUILDSERVER_CACHE_DIR}/build +install -d ${BUILDSERVER_CACHE_DIR}/build/${PNAME} -if [ ! -f ${BUILDSERVER_CACHE_DIR}/build/${PNAME}-${PVER}-${PBUILD}/INSTALL_DEPS ] +if [ ! -f ${BUILDSERVER_CACHE_DIR}/build/${PNAME}/${PNAME}-${PVER}-${PBUILD}/INSTALL_DEPS ] then - die "${BUILDSERVER_CACHE_DIR}/build/${PNAME}-${PVER}-${PBUILD}/INSTALL_DEPS missing. run 'buildserver-build-depends first" + die "${BUILDSERVER_CACHE_DIR}/build/${PNAME}/${PNAME}-${PVER}-${PBUILD}/INSTALL_DEPS missing. run 'buildserver-build-depends first" fi -if [ ! -f ${BUILDSERVER_CACHE_DIR}/build/${PNAME}-${PVER}-${PBUILD}/SRC_INSTALL_DEPS ] +if [ ! -f ${BUILDSERVER_CACHE_DIR}/build/${PNAME}/${PNAME}-${PVER}-${PBUILD}/SRC_INSTALL_DEPS ] then - die "${BUILDSERVER_CACHE_DIR}/build/${PNAME}-${PVER}-${PBUILD}/SRC_INSTALL_DEPS missing. run 'buildserver-build-depends first" + die "${BUILDSERVER_CACHE_DIR}/build/${PNAME}/${PNAME}-${PVER}-${PBUILD}/SRC_INSTALL_DEPS missing. run 'buildserver-build-depends first" fi -INSTALL_DEPS="$(< ${BUILDSERVER_CACHE_DIR}/build/${PNAME}-${PVER}-${PBUILD}/INSTALL_DEPS)" -SRC_INSTALL_DEPS="$(< ${BUILDSERVER_CACHE_DIR}/build/${PNAME}-${PVER}-${PBUILD}/SRC_INSTALL_DEPS)" +INSTALL_DEPS="$(< ${BUILDSERVER_CACHE_DIR}/build/${PNAME}/${PNAME}-${PVER}-${PBUILD}/INSTALL_DEPS)" +SRC_INSTALL_DEPS="$(< ${BUILDSERVER_CACHE_DIR}/build/${PNAME}/${PNAME}-${PVER}-${PBUILD}/SRC_INSTALL_DEPS)" if [[ -z ${SRC_INSTALL_DEPS} ]] then @@ -123,10 +136,16 @@ PKGDIR="/var/cache/mage/tmp-packages" install -d "${PKGDIR}" +# clean all tmp-packages if requested +if [[ ${CLEAN_TMP_PACKAGES} = 1 ]] +then + echo "Cleaning tmp-packages as requested" + cleanpkg +fi + # now install the packages (no srcinstall, when the user not explcitly want this) fetch_packages ${INSTALL_DEPS} || die "fetching packages" md5sum_packages ${INSTALL_DEPS} || die "md5 sum packages" -unpack_packages ${INSTALL_DEPS} || die "unpacking packages" install_packages ${INSTALL_DEPS} || die "installing packages" if [[ ${CLEANPACKAGES} = 1 ]] then @@ -140,4 +159,4 @@ echo "-5" | etc-update # mark prerequisites as installed -touch ${BUILDSERVER_CACHE_DIR}/build/${PNAME}-${PVER}-${PBUILD}/INSTALLED_PREREQUISITES +touch ${BUILDSERVER_CACHE_DIR}/build/${PNAME}/${PNAME}-${PVER}-${PBUILD}/INSTALLED_PREREQUISITES