summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortv <tv@shackspace.de>2015-07-19 11:50:54 +0200
committertv <tv@shackspace.de>2015-07-19 11:50:54 +0200
commitc7acf4bf2a2d31494b0dd5819c1a621c2492ce7c (patch)
treee60c02da248e70868d65dd7d8c22fecbc70110e5
parent5c52fb9e917e2d6503e37fddcc33271e5238d02a (diff)
Makefile: make systems='foo bar...'
-rw-r--r--Makefile23
1 files changed, 19 insertions, 4 deletions
diff --git a/Makefile b/Makefile
index b31eddd05..7225a5d6b 100644
--- a/Makefile
+++ b/Makefile
@@ -1,9 +1,22 @@
-ifndef system
-$(error unbound variable: system)
-else
-include 0make/$(LOGNAME)/$(system).makefile
+#
+# usage:
+# make system=foo
+# make systems='foo bar'
+#
+
.ONESHELL:
.SHELLFLAGS := -eufc
+
+ifdef systems
+$(systems):
+ parallel \
+ --line-buffer \
+ -j0 \
+ --no-notice \
+ --tagstring {} \
+ -q make systems= system={} ::: $(systems)
+else ifdef system
+include 0make/$(LOGNAME)/$(system).makefile
.PHONY: deploy
deploy:;@
system_name=$(system)
@@ -69,4 +82,6 @@ deploy:;@
result/bin/switch-to-configuration switch
EOF
+else
+$(error unbound variable: system[s])
endif