From 8c791c79aef693feaa435016ec3f94ed808f5dd5 Mon Sep 17 00:00:00 2001 From: Lucio Andrés Illanes Albornoz Date: Feb 13 2020 11:54:02 +0000 Subject: build.sh: change working directory to "$(dirname "${0}")" at startup. etc/build.usage: updated. groups/2*.native_packages_*.group: adds dependencies. vars/env.vars, groups/{010.host_deps,120.native_runtime}.group: removes ${PKG_SRC_TARBALL_DISABLE}. groups/999.invariants.group b, vars/{env,invariants_tarballs}.vars: removes tarball generation. subr/build_args.subr: reimplemented using getopts(1). subr/{build_args,ex_pkg_dispatch}.subr: don't inhibit dependency processing if ${ARG_RESTART_RECURSIVE} is set. --- diff --git a/build.sh b/build.sh index 05c2af1..b720274 100755 --- a/build.sh +++ b/build.sh @@ -97,6 +97,7 @@ buildp_dispatch() { esac; return 0; }; +cd "$(dirname "${0}")"; for __ in $(find subr -name *.subr); do . "${__}"; done; buildp_dispatch start_build "${@}"; diff --git a/etc/build.usage b/etc/build.usage index 7a41377..8cba04f 100644 --- a/etc/build.usage +++ b/etc/build.usage @@ -1,16 +1,16 @@ -usage: ./build.sh [-a nt32|nt64] [-b debug|release] [-C dir[,..]] [-D kind[,..]] - [-F ipv4|ipv6|offline] [-h] [-P [jobs]] [-r ALL|LAST|name[,..][:step,..]] - [-R] [-v[v[v[v]]]] [--as-needed] [--debug-minipix] [[ ..]] +usage: ./build.sh [-a nt32|nt64] [-A] [-b debug|release] [-C dir[,..]] [-d] [-D kind[,..]] + [-F ipv4|ipv6|offline] [-h] [-P [jobs]] [-r [*]ALL|LAST|name[,..][:step,..]] + [-R] [-v[v[v[v]]]] [[ ..]] -a nt32|nt64 Selects 32-bit or 64-bit architecture; defaults to nt64. + -A Don't build unless the midipix_build repository has received new commits. -b debug|release Selects debug or release build; defaults to debug. -C dir[,..] Clean build directory (build,) ${PREFIX} before processing build scripts (prefix,) source directory (src,) and/or destination directory (dest) after successful package builds. + -d Don't strip(1) minipix binaries to facilitate debugging minipix. -D kind[,..] Produce minimal midipix distribution directory (minipix,) package - tarballs (pkg,) RPM binary packages (rpm,) compressed and optionally - signed binary and source tarballs containing ${PREFIX} sans ${BUILD_WORKDIR} - (t{bz2,gz,xz},) and/or deployable distribution ZIP archive (zipdist.) - {t{bz2,gz,xz},zipdist} imply minipix. + tarballs (pkg,) RPM binary packages (rpm,) and/or deployable distribution + ZIP archive (zipdist.) -F ipv4|ipv6|offline Force IPv4 (ipv4) or IPv6 (ipv6) when downloading package archives and/or Git repositories or don't download either at all (offline.) @@ -20,10 +20,12 @@ usage: ./build.sh [-a nt32|nt64] [-b debug|release] [-C dir[,..]] [-D kind[,..]] processors on the host system. If -R is not specified and at least one (1) package fails to build, all remaining package builds will be forcibly aborted for convenience. - -r ALL[:step,..]|LAST|name[,..][:step,..] + -r [*]ALL[:step,..]|LAST|name[,..][:step,..] Restart all packages/the specified comma-separated package(s) completely or at optionally specified comma-separated step(s) or restart the last failed package and resume build. + Prepend w/ `*' to automatically include dependencies. + Currently defined steps are: fetch_wget, fetch_git, fetch_extract, configure_patch_pre, configure_autotools, configure_patch, @@ -33,8 +35,6 @@ usage: ./build.sh [-a nt32|nt64] [-b debug|release] [-C dir[,..]] [-D kind[,..]] -R Ignore build failures, skip printing package logs, and continue building (relaxed mode.) -v[v[v[v]]] Be verbose; -vv: always print package logs; -vvv: set xtrace during package builds; -vvvv: logs fileops. - --as-needed Don't build unless the midipix_build repository has received new commits. - --debug-minipix Don't strip(1) minipix binaries to facilitate debugging minipix. [ ..] One of: host_deps, host_deps_rpm, host_toolchain, host_tools, minipix, native_packages, native_runtime, native_toolchain, and/or native_tools. diff --git a/groups/010.host_deps.group b/groups/010.host_deps.group index bbbcde9..4352890 100644 --- a/groups/010.host_deps.group +++ b/groups/010.host_deps.group @@ -160,7 +160,6 @@ HOST_DEPS_PREFIX="${PREFIX}"; : ${PKG_MPACKAGE_HOST_PKGLIST_DISABLE:=1}; : ${PKG_MPACKAGE_HOST_PREFIX:=${PREFIX_NATIVE}}; : ${PKG_MPACKAGE_HOST_RPM_DISABLE:=1}; -: ${PKG_MPACKAGE_HOST_SRC_TARBALL_DISABLE:=1}; : ${PKG_MUSL_FTS_HOST_SHA256SUM:=32dfe02768f1d3d91ab04df4fbdb7922cd34cd529ce7081a78c3ca8b8652d1ee}; : ${PKG_MUSL_FTS_HOST_VERSION:=1.2.7}; : ${PKG_MUSL_FTS_HOST_URL:=https://midipix.org/mirror/musl-fts/musl-fts-${PKG_MUSL_FTS_HOST_VERSION}.tar.xz}; diff --git a/groups/120.native_runtime.group b/groups/120.native_runtime.group index 300549a..f2e6337 100644 --- a/groups/120.native_runtime.group +++ b/groups/120.native_runtime.group @@ -26,7 +26,6 @@ NATIVE_RUNTIME_PREFIX="${PREFIX_NATIVE}"; : ${PKG_NTCTTY_DEPENDS:="dalist ldso ntapi pemagine"}; : ${PKG_NTCTTY_URLS_GIT:=ntctty=${DEFAULT_GITROOT_HEAD}/ntctty}; : ${PKG_NTCTTY_CFLAGS_CONFIGURE_EXTRA:=-O0}; -: ${PKG_NTCTTY_SRC_TARBALL_DISABLE:=1}; : ${PKG_NTUX_DEPENDS:="dalist ldso ntapi pemagine psxscl"}; : ${PKG_NTUX_URLS_GIT:=ntux=${DEFAULT_GITROOT}/ntux}; : ${PKG_NTUX_CFLAGS_CONFIGURE_EXTRA:=-O0}; @@ -39,13 +38,11 @@ NATIVE_RUNTIME_PREFIX="${PREFIX_NATIVE}"; : ${PKG_PSXSCL_URLS_GIT:=psxscl=${DEFAULT_GITROOT_HEAD}/psxscl}; : ${PKG_PSXSCL_CFLAGS_CONFIGURE_EXTRA:=-O0}; : ${PKG_PSXSCL_INSTALL_TARGET_EXTRA:=install-lib}; -: ${PKG_PSXSCL_SRC_TARBALL_DISABLE:=1}; : ${PKG_PSXSCL_STRACE_DEPENDS:="dalist ldso ntapi pemagine psxtypes"}; : ${PKG_PSXSCL_STRACE_URLS_GIT:=psxscl=${DEFAULT_GITROOT_HEAD}/psxscl}; : ${PKG_PSXSCL_STRACE_BUILD_STEPS_DISABLE:=install_make}; : ${PKG_PSXSCL_STRACE_CFLAGS_CONFIGURE_EXTRA:="-DPSX_EXTENDED_STRACE -O0"}; : ${PKG_PSXSCL_STRACE_INSTALL_FILES:="/=lib/debug ../obj/lib/libpsxscl.so=lib/debug/"}; -: ${PKG_PSXSCL_STRACE_SRC_TARBALL_DISABLE:=1}; : ${PKG_PSXTYPES_URLS_GIT:=psxtypes=${DEFAULT_GITROOT}/psxtypes}; : ${PKG_PSXTYPES_MAKEFLAGS_BUILD:="DESTDIR=${PREFIX_NATIVE}"}; : ${PKG_PSXTYPES_IN_TREE:=1}; @@ -53,7 +50,6 @@ NATIVE_RUNTIME_PREFIX="${PREFIX_NATIVE}"; : ${PKG_PTYCON_URLS_GIT:=ptycon=${DEFAULT_GITROOT}/ptycon}; : ${PKG_PTYCON_CFLAGS_CONFIGURE_EXTRA:=-O0}; : ${PKG_PTYCON_INSTALL_TARGET_EXTRA:="install-app install-lib"}; -: ${PKG_PTYCON_SRC_TARBALL_DISABLE:=1}; : ${PKG_SLTDL_DEPENDS:="ldso"}; : ${PKG_SLTDL_URLS_GIT:=sltdl=${DEFAULT_GITROOT}/sltdl}; : ${PKG_SLTDL_CONFIGURE_ARGS_EXTRA:=--as-ltdl-drop-in-replacement}; diff --git a/groups/221.native_packages_dev.group b/groups/221.native_packages_dev.group index e30ca3f..53fc304 100644 --- a/groups/221.native_packages_dev.group +++ b/groups/221.native_packages_dev.group @@ -54,6 +54,7 @@ patchutils perl python2 python3 ruby smallbasic tk"; : ${PKG_MAKE_SHA256SUM:=e05fdde47c5f7ca45cb697e973894ff4f5d79e13b750ed57d7b66d8defc78e19}; : ${PKG_MAKE_VERSION:=4.3}; : ${PKG_MAKE_URL:=https://ftp.gnu.org/gnu/make/make-${PKG_MAKE_VERSION}.tar.gz}; +: ${PKG_MANDOC_DEPENDS:="libz"}; : ${PKG_MANDOC_SHA256SUM:=b1c9a2f27c487d6be08387aab7602199fd356086631d6e3f471b00c75249082d}; : ${PKG_MANDOC_VERSION:=1.14.3}; : ${PKG_MANDOC_URL:=https://midipix.org/mirror/mandoc/mandoc-${PKG_MANDOC_VERSION}.tar.gz}; diff --git a/groups/231.native_packages_etc.group b/groups/231.native_packages_etc.group index b758c57..c9d75e2 100644 --- a/groups/231.native_packages_etc.group +++ b/groups/231.native_packages_etc.group @@ -109,7 +109,7 @@ fi; : ${PKG_EXPAT_SHA256SUM:=17b43c2716d521369f82fc2dc70f359860e90fa440bea65b3b85f0b246ea81f2}; : ${PKG_EXPAT_VERSION:=2.2.6}; : ${PKG_EXPAT_URL:=http://download.openpkg.org/components/cache/expat/expat-${PKG_EXPAT_VERSION}.tar.bz2}; -: ${PKG_FFMPEG_DEPENDS:="libshine libxml2"}; +: ${PKG_FFMPEG_DEPENDS:="libshine libtheora libxml2"}; : ${PKG_FFMPEG_SHA256SUM:=b684fb43244a5c4caae652af9022ed5d85ce15210835bce054a33fb26033a1a5}; : ${PKG_FFMPEG_VERSION:=4.1}; : ${PKG_FFMPEG_URL:=https://ffmpeg.org/releases/ffmpeg-${PKG_FFMPEG_VERSION}.tar.bz2}; diff --git a/groups/261.native_packages_x11.group b/groups/261.native_packages_x11.group index 7f43310..da89523 100644 --- a/groups/261.native_packages_x11.group +++ b/groups/261.native_packages_x11.group @@ -64,7 +64,7 @@ xterm xtrans xwd xwin"; : ${PKG_GTK2_URL:=http://ftp.gnome.org/pub/gnome/sources/gtk+/${PKG_GTK2_VERSION%.*}/gtk+-${PKG_GTK2_VERSION}.tar.xz}; : ${PKG_GTK2_CFLAGS_CONFIGURE_EXTRA:="-I${PREFIX_NATIVE}/include/freetype2 -I${PREFIX_NATIVE}/include/pango-1.0 -I${PREFIX_NATIVE}/include/gdk-pixbuf-2.0 -I${PREFIX_NATIVE}/include/atk-1.0 -I${PREFIX_NATIVE}/include/cairo -I${PREFIX_NATIVE}/include/glib-2.0 -I${PREFIX_NATIVE}/include/glib-2.0/gio -I${PREFIX_NATIVE}/lib/glib-2.0/include"}; : ${PKG_GTK2_CONFIGURE_ARGS_EXTRA:="--disable-cups --disable-papi"}; -: ${PKG_GTK3_DEPENDS:="atk cairo fontconfig freetype gdk glib harfbuzz libepoxy libX11 libXext bXfixes libXi pango"}; +: ${PKG_GTK3_DEPENDS:="atk cairo fontconfig freetype gdk glib harfbuzz libepoxy libX11 libXext libXfixes libXi pango"}; : ${PKG_GTK3_SHA256SUM:=d299612b018cfed7b2c689168ab52b668023708e17c335eb592260d186f15e1f}; : ${PKG_GTK3_VERSION:=3.22.28}; : ${PKG_GTK3_URL:=https://download.gnome.org/sources/gtk+/${PKG_GTK3_VERSION%.*}/gtk+-${PKG_GTK3_VERSION}.tar.xz}; diff --git a/groups/999.invariants.group b/groups/999.invariants.group index f624dfa..fd7100f 100644 --- a/groups/999.invariants.group +++ b/groups/999.invariants.group @@ -2,7 +2,7 @@ # Build group invariants # INVARIANTS_NO_LOG_VARS=1; -INVARIANTS_PACKAGES="invariants_digest invariants_gitref invariants_minipix invariants_tarballs invariants_zipdist"; +INVARIANTS_PACKAGES="invariants_digest invariants_gitref invariants_minipix invariants_zipdist"; : ${PKG_INVARIANTS_TARBALLS:="invariants_digest invariants_minipix"}; : ${PKG_INVARIANTS_ZIPDIST:="invariants_minipix"}; diff --git a/subr/build_args.subr b/subr/build_args.subr index 6a95b52..3576181 100644 --- a/subr/build_args.subr +++ b/subr/build_args.subr @@ -2,64 +2,31 @@ # set -o noglob is assumed. # -BUILD_ARGS_SPEC=" - ARCH:arg:-a: - ARG_AS_NEEDED:--as-needed: - ARG_CLEAN_BUILDS:arg:-C: - ARG_DEBUG_MINIPIX:--debug-minipix: - ARG_DIST:arg:-D: - ARG_FETCH_FORCE:-F: - ARG_PARALLEL:optarg:-P:auto - ARG_RELAXED:-R: - ARG_RESTART:arg:-r: - ARG_VERBOSE:selfarg:-v: - ARG_VERBOSE:selfarg:-vv: - ARG_VERBOSE:selfarg:-vvv: - ARG_VERBOSE:selfarg:-vvvv: - BUILD:arg:-b:"; - build_args() { - local _spec="${BUILD_ARGS_SPEC}" _spec_arg="" _found=""; - while [ ${#} -gt 0 ]; do - if [ "${1#-}" = "${1}" ]; then - break; - fi; - for _spec_arg in ${_spec}; do - case "${_spec_arg}" in - *:${1}:*) - case "${_spec_arg#*:}" in - arg:*) - ex_rtl_set_var_unsafe "${_spec_arg%%:*}" "${2}"; shift; ;; - optarg:*) - if [ -n "${2}" ]\ - && [ "x${2#-}" = "x${2}" ]; then - ex_rtl_set_var_unsafe "${_spec_arg%%:*}" "${2}"; - shift; - else - ex_rtl_set_var_unsafe "${_spec_arg%%:*}" \ - "${_spec_arg##*:}"; - fi; ;; - selfarg:*) - ex_rtl_set_var_unsafe "${_spec_arg%%:*}" "${1}"; ;; - *) - ex_rtl_set_var_unsafe "${_spec_arg%%:*}" 1; ;; - esac; _found=1; break; ;; - *) _found=0; ;; - esac; - done; - if [ "${_found:-0}" -eq 0 ]; then - exec cat etc/build.usage; - else - shift; - fi; - done; - if ex_rtl_lmatch "${ARG_DIST}" , tbz2 \ - || ex_rtl_lmatch "${ARG_DIST}" , tgz \ - || ex_rtl_lmatch "${ARG_DIST}" , txz \ - || ex_rtl_lmatch "${ARG_DIST}" , zipdist; then - if ! ex_rtl_lmatch "${ARG_DIST}" , minipix; then - ARG_DIST="${ARG_DIST:+${ARG_DIST},}minipix"; - fi; + local _opt=""; + while getopts a:Ab:C:dD:FhPr:Rv _opt; do + case "${_opt}" in + a) ARCH="${OPTARG}"; ;; + A) ARG_AS_NEEDED=1; ;; + b) BUILD="${OPTARG}"; ;; + C) ARG_CLEAN_BUILDS="${OPTARG}"; ;; + d) ARG_DEBUG_MINIPIX=1; ;; + D) ARG_DIST="${OPTARG}"; ;; + F) ARG_FETCH_FORCE=1; ;; + h) cat etc/build.usage; exit 0; ;; + P) ARG_PARALLEL="${OPTARG:-auto}"; ;; + r) ARG_RESTART="${OPTARG}"; ;; + R) ARG_RELAXED=1; ;; + v) : $((ARG_VERBOSE+=1)); ;; + *) cat etc/build.usage; exit 1; ;; + esac; done; shift $((${OPTIND}-1)); + if ex_rtl_lmatch "${ARG_DIST}" , zipdist\ + && ! ex_rtl_lmatch "${ARG_DIST}" , minipix; then + ARG_DIST="${ARG_DIST:+${ARG_DIST},}minipix"; + fi; + if [ -n "${ARG_RESTART}" ]\ + && [ "${ARG_RESTART#\*}" != "${ARG_RESTART}" ]; then + ARG_RESTART="${ARG_RESTART#\*}"; ARG_RESTART_RECURSIVE=1; fi; case "${ARG_RESTART}" in ALL) ARG_RESTART_AT=ALL; ;; @@ -73,12 +40,6 @@ build_args() { ARG_RESTART="$(echo "${ARG_RESTART}" | sed "s/,/ /g")"; ;; esac; - case "${ARG_VERBOSE}" in - -v) ARG_VERBOSE=1; ;; - -vv) ARG_VERBOSE=2; ;; - -vvv) ARG_VERBOSE=3; ;; - -vvvv) ARG_VERBOSE=4; ;; - esac; while [ ${#} -gt 0 ]; do case "${1}" in *=*) ex_rtl_set_var_unsafe "${1%%=*}" "${1#*=}"; ;; diff --git a/subr/ex_pkg_dispatch.subr b/subr/ex_pkg_dispatch.subr index 2a40e16..7ea9587 100644 --- a/subr/ex_pkg_dispatch.subr +++ b/subr/ex_pkg_dispatch.subr @@ -9,7 +9,7 @@ exp_pkg_check_depends() { local _group_name="${1}" _pkg_depends="${2}" _pkg_name="${3}" _dependfl=0; if ! [ -n "${_restart}" ]\ - && ! [ "$(ex_rtl_get_var_unsafe "$(ex_rtl_toupper "${_group_name}")_IN_ORDER"))" = "1" ]; then + || [ "${ARG_RESTART_RECURSIVE:-0}" -eq 1 ]; then for _pkg_name_depend in ${_pkg_depends}; do if [ -n "$(ex_rtl_lsearch "${_pkgs_wait}" "${_pkg_name_depend}")" ]\ || [ -z "$(ex_rtl_lsearch "${_pkgs_complete}" "${_pkg_name_depend}")" ]; then @@ -89,7 +89,7 @@ exp_pkg_get_packages() { _pkg_names="$(ex_rtl_lsearch "${_pkg_names}" "${_restart}")"; fi; if ! [ -n "${_restart}" ]\ - && ! [ "$(ex_rtl_get_var_unsafe "${_group_name_uc}"_IN_ORDER)" = "1" ]; then + || [ "${ARG_RESTART_RECURSIVE:-0}" -eq 1 ]; then _pkg_names="$(ex_rtl_uniq $(exp_pkg_expand_packages ${_pkg_names}))"; fi; }; @@ -105,8 +105,7 @@ ex_pkg_dispatch() { for _pkg_name in ${_pkg_names}; do : $((_pkgs_count_max+=1)); done; - if [ "${ARG_PARALLEL:-0}" -gt 1 ]\ - && ! [ "$(ex_rtl_get_var_unsafe "$(ex_rtl_toupper "${_group_name}")"_IN_ORDER)" = 1 ]; then + if [ "${ARG_PARALLEL:-0}" -gt 1 ]; then _njobs_max="${DEFAULT_BUILD_CPUS}"; fi; ex_rtl_fileop mkfifo "${_pipe_path}"; exp_pkg_dispatch_group; diff --git a/vars/env.vars b/vars/env.vars index 64728b6..eb58b8b 100644 --- a/vars/env.vars +++ b/vars/env.vars @@ -21,14 +21,14 @@ DEFAULT_BUILD_VARS=" CXX CXXFLAGS_CONFIGURE_EXTRA DEPENDS DESTDIR DISABLED \ ENV_VARS_EXTRA FNAME GITROOT INHERIT_FROM INSTALL_FILES \ INSTALL_FILES INSTALL_FILES_DESTDIR INSTALL_FILES_DESTDIR_EXTRA \ - INSTALL_TARGET INSTALL_TARGET_EXTRA IN_ORDER IN_TREE \ + INSTALL_TARGET INSTALL_TARGET_EXTRA IN_TREE \ LDFLAGS_BUILD_EXTRA LDFLAGS_CONFIGURE LDFLAGS_CONFIGURE_EXTRA \ LDFLAGS_INSTALL_EXTRA LIBTOOL MAKE MAKE_INSTALL_VNAME \ MAKEFLAGS_BUILD MAKEFLAGS_BUILD_EXTRA MAKEFLAGS_INSTALL \ MAKEFLAGS_INSTALL_EXTRA NO_CLEAN NO_CLEAN_BASE_DIR NO_LOG_VARS \ PYTHON PATCHES_EXTRA PKG_CONFIG PKG_CONFIG_PATH PKGLIST_DISABLE \ - PREFIX RANLIB RPM_DISABLE SHA256SUM SRC_TARBALL_DISABLE SUBDIR \ - TARGET URL URL_TYPE URLS_GIT VERSION"; + PREFIX RANLIB RPM_DISABLE SHA256SUM SUBDIR TARGET URL URL_TYPE \ + URLS_GIT VERSION"; # Path names : ${PREFIX_ROOT:=${HOME}/midipix}; @@ -40,10 +40,8 @@ DEFAULT_BUILD_VARS=" : ${PREFIX_RPM:=${PREFIX}/rpm}; : ${BUILD_DLCACHEDIR:=${PREFIX_ROOT}/dlcache}; : ${BUILD_WORKDIR:=${PREFIX}/tmp}; -: ${DEFAULT_CHECK_PATH_VARS:=" - PREFIX PREFIX_NATIVE PREFIX_CROSS BUILD_DLCACHEDIR BUILD_WORKDIR"}; -: ${DEFAULT_CLEAR_ENV_VARS_EXCEPT:=" - HOME PATH TERM DEFAULT_TARBALL_SIGN_GPG_KEY USER"}; +: ${DEFAULT_CHECK_PATH_VARS:="PREFIX PREFIX_NATIVE PREFIX_CROSS BUILD_DLCACHEDIR BUILD_WORKDIR"}; +: ${DEFAULT_CLEAR_ENV_VARS_EXCEPT:="HOME PATH TERM USER"}; : ${DEFAULT_CLEAR_PREFIX_PATHS:=" bin i686-nt32-midipix doc include info lib lib64 libexec man minipix minipix_dist native rpm sbin share tmp usr x86_64-nt64-midipix x86_64-w64-mingw32 pkglist.cross pkglist.host @@ -125,9 +123,6 @@ DEFAULT_BUILD_VARS=" : ${DEFAULT_BUILD_LOG_FNAME:=${PREFIX}/build.log}; : ${DEFAULT_BUILD_LOG_LAST_FNAME:=${PREFIX}/build.log.last}; : ${DEFAULT_BUILD_STATUS_IN_PROGRESS_FNAME:=${PREFIX}/BUILD_IN_PROGRESS}; -: ${DEFAULT_TARBALL_CROSS_FNAME_PREFIX:=midipix-${ARCH}-${BUILD}_cross.}; -: ${DEFAULT_TARBALL_FNAME_PREFIX:=midipix-${ARCH}-${BUILD}.}; -: ${DEFAULT_TARBALL_MINIPIX_FNAME_PREFIX:=minipix-${ARCH}-${BUILD}.}; : ${DEFAULT_ZIPDIST_FNAME_PREFIX:=midipix-${ARCH}-${BUILD}.}; # GNU autotools cache diff --git a/vars/invariants_tarballs.vars b/vars/invariants_tarballs.vars deleted file mode 100644 index 998a1b5..0000000 --- a/vars/invariants_tarballs.vars +++ /dev/null @@ -1,89 +0,0 @@ -# -# set -o errexit -o noglob are assumed. -# - -pkgp_invariants_tarball_dist() { - local _tarball_compress_cmd="${1}" _tarball_compress_args="${2}" _tarball_suffix="${3}"; - local _tarball_fname="${DEFAULT_TARBALL_FNAME_PREFIX}${BUILD_USER}@${BUILD_HNAME}-${BUILD_DATE_START}.tar.${_tarball_suffix}"; - tar -cpf - $(find . -maxdepth 1 -mindepth 1 -type d \ - -not -path ./minipix \ - -not -path ./minipix_dist \ - -not -path ./rpm \ - -not -path ./tmp | sort) \ - midipix_shortcut.vbs midipix.sh README SHA256SUMS |\ - "${_tarball_compress_cmd}" ${_tarball_compress_args} -c > "${_tarball_fname}"; - ex_rtl_log_msg info "Finished building binary distribution tarball."; - if [ -x "$(which gpg 2>/dev/null)" -a -n "${DEFAULT_TARBALL_SIGN_GPG_KEY}" ] && \ - gpg --list-keys "${DEFAULT_TARBALL_SIGN_GPG_KEY}" >/dev/null 2>&1; then - gpg --armor --passphrase-file /dev/null \ - --local-user "${DEFAULT_TARBALL_SIGN_GPG_KEY}" --sign "${_tarball_fname}"; - ex_rtl_log_msg info "Signed binary distribution tarball."; - fi; -}; - -pkgp_invariants_tarball_toolchain() { - local _tarball_compress_cmd="${1}" _tarball_compress_args="${2}" _tarball_suffix="${3}"; - local _tarball_cross_fname="${DEFAULT_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}"; - ex_rtl_log_msg info "Finished building toolchain tarball."; - if [ -x "$(which gpg 2>/dev/null)" -a -n "${DEFAULT_TARBALL_SIGN_GPG_KEY}" ] && \ - gpg --list-keys "${DEFAULT_TARBALL_SIGN_GPG_KEY}" >/dev/null 2>&1; then - gpg --armor --passphrase-file /dev/null \ - --local-user "${DEFAULT_TARBALL_SIGN_GPG_KEY}" --sign "${_tarball_cross_fname}"; - ex_rtl_log_msg info "Signed toolchain tarball."; - fi; -}; - -pkgp_invariants_tarball_minipix() { - local _tarball_compress_cmd="${1}" _tarball_compress_args="${2}" _tarball_suffix="${3}"; - local _tarball_minipix_fname="${DEFAULT_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}"; - ex_rtl_log_msg info "Finished building binary Minipix distribution tarball."; - if [ -x "$(which gpg 2>/dev/null)" -a -n "${DEFAULT_TARBALL_SIGN_GPG_KEY}" ] && \ - gpg --list-keys "${DEFAULT_TARBALL_SIGN_GPG_KEY}" >/dev/null 2>&1; then - gpg --armor --passphrase-file /dev/null \ - --local-user "${DEFAULT_TARBALL_SIGN_GPG_KEY}" --sign "${_tarball_minipix_fname}"; - ex_rtl_log_msg info "Signed binary Minipix distribution tarball."; - fi; -}; - -pkg_invariants_tarballs_all() { - local _tarball_compress_args="" _tarball_compress_cmd="" _tarball_suffix="" _tarball_suffixes="" _tarball_type="" _tarball_types=""; - if ex_rtl_lmatch "${ARG_DIST}" , tbz2; then - _tarball_suffixes="${_tarball_suffixes:+${_tarball_suffixes} }bz2"; - fi; - if ex_rtl_lmatch "${ARG_DIST}" , tgz; then - _tarball_suffixes="${_tarball_suffixes:+${_tarball_suffixes} }gz"; - fi; - if ex_rtl_lmatch "${ARG_DIST}" , txz; then - _tarball_suffixes="${_tarball_suffixes:+${_tarball_suffixes} }xz"; - fi; - for _tarball_suffix in ${_tarball_suffixes}; do - ex_rtl_log_msg info "Building ${_tarball_suffix}-compressed 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"; ;; - *) ex_rtl_log_msg failexit "Unknown tarball suffix \`${_tarball_suffix}'."; - esac; - ex_rtl_fileop cd "${PREFIX}"; PREFIX_BASENAME="${PREFIX_NATIVE##*/}"; - _tarball_types="dist toolchain minipix"; - for _tarball_type in ${_tarball_types}; do - pkgp_invariants_tarball_${_tarball_type} "${_tarball_compress_cmd}" "${_tarball_compress_args}" "${_tarball_suffix}"; - done; - done; -}; - -# vim:filetype=sh