aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFam Zheng <famz@redhat.com>2014-03-17 09:35:22 +0800
committerPeter Maydell <peter.maydell@linaro.org>2014-03-17 11:50:19 +0000
commitf4b11eee2f562c23b3efc33b96ba4542c9ca81aa (patch)
tree5d5362b19e5fb4d9768e9c8d5a557770e509e1c1
parent6fffa26244737f8fd8641a21fee29bd6aa9fdff5 (diff)
Makefile: Fix "make clean"
This fixes a dangerous bug: "make clean" after "make distclean" will delete every single file including those under .git, if you do in-tree build! Rationale: A first "make distclean" will unset $(DSOSUF), a following "make distclean" or "make clean" will find all the files and delete it. Fix it by explicitly typing the file extensions here, and combine multiple find invocations into one. Signed-off-by: Fam Zheng <famz@redhat.com> Message-id: 1395020122-4957-1-git-send-email-famz@redhat.com Reviewed-by: Stefan Weil <sw@weilnetz.de> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
-rw-r--r--Makefile5
1 files changed, 1 insertions, 4 deletions
diff --git a/Makefile b/Makefile
index bd9cd4fceb..ec7403961a 100644
--- a/Makefile
+++ b/Makefile
@@ -265,10 +265,7 @@ clean:
# avoid old build problems by removing potentially incorrect old files
rm -f config.mak op-i386.h opc-i386.h gen-op-i386.h op-arm.h opc-arm.h gen-op-arm.h
rm -f qemu-options.def
- find . -name '*.[oda]' -type f -exec rm -f {} +
- find . -name '*.l[oa]' -type f -exec rm -f {} +
- find . -name '*$(DSOSUF)' -type f -exec rm -f {} +
- find . -name '*.mo' -type f -exec rm -f {} +
+ find . \( -name '*.l[oa]' -o -name '*.so' -o -name '*.dll' -o -name '*.mo' -o -name '*.[oda]' \) -type f -exec rm {} +
rm -f $(filter-out %.tlb,$(TOOLS)) $(HELPERS-y) qemu-ga TAGS cscope.* *.pod *~ */*~
rm -f fsdev/*.pod
rm -rf .libs */.libs