# # . ./build.vars and set -o errexit -o noglob are assumed. # log_msg info "Building distribution tarballs..."; cd ${PREFIX}; if [ "${TARBALL_SUFFIX}" = "bz2" ]; then if [ -n "$(which pbzip2 2>/dev/null)" ]; then TARBALL_COMPRESS_CMD="pbzip2"; else TARBALL_COMPRESS_CMD="bzip2"; fi; elif [ "${TARBALL_SUFFIX}" = "gz" ]; then if [ -n "$(which pigz 2>/dev/null)" ]; then TARBALL_COMPRESS_CMD="pigz"; else TARBALL_COMPRESS_CMD="gzip"; fi; elif [ "${TARBALL_SUFFIX}" = "xz" ]; then TARBALL_COMPRESS_CMD="xz"; TARBALL_COMPRESS_ARGS="-T0"; else log_msg failexit "Unknown tarball suffix \`.${TARBALL_SUFFIX}'."; fi; TARBALL_FNAME=${TARBALL_FNAME_PREFIX}${BUILD_USER}@${BUILD_HNAME}-${BUILD_DATE_START}.tar.${TARBALL_SUFFIX}; TARBALL_SRC_FNAME=${TARBALL_SRC_FNAME_PREFIX}${BUILD_USER}@${BUILD_HNAME}-${BUILD_DATE_START}.tar.${TARBALL_SUFFIX}; 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."; find native/lib -maxdepth 1 -type l \ -exec sh -c '[ -f "${DEST:=native/lib/$(readlink -- "${0}")}" ] && \ rm -f -- "${0}" && ln -f -- "${DEST}" "${0}"' {} \;; log_msg info "Converted symbolic links in ${PREFIX_BASENAME}/lib to hard links."; tar -cpf - $(find . -maxdepth 2 -mindepth 1 -type d \ -not -path ./native -not -path ./native/lib.bak \ -not -path ./tmp -not -path ./tmp/\*) \ "Create \`Midipix mintty shell' shortcut.vbs" midipix.sh README |\ ${TARBALL_COMPRESS_CMD} ${TARBALL_COMPRESS_ARGS} -c > ${TARBALL_FNAME}; log_msg info "Finished building binary distribution tarball."; if [ -x "$(which gpg 2>/dev/null)" -a -n "${TARBALL_SIGN_GPG_KEY}" ] &&\ gpg --list-keys "${TARBALL_SIGN_GPG_KEY}" >/dev/null 2>&1; then gpg --armor --passphrase-file /dev/null \ --local-user "${TARBALL_SIGN_GPG_KEY}" --sign ${TARBALL_FNAME}; log_msg info "Signed binary distribution tarball."; fi; rm -rf -- ${PREFIX_BASENAME}/lib; mv -- ${PREFIX_BASENAME}/lib.bak ${PREFIX_BASENAME}/lib; log_msg info "Restored ${PREFIX_BASENAME}/lib."; if [ "${BUILD}" = "debug" ]; then log_msg info "Building source tarball..."; tar -cpf - $(find tmp -mindepth 2 -maxdepth 2 \ -not -path tmp/.\* \ -not -path tmp/ntctty/.git -not -path tmp/psxscl/.git) |\ ${TARBALL_COMPRESS_CMD} ${TARBALL_COMPRESS_ARGS} -c > ${TARBALL_SRC_FNAME}; log_msg info "Finished building source tarball."; if [ -x "$(which gpg 2>/dev/null)" -a -n "${TARBALL_SRC_SIGN_GPG_KEY}" ] &&\ gpg --list-keys "${TARBALL_SRC_SIGN_GPG_KEY}" >/dev/null 2>&1; then gpg --armor --passphrase-file /dev/null \ --local-user "${TARBALL_SRC_SIGN_GPG_KEY}" --sign ${TARBALL_SRC_FNAME}; log_msg info "Signed source tarball."; fi; fi; # vim:filetype=sh