[CRIU] [PATCH 2/6] Makefiles: don't use the FORCE, Luke!
Kir Kolyshkin
kir at openvz.org
Mon Feb 22 18:44:12 PST 2016
With GNU make, using .PHONY leads to the same result as using
the "FORCE" hack, but unlike FORCE is not a hack. Since we do not
plan to use any other make than GNU make, let's just mark phony
targets as such.
For more details about why PHONY is better than FORCE, see
http://www.gnu.org/software/make/manual/make.html#index-FORCE
Signed-off-by: Kir Kolyshkin <kir at openvz.org>
---
scripts/build/Makefile | 5 ++---
scripts/nmk/scripts/include.mk | 4 ----
test/Makefile | 23 ++++++++++++-----------
3 files changed, 14 insertions(+), 18 deletions(-)
diff --git a/scripts/build/Makefile b/scripts/build/Makefile
index 4b90a91..71b7ada 100644
--- a/scripts/build/Makefile
+++ b/scripts/build/Makefile
@@ -4,8 +4,6 @@ AARCH64_IMG ?= aarch64/ubuntu:trusty
ARMV7HF_IMG ?= armv7/armhf-ubuntu
PPC64LE_IMG ?= ppc64le/ubuntu
-.FORCE:
-
Dockerfile.aarch64: Dockerfile.aarch64.hdr Dockerfile.tmpl
cat Dockerfile.aarch64.hdr > Dockerfile.aarch64
cat Dockerfile.tmpl >> Dockerfile.aarch64
@@ -25,8 +23,9 @@ Dockerfile.x86_64: Dockerfile.x86_64.hdr Dockerfile.tmpl
qemu-user-static:
./extract-deb-pkg qemu-user-static
-binfmt_misc: .FORCE
+binfmt_misc:
./binfmt_misc
+.PHONY: binfmt_misc
armv7hf: qemu-user-static binfmt_misc Dockerfile.armv7hf
docker build -t criu-armv7hf -f Dockerfile.armv7hf ../..
diff --git a/scripts/nmk/scripts/include.mk b/scripts/nmk/scripts/include.mk
index c7dd7cc..6842a56 100644
--- a/scripts/nmk/scripts/include.mk
+++ b/scripts/nmk/scripts/include.mk
@@ -51,10 +51,6 @@ build-as := -r -R -f $(__nmk_dir)main.mk makefile=$$(1) obj=$$(2)
export build-as
#
-# Dummy target for force building.
-FORCE: ;
-
-#
# Footer.
$(__nmk_dir)scripts/include.mk:
@true
diff --git a/test/Makefile b/test/Makefile
index 499ecf3..d28febb 100644
--- a/test/Makefile
+++ b/test/Makefile
@@ -3,43 +3,44 @@ RM := rm -f --one-file-system
ZDTM_ARGS ?= -C
export ZDTM_ARGS
-.FORCE:
-
all:
$(MAKE) zdtm
$(MAKE) zdtm-pre-dump
$(MAKE) zdtm-snapshot
$(MAKE) zdtm-iter
$(MAKE) zdtm-freezer
-
.PHONY: all
TESTS = unix-callback mem-snap rpc libcriu mounts/ext security pipes crit socketpairs overlayfs
-other: .FORCE
+other:
for t in $(TESTS); do \
setsid $(MAKE) -C $$t run || exit 1; \
- done \
+ done
+.PHONY: other
-zdtm: .FORCE
+zdtm:
./zdtm.py run -a --parallel 2
+.PHONY: zdtm
zdtm-pre-dump:
./zdtm.py run --pre 2:1 -t zdtm/transition/fork -f uns
+.PHONY: zdtm-pre-dump
zdtm-snapshot:
./zdtm.py run --pre 2:1 --snap -t zdtm/transition/fork -f uns
+.PHONY: zdtm-snapshot
zdtm-iter:
./zdtm.py run --iters 3:1 -t zdtm/transition/fork -f uns
+.PHONY: zdtm-iter
zdtm-freezer:
./zdtm.py run --test zdtm/transition/thread-bomb --pre 3 --freezecg zdtm:t
./zdtm.py run --test zdtm/transition/thread-bomb --pre 3 --freezecg zdtm:f
+.PHONY: zdtm-freezer
-.PHONY: zdtm
-
-fault-injection: .FORCE
+fault-injection:
$(MAKE) -C fault-injection
.PHONY: fault-injection
@@ -47,6 +48,7 @@ override CFLAGS += -D_GNU_SOURCE
clean_root:
$(Q) ./zdtm.py clean nsroot
+.PHONY: clean_root
clean: clean_root
$(RM) zdtm_ct zdtm-tst-list
@@ -56,5 +58,4 @@ clean: clean_root
$(Q) $(MAKE) -C libcriu clean
$(Q) $(MAKE) -C rpc clean
$(Q) $(MAKE) -C crit clean
-
-.PHONY: zdtm_ns
+.PHONY: clean
--
2.5.0
More information about the CRIU
mailing list