summaryrefslogtreecommitdiffhomepage
path: root/subr/post_tarballs.subr
diff options
context:
space:
mode:
authorLucio Andrés Illanes Albornoz (arab, vxp) <l.illanes@gmx.de>2017-02-01 03:09:53 +0100
committerLucio Andrés Illanes Albornoz (arab, vxp) <l.illanes@gmx.de>2017-02-01 03:09:53 +0100
commit1548659e9cc2eeffbbd300791f228ae61524c280 (patch)
treeb5c8d203ecde6eba91a9ed33bd5f01323c00e472 /subr/post_tarballs.subr
parent7fa1adbf79cd2757696a2e694f8ce7b935330fbf (diff)
downloadmidipix_build-1548659e9cc2eeffbbd300791f228ae61524c280.tar.bz2
midipix_build-1548659e9cc2eeffbbd300791f228ae61524c280.tar.xz
build.sh, subr/*: reorganised as subr/{check,mode,pkg,post}_*.subr.
Diffstat (limited to 'subr/post_tarballs.subr')
-rw-r--r--subr/post_tarballs.subr95
1 files changed, 95 insertions, 0 deletions
diff --git a/subr/post_tarballs.subr b/subr/post_tarballs.subr
new file mode 100644
index 00000000..12e39401
--- /dev/null
+++ b/subr/post_tarballs.subr
@@ -0,0 +1,95 @@
+#
+# . ./build.vars and set -o errexit -o noglob are assumed.
+#
+
+postp_tarball_dist() {
+ TARBALL_FNAME=${TARBALL_FNAME_PREFIX}${BUILD_USER}@${BUILD_HNAME}-${BUILD_DATE_START}.tar.${TARBALL_SUFFIX};
+ tar -cpf - $(find . -maxdepth 2 -mindepth 1 -type d \
+ -not -path ./${PREFIX_BASENAME} \
+ -not -path ./${PREFIX_BASENAME}.bak \
+ -not -path ./${PREFIX_BASENAME}.bak/\* \
+ -not -path ./tmp -not -path ./tmp/\*) \
+ midipix_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;
+};
+
+postp_tarball_toolchain() {
+ TARBALL_CROSS_FNAME=${TARBALL_CROSS_FNAME_PREFIX}${BUILD_USER}@${BUILD_HNAME}-${BUILD_DATE_START}.tar.${TARBALL_SUFFIX};
+ tar -cpf - bin include lib lib64 libexec share ${PKG_TARGET} |\
+ ${TARBALL_COMPRESS_CMD} ${TARBALL_COMPRESS_ARGS} -c > ${TARBALL_CROSS_FNAME};
+ log_msg info "Finished building toolchain tarball.";
+ if [ -x "$(which gpg 2>/dev/null)" -a -n "${TARBALL_CROSS_SIGN_GPG_KEY}" ] &&\
+ gpg --list-keys "${TARBALL_CROSS_SIGN_GPG_KEY}" >/dev/null 2>&1; then
+ gpg --armor --passphrase-file /dev/null \
+ --local-user "${TARBALL_CROSS_SIGN_GPG_KEY}" --sign ${TARBALL_CROSS_FNAME};
+ log_msg info "Signed toolchain tarball.";
+ fi;
+};
+
+postp_tarball_minipix() {
+ TARBALL_MINIPIX_FNAME=${TARBALL_MINIPIX_FNAME_PREFIX}${BUILD_USER}@${BUILD_HNAME}-${BUILD_DATE_START}.tar.${TARBALL_SUFFIX};
+ tar -cpf - minipix \
+ midipix_shortcut.vbs midipix.sh README |\
+ ${TARBALL_COMPRESS_CMD} ${TARBALL_COMPRESS_ARGS} -c > ${TARBALL_MINIPIX_FNAME};
+ log_msg info "Finished building binary Minipix distribution tarball.";
+ if [ -x "$(which gpg 2>/dev/null)" -a -n "${TARBALL_MINIPIX_SIGN_GPG_KEY}" ] &&\
+ gpg --list-keys "${TARBALL_MINIPIX_SIGN_GPG_KEY}" >/dev/null 2>&1; then
+ gpg --armor --passphrase-file /dev/null \
+ --local-user "${TARBALL_MINIPIX_SIGN_GPG_KEY}" --sign ${TARBALL_MINIPIX_FNAME};
+ log_msg info "Signed binary Minipix distribution tarball.";
+ fi;
+};
+
+postp_tarball_src() {
+ TARBALL_SRC_FNAME=${TARBALL_SRC_FNAME_PREFIX}${BUILD_USER}@${BUILD_HNAME}-${BUILD_DATE_START}.tar.${TARBALL_SUFFIX};
+ 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 \
+ -not -path tmp/ptycon/.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;
+};
+
+post_tarballs() {
+ if [ ${BUILD_SCRIPT_RC:-0} -eq 0 ]\
+ && [ ${ARG_TARBALL:-0} -eq 1 ]; then
+ log_msg info "Building distribution tarballs...";
+ case ${TARBALL_SUFFIX} in
+ bz2) if [ -n "$(which pbzip2 2>/dev/null)" ]; then
+ TARBALL_COMPRESS_CMD="pbzip2";
+ else
+ TARBALL_COMPRESS_CMD="bzip2";
+ fi; ;;
+ gz) if [ -n "$(which pigz 2>/dev/null)" ]; then
+ TARBALL_COMPRESS_CMD="pigz";
+ else
+ TARBALL_COMPRESS_CMD="gzip";
+ fi; ;;
+ xz) TARBALL_COMPRESS_CMD="xz";
+ TARBALL_COMPRESS_ARGS="-T0"; ;;
+ *) log_msg failexit "Unknown tarball suffix \`.${TARBALL_SUFFIX}'.";
+ esac;
+ cd ${PREFIX}; PREFIX_BASENAME=${PREFIX_NATIVE##*/};
+ post_tarball_dist; post_tarball_toolchain; post_tarball_minipix;
+ if [ "${BUILD}" = "debug" ]; then
+ post_tarball_src;
+ fi;
+ fi;
+};
+
+# vim:filetype=sh