diff options
author | ru <ru@FreeBSD.org> | 2002-07-03 12:28:03 +0000 |
---|---|---|
committer | ru <ru@FreeBSD.org> | 2002-07-03 12:28:03 +0000 |
commit | 734b0dc514183208313936a513580f7cb6a2f06c (patch) | |
tree | 659775b3ebfb05c024de4bafcee2d2a0cecad497 /share/mk/bsd.lib.mk | |
parent | 352eaf673d5b6378cad6f454f71ecd2f6c659f9b (diff) | |
download | FreeBSD-src-734b0dc514183208313936a513580f7cb6a2f06c.zip FreeBSD-src-734b0dc514183208313936a513580f7cb6a2f06c.tar.gz |
Try really hard to fix parallel installs. Add a bunch of .ORDER
directives to ensure that all realinstall sub-tasks are executed
after beforeinstall, similarly ensure that all afterinstall sub-
tasks are executed after realinstall. Demonstration:
all: task1 task2
.ORDER: task1 task2
task2: task2_subtask
.ORDER: task1 task2_subtask
task1 task2 task2_subtask:
@sleep `jot -r 1 0 1.0`
@echo ${.TARGET}
Without the second .ORDER directive, task2_subtask can be run in
parallel with task1.
Spotted by: Andrea Campi <andrea@webcom.it>
Diffstat (limited to 'share/mk/bsd.lib.mk')
-rw-r--r-- | share/mk/bsd.lib.mk | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/share/mk/bsd.lib.mk b/share/mk/bsd.lib.mk index 9b9c414..583896c 100644 --- a/share/mk/bsd.lib.mk +++ b/share/mk/bsd.lib.mk @@ -290,6 +290,7 @@ _SHLINSTALLFLAGS:= ${_SHLINSTALLFLAGS${ie}} .if defined(LIB) && !empty(LIB) && !defined(INTERNALLIB) realinstall: _libinstall +.ORDER: beforeinstall _libinstall _libinstall: .if !defined(NOINSTALLLIB) ${INSTALL} -C -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ @@ -323,6 +324,7 @@ _libinstall: .if !defined(NOMAN) realinstall: _maninstall +.ORDER: beforeinstall _maninstall .endif .endif |