Browse Source

Makefiles: inhibit parallel building (-j n mode)

Currently, building PRISM with parallel building does not work,
as there are dependencies between targets that are not fully
encoded in the Makefiles. Building with -j n flag would lead to error.

Now, we add the .NOTPARALLEL target to most of the Makefiles,
which tell GNU make to ignore the -j flag. Note that this
only inhibits parallel builds for the current Makefile, we
thus have to specify it for all sub-Makefiles as well
(see https://www.gnu.org/software/make/manual/html_node/Parallel.html)

For the external libraries, CUDD and LPSolve don't seem to mind building
in parallel, so we don't inhibit there and can get some minor compile time
speed-up by using multiple cores if the -j option is specified.


git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12202 bbc10eb1-c90d-0410-af57-cb519fbb1720
master
Joachim Klein 9 years ago
parent
commit
5adb550043
  1. 3
      prism/Makefile
  2. 3
      prism/src/automata/Makefile
  3. 3
      prism/src/dd/Makefile
  4. 3
      prism/src/dv/Makefile
  5. 3
      prism/src/explicit/Makefile
  6. 3
      prism/src/hybrid/Makefile
  7. 3
      prism/src/jdd/Makefile
  8. 3
      prism/src/jltl2ba/Makefile
  9. 3
      prism/src/jltl2dstar/Makefile
  10. 3
      prism/src/mtbdd/Makefile
  11. 3
      prism/src/odd/Makefile
  12. 3
      prism/src/param/Makefile
  13. 3
      prism/src/parser/Makefile
  14. 3
      prism/src/pepa/compiler/Makefile
  15. 3
      prism/src/prism/Makefile
  16. 3
      prism/src/pta/Makefile
  17. 3
      prism/src/settings/Makefile
  18. 3
      prism/src/simulator/Makefile
  19. 3
      prism/src/sparse/Makefile
  20. 3
      prism/src/strat/Makefile
  21. 3
      prism/src/userinterface/Makefile

3
prism/Makefile

@ -305,6 +305,9 @@ EXT_PACKAGES = lpsolve55 lp_solve_5.5_java
.PHONY: clean javadoc tests
# inhibit building in parallel (-j option)
.NOTPARALLEL:
default: all
all: cuddpackage extpackages prism

3
prism/src/automata/Makefile

@ -22,6 +22,9 @@ default: all
all: checks $(CLASS_FILES)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/dd/Makefile

@ -31,6 +31,9 @@ default: all
all: checks $(PRISM_DIR_REL)/$(LIB_DIR)/$(LIBPREFIX)dd$(LIBSUFFIX) $(PRISM_DIR_REL)/$(OBJ_DIR)/$(THIS_DIR)/dd_test$(EXE)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/dv/Makefile

@ -37,6 +37,9 @@ default: all
all: checks $(CLASS_FILES) $(PRISM_DIR_REL)/$(INCLUDE_DIR)/DoubleVector.h $(PRISM_DIR_REL)/$(INCLUDE_DIR)/IntegerVector.h $(PRISM_DIR_REL)/$(LIB_DIR)/$(LIBPREFIX)dv$(LIBSUFFIX)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/explicit/Makefile

@ -20,6 +20,9 @@ default: all
all: checks $(CLASS_FILES)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/hybrid/Makefile

@ -40,6 +40,9 @@ default: all
all: checks $(CLASS_FILES) $(PRISM_DIR_REL)/$(INCLUDE_DIR)/PrismHybrid.h $(PRISM_DIR_REL)/$(LIB_DIR)/$(LIBPREFIX)prismhybrid$(LIBSUFFIX)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/jdd/Makefile

@ -35,6 +35,9 @@ default: all
all: checks $(CLASS_FILES) $(PRISM_DIR_REL)/$(INCLUDE_DIR)/JDD.h $(PRISM_DIR_REL)/$(INCLUDE_DIR)/JDDNode.h $(PRISM_DIR_REL)/$(INCLUDE_DIR)/JDDVars.h $(PRISM_DIR_REL)/$(LIB_DIR)/$(LIBPREFIX)jdd$(LIBSUFFIX)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/jltl2ba/Makefile

@ -20,6 +20,9 @@ default: all
all: checks $(CLASS_FILES)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/jltl2dstar/Makefile

@ -20,6 +20,9 @@ default: all
all: checks $(CLASS_FILES)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/mtbdd/Makefile

@ -5,6 +5,9 @@
# various options to be passed in #
################################################
# inhibit building in parallel (-j option)
.NOTPARALLEL:
.SUFFIXES: .o .c .cc
# Reminder: $@ = target, $* = target without extension, $< = dependency

3
prism/src/odd/Makefile

@ -35,6 +35,9 @@ default: all
all: checks $(CLASS_FILES) $(PRISM_DIR_REL)/$(INCLUDE_DIR)/ODDUtils.h $(PRISM_DIR_REL)/$(LIB_DIR)/$(LIBPREFIX)odd$(LIBSUFFIX)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/param/Makefile

@ -20,6 +20,9 @@ default: all
all: checks $(CLASS_FILES)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/parser/Makefile

@ -20,6 +20,9 @@ default: all
all: checks PrismParser.java Prism3To4.java $(CLASS_FILES)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/pepa/compiler/Makefile

@ -20,6 +20,9 @@ default: all
all: checks $(CLASS_FILES)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/prism/Makefile

@ -33,6 +33,9 @@ default: all
all: checks $(CLASS_FILES) $(PRISM_DIR_REL)/$(INCLUDE_DIR)/PrismNative.h $(PRISM_DIR_REL)/$(LIB_DIR)/$(LIBPREFIX)prism$(LIBSUFFIX) $(PRISM_DIR_REL)/$(OBJ_DIR)/$(THIS_DIR)/ngprism$(EXE)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/pta/Makefile

@ -20,6 +20,9 @@ default: all
all: checks parser/PTAParser.java $(CLASS_FILES)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/settings/Makefile

@ -20,6 +20,9 @@ default: all
all: checks $(CLASS_FILES)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/simulator/Makefile

@ -22,6 +22,9 @@ default: all
all: checks $(CLASS_FILES)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/sparse/Makefile

@ -41,6 +41,9 @@ default: all
all: checks $(CLASS_FILES) $(PRISM_DIR_REL)/$(INCLUDE_DIR)/PrismSparse.h $(PRISM_DIR_REL)/$(INCLUDE_DIR)/NDSparseMatrix.h $(PRISM_DIR_REL)/$(LIB_DIR)/$(LIBPREFIX)prismsparse$(LIBSUFFIX)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/strat/Makefile

@ -22,6 +22,9 @@ default: all
all: checks $(CLASS_FILES)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

3
prism/src/userinterface/Makefile

@ -20,6 +20,9 @@ default: all
all: checks $(CLASS_FILES)
# inhibit building in parallel (-j option)
.NOTPARALLEL:
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \

Loading…
Cancel
Save