lkml.org 
[lkml]   [2021]   [Feb]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH] Makefile: Remove # characters from compiler string
On Wed, Feb 17, 2021 at 6:33 AM Nathan Chancellor <nathan@kernel.org> wrote:
>
> When using AMD's Optimizing C/C++ Compiler (AOCC), the build fails due
> to a # character in the version string, which is interpreted as a
> comment:
>
> $ make CC=clang defconfig init/main.o
> include/config/auto.conf.cmd:1374: *** invalid syntax in conditional. Stop.
>
> $ sed -n 1374p include/config/auto.conf.cmd
> ifneq "$(CC_VERSION_TEXT)" "AMD clang version 11.0.0 (CLANG: AOCC_2.3.0-Build#85 2020_11_10) (based on LLVM Mirror.Version.11.0.0)"
>
> Remove all # characters in the version string so that the build does not
> fail unexpectedly.
>
> Link: https://github.com/ClangBuiltLinux/linux/issues/1298
> Reported-by: Michael Fuckner <michael@fuckner.net>
> Signed-off-by: Nathan Chancellor <nathan@kernel.org>
> ---


After some thoughts, I decided to apply this as-is for now.


Ideally, the part "AOCC_2.3.0-Build#85"
could be escaped like "AOCC_2.3.0-Build\#85"
so that the original version string is preserved.

I know it is impossible because escape sequence
handling in Kconfig is buggy.

So, I accept dropping problematic '#' characters entirely,
and I agree this is the safest fix.

When I have time, I might want to revisit this with a Kconfig fix.


Applied to linux-kbuild. Thanks.






--
Best Regards
Masahiro Yamada

\
 
 \ /
  Last update: 2021-02-17 11:39    [W:0.067 / U:1.684 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site