aboutsummaryrefslogtreecommitdiff
path: root/share/mk/bsd.prog.mk
diff options
context:
space:
mode:
authorRuslan Ermilov <ru@FreeBSD.org>2002-07-03 12:28:03 +0000
committerRuslan Ermilov <ru@FreeBSD.org>2002-07-03 12:28:03 +0000
commitbadb7c1c6b8c0cece6fe8a6457a20c63ef65ea22 (patch)
tree659775b3ebfb05c024de4bafcee2d2a0cecad497 /share/mk/bsd.prog.mk
parentff9a78c08e52639c1158dfd8f6657ac4b0edaf63 (diff)
downloadsrc-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.mk3
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