[coreboot] Patch set updated for coreboot: 0350a7a build system: Don't run the full build system on "make clean"

Patrick Georgi (patrick@georgi-clan.de) gerrit at coreboot.org
Sun Feb 10 09:06:04 CET 2013


Patrick Georgi (patrick at georgi-clan.de) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/2338

-gerrit

commit 0350a7ab7d101e5b27f24b23bac7aace33d7eaa6
Author: Patrick Georgi <patrick at georgi-clan.de>
Date:   Sat Feb 9 15:45:02 2013 +0100

    build system: Don't run the full build system on "make clean"
    
    When running "make clean" the build system used to parse the entire
    build system. Besides costing time, it prevents cleaning the tree
    if a blobs-board is selected but blobs are not enabled.
    
    Instead, clean always removes all of $(obj) and .xcompile, while
    distclean additionally removes .config and the like.
    
    Besides cleaning up more completely (eg. dependency files), a side
    effect is that this also removes $(obj)/util, if it exists
    (default location for build tools).
    
    Change-Id: Ief6362460d4eb7edcb4b0a47ec76cb9a61bf3b86
    Signed-off-by: Patrick Georgi <patrick at georgi-clan.de>
---
 Makefile | 13 +++++--------
 1 file changed, 5 insertions(+), 8 deletions(-)

diff --git a/Makefile b/Makefile
index 527fbcc..92b4d0b 100644
--- a/Makefile
+++ b/Makefile
@@ -97,10 +97,10 @@ ifeq ($(strip $(HAVE_DOTCONFIG)),)
 NOCOMPILE:=1
 endif
 ifneq ($(MAKECMDGOALS),)
-ifneq ($(filter %config distclean,$(MAKECMDGOALS)),)
+ifneq ($(filter %config %clean,$(MAKECMDGOALS)),)
 NOCOMPILE:=1
 endif
-ifeq ($(MAKECMDGOALS), distclean)
+ifeq ($(MAKECMDGOALS), %clean)
 NOMKDIR:=1
 endif
 endif
@@ -299,9 +299,7 @@ doxygen-clean:
 	rm -rf $(DOXYGEN_OUTPUT_DIR)
 
 clean-for-update: doxygen-clean clean-for-update-target
-	rm -f $(allobjs) .xcompile
-	rm -f $(DEPENDENCIES)
-	rmdir -p $(alldirs) 2>/dev/null >/dev/null || true
+	rm -rf $(obj) .xcompile
 
 clean: clean-for-update clean-target
 	rm -f .ccwrap
@@ -309,8 +307,7 @@ clean: clean-for-update clean-target
 clean-cscope:
 	rm -f cscope.out
 
-distclean:
-	rm -rf $(obj)
+distclean: clean
 	rm -f .config .config.old ..config.tmp .kconfig.d .tmpconfig* .ccwrap .xcompile
 
-.PHONY: $(PHONY) clean clean-cscope cscope distclean doxygen doxy .xcompile
+.PHONY: $(PHONY) clean clean-for-update clean-cscope cscope distclean doxygen doxy .xcompile



More information about the coreboot mailing list