Makefile: Make compiler version comparison optional
authorBen Hutchings <benh@debian.org>
Thu, 15 Sep 2022 00:14:03 +0000 (02:14 +0200)
committerSalvatore Bonaccorso <carnil@debian.org>
Sat, 7 Oct 2023 09:36:46 +0000 (10:36 +0100)
Forwarded: not-needed
Bug-Debian: https://bugs.debian.org/1019749

The top-level Makefile warns if the compiler version string changes at
all between the kernel build and an out-of-tree module build.

We expect that major compiler version changes could introduce ABI
changes, and override the CC variable in out-of-tree module builds to
ensure that the same major compiler version is used.  But minor
version changes should not make a difference, so this exact version
comparison produces false warnings.

Since custom kernel packages don't have that, don't remove the version
comparison.  Instead, skip it if $(DEBIAN_KERNEL_NO_CC_VERSION_CHECK)
is non-empty.

Gbp-Pq: Topic debian
Gbp-Pq: Name makefile-make-compiler-version-comparison-optional.patch

Makefile

index 59201ae7dc5b2d49dca8da357693f629377f9605..3f397ff5b004b4dd33caf98f8930ba28b274de03 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1935,7 +1935,7 @@ PHONY += prepare
 # now expand this into a simple variable to reduce the cost of shell evaluations
 prepare: CC_VERSION_TEXT := $(CC_VERSION_TEXT)
 prepare:
-       @if [ "$(CC_VERSION_TEXT)" != "$(CONFIG_CC_VERSION_TEXT)" ]; then \
+       @if [ -z "$(DEBIAN_KERNEL_NO_CC_VERSION_CHECK)" ] && [ "$(CC_VERSION_TEXT)" != "$(CONFIG_CC_VERSION_TEXT)" ]; then \
                echo >&2 "warning: the compiler differs from the one used to build the kernel"; \
                echo >&2 "  The kernel was built by: $(CONFIG_CC_VERSION_TEXT)"; \
                echo >&2 "  You are using:           $(CC_VERSION_TEXT)"; \