Re: [PATCH] Makefile: fix config cc version check

From: Akemi Yagi
Date: Sun Apr 03 2022 - 05:11:25 EST


On Tue, 08 Mar 2022 11:23:31 +0900, Masahiro Yamada wrote:

> On Tue, Mar 8, 2022 at 7:32 AM Michael S. Tsirkin <mst@xxxxxxxxxx>
> wrote:
>>
>> .config is of the form:
>> CONFIG_CC_VERSION_TEXT="gcc (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9)"
>
>
> No. This was changed.
>
> See this:
>
> $ git show 129ab0d2d9f -- Makefile
>
>
>
>> while CC_VERSION_TEXT is of the form: gcc (GCC) 11.2.1 20220127 (Red
>> Hat 11.2.1-7)
>>
>> thus when comparing these, CONFIG_CC_VERSION_TEXT should not be put in
>> "", otherwise we get () outside "" which shell then tries to evaluate.
>>
>> Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>
>> ---
>> Makefile | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/Makefile b/Makefile index daeb5c88b50b..d5c03c827825
>> 100644 --- a/Makefile +++ b/Makefile @@ -1714,9 +1714,9 @@ 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 [ "$(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 " The kernel
>> was built by: "$(CONFIG_CC_VERSION_TEXT)";" \
>> echo >&2 " You are using:
>> $(CC_VERSION_TEXT)"; \
>> fi
>>
>> --
>> MST

I believe the patch proposed by Michael indeed fixes an issue
introduced by 129ab0d2d9f (Makefile).

Please see the following bug reports:

https://elrepo.org/bugs/view.php?id=1215
https://elrepo.org/bugs/view.php?id=1214

and this forum post:

https://www.phoronix.com/forums/forum/software/general-linux-open-source/
1303986-linux-5-17-rc1-released-a-little-bit-early-but-with-shiny-new-
features#post1304036

Akemi