buildworld - Fix -j n collisions
authorMatthew Dillon <dillon@apollo.backplane.com>
Thu, 8 Dec 2011 02:38:07 +0000 (18:38 -0800)
committerMatthew Dillon <dillon@apollo.backplane.com>
Thu, 8 Dec 2011 02:38:07 +0000 (18:38 -0800)
* Each of _gcc41_tools and _gcc44_tools needs to be ordered

* Currently installation of the objc include files can collide in a way
  that interferes with a parallel build, when gcc41 and gcc44 are built
  concurrently.  For now don't build them concurrently :-(.

Makefile.inc1
gnu/lib/Makefile

index 136ed90..b7dd4f9 100644 (file)
@@ -819,6 +819,9 @@ build-tools: build-tools-targets
 
 build-tools-targets: ${BTOOLSDIRS:S/^/btools-/}
 
+.ORDER: ${_gcc41_tools:S/^/btools-/}
+.ORDER: ${_gcc44_tools:S/^/btools-/}
+
 .for _tool in ${BTOOLSDIRS}
 btools-${_tool}!
        ${ECHODIR} "===> ${_tool} (build-tools)"; \
index fba8be1..b1b0741 100644 (file)
@@ -4,10 +4,11 @@ SUBDIR= gcc44 libcryptsetup libdevmapper libdialog libluks liblvm
 
 .if !defined(NO_GCC41)
 SUBDIR+= gcc41
-.endif
 
-# maximum parallelism
+# FIXME: libobjc in gcc41 and gcc44 can collide installing header files
 #
-SUBDIR_ORDERED=
+SUBDIR_ORDERED= gcc41 gcc44
+.endif
+
 
 .include <bsd.subdir.mk>