Revert: - 7b8ea53d7f18 ("makefile: not need to regenerate kernel.release file when make kernelrelease") - 01ab17887f4c ("Makefile: "make kernelrelease" should show the correct full kernel version") I think the original behavior was better - 'make kernelrelease' should print $(KERNELRELEASE) used in the last build, not the one that will be used in the next build. Therefore, it is an error if you run it in the pristine source tree. Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx> --- Makefile | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index d0a95277f08a..de402d415d5f 100644 --- a/Makefile +++ b/Makefile @@ -281,13 +281,13 @@ clean-targets := %clean mrproper cleandocs no-dot-config-targets := $(clean-targets) \ cscope gtags TAGS tags help% %docs check% coccicheck \ $(version_h) headers headers_% archheaders archscripts \ - %asm-generic kernelversion %src-pkg dt_binding_check \ + %asm-generic kernelrelease kernelversion %src-pkg dt_binding_check \ outputmakefile rustavailable rustfmt rustfmtcheck # Installation targets should not require compiler. Unfortunately, vdso_install # is an exception where build artifacts may be updated. This must be fixed. no-compiler-targets := $(no-dot-config-targets) install dtbs_install \ - headers_install modules_install kernelrelease image_name -no-sync-config-targets := $(no-dot-config-targets) %install kernelrelease \ + headers_install modules_install image_name +no-sync-config-targets := $(no-dot-config-targets) %install \ image_name single-targets := %.a %.i %.ko %.lds %.ll %.lst %.mod %.o %.rsi %.s %.symtypes %/ @@ -1677,7 +1677,7 @@ help: @echo ' tags/TAGS - Generate tags file for editors' @echo ' cscope - Generate cscope index' @echo ' gtags - Generate GNU GLOBAL index' - @echo ' kernelrelease - Output the release version string (use with make -s)' + @echo ' kernelrelease - Output the release version string used in the last build (use with make -s)' @echo ' kernelversion - Output the version stored in Makefile (use with make -s)' @echo ' image_name - Output the image name (use with make -s)' @echo ' headers_install - Install sanitised kernel headers to INSTALL_HDR_PATH'; \ @@ -2111,7 +2111,7 @@ checkstack: $(PERL) $(srctree)/scripts/checkstack.pl $(CHECKSTACK_ARCH) kernelrelease: - @$(srctree)/scripts/setlocalversion $(srctree) + @echo $(or $(KERNELRELEASE),$(error kernelrelease not valid - run 'make prepare' to update it)) kernelversion: @echo $(KERNELVERSION) -- 2.34.1