#!/bin/sh _show_args(){ echo " ==== BUILD_DEPENDS ===" make -V BUILD_DEPENDS echo echo " ==== LIB_DEPENDS ===" make -V LIB_DEPENDS echo echo " ==== CONFIGURE_ENV ===" make -V CONFIGURE_ENV echo echo " ==== APR_CONF_ARGS ===" make -V APR_CONF_ARGS echo echo " ==== APU_CONF_ARGS ===" make -V APU_CONF_ARGS echo echo " ==== CFLAGS ===" make -V CFLAGS echo echo " ==== LDFLAGS ===" make -V LDFLAGS echo echo " ==== PLIST_SUB ===" make -V PLIST_SUB } _show_packages(){ pkg_info -Qoa } # cleanup old builds make clean # force the make config dialog make config PN=`make -V PKGNAME` APR_WRKDIR=`make -V APR_WRKDIR` APU_WRKDIR=`make -V APU_WRKDIR` APR_VERSION=`make -V APR_VERSION` APU_VERSION=`make -V APU_VERSION` # directory name == portname # this way we also document the used options. if [ ! -d ${PN} ]; then mkdir ${PN} || exit 1 # log WITH(OUT)_XXX options make showconfig | awk '/=o/ {print $1}' > ${PN}/showconfig # log all installed packages and versions and build args _show_packages > ${PN}/packages.log _show_args > ${PN}/build_args.log # build and log with the script utility # script -q .test.log make script -q .test.log make test # cleanup and save logfile(s) col -xb < .test.log > ${PN}/test.log && rm .test.log cp ${APR_WRKDIR}/config.log ${PN}/config_apr-${APR_VERSION}.log cp ${APU_WRKDIR}/config.log ${PN}/config_apr-util-${APU_VERSION}.log tar cjf ${PN}.tbz ${PN} echo echo "=========================================================" echo "logs are stored in" echo "${PN}(.tbz)" echo "=========================================================" else echo echo "=========================================================" echo " => ${PN} already exist => break" echo " => please remove ${PN} and start again" echo "=========================================================" return 1 fi