diff options
author | dim <dim@FreeBSD.org> | 2013-04-09 20:21:35 +0000 |
---|---|---|
committer | dim <dim@FreeBSD.org> | 2013-04-09 20:21:35 +0000 |
commit | 777e0f8e3a7b81aeb916225eef3041c0d7019ca9 (patch) | |
tree | a911e7f6fc636061fb76545b05cbab7052f8e421 /Makefile | |
parent | 20fe0ed0a2a5bd81e9d7828cbefa56e1576a5033 (diff) | |
download | FreeBSD-src-777e0f8e3a7b81aeb916225eef3041c0d7019ca9.zip FreeBSD-src-777e0f8e3a7b81aeb916225eef3041c0d7019ca9.tar.gz |
Ensure make -j N universe works correctly, by checking for an up-to-date
make before starting the universe targets themselves. Otherwise, all of
the targets would attempt to build make simultaneously, overwriting each
other's copies of the make object files and executable. This could lead
to strange errors, for example when partially-written make executables
are invoked.
Also amend r216620, to make the rest of universe wait properly until the
upgrade_checks target is finished, by adding universe_${target}_prologue
to the .ORDER target. Otherwise, make will be too smart for its own
good, and start building the universe targets simultaneously with the
prologues anyway.
MFC after: 1 week
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -361,7 +361,7 @@ MAKEFAIL=tee -a ${FAILFILE} MAKEFAIL=cat .endif -universe: universe_prologue +universe: universe_prologue upgrade_checks universe_prologue: @echo "--------------------------------------------------------------" @echo ">>> make universe started on ${STARTTIME}" @@ -371,7 +371,7 @@ universe_prologue: .endif .for target in ${TARGETS} universe: universe_${target} -.ORDER: universe_prologue universe_${target} universe_epilogue +.ORDER: universe_prologue upgrade_checks universe_${target}_prologue universe_${target} universe_epilogue universe_${target}: universe_${target}_prologue universe_${target}_prologue: @echo ">> ${target} started on `LC_ALL=C date`" |