Re: [PATCH] compiler.h: Raise minimum version of GCC to 5.1 for arm64

From: Catalin Marinas
Date: Wed Jan 13 2021 - 10:03:35 EST


On Tue, Jan 12, 2021 at 06:35:50PM -0800, Linus Torvalds wrote:
> On Tue, Jan 12, 2021 at 6:14 PM Linus Torvalds
> <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
> >
> > Ack. I'll assume I get this the usual ways from the arm64 tree..
>
> Oh.. Actually, while you can use my ack if you decide to go this way,
> I do wonder if it might not be better to introduce a notion of an
> error at Kconfig time, and then we could make this whole GCC_VERSION
> check be something that gets covered much earlier - when configuring
> the kernel, rather than randomly (ok, very early) when building it.
>
> We already have the CONFIG_GCC_VERSION config variable, after all.
>
> And Kconfig already has an error functionality, which it uses for
> things like compilers not found etc.
>
> So something like
>
> $(error-if,CC_IS_GCC && GCC_VERSION < 90100,"Gcc version too old")
>
> in the arm64 Kconfig file should do it.

$(error-if) seems to expect a y/n as a condition. We do have $(failure)
and $(success) but they translate a (shell) command's return code to
y/n. Even with something like:

config GCC_IS_OLD
def_bool CC_IS_GCC && GCC_VERSION < ...

I can't get $(error-if,GCC_IS_OLD) to expand the config value, no matter
what other. GCC_VERSION is also a config option in your example.

I'll queue Will's patch in the meantime.

--
Catalin