summaryrefslogtreecommitdiffhomepage
path: root/build.sh
diff options
context:
space:
mode:
authorLucio Andrés Illanes Albornoz (arab, vxp) <l.illanes@gmx.de>2016-03-06 19:03:45 +0000
committerLucio Andrés Illanes Albornoz (arab, vxp) <l.illanes@gmx.de>2016-03-06 19:03:45 +0000
commit95bf778d64e1e74be25eeb47daf68317f3fc616e (patch)
treeff29e192fa1940b7593bfc30bb157de3348aa568 /build.sh
parent75cb84da6274d97fb7d146499b96b5a4973367cd (diff)
downloadmidipix_build-95bf778d64e1e74be25eeb47daf68317f3fc616e.tar.bz2
midipix_build-95bf778d64e1e74be25eeb47daf68317f3fc616e.tar.xz
- Adds glib2, irssi, and libffi.
- Fixes signal handling wrt. build status files. - Simplify tarball creation procedure. - Forcibly remove all \*.la files from $PREFIX_LVL3/lib after each installation build step.
Diffstat (limited to 'build.sh')
-rwxr-xr-xbuild.sh23
1 files changed, 11 insertions, 12 deletions
diff --git a/build.sh b/build.sh
index e12a9d43..e8751232 100755
--- a/build.sh
+++ b/build.sh
@@ -27,7 +27,7 @@ clear_env_with_except ${CLEAR_ENV_VARS_EXCEPT};
check_path_vars ${CHECK_PATH_VARS}; check_prereqs ${PREREQ_CMDS};
mkdir -p ${PREFIX} ${PREFIX_NATIVE} ${PREFIX_TARGET} ${WORKDIR};
{(
-update_build_status build_start; build_times_init; trap clean_build_status\ abort HUP INT TERM USR1 USR2;
+update_build_status build_start; build_times_init; trap "clean_build_status abort; exit 1" HUP INT TERM USR1 USR2;
log_msg info "Build started by ${BUILD_USER:=${USER}}@${BUILD_HNAME:=$(hostname)} at ${BUILD_DATE_START}.";
log_env_vars ${LOG_ENV_VARS}; [ ${ARG_CLEAN:-0} -eq 1 ] && clean_prefix;
BUILD_NFINI=${BUILD_NSKIP:=${BUILD_NFAIL:=${BUILD_NBUILT:=0}}};
@@ -99,25 +99,24 @@ if [ $(( ${BUILD_NFINI} + ${BUILD_NSKIP} )) -ge 0 ] \
&& [ ${ARG_TARBALL:-0} -eq 1 ]; then
update_build_status build_finish tarball_start;
log_msg info "Building distribution tarball...";
- (cd ${PREFIX}; PREFIX_BASENAME=${PREFIX_NATIVE##*/};
+ cd ${PREFIX}; PREFIX_BASENAME=${PREFIX_NATIVE##*/};
rm_if_exists -m ${PREFIX_BASENAME}/lib.bak;
tar -C ${PREFIX_BASENAME}/lib -cpf - . | tar -C ${PREFIX_BASENAME}/lib.bak -xpf -;
log_msg info "Backed up ${PREFIX_BASENAME}/lib.";
- (cd native/lib &&
- find . -maxdepth 1 -type l \
- -exec sh -c 'DEST=$(readlink -- "${0}") && \
- rm -f -- "${0}" && ln -- "${DEST}" "${0}"' {} \;); wait;
- log_msg info "Converted symbolic links in ${PREFIX_BASENAME}/lib to hard links.";
- TARBALL_FNAME=${TARBALL_FNAME_PREFIX}${BUILD_USER}@${BUILD_HNAME}-${BUILD_DATE_START}.tar.xz;
- tar -cJpf ${TARBALL_FNAME} \
+ find native/lib -maxdepth 1 -type l \
+ -exec sh -c '[ -f "${DEST:=$(readlink -- "${0}")}" ] && \
+ rm -f -- "${0}" && ln -- "${DEST}" "${0}"' {} \;;
+ log_msg info "Converted symbolic links in ${PREFIX_BASENAME}/lib to hard links.";
+ tar -cJpf ${TARBALL_FNAME_PREFIX}${BUILD_USER}@${BUILD_HNAME}-${BUILD_DATE_START}.tar.xz\
$(find_with_no_paths "${TARBALL_EXCLUDE_PATHS} native/lib.bak" . \
-mindepth 1 -maxdepth 2 -type d);
- rm -rf ${PREFIX_BASENAME}/lib; mv ${PREFIX_BASENAME}/lib.bak ${PREFIX_BASENAME}/lib);
- wait; log_msg info "Finished building distribution tarball.";
+ rm -rf ${PREFIX_BASENAME}/lib; mv ${PREFIX_BASENAME}/lib.bak ${PREFIX_BASENAME}/lib;
+ cd ${OLDPWD};
+ log_msg info "Finished building distribution tarball.";
update_build_status tarball_finish;
fi;
update_build_status finish; clean_build_status;
-exit ${BUILD_SCRIPT_RC})} 2>&1 | tee ${PREFIX}/build.log &
+exit ${BUILD_SCRIPT_RC})} 2>&1 | tee ${PREFIX}/${BUILD_LOG_FNAME:=build-$(date ${TIMESTAMP_FMT_STATUS_FILES}).log} &
trap "kill -INT $!" HUP INT TERM USR1 USR2; wait;
# vim:filetype=sh