[PATCH] fixdep: fix U-Boot own code to handle only valid symbol characters

Tom Rini trini at konsulko.com
Tue Mar 17 16:28:07 CET 2020


On Tue, Feb 18, 2020 at 08:05:39PM +0900, Masahiro Yamada wrote:

> Currently, fixdep skips parsing include/linux/kconfig.h, but if it
> parsed it, it would translate the following code in kconfig.h
> 
>   config_enabled(CONFIG_VAL(option##_MODULE)
> 
> into:
> 
>   $(wildcard include/config/option##/module.h)
> 
> When Kbuild includes .*.cmd, it would emit the following error:
> 
>   *** unterminated call to function 'wildcard': missing ')'.  Stop.
> 
> This issue prevents us from importing the upstream Linux commit
> 638e69cf2230 ("fixdep: do not ignore kconfig.h").
> 
> Fix this by handling only alphanumerical characters and underscores.
> This makes sense because they match to the valid character sets in
> Kconfig symbols.
> 
> As a side-note, you can reproduce this issue only on GNU Make <= 4.2.1
> 
> For GNU Make <= 4.2.1, the '#' always means the start of a comment.
> Hence, GNU Make thinks the closing ')' is missing.
> 
> The following commit in GNU Make changed how it handles '#' in
> function invocations. So, this does not happen for GNU Make 4.3
> 
> | commit c6966b323811c37acedff05b576b907b06aea5f4
> | Author: Paul Smith <psmith at gnu.org>
> | Date:   Thu Dec 22 18:47:26 2016 -0500
> |
> |    [SV 20513] Un-escaped # are not comments in function invocations
> 
> Signed-off-by: Masahiro Yamada <masahiroy at kernel.org>
> Reported-by: Tom Rini <trini at konsulko.com>

Applied to u-boot/next, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200317/df563ddc/attachment.sig>


More information about the U-Boot mailing list