diff options
author | Ruslan Ermilov <ru@FreeBSD.org> | 2002-07-03 12:28:03 +0000 |
---|---|---|
committer | Ruslan Ermilov <ru@FreeBSD.org> | 2002-07-03 12:28:03 +0000 |
commit | badb7c1c6b8c0cece6fe8a6457a20c63ef65ea22 (patch) | |
tree | 659775b3ebfb05c024de4bafcee2d2a0cecad497 /share/mk/bsd.prog.mk | |
parent | ff9a78c08e52639c1158dfd8f6657ac4b0edaf63 (diff) | |
download | src-badb7c1c6b8c0cece6fe8a6457a20c63ef65ea22.tar.gz src-badb7c1c6b8c0cece6fe8a6457a20c63ef65ea22.zip |
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>
Notes
Notes:
svn path=/head/; revision=99343
Diffstat (limited to 'share/mk/bsd.prog.mk')
-rw-r--r-- | share/mk/bsd.prog.mk | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/share/mk/bsd.prog.mk b/share/mk/bsd.prog.mk index c8dde881dc30..696faca829dd 100644 --- a/share/mk/bsd.prog.mk +++ b/share/mk/bsd.prog.mk @@ -102,6 +102,7 @@ _INSTALLFLAGS:= ${_INSTALLFLAGS${ie}} .if !target(realinstall) realinstall: _proginstall +.ORDER: beforeinstall _proginstall _proginstall: .if defined(PROG) .if defined(PROGNAME) @@ -120,6 +121,7 @@ _proginstall: .if defined(SCRIPTS) && !empty(SCRIPTS) realinstall: _scriptsinstall +.ORDER: beforeinstall _scriptsinstall SCRIPTSDIR?= ${BINDIR} SCRIPTSOWN?= ${BINOWN} @@ -154,6 +156,7 @@ NLSNAME?= ${PROG} .if !defined(NOMAN) realinstall: _maninstall +.ORDER: beforeinstall _maninstall .endif .endif |