diff options
author | Dean Camera <dean@fourwalledcubicle.com> | 2012-06-04 15:38:05 +0000 |
---|---|---|
committer | Dean Camera <dean@fourwalledcubicle.com> | 2012-06-04 15:38:05 +0000 |
commit | a57c4eabae4e137346dd2d53e699e2b5625202ba (patch) | |
tree | 21684b12363cd430e49a073155b2a38e648fae32 | |
parent | 412453414439694239c77bc4d003b4f30d092a77 (diff) | |
download | lufa-a57c4eabae4e137346dd2d53e699e2b5625202ba.tar.gz lufa-a57c4eabae4e137346dd2d53e699e2b5625202ba.tar.bz2 lufa-a57c4eabae4e137346dd2d53e699e2b5625202ba.zip |
Add emergency aborts to the recursive makefiles to prevent system failures due to infinite recursion if something happens while building the project lists.
-rw-r--r-- | Bootloaders/makefile | 7 | ||||
-rw-r--r-- | Demos/Device/ClassDriver/makefile | 7 | ||||
-rw-r--r-- | Demos/Device/LowLevel/makefile | 7 | ||||
-rw-r--r-- | Demos/DualRole/ClassDriver/makefile | 8 | ||||
-rw-r--r-- | Demos/Host/ClassDriver/makefile | 7 | ||||
-rw-r--r-- | Demos/Host/LowLevel/makefile | 7 | ||||
-rw-r--r-- | Projects/makefile | 7 |
7 files changed, 49 insertions, 1 deletions
diff --git a/Bootloaders/makefile b/Bootloaders/makefile index 94147ead0..56db65808 100644 --- a/Bootloaders/makefile +++ b/Bootloaders/makefile @@ -15,6 +15,13 @@ PROJECT_DIRECTORIES = $(shell ls -d *) +# 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 + all: @$(foreach PROJECT, $(PROJECT_DIRECTORIES), $(MAKE) -s -C $(PROJECT) clean all;) diff --git a/Demos/Device/ClassDriver/makefile b/Demos/Device/ClassDriver/makefile index cfa776a72..99e7c24a1 100644 --- a/Demos/Device/ClassDriver/makefile +++ b/Demos/Device/ClassDriver/makefile @@ -15,6 +15,13 @@ PROJECT_DIRECTORIES = $(shell ls -d */) +# 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 + all: @$(foreach PROJECT, $(PROJECT_DIRECTORIES), $(MAKE) -s -C $(PROJECT) clean all;) diff --git a/Demos/Device/LowLevel/makefile b/Demos/Device/LowLevel/makefile index 4673bfe57..639b25303 100644 --- a/Demos/Device/LowLevel/makefile +++ b/Demos/Device/LowLevel/makefile @@ -15,6 +15,13 @@ PROJECT_DIRECTORIES = $(shell ls -d *) +# 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 + all: @$(foreach PROJECT, $(PROJECT_DIRECTORIES), $(MAKE) -s -C $(PROJECT) clean all;) diff --git a/Demos/DualRole/ClassDriver/makefile b/Demos/DualRole/ClassDriver/makefile index 06552493e..ecc49ec89 100644 --- a/Demos/DualRole/ClassDriver/makefile +++ b/Demos/DualRole/ClassDriver/makefile @@ -15,10 +15,16 @@ PROJECT_DIRECTORIES = $(shell ls -d *) +# 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 + all: @$(foreach PROJECT, $(PROJECT_DIRECTORIES), $(MAKE) -s -C $(PROJECT) clean all;) %: @$(foreach PROJECT, $(PROJECT_DIRECTORIES), $(MAKE) -s -C $(PROJECT) $@;) - diff --git a/Demos/Host/ClassDriver/makefile b/Demos/Host/ClassDriver/makefile index 5c532f1a0..25cfedf1a 100644 --- a/Demos/Host/ClassDriver/makefile +++ b/Demos/Host/ClassDriver/makefile @@ -15,6 +15,13 @@ PROJECT_DIRECTORIES = $(shell ls -d *) +# 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 + all: @$(foreach PROJECT, $(PROJECT_DIRECTORIES), $(MAKE) -s -C $(PROJECT) clean all;) diff --git a/Demos/Host/LowLevel/makefile b/Demos/Host/LowLevel/makefile index 5c532f1a0..25cfedf1a 100644 --- a/Demos/Host/LowLevel/makefile +++ b/Demos/Host/LowLevel/makefile @@ -15,6 +15,13 @@ PROJECT_DIRECTORIES = $(shell ls -d *) +# 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 + all: @$(foreach PROJECT, $(PROJECT_DIRECTORIES), $(MAKE) -s -C $(PROJECT) clean all;) diff --git a/Projects/makefile b/Projects/makefile index 50ce7ad6d..94deb0ed3 100644 --- a/Projects/makefile +++ b/Projects/makefile @@ -15,6 +15,13 @@ PROJECT_DIRECTORIES = $(shell ls -d *) +# 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 + all: @$(foreach PROJECT, $(PROJECT_DIRECTORIES), $(MAKE) -s -C $(PROJECT) clean all;) |