Skip to content

Commit 9c8cdb7

Browse files
Paul Gortmakermichal42
authored andcommitted
kbuild: unconditionally clobber include/linux/version.h on distclean
As of v3.7, the UAPI changes relocated headers around such that the kernel version header lived in a new place. If a person is bisecting and if you go back to pre-UAPI days, you will create an include/linux/version.h -- then if you checkout a post-UAPI kernel, and even run "make distclean" it still won't delete that old version file. So you get a situation like this: $ grep -R LINUX_VERSION_CODE include/ include/generated/uapi/linux/version.h:#define LINUX_VERSION_CODE 200192 include/linux/version.h:#define LINUX_VERSION_CODE 132646 The value in that second line is representative of a v2.6.38 version. And it will be sourced/used, hence leading to strange behaviours, such as drivers/staging content (which typically hasn't been purged of version ifdefs) failing to build. Since it is a subtle mode of failure, lets always clobber the old file when doing a distclean. Signed-off-by: Paul Gortmaker <[email protected]> Acked-by: David Howells <[email protected]> Signed-off-by: Michal Marek <[email protected]>
1 parent 100da4c commit 9c8cdb7

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1070,7 +1070,7 @@ MRPROPER_FILES += .config .config.old .version .old_version $(version_h) \
10701070
Module.symvers tags TAGS cscope* GPATH GTAGS GRTAGS GSYMS \
10711071
signing_key.priv signing_key.x509 x509.genkey \
10721072
extra_certificates signing_key.x509.keyid \
1073-
signing_key.x509.signer
1073+
signing_key.x509.signer include/linux/version.h
10741074

10751075
# clean - Delete most, but leave enough to build external modules
10761076
#

0 commit comments

Comments
 (0)