[CRIU] [PATCH] build: criu -- Drop redundant phonies
Cyrill Gorcunov
gorcunov at gmail.com
Wed Feb 24 08:51:47 PST 2016
On Wed, Feb 24, 2016 at 07:15:07PM +0300, Cyrill Gorcunov wrote:
> Everytime we build the executable we've to check
> all the deps and sources for changes, thus
> don't protvide criu/criu on toplevel as
> a target file (my bug in 496b51b64a6).
Tycho give the attached patch a shot please.
-------------- next part --------------
>From e47737d4c5b3c3d99e67f06ed0d6f88f0f9195b5 Mon Sep 17 00:00:00 2001
From: Cyrill Gorcunov <gorcunov at openvz.org>
Date: Wed, 24 Feb 2016 19:10:38 +0300
Subject: [PATCH] build: criu -- Drop redundant phonies
Everytime we build the executable we've to check
all the deps and sources for changes, thus
don't protvide criu/criu on toplevel as
a target file (my bug in 496b51b64a6).
Instead bring this target as a phony back
but drop phony from criu/Makefile itself,
as it should be from the beginning.
Same time remove unneeded phonies over
the targets which are real files.
Signed-off-by: Cyrill Gorcunov <gorcunov at openvz.org>
---
Makefile | 11 ++++++-----
criu/Makefile | 12 +++++-------
2 files changed, 11 insertions(+), 12 deletions(-)
diff --git a/Makefile b/Makefile
index 290624917aea..defa7e3667c4 100644
--- a/Makefile
+++ b/Makefile
@@ -116,20 +116,21 @@ PHONY += images
# the nmk so we can reuse it there.
criu/%: images/built-in.o
$(Q) $(MAKE) -C criu $@
-criu/criu: images/built-in.o
- $(Q) $(MAKE) -C criu criu
+criu: images/built-in.o
+ $(Q) $(MAKE) -C criu all
+.PHONY: criu
#
# Libraries next once criu it ready
# (we might generate headers and such
# when building criu itself).
-lib/%: criu/criu
+lib/%: criu
$(Q) $(MAKE) -C lib $@
-lib: criu/criu
+lib: criu
$(Q) $(MAKE) -C lib all
PHONY += lib
-all: criu/criu lib
+all: criu lib
PHONY += all
clean-built:
diff --git a/criu/Makefile b/criu/Makefile
index 1e1c73ce22d3..ea79183f0d3a 100644
--- a/criu/Makefile
+++ b/criu/Makefile
@@ -102,14 +102,12 @@ config: $(VERSION_HEADER)
SYSCALL-LIB := $(ARCH_DIR)/syscalls.built-in.o
$(SYSCALL-LIB): config
$(Q) $(MAKE) $(call build-as,Makefile.syscalls,$(ARCH_DIR)) all
-PHONY += $(SYSCALL-LIB)
#
# Architecture dependant part.
ARCH-LIB := $(ARCH_DIR)/crtools.built-in.o
$(ARCH-LIB): config $(SYSCALL-LIB)
$(Q) $(MAKE) $(call build-as,Makefile,$(ARCH_DIR)) $@
-PHONY += $(ARCH-LIB)
#
# piegen tool needed for PIE code.
@@ -132,7 +130,7 @@ pie/lib.a: $(ARCH-LIB) $(SYSCALL-LIB)
# PIE code blobs themseves.
pie: $(piegen-bin) pie/lib.a
$(Q) $(MAKE) $(build)=pie all
-PHONY += pie
+.PHONY: pie
#
# CRIU executable
@@ -149,7 +147,6 @@ built-in.o: pie
criu: $(PROGRAM-BUILTINS)
$(call msg-link, $@)
$(Q) $(CC) $(CFLAGS) $^ $(LIBS) $(LDFLAGS) $(GMONLDOPT) -rdynamic -o $@
-PHONY += criu
#
# Cleanup everything.
@@ -166,6 +163,7 @@ clean:
$(Q) $(RM) $(VERSION_HEADER)
$(Q) $(RM) $(CONFIG_HEADER)
$(Q) $(RM) criu
+.PHONY: clean
UAPI_HEADERS := include/criu-plugin.h include/criu-log.h
@@ -175,10 +173,10 @@ install: criu
$(Q) install -m 755 criu $(DESTDIR)$(SBINDIR)
$(Q) mkdir -p $(DESTDIR)$(INCLUDEDIR)
$(Q) install -m 644 $(UAPI_HEADERS) $(DESTDIR)$(INCLUDEDIR)
+.PHONY: install
#
# Final @all target.
-all: $(PHONY)
+all: criu
@true
-
-.PHONY: $(PHONY) clean install
+.PHONY: all
--
2.5.0
More information about the CRIU
mailing list