Fix up makefile .NOTPARALLEL heuristics so that linear building is only enforced if no object folder set and the "all" target is run. Rename library "ConfigDescriptor.c" file to "ConfigDescriptors.c" to ensure that object filenames are unique.

This commit is contained in:
Dean Camera 2012-07-10 19:33:39 +00:00
parent b2920402b4
commit 3bf7ce15d5
14 changed files with 51 additions and 32 deletions

View file

@ -22,16 +22,18 @@ ifeq ($(MAKELEVEL), 10)
$(error EMERGENCY ABORT: INFINITE RECURSION DETECTED)
endif
# If building without a per-project object directory, we can't build in parallel
# Need to special-case building without a per-project object directory
ifeq ($(OBJDIR),)
.NOTPARALLEL:
# Ensure projects are pre-cleaned if the target is the default or "all"
# If no target specified, force "clean all" and disallow parallel build
ifeq ($(MAKECMDGOALS),)
MAKECMDGOALS := clean all
.NOTPARALLEL:
endif
# If one of the targets is to build, force "clean" beforehand and disallow parallel build
ifneq ($(findstring all, $(MAKECMDGOALS)),)
MAKECMDGOALS := clean $(MAKECMDGOALS)
.NOTPARALLEL:
endif
endif