> On 6/30/2021 5:14 AM, Lecopzer Chen wrote: > > LTO with MODVERSION will fail in generating correct CRC because > > the makefile rule doesn't work for make with version 3.8X.[1] > > > > Thus we need to check make version during selecting on LTO Kconfig. > > and the suitable version should be 4.2(40200) which release in 2016[2]. > > > > [1] https://lore.kernel.org/lkml/20210616080252.32046-1-lecopzer.chen@xxxxxxxxxxxx/ > > [2] https://ftp.gnu.org/gnu/make/ > > Signed-off-by: Lecopzer Chen <lecopzer.chen@xxxxxxxxxxxx> > > --- > > arch/Kconfig | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/arch/Kconfig b/arch/Kconfig > > index c45b770d3579..1571957bade5 100644 > > --- a/arch/Kconfig > > +++ b/arch/Kconfig > > @@ -632,6 +632,7 @@ config HAS_LTO_CLANG > > def_bool y > > # Clang >= 11: https://github.com/ClangBuiltLinux/linux/issues/510 > > depends on CC_IS_CLANG && CLANG_VERSION >= 110000 && LD_IS_LLD && AS_IS_LLVM > > + depends on MAKE_VERSION_INT >= 40200 > > If the bug depends on CONFIG_MODVERSIONS, should this be > > depends on !MODVERSIONS || MAKE_VERSION >= 40200 > > ? Especially since the problematic block in your original report is > gated on CONFIG_LTO_CLANG + CONFIG_MODVERSIONS. > You're right, I'll fix it in v2, thanks for reviewing. > > depends on $(success,$(NM) --help | head -n 1 | grep -qi llvm) > > depends on $(success,$(AR) --help | head -n 1 | grep -qi llvm) > > depends on ARCH_SUPPORTS_LTO_CLANG > >