From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tom Rini Date: Tue, 17 Mar 2020 11:28:07 -0400 Subject: [PATCH] fixdep: fix U-Boot own code to handle only valid symbol characters In-Reply-To: <20200218110539.24735-1-masahiroy@kernel.org> References: <20200218110539.24735-1-masahiroy@kernel.org> Message-ID: <20200317152807.GV12423@bill-the-cat> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de 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 > | Date: Thu Dec 22 18:47:26 2016 -0500 > | > | [SV 20513] Un-escaped # are not comments in function invocations > > Signed-off-by: Masahiro Yamada > Reported-by: Tom Rini 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: