debian: Fix parallel builds.
authorBen Pfaff <blp@nicira.com>
Tue, 16 Nov 2010 22:09:41 +0000 (14:09 -0800)
committerBen Pfaff <blp@nicira.com>
Tue, 16 Nov 2010 23:07:10 +0000 (15:07 -0800)
Some of the Debian automatic builds are failing apparently because the
build-arch and build-indep targets are being called in parallel and they
are both attempting to rebuild tests/testsuite at the same time, which
doesn't work.  We could make the OVS makefiles handle this particular case,
but in general it's not a good idea to independently invoke a single
makefile multiples times in parallel, so this commit avoids that problem.

This also dumps the DEB_BUILD_OPTIONS variable to the log, because there
doesn't appear to be any way to infer it from the automatic builders'
log files.

debian/rules

index 6e99ff6..4a02a49 100755 (executable)
@@ -29,6 +29,7 @@ configure-stamp:
        dh_testdir
        test -e configure || ./boot.sh
        test -d _debian || mkdir _debian
+       echo $(DEB_BUILD_OPTIONS)
        echo $$CC
        cd _debian && ( \
                test -e Makefile || \
@@ -120,3 +121,9 @@ binary-arch: install-arch
 
 binary: binary-arch binary-indep
 .PHONY: build clean binary-indep binary-arch binary install install-indep install-arch configure
+
+# This GNU make extensions disables parallel builds for the current Makefile
+# but not for sub-Makefiles.  This is appropriate here because build-arch and
+# build-indep both invoke "make" on OVS, which can update some of the same
+# targets in ways that conflict (e.g. both update tests/testsuite).
+.NOTPARALLEL: