--- trunk/mage/usr/lib/mage/smage2.sh 2010/06/28 18:15:44 1085 +++ trunk/mage/usr/lib/mage/smage2.sh 2011/06/04 09:20:09 1346 @@ -50,6 +50,7 @@ source /etc/mage.rc.global source ${MAGERC} +source ${MLIBDIR}/mage4.functions.sh # set PKGDIR and BUILDDIR and BINDIR to MROOT if [[ -n ${MROOT} ]] @@ -59,6 +60,26 @@ export BINDIR=${MROOT}/${BINDIR} fi +# sources the smage file and uses state from distribution file if exist +# may helpful for repository support later on +smagesource() +{ + local file="$1" + local mystate + local mycodename + + source ${file} + + [[ -n ${STATE} ]] && mystate="${STATE}" + if [ -f ${SMAGESCRIPTSDIR}/distribution ] + then + source ${SMAGESCRIPTSDIR}/distribution + [[ -n ${STATE} ]] && mystate="${STATE}" + fi + # now switch state and export it + STATE="${mystate}" +} + showversion() { echo -en "Magellan Source Install v${SMAGEVERSION} " @@ -153,13 +174,16 @@ local DB_MD5_SUM_FILE="${MD5DIR}/$(basename ${SMAGENAME} .${SMAGESUFFIX}).md5" local FETCHING local i mirror + local wget_opts + # filter wget command if busybox was found + wget_opts="$(busybox_filter_wget_options ${WGET_FETCH_OPTIONS})" # install SRCDIR/PNAME if not exist [ ! -d ${SOURCEDIR}/${PNAME} ] && install -d ${SOURCEDIR}/${PNAME} # check if FETCHING is needed - ( cd ${SOURCEDIR}/${PNAME}; md5sum --check ${DB_MD5_SUM_FILE} &> /dev/null ) + ( cd ${SOURCEDIR}/${PNAME}; md5sum -c ${DB_MD5_SUM_FILE} &> /dev/null ) if [[ $? = 0 ]] then # md5's ok, no fetching needed @@ -198,7 +222,7 @@ then echo -e "${COLBLUE}==>${COLGREEN} fetching ${my_SRC_URI_MIRROR}${COLDEFAULT}" wget \ - ${WGET_FETCH_OPTIONS} \ + ${wget_opts} \ --output-document="${my_SOURCEDIR}/$(basename ${my_SRC_URI_MIRROR})" \ "${my_SRC_URI_MIRROR}" if [[ $? = 0 ]] @@ -219,7 +243,7 @@ then echo -e "${COLBLUE}==>${COLGREEN} fetching ${my_SRC_URI_MIRROR}${COLDEFAULT}" wget \ - ${WGET_FETCH_OPTIONS} \ + ${wget_opts} \ --output-document="${my_SOURCEDIR}/$(basename ${my_SRC_URI_MIRROR})" \ "${my_SRC_URI_MIRROR}" if [[ $? = 0 ]] @@ -240,7 +264,7 @@ then echo -e "${COLBLUE}==>${COLGREEN} fetching ${my_SRC_URI_MIRROR}${COLDEFAULT}" wget \ - ${WGET_FETCH_OPTIONS} \ + ${wget_opts} \ --output-document="${my_SOURCEDIR}/$(basename ${my_SRC_URI_MIRROR})" \ "${my_SRC_URI_MIRROR}" if [[ $? = 0 ]] @@ -261,7 +285,7 @@ then echo -e "${COLBLUE}==>${COLGREEN} fetching ${my_SRC_URI_MIRROR}${COLDEFAULT}" wget \ - ${WGET_FETCH_OPTIONS} \ + ${wget_opts} \ --output-document="${my_SOURCEDIR}/$(basename ${my_SRC_URI_MIRROR})" \ "${my_SRC_URI_MIRROR}" if [[ $? = 0 ]] @@ -282,7 +306,7 @@ then echo -e "${COLBLUE}==>${COLGREEN} fetching ${my_SRC_URI_MIRROR}${COLDEFAULT}" wget \ - ${WGET_FETCH_OPTIONS} \ + ${wget_opts} \ --output-document="${my_SOURCEDIR}/$(basename ${my_SRC_URI_MIRROR})" \ "${my_SRC_URI_MIRROR}" if [[ $? = 0 ]] @@ -298,7 +322,7 @@ then echo -e "${COLBLUE}==>${COLGREEN} fetching ${my_SRC_URI}${COLDEFAULT}" wget \ - ${WGET_FETCH_OPTIONS} \ + ${wget_opts} \ --output-document="${my_SOURCEDIR}/$(basename ${my_SRC_URI})" \ "${my_SRC_URI}" fi @@ -314,7 +338,7 @@ # recheck md5 sums echo echo -e "${COLBLUE}===${COLGREEN} Checking MD5 sums:${COLDEFAULT}" - ( cd ${SOURCEDIR}/${PNAME}; md5sum --check ${DB_MD5_SUM_FILE} ) || die "md5 failed" + ( cd ${SOURCEDIR}/${PNAME}; md5sum -c ${DB_MD5_SUM_FILE} ) || die "md5 failed" echo # not needed anymore @@ -502,6 +526,14 @@ libtoolize ${opts} || die "running: mlibtoolize ${opts}" } +mautoreconf() +{ + local opts="$@" + [[ -z ${opts} ]] && opts="--verbose --install --force" + + autoreconf ${opts} || die "running: mautoreconf ${opts}" +} + minstalldocs() { local docfiles @@ -1170,11 +1202,13 @@ # creates md5sums for smages to given dir if [[ $1 = calcmd5 ]] then - if [ $# -ge 3 ] + if [ $# -ge 2 ] then SMAGENAME="$2" MD5DIR="$3" - source ${SMAGENAME} || die "download source failed" + [[ -z ${MD5DIR} ]] && MD5DIR="$(dirname ${SMAGENAME})/md5" + + smagesource ${SMAGENAME} || die "download source failed" # overridable sourcedir; must be declared after source of the smage2 CALC_SOURCEDIR="${CALC_SOURCEDIR:="${SOURCEDIR}/${PNAME}"}" @@ -1226,7 +1260,7 @@ echo else echo "Usage: Calculating MD5 Sums:" - echo " $(basename $0) calcmd5 /path/to/SMAGENAME /path/to/MD5DIR" + echo " $(basename $0) calcmd5 /path/to/SMAGENAME [/path/to/MD5DIR]" echo echo echo "Export the CALC_SOURCEDIR variable to override current SOURCEDIRs." @@ -1248,7 +1282,7 @@ # get smage SMAGENAME="$2" MD5DIR="$(dirname ${SMAGENAME})/md5" - source ${SMAGENAME} || die "download source failed" + smagesource ${SMAGENAME} || die "download source failed" download_sources exit 0 @@ -1260,7 +1294,7 @@ # set correct SMAGENAME SMAGENAME="$2" MD5DIR="$(dirname ${SMAGENAME})/md5" - source ${SMAGENAME} || die "regen: smage2 not found" + smagesource ${SMAGENAME} || die "regen: smage2 not found" regen_mage_tree @@ -1322,7 +1356,7 @@ echo -e "${COLGREEN}create-src-tarball called for ${COLBLUE}${SMAGENAME}${COLGREEN} ...${COLDEFAULT}" - source ${SMAGENAME} || die "regen: smage2 not found" + smagesource ${SMAGENAME} || die "regen: smage2 not found" if [[ -d ${SOURCEDIR}/${PNAME} ]] then @@ -1371,7 +1405,7 @@ [ -z "${CFLAGS}" ] && die "no CFLAGS variable found in ${MAGERC}" [ -z "${CXXFLAGS}" ] && die "no CXXFLAGS variable found in ${MAGERC}" -source ${SMAGENAME} || die "source failed" +smagesource ${SMAGENAME} || die "source failed" PKGNAME="${PNAME}-${PVER}-${ARCH}-${PBUILD}" MD5DIR="$(dirname ${SMAGENAME})/md5" SMAGE_LOG_CMD="tee -a /var/log/smage/${PKGNAME}.log"