aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2012-06-04 15:38:05 +0000
committerDean Camera <dean@fourwalledcubicle.com>2012-06-04 15:38:05 +0000
commita57c4eabae4e137346dd2d53e699e2b5625202ba (patch)
tree21684b12363cd430e49a073155b2a38e648fae32
parent412453414439694239c77bc4d003b4f30d092a77 (diff)
downloadlufa-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/makefile7
-rw-r--r--Demos/Device/ClassDriver/makefile7
-rw-r--r--Demos/Device/LowLevel/makefile7
-rw-r--r--Demos/DualRole/ClassDriver/makefile8
-rw-r--r--Demos/Host/ClassDriver/makefile7
-rw-r--r--Demos/Host/LowLevel/makefile7
-rw-r--r--Projects/makefile7
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;)