summaryrefslogtreecommitdiffhomepage
path: root/subr/ex_pkg_dispatch.subr
diff options
context:
space:
mode:
authorLucio Andrés Illanes Albornoz <lucio@lucioillanes.de>2019-01-19 20:39:54 +0000
committerLucio Andrés Illanes Albornoz <lucio@lucioillanes.de>2019-01-19 20:39:54 +0000
commitcc86a5dda0b462ba3ce401d43b3c8f49f427e201 (patch)
tree8f628def74d72ada5ed4be82923c5b48e66d226b /subr/ex_pkg_dispatch.subr
parentb17684d7be71b49e60e3762efe6b93bda8fe0896 (diff)
downloadmidipix_build-cc86a5dda0b462ba3ce401d43b3c8f49f427e201.tar.bz2
midipix_build-cc86a5dda0b462ba3ce401d43b3c8f49f427e201.tar.xz
build.sh, subr/{build_args,ex_pkg_dispatch}.subr: fix -r LAST.
Diffstat (limited to 'subr/ex_pkg_dispatch.subr')
-rw-r--r--subr/ex_pkg_dispatch.subr18
1 files changed, 5 insertions, 13 deletions
diff --git a/subr/ex_pkg_dispatch.subr b/subr/ex_pkg_dispatch.subr
index 9a06fd39..0b0fa7d8 100644
--- a/subr/ex_pkg_dispatch.subr
+++ b/subr/ex_pkg_dispatch.subr
@@ -29,24 +29,16 @@ exp_pkg_dispatch() {
ex_pkg_dispatch() {
local _tgt_name="${1}" _restart="${2}" _restart_at="${3}" _dispatch_fn="${4}" _pkgs_found_vname="${5}" \
- _last_pkg="" _njob="" _njobs="" _njobs_max="" _pipe_msg="" _pipe_path="" \
- _pkg_names="" _pkgs_found="" _script_rc="" _stderrout_path="" _tgt_name_uc="";
+ _njob="" _njobs="" _njobs_max="" _pipe_msg="" _pipe_path="" _pkg_names="" _pkgs_found="" \
+ _script_rc="" _stderrout_path="" _tgt_name_uc="";
ex_rtl_fileop mkdir "${BUILD_WORKDIR}";
_pipe_path="${BUILD_WORKDIR}/build.fifo";
_tgt_name_uc="$(ex_rtl_toupper "${_tgt_name}")";
"${_dispatch_fn}" start_target "" "${_tgt_name}";
_pkg_names="$(ex_rtl_get_var_unsafe ${_tgt_name_uc}_PACKAGES)";
- if [ -n "${_restart}" ]; then
- if [ "${_restart}" = "LAST" ]; then
- if [ -n "${DEFAULT_BUILD_LAST_FAILED_PKG_FNAME}" ]\
- && [ -e "${DEFAULT_BUILD_LAST_FAILED_PKG_FNAME}" ]; then
- _last_pkg="$(cat "${DEFAULT_BUILD_LAST_FAILED_PKG_FNAME}")";
- ex_rtl_fileop rm "${DEFAULT_BUILD_LAST_FAILED_PKG_FNAME}";
- ex_rtl_state_clear "${BUILD_WORKDIR}" "${_last_pkg}";
- fi;
- elif [ "${_restart}" != "ALL" ]; then
- _pkg_names="$(ex_rtl_lfilter "${_pkg_names}" "${_restart}")";
- fi;
+ if [ -n "${_restart}" ]\
+ && ! ex_rtl_lmatch "ALL LAST" " " "${_restart}"; then
+ _pkg_names="$(ex_rtl_lfilter "${_pkg_names}" "${_restart}")";
fi;
if [ "$(ex_rtl_get_var_unsafe ${_tgt_name_uc}_PARALLELISE)" = 1 ]\
&& [ "${ARG_PARALLEL:-0}" -gt 1 ]; then