From 2a6499a167354f2a1259b28b2c3105f08db977d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Wed, 7 Jan 2015 15:55:30 +0100 Subject: 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. --- core/core.mk | 9 ++++++++- core/erlc.mk | 4 ++-- 2 files changed, 10 insertions(+), 3 deletions(-) (limited to 'core') 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 -- cgit v1.2.3