From 0d1c4f95c4c2d2d7c1a01f6a46502b7c49c06647 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lucio=20Andr=C3=A9s=20Illanes=20Albornoz?= Date: Thu, 12 Mar 2020 08:56:34 +0000 Subject: Reduce awk(1), grep(1), seq(1), and stat(1) usage. subr/build_init.subr:buildp_init_files(): replace timestamp w/ running total log filename suffix. subr/build_init.subr:buildp_init_prereqs(): ensure sed(1) supports -i option. subr/rtl_complex.subr:rtl_{get_cpu_count,is_newer}(): initial implementation. subr/rtl_string.subr:rtl_match(): initial implementation. --- subr/ex_pkg_dispatch.subr | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'subr/ex_pkg_dispatch.subr') diff --git a/subr/ex_pkg_dispatch.subr b/subr/ex_pkg_dispatch.subr index f0c0a2b6..5274d3f3 100644 --- a/subr/ex_pkg_dispatch.subr +++ b/subr/ex_pkg_dispatch.subr @@ -129,8 +129,9 @@ exp_pkg_dispatch_packages() { local _build_steps_default="${1}" _build_vars_default="${2}" _dispatch_fn="${3}" \ _group_name="${4}" _njobs_max="${5}" _pipe_path="${6}" _pkg_complete="${7}" \ _restart_at="${8}" _restart_recursive="${9}" _workdir="${10}" \ - _njob=0 _pkg_depends="" _pkg_name=""; - for _njob in $(seq 1 $((${_njobs_max}-${EXP_PKG_DISPATCH_NJOBS}))); do + _foundfl=0 _njob=0 _pkg_depends="" _pkg_name=""; + while [ "${EXP_PKG_DISPATCH_NJOBS:-0}" -lt "${_njobs_max}" ]; do + _foundfl=0; for _pkg_name in ${EXP_PKG_NAMES}; do if ! rtl_lmatch "${_pkg_complete}" "${_pkg_name}"\ && ! rtl_lmatch "${EX_PKG_DISPATCH_WAIT}" "${_pkg_name}"\ @@ -138,9 +139,12 @@ exp_pkg_dispatch_packages() { exp_pkg_dispatch_package "${_build_steps_default}" \ "${_build_vars_default}" "${_dispatch_fn}" \ "${_group_name}" "${_pkg_name}" "${_restart_at}" \ - "${_workdir}"; break; + "${_workdir}"; _foundfl=1; break; fi; done; + if [ "${_foundfl:-0}" -eq 0 ]; then + break; + fi; done; }; -- cgit v1.2.3