[PATCH] Fix: remove stale include/linux/version.h in toplevel Makefile

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



With a kernel tree that contains a generated include/linux/version.h, if
someone just does a git pull to update to a newer kernel version that
includes

commit 10b63956fce7f369cc37fd4d994f09bd5203efe4

"UAPI: Plumb the UAPI Kbuilds into the user header installation and
checking"

and
commit d183e6f570f3c0c23d253fd262c90244e72d7ffd

"UAPI: Move linux/version.h"

Any newer build will fail to overwrite or remove the stale version.h
file. The new include/generated/uapi/linux/version.h is indeed
generated, but the stale file in include/linux has precedence.

This leads to very unfortunate consequences for any user relying on
version.h to expose the kernel version accurately, since the old "stale"
kernel version will be seen by the build.

Ensure that stale include/linux/version.h is removed whenever the new
version.h is generated.

This patch should be backported to 3.7 and 3.8 stable branches after it
gets into mainline.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
CC: David Howells <dhowells@xxxxxxxxxx>
CC: Arnd Bergmann <arnd@xxxxxxxx>
CC: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
CC: "Paul E. McKenney" <paulmck@xxxxxxxxxxxxxxxxxx>
CC: Dave Jones <davej@xxxxxxxxxx>
CC: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
---
 Makefile |    2 ++
 1 file changed, 2 insertions(+)

Index: linux/Makefile
===================================================================
--- linux.orig/Makefile
+++ linux/Makefile
@@ -823,8 +823,10 @@ endif
 # prepare2 creates a makefile if using a separate output directory
 prepare2: prepare3 outputmakefile asm-generic
 
+# Includes removal of stale version.h from earlier kernel versions.
 prepare1: prepare2 $(version_h) include/generated/utsrelease.h \
                    include/config/auto.conf
+	$(Q)rm -f include/linux/version.h
 	$(cmd_crmodverdir)
 
 archprepare: archheaders archscripts prepare1 scripts_basic

-- 
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]