diff options
author | Loïc Hoguin <[email protected]> | 2015-01-07 15:55:30 +0100 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2015-01-07 16:27:47 +0100 |
commit | 2a6499a167354f2a1259b28b2c3105f08db977d1 (patch) | |
tree | 0c89e3e037e9babcc7c90a1817bdf530d9cec157 /core | |
parent | 1f58d8b925b9ca1a00a2cb5e6938bf00b2238848 (diff) | |
download | erlang.mk-2a6499a167354f2a1259b28b2c3105f08db977d1.tar.gz erlang.mk-2a6499a167354f2a1259b28b2c3105f08db977d1.tar.bz2 erlang.mk-2a6499a167354f2a1259b28b2c3105f08db977d1.zip |
Fix parallel compilation
Parallel compilation is now only enabled for "make" and "make deps app".
To ensure order we spawn a new Make process for "deps", "app" and
"rel" when the "all" target (or no target) is used.
Diffstat (limited to 'core')
-rw-r--r-- | core/core.mk | 9 | ||||
-rw-r--r-- | core/erlc.mk | 4 |
2 files changed, 10 insertions, 3 deletions
diff --git a/core/core.mk b/core/core.mk index 075ee45..a5fbffd 100644 --- a/core/core.mk +++ b/core/core.mk @@ -30,7 +30,14 @@ gen_verbose = $(gen_verbose_$(V)) # Core targets. -all:: deps app rel +ifneq ($(words $(MAKECMDGOALS)),1) +.NOTPARALLEL: +endif + +all:: + @$(MAKE) --no-print-directory deps + @$(MAKE) --no-print-directory app + @$(MAKE) --no-print-directory rel clean:: $(gen_verbose) rm -f erl_crash.dump diff --git a/core/erlc.mk b/core/erlc.mk index 01bd6e0..8d720aa 100644 --- a/core/erlc.mk +++ b/core/erlc.mk @@ -75,11 +75,11 @@ ebin/$(PROJECT).app:: $(shell find mibs -type f -name \*.mib) endif ebin/$(PROJECT).app:: $(shell find src -type f -name \*.erl) \ - $(shell find src -type f -name \*.core) | deps + $(shell find src -type f -name \*.core) $(if $(strip $?),$(call compile_erl,$?)) ebin/$(PROJECT).app:: $(shell find src -type f -name \*.xrl) \ - $(shell find src -type f -name \*.yrl) | deps + $(shell find src -type f -name \*.yrl) $(if $(strip $?),$(call compile_xyrl,$?)) endif |