[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [XEN PATCH v2 03/12] xen/build: use $(clean) shorthand for clean targets



From: Anthony PERARD <anthony.perard@xxxxxxxxx>

Collect all the clean targets as we are going to modify it shortly.
Also, this is inspired by Linux's Kbuild.

"Kbuild.include" isn't included by "Makefile", but the "_clean" target
is only used by Rules.mk which include Kbuild.include.

Signed-off-by: Anthony PERARD <anthony.perard@xxxxxxxxxx>
---
 xen/Makefile               | 16 ++++++++--------
 xen/Rules.mk               |  2 +-
 xen/scripts/Kbuild.include |  5 +++++
 3 files changed, 14 insertions(+), 9 deletions(-)

diff --git a/xen/Makefile b/xen/Makefile
index c326fee5880e..814011175fd8 100644
--- a/xen/Makefile
+++ b/xen/Makefile
@@ -117,14 +117,14 @@ _debug:
 .PHONY: _clean
 _clean: delete-unfresh-files
        $(MAKE) -C tools clean
-       $(MAKE) -f $(BASEDIR)/Rules.mk -C include clean
-       $(MAKE) -f $(BASEDIR)/Rules.mk -C common clean
-       $(MAKE) -f $(BASEDIR)/Rules.mk -C drivers clean
-       $(MAKE) -f $(BASEDIR)/Rules.mk -C xsm clean
-       $(MAKE) -f $(BASEDIR)/Rules.mk -C crypto clean
-       $(MAKE) -f $(BASEDIR)/Rules.mk -C arch/arm clean
-       $(MAKE) -f $(BASEDIR)/Rules.mk -C arch/x86 clean
-       $(MAKE) -f $(BASEDIR)/Rules.mk -C test clean
+       $(MAKE) $(clean) include
+       $(MAKE) $(clean) common
+       $(MAKE) $(clean) drivers
+       $(MAKE) $(clean) xsm
+       $(MAKE) $(clean) crypto
+       $(MAKE) $(clean) arch/arm
+       $(MAKE) $(clean) arch/x86
+       $(MAKE) $(clean) test
        $(MAKE) -f $(BASEDIR)/tools/kconfig/Makefile.kconfig ARCH=$(ARCH) 
SRCARCH=$(SRCARCH) clean
        find . \( -name "*.o" -o -name ".*.d" -o -name ".*.d2" -o -name 
"*.gcno" \) -exec rm -f {} \;
        rm -f include/asm $(TARGET) $(TARGET).gz $(TARGET).efi 
$(TARGET).efi.map $(TARGET)-syms $(TARGET)-syms.map *~ core
diff --git a/xen/Rules.mk b/xen/Rules.mk
index 8b04cbdd24ca..120323717d87 100644
--- a/xen/Rules.mk
+++ b/xen/Rules.mk
@@ -185,7 +185,7 @@ FORCE:
 clean:: $(addprefix _clean_, $(subdir-all))
        rm -f *.o .*.o.tmp *~ core $(DEPS_RM)
 _clean_%/: FORCE
-       $(MAKE) -f $(BASEDIR)/Rules.mk -C $* clean
+       $(MAKE) $(clean) $*
 
 SRCPATH := $(patsubst $(BASEDIR)/%,%,$(CURDIR))
 
diff --git a/xen/scripts/Kbuild.include b/xen/scripts/Kbuild.include
index a5c462fd9777..2465cc4060c3 100644
--- a/xen/scripts/Kbuild.include
+++ b/xen/scripts/Kbuild.include
@@ -5,3 +5,8 @@
 # cc-ifversion
 # Usage:  EXTRA_CFLAGS += $(call cc-ifversion, -lt, 0402, -O1)
 cc-ifversion = $(shell [ $(CONFIG_GCC_VERSION)0 $(1) $(2)000 ] && echo $(3) || 
echo $(4))
+
+# Shorthand for $(MAKE) clean
+# Usage:
+# $(MAKE) $(clean) dir
+clean := -f $(BASEDIR)/Rules.mk clean -C
-- 
Anthony PERARD


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.