diff options
| author | Michal Marek <mmarek@suse.cz> | 2010-03-09 10:00:20 -0500 |
|---|---|---|
| committer | Michal Marek <mmarek@suse.cz> | 2010-03-11 05:15:22 -0500 |
| commit | ef8ff89b58546055e238c3b521f83b440dfe8ef2 (patch) | |
| tree | 86b1c5da27197aba7de52d4247824b412571d81a | |
| parent | 2d74b2c62cf8867d0762f6e6b5ed8906cb6a745f (diff) | |
kbuild: Really don't clean bounds.h and asm-offsets.h
Commit 7d3cc8b tried to keep bounds.h and asm-offsets.h during make
clean by filtering these out of $(clean-files), but they are listed in
$(targets) and $(always) and thus removed automatically. Introduce a new
$(no-clean-files) variable to really skip such files in Makefile.clean.
Signed-off-by: Michal Marek <mmarek@suse.cz>
| -rw-r--r-- | Documentation/kbuild/makefiles.txt | 7 | ||||
| -rw-r--r-- | Kbuild | 4 | ||||
| -rw-r--r-- | scripts/Makefile.clean | 2 |
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. | |||
| 779 | Kbuild will assume the directories to be in the same relative path as the | 779 | Kbuild will assume the directories to be in the same relative path as the |
| 780 | Makefile if no absolute path is specified (path does not start with '/'). | 780 | Makefile if no absolute path is specified (path does not start with '/'). |
| 781 | 781 | ||
| 782 | To exclude certain files from make clean, use the $(no-clean-files) variable. | ||
| 783 | This 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 | |||
| 782 | Usually kbuild descends down in subdirectories due to "obj-* := dir/", | 789 | Usually kbuild descends down in subdirectories due to "obj-* := dir/", |
| 783 | but in the architecture makefiles where the kbuild infrastructure | 790 | but in the architecture makefiles where the kbuild infrastructure |
| 784 | is not sufficient this sometimes needs to be explicit. | 791 | is not sufficient this sometimes needs to be explicit. |
| @@ -94,5 +94,5 @@ PHONY += missing-syscalls | |||
| 94 | missing-syscalls: scripts/checksyscalls.sh FORCE | 94 | missing-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 |
| 98 | clean-files := $(addprefix $(objtree)/,$(filter-out $(bounds-file) $(offsets-file),$(targets))) | 98 | no-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 | ||
