- shift
- shift
- local CONFIGURE_OPTS=${*}
-
- # Checking if script is valid and executable
- if [ ! -x ${SCRIPT} ]; then
- echo
- echo "${FUNCNAME}(): script not found: ${SCRIPT}"
- exit ${EXIT_FAILURE}
- fi
-
- PACKAGE_LOG=${LFS_LOG_DIR}/${PACKAGE_NAME}.log
-
- # Checking if package was previously successfully installed
- if grep "^${LABEL} successfully installed" ${LFS_LOG_FILE} \
- 1> /dev/null 2>&1; then
- return $EXIT_SUCCESS
- fi
-
- # Displaying label
- echo -n "[ ] Installing" ${LABEL}" "
-
- echo "------------------------" 1>> ${LFS_LOG_FILE}
- echo "Installing" ${LABEL} 1>> ${LFS_LOG_FILE}
-
- decompress_package ${PACKAGE_NAME} 1>> ${PACKAGE_LOG} 2>&1
- eval_retval2
-
- # Get the name of the decompressed directory
- local DECOMPRESSED_DIRNAME=$(static_decompressed_dirname ${PACKAGE_NAME})
-
- # Displaying package source size in log file
- echo " Source size:" $(du -h -s ${LFS_TMP}/${DECOMPRESSED_DIRNAME} | awk '{ print $1 }') 1>> ${LFS_LOG_FILE}
-
- # Removing old build directory (if any)
- if [ -d ${LFS_TMP}/${PACKAGE_NAME}-build ]; then
- rm -v -rf ${LFS_TMP}/${PACKAGE_NAME}-build 1>> ${PACKAGE_LOG} 2>&1
- eval_retval2
- fi
-
- # Creating build directory
- mkdir -v ${LFS_TMP}/${PACKAGE_NAME}-build 1>> ${PACKAGE_LOG} 2>&1
- eval_retval2
-
- # Executing script.
- ${SCRIPT} ${PACKAGE_NAME} ${CONFIGURE_OPTS} 1>> ${PACKAGE_LOG} 2>&1
- eval_retval2
-
- # Displaying package build size in log file
- BUILD_SIZE=$(du -h -s -c ${LFS_TMP}/${DECOMPRESSED_DIRNAME} ${LFS_TMP}/${PACKAGE_NAME}-build | grep total | awk '{ print $1 }')
- echo " Build size : ${BUILD_SIZE}" 1>> ${LFS_LOG_FILE}
-
- # Some scripts need to preserve the source or build directory. They can
- # do so by renaming them.
- if [ -d ${LFS_TMP}/${DECOMPRESSED_DIRNAME} ]; then
- # Removing source directory
- rm -v -rf ${LFS_TMP}/${DECOMPRESSED_DIRNAME} 1>> ${PACKAGE_LOG} 2>&1
- eval_retval2
- fi
- if [ -d ${LFS_TMP}/${PACKAGE_NAME}-build ]; then
- # Removing build directory
- rm -v -rf ${LFS_TMP}/${PACKAGE_NAME}-build 1>> ${PACKAGE_LOG} 2>&1
- eval_retval2
- fi
-
- # Writing success string to the end of the log file
- echo "${LABEL} successfully installed" 1>> ${LFS_LOG_FILE}
-
- # Displaying build time after the package name
- display_build_time ${START_TIME}
-
- ${SET_CHECK_POSITION}
- print_status success
-
- return $EXIT_SUCCESS
-}