| |
| |
| |
| |
| |
| check_cpuinfo() { |
| if [ -z "${BUILD_CPUS}" ] \ |
| && [ -e /proc/cpuinfo ]; then |
| BUILD_CPUS=$(awk '/^processor/{cpus++} END{print cpus}' /proc/cpuinfo); |
| fi; |
| }; |
| |
| clear_env() { |
| for __ in $(export | sed -e 's/^export //' -e 's/=.*$//'); do |
| if ! match_list "${CLEAR_ENV_VARS_EXCEPT}" " " "${__}"; then |
| unset "${__}"; |
| fi; |
| done; |
| }; |
| |
| check_paths() { |
| for __ in ${CHECK_PATH_VARS}; do |
| if [ -z "${___:=$(get_var_unsafe "${__}")}" ]; then |
| log_msg failexit "Error: variable \`${__}' is empty or unset."; |
| elif [ "${___ |
| log_msg failexit "Error: variable \`${__}' contains one or more whitespace characters."; |
| fi; |
| done; |
| for __ in ${CHECK_PREREQ_CMDS} $(eval echo ${CHECK_PREREQ_FILES_DYNAMIC}) ${CHECK_PREREQ_FILES}; do |
| if [ "${__ |
| if [ ! -e "${__}" ]; then |
| log_msg fail "Error: missing prerequisite file \`${__}'."; |
| __exit=1; |
| fi; |
| else |
| if ! test_cmd "${__}"; then |
| log_msg fail "Error: missing prerequisite command \`${__}'."; |
| __exit=1; |
| fi; |
| fi; |
| done; |
| for __ in ${CHECK_PREREQ_PERL_MODULES}; do |
| if ! perl -M"${__}" -e "" 2>/dev/null; then |
| log_msg fail "Error: missing prerequisite Perl module \`${__}'."; |
| __exit=1; |
| fi; |
| done; |
| if [ ${__exit:-0} = 1 ]; then |
| exit 1; |
| elif [ -n "${__exit}" ]; then |
| unset __exit; |
| fi; |
| }; |
| |
| clean_prefix() { |
| if [ ${ARG_CLEAN:-0} -eq 1 ]; then |
| log_msg info "-c specified, cleaning prefix..."; |
| for __ in ${CLEAR_PREFIX_DIRS}; do |
| if [ -e ${PREFIX}/${__} ]; then |
| secure_rm ${PREFIX}/${__}; |
| fi; |
| done; |
| fi; |
| }; |
| |
| create_dirs() { |
| insecure_mkdir ${PREFIX} ${PREFIX_NATIVE} ${PREFIX_CROSS} ${PREFIX_TARGET}/lib ${DLCACHEDIR} ${WORKDIR}; |
| for __ in ${PREFIX}/usr ${PREFIX_NATIVE}/usr; do |
| if [ ! -L "${__}" ]; then |
| secure_rm "${__}"; ln -sf -- . "${__}"; |
| fi; |
| done; |
| insecure_mkdir ${PREFIX_MINIPIX}/bin; |
| for __ in lib libexec share; do |
| if [ ! -e ${PREFIX_MINIPIX}/${__} ]; then |
| ln -sf bin ${PREFIX_MINIPIX}/${__}; |
| fi; |
| done; |
| }; |
| |
| fini_build_progress_file() { |
| if [ -f "${BUILD_STATUS_IN_PROGRESS_FNAME}" ]; then |
| secure_rm ${BUILD_STATUS_IN_PROGRESS_FNAME}; |
| fi; |
| }; |
| |
| fini_build_vars() { |
| : $((BUILD_TIMES_SECS=$(command date +%s)-${BUILD_TIMES_SECS})); |
| : $((BUILD_TIMES_HOURS=${BUILD_TIMES_SECS}/3600)); |
| : $((BUILD_TIMES_MINUTES=(${BUILD_TIMES_SECS}%3600)/60)); |
| : $((BUILD_TIMES_SECS=(${BUILD_TIMES_SECS}%3600)%60)); |
| }; |
| |
| init_build_log() { |
| if [ -e ${BUILD_LOG_FNAME} ]; then |
| mv -- ${BUILD_LOG_FNAME} ${BUILD_LOG_LAST_FNAME}; |
| fi; |
| }; |
| |
| init_build_progress_file() { |
| touch ${BUILD_STATUS_IN_PROGRESS_FNAME}; |
| }; |
| |
| init_build_vars() { |
| BUILD_DATE_START="$(date %Y-%m-%d-%H-%M-%S)"; |
| BUILD_NFINI=${BUILD_NSKIP:=${BUILD_NFAIL:=${BUILD_NBUILT:=0}}}; |
| BUILD_TIMES_SECS=$(command date +%s); |
| }; |
| |
| source_scripts() { |
| set -- ${BUILD_PACKAGE_LC%.*} ${BUILD_PACKAGE_LC |
| for SCRIPT_SOURCE in vars/${BUILD_PACKAGE_LC}.vars ${BUILD_SCRIPT_FNAME}; do |
| if [ -f ${MIDIPIX_BUILD_PWD}/${SCRIPT_SOURCE} ]; then |
| if [ ${ARG_DRYRUN:-0} -eq 1 ]; then |
| echo . ${MIDIPIX_BUILD_PWD}/${SCRIPT_SOURCE}; |
| else |
| . ${MIDIPIX_BUILD_PWD}/${SCRIPT_SOURCE}; |
| fi; |
| fi; |
| done; |
| }; |
| |
| source_vars() { |
| for __ in ${HOME}/midipix_build.vars ../midipix_build.vars ./vars/build.vars; do |
| [ -e ${__} ] && . ${__}; |
| done; |
| }; |
| |
| subst_tgts() { |
| while [ ${ |
| case "${1}" in |
| devroot) |
| echo ${DEVROOT_PACKAGES}; ;; |
| world) echo ${WORLD_PACKAGES}; ;; |
| *) echo ${1}; ;; |
| esac; shift; |
| done; |
| }; |
| |
| # vim:filetype=sh |
|
|