Add dia
[hvlinux.git] / Makefile
index e80efe6..cd1e6e7 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -9,16 +9,26 @@
 
 .PHONY: get test
 
-all: get
+RUN_MODE := $(shell . functions/version && check_hvlinux_version)
 
-# Fetch packages from network
-get:
-       @for k in $$(seq 0 5); do \
-         make -C stage$${k} $(MAKECMDGOALS); \
-        done
+ifeq ($(RUN_MODE),HOST)
+  STAGES := 0 1
+else ifeq ($(RUN_MODE),NATIVE)
+  STAGES := 2 3 4 5
+else
+  $(error Unable to determine run mode.)
+endif
+
+ifeq ($(MAKECMDGOALS),get)
+  STAGES := $(shell seq 0 5)
+endif
+ifeq ($(MAKECMDGOALS),test)
+  STAGES := $(shell seq 0 5)
+endif
 
-# Test integrity of packages
-test:
-       @for k in $$(seq 0 6); do \
-         make -C stage$${k} $(MAKECMDGOALS); \
+all:
+       @for k in $(STAGES); do \
+         make -C stage$${k} $(MAKECMDGOALS) || exit 1; \
         done
+
+$(MAKECMDGOALS): all