aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Documentation/kbuild/makefiles.txt7
-rw-r--r--Kbuild4
-rw-r--r--scripts/Makefile.clean2
3 files changed, 11 insertions, 2 deletions
diff --git a/Documentation/kbuild/makefiles.txt b/Documentation/kbuild/makefiles.txt
index 01351554df60..fcd1a981523a 100644
--- a/Documentation/kbuild/makefiles.txt
+++ b/Documentation/kbuild/makefiles.txt
@@ -779,6 +779,13 @@ This will delete the directory debian, including all subdirectories.
779Kbuild will assume the directories to be in the same relative path as the 779Kbuild will assume the directories to be in the same relative path as the
780Makefile if no absolute path is specified (path does not start with '/'). 780Makefile if no absolute path is specified (path does not start with '/').
781 781
782To exclude certain files from make clean, use the $(no-clean-files) variable.
783This is only a special case used in the top level Kbuild file:
784
785 Example:
786 #Kbuild
787 no-clean-files := $(bounds-file) $(offsets-file)
788
782Usually kbuild descends down in subdirectories due to "obj-* := dir/", 789Usually kbuild descends down in subdirectories due to "obj-* := dir/",
783but in the architecture makefiles where the kbuild infrastructure 790but in the architecture makefiles where the kbuild infrastructure
784is not sufficient this sometimes needs to be explicit. 791is not sufficient this sometimes needs to be explicit.
diff --git a/Kbuild b/Kbuild
index e3737ad72b5a..18a8bfbb353b 100644
--- a/Kbuild
+++ b/Kbuild
@@ -94,5 +94,5 @@ PHONY += missing-syscalls
94missing-syscalls: scripts/checksyscalls.sh FORCE 94missing-syscalls: scripts/checksyscalls.sh FORCE
95 $(call cmd,syscalls) 95 $(call cmd,syscalls)
96 96
97# Delete all targets during make clean 97# Keep these two files during make clean
98clean-files := $(addprefix $(objtree)/,$(filter-out $(bounds-file) $(offsets-file),$(targets))) 98no-clean-files := $(bounds-file) $(offsets-file)
diff --git a/scripts/Makefile.clean b/scripts/Makefile.clean
index 6f89fbb56256..686cb0d31c7c 100644
--- a/scripts/Makefile.clean
+++ b/scripts/Makefile.clean
@@ -45,6 +45,8 @@ __clean-files := $(extra-y) $(always) \
45 $(host-progs) \ 45 $(host-progs) \
46 $(hostprogs-y) $(hostprogs-m) $(hostprogs-) 46 $(hostprogs-y) $(hostprogs-m) $(hostprogs-)
47 47
48__clean-files := $(filter-out $(no-clean-files), $(__clean-files))
49
48# as clean-files is given relative to the current directory, this adds 50# as clean-files is given relative to the current directory, this adds
49# a $(obj) prefix, except for absolute paths 51# a $(obj) prefix, except for absolute paths
50 52