summaryrefslogtreecommitdiffhomepage
path: root/build.sh
diff options
context:
space:
mode:
Diffstat (limited to 'build.sh')
-rwxr-xr-xbuild.sh16
1 files changed, 11 insertions, 5 deletions
diff --git a/build.sh b/build.sh
index 8991b603..1bd37681 100755
--- a/build.sh
+++ b/build.sh
@@ -71,7 +71,7 @@ for BUILD_TARGET_LC in $(subst_tgts invariants ${BUILD_TARGETS_META:-world}); do
_pkg_step_cmds=""; _pkg_step_cmd_args="";
case "${1#*:}" in
abstract) _pkg_step_cmds="pkg_${PKG_NAME}_${1%:*}";
- _pkg_step_cmd_args="${ARG_RESTART_AT}"; ;;
+ _pkg_step_cmd_args="${ARG_RESTART_AT:-ALL}"; ;;
always) _pkg_step_cmds="pkg_${1%:*}"; ;;
main) if [ -n "${BUILD_PACKAGES_RESTART}" ]; then
if [ -z "${ARG_RESTART_AT}" ]\
@@ -88,11 +88,17 @@ for BUILD_TARGET_LC in $(subst_tgts invariants ${BUILD_TARGETS_META:-world}); do
esac;
for __ in ${_pkg_step_cmds}; do
if test_cmd "${__}"; then
- test_cmd "${__}_pre" && "${__}_pre";
+ test_cmd "pkg_${PKG_NAME}_${1%:*}_pre" \
+ && "pkg_${PKG_NAME}_${1%:*}_pre"
"${__}" ${_pkg_step_cmd_args};
- test_cmd "${__}_post" && "${__}_post";
- set_build_script_done "${PKG_NAME}" "${1%:*}" \
- ${2:+-${2%:*}}; break;
+ test_cmd "pkg_${PKG_NAME}_${1%:*}_post" \
+ && "pkg_${PKG_NAME}_${1%:*}_post"
+ if [ "${1#*:}" != "always" ]\
+ && [ ${#} -ge 2 ]; then
+ set_build_script_done "${PKG_NAME}" "${1%:*}" "-${2#*:}";
+ else
+ set_build_script_done "${PKG_NAME}" "${1%:*}";
+ fi; break;
fi;
done;
shift; done;