projects
/
pub
/
USBasp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Don't fail Doxygen on versions built without various features.
[pub/USBasp.git]
/
Projects
/
makefile
diff --git
a/Projects/makefile
b/Projects/makefile
index
8bde289
..
6552c59
100644
(file)
--- a/
Projects/makefile
+++ b/
Projects/makefile
@@
-1,9
+1,9
@@
#
# LUFA Library
#
# LUFA Library
-# Copyright (C) Dean Camera, 201
0
.
-#
+# Copyright (C) Dean Camera, 201
4
.
+#
# dean [at] fourwalledcubicle [dot] com
# dean [at] fourwalledcubicle [dot] com
-#
www.fourwalledcubicle.com
+#
www.lufa-lib.org
#
# Makefile to build all the LUFA Projects. Call with "make all" to
#
# Makefile to build all the LUFA Projects. Call with "make all" to
@@
-13,37
+13,35
@@
# custom LUFA library build options are reflected in the compiled
# code.
# custom LUFA library build options are reflected in the compiled
# code.
-all:
- make -C AVRISP-MKII clean
- make -C AVRISP-MKII all
+PROJECT_DIRECTORIES := $(shell ls -d */)
- make -C Benito clean
- make -C Benito all
+# This makefile is potentially infinitely recursive if something really bad
+# happens when determining the set of project directories - hard-abort if
+# more than 10 levels deep to avoid angry emails.
+ifeq ($(MAKELEVEL), 10)
+ $(error EMERGENCY ABORT: INFINITE RECURSION DETECTED)
+endif
- make -C LEDNotifier clean
- make -C LEDNotifier all
+# Need to special-case building without a per-project object directory
+ifeq ($(OBJDIR),)
+ # If no target specified, force "clean all" and disallow parallel build
+ ifeq ($(MAKECMDGOALS),)
+ MAKECMDGOALS := clean all
+ .NOTPARALLEL:
+ endif
- make -C Magstripe clean
- make -C Magstripe all
+ # 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
- make -C MissileLauncher clean
-
make -C MissileLauncher a
ll
+%: $(PROJECT_DIRECTORIES)
+
@echo . > /dev/nu
ll
- make -C TemperatureDataLogger clean
- make -C TemperatureDataLogger all
+$(PROJECT_DIRECTORIES):
+ @$(MAKE) -C $@ $(MAKECMDGOALS)
- make -C USBtoSerial clean
- make -C USBtoSerial all
-
- make -C XPLAINBridge clean
- make -C XPLAINBridge all
+.PHONY: $(PROJECT_DIRECTORIES)
-%:
- make -C AVRISP-MKII $@
- make -C Benito $@
- make -C LEDNotifier $@
- make -C Magstripe $@
- make -C MissileLauncher $@
- make -C TemperatureDataLogger $@
- make -C USBtoSerial $@
- make -C XPLAINBridge $@