diff options
author | Lucía Andrea Illanes Albornoz <lucia@luciaillanes.de> | 2023-02-17 19:29:28 +0100 |
---|---|---|
committer | Lucía Andrea Illanes Albornoz <lucia@luciaillanes.de> | 2023-02-17 19:29:28 +0100 |
commit | e9fa0774ed2e7e030a68f5b0ae51fe6dd69fe492 (patch) | |
tree | 37e46c2578bd8f4f435073db01abc514976da8a8 /subr.pkg/pkg_build_clean.subr | |
parent | 56495632fc8bf612766a9c431e37ff27a903e8c6 (diff) | |
download | midipix_build-e9fa0774ed2e7e030a68f5b0ae51fe6dd69fe492.tar.bz2 midipix_build-e9fa0774ed2e7e030a68f5b0ae51fe6dd69fe492.tar.xz |
Make everything a bit faster.
0) Issues several prayers and sacrifices to Enki under threat of a terrible deluge sent down by Ellil
1) Convert fork-write/read exprs to be non-forking
2) Pass mostly everything by reference
3) Don't bother cleaning the variable namespace because Bourne shell is an abomination
4) Removes broken ./pkgtool.sh -s, --restart-at, --update-diff & ./build.sh --dump-{in,on-abort}
5) Cleanup
Diffstat (limited to 'subr.pkg/pkg_build_clean.subr')
-rw-r--r-- | subr.pkg/pkg_build_clean.subr | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/subr.pkg/pkg_build_clean.subr b/subr.pkg/pkg_build_clean.subr new file mode 100644 index 00000000..bf41456b --- /dev/null +++ b/subr.pkg/pkg_build_clean.subr @@ -0,0 +1,37 @@ +# +# set +o errexit -o noglob -o nounset is assumed. +# + +pkg_build_clean() { + local _pbc_group_name="${1}" _pbc_pkg_name="${2}" _pbc_restart_at="${3}" \ + _pbc_libtool="" _pbc_makeflags_verbosity="${PKG_MAKEFLAGS_VERBOSITY:-}" \ + _pbc_no_autoconf="" _pbc_rc=0 _pbc_subdir=""; + + if ex_pkg_state_test "${PKG_NAME}" "build" "${_pbc_restart_at}"; then + case "${PKG_LIBTOOL:-}" in + "") _pbc_libtool=""; ;; + none) _pbc_libtool=""; ;; + *) _pbc_libtool="${PKG_LIBTOOL}"; ;; + esac; + [ ! -x "${PKG_CONFIGURE:-}" ] && _pbc_no_autoconf=1; + + for _pbc_subdir in ${PKG_MAKE_SUBDIRS:-:}; do + [ "${_pbc_subdir}" = ":" ] && _pbc_subdir=""; + [ "${#_pbc_libtool}" -gt 0 ] && export MAKE="make LIBTOOL=${_pbc_libtool}"; + + rtl_run_cmd_unsplit "${PKG_MAKE}" \ + ${PKG_MAKEFLAGS_BUILD:-} \ + ${PKG_MAKEFLAGS_BUILD_EXTRA:-} \ + ${_pbc_libtool:+"LIBTOOL=${_pbc_libtool}"} \ + ${_pbc_makeflags_verbosity} \ + ${_pbc_subdir:+-C "${_pbc_subdir}"} \ + clean; _pbc_rc="${?}"; + + [ "${#_pbc_libtool}" -gt 0 ] && unset MAKE; + [ "${_pbc_rc}" -ne 0 ] && return 1; + done; + fi; + return 0; +}; + +# vim:filetype=sh |