--- trunk/mage/usr/lib/mage/smage2.sh 2009/11/18 12:56:23 940 +++ trunk/mage/usr/lib/mage/smage2.sh 2009/11/20 19:41:27 941 @@ -20,8 +20,6 @@ SMAGESUFFIX="smage2" MLIBDIR=/usr/lib/mage SMAGEVERSION="$( < ${MLIBDIR}/version)" -SMAGE_LOG_CMD="tee -a /var/log/smage/${PKGNAME}.log" - ## only for tests -> normally in /etc/rc.d/init.d/functions COLRED="\033[1;6m\033[31m" @@ -75,6 +73,14 @@ exit 1 } +die_pipestatus() +{ + local pos="$1" + local comment="$2" + + [ ${PIPESTATUS[${pos}]} -gt 0 ] && die "${comment}" +} + xtitle() { if [[ ${TERM} = xterm ]] @@ -1161,6 +1167,7 @@ source ${SMAGENAME} || die "source failed" PKGNAME="${PNAME}-${PVER}-${ARCH}-${PBUILD}" MD5DIR="$(dirname ${SMAGENAME})/md5" +SMAGE_LOG_CMD="tee -a /var/log/smage/${PKGNAME}.log" xtitle "Compiling ${PKGNAME}" echo -e "${COLGREEN}Compiling ${PKGNAME}${COLDEFAULT}" @@ -1239,11 +1246,16 @@ [[ ! -d /var/log/smage ]] && install -d /var/log/smage echo -e "### Build started on $(date) ###\n" > /var/log/smage/${PKGNAME}.log -src_prepare || die "src_prepare failed" | ${SMAGE_LOG_CMD} +src_prepare | ${SMAGE_LOG_CMD} +die_pipestatus 0 "src_prepare failed" step_by_step $_ -src_compile || die "src_compile failed" | ${SMAGE_LOG_CMD} + +src_compile | ${SMAGE_LOG_CMD} +die_pipestatus 0 "src_compile failed" step_by_step $_ -src_install || die "src_install failed" | ${SMAGE_LOG_CMD} + +src_install | ${SMAGE_LOG_CMD} +die_pipestatus 0 "src_install failed" step_by_step $_