X-Git-Url: http://gitweb.hugovil.com/?a=blobdiff_plain;f=functions%2Fipkg;h=8ac0a099ed8c35bc006c8deff39654103486e22e;hb=0fbeb62f20d44b9452cd286fe5bacb7e329fc2f6;hp=9d3ea3ed1f5ae5c272807ab05523f2c64050bc9a;hpb=564ec1bbb321286571c30da20b81620c33b18e6f;p=hvlinux.git diff --git a/functions/ipkg b/functions/ipkg index 9d3ea3e..8ac0a09 100644 --- a/functions/ipkg +++ b/functions/ipkg @@ -1,5 +1,12 @@ #!/bin/bash +# Global input variables: +# PACKAGE_STATUS +# +# Global output variables: +# BUILD_SIZE +# SOURCE_SIZE + function_exists() { local FUNCTION_NAME=$1 @@ -29,8 +36,8 @@ ipkg_decompress_package() mv -v ${LFS_TMP}/${DECOMPRESSED_DIRNAME} ${LFS_TMP}/${PACKAGE} fi - # Displaying package source size in log file - echo " Source size:" $(du -h -s ${LFS_TMP}/${PACKAGE} | awk '{ print $1 }') 1>> ${LFS_LOG_FILE} + # Saving package source size in global variable. + SOURCE_SIZE=$(du -h -s ${LFS_TMP}/${PACKAGE} | awk '{ print $1 }') # Removing old build directory (if any) if [ -d ${LFS_TMP}/${PACKAGE}-build ]; then @@ -90,21 +97,24 @@ ipkg_finish() # Make sure to return to scripts directory cd ${SCRDIR} - # Displaying package build size in log file - BUILD_SIZE=$(du -h -s -c ${LFS_TMP}/${PACKAGE} ${LFS_TMP}/${PACKAGE}-build | grep total | awk '{ print $1 }') - echo " Build size : ${BUILD_SIZE}" 1>> ${LFS_LOG_FILE} + if [ "x${DECOMPRESS}" = "x1" ]; then + # Saving package build size in global variable + BUILD_SIZE=$(du -h -s -c ${LFS_TMP}/${PACKAGE} ${LFS_TMP}/${PACKAGE}-build | grep total | awk '{ print $1 }') - # Some scripts need to preserve the source or build directory. They can - # do so by renaming them. - if [ -d ${LFS_TMP}/${PACKAGE} ]; then - # Removing source directory - echo "Removing source directory" - rm -rf ${LFS_TMP}/${PACKAGE} - fi - if [ -d ${LFS_TMP}/${PACKAGE}-build ]; then - # Removing build directory - echo "Removing build directory" - rm -rf ${LFS_TMP}/${PACKAGE}-build + # Some scripts need to preserve the source or build directory. They can + # do so by renaming them. + if [ -d ${LFS_TMP}/${PACKAGE} ]; then + # Removing source directory + echo "Removing source directory" + rm -rf ${LFS_TMP}/${PACKAGE} + fi + if [ -d ${LFS_TMP}/${PACKAGE}-build ]; then + # Removing build directory + echo "Removing build directory" + rm -rf ${LFS_TMP}/${PACKAGE}-build + fi + else + BUILD_SIZE="Unknown" fi } @@ -118,10 +128,13 @@ ipkg_script() else # Use default script name PACKAGE_DEF=${SCRDIR}/pkg/$(get_pkg_name ${PACKAGE}) - fi - ipkg_decompress_package + if [ "x${DECOMPRESS}" = "x1" ]; then + ipkg_decompress_package + else + SOURCE_SIZE="Unknown" + fi if [ -f ${PACKAGE_DEF} ]; then echo "Load custom package functions and definitions from ${PACKAGE_DEF}" @@ -151,7 +164,7 @@ ipkg_script() --cache-file=${LFS_TMP}/${PACKAGE}-build/config.cache" fi - if [ "x${IPKG_MODE}" != "xnoac" ]; then + if [ -x ${LFS_TMP}/${PACKAGE}/configure ]; then # Add option --disable-dependency-tracking if supported if cat ${LFS_TMP}/${PACKAGE}/configure | \ grep -q "disable-dependency-tracking"; then @@ -159,6 +172,20 @@ ipkg_script() ${CONFIGURE_OPTS} \ --disable-dependency-tracking" fi + + # Remove option --sysconfdir=... if not supported + if ! cat ${LFS_TMP}/${PACKAGE}/configure | \ + grep -q "sysconfdir"; then + # Split on space, one per line. + # Remove line --sysconfdir=... + # Join separate lines on one line + # Remove trailing space + CONFIGURE_OPTS=$(echo ${CONFIGURE_OPTS} | \ + tr -s " " "\n" | \ + grep -v "\-\-sysconfdir=" | \ + tr -s "\n" " " | \ + sed "s/ $//") + fi fi ipkg_display_build_infos