Messages in this thread | | | Date | Sat, 29 Mar 2014 21:00:47 +0100 | From | Michal Marek <> | Subject | Re: [PATCH] kbuild: unconditionally clobber include/linux/version.h on distclean |
| |
Dne 13.2.2014 22:28, Paul Gortmaker napsal(a): > 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. > > Cc: Michal Marek <mmarek@suse.cz> > Cc: David Howells <dhowells@redhat.com> > Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Applied to kbuild.git, sorry for the delay. I'm curious how long will it take until somebody posts a cleanup patch removing the obsolete include/linux/version.h reference...
Michal
| |