On Wed, May 10, 2023 at 8:01 PM Jiri Slaby <jirislaby@xxxxxxxxxx> wrote:
Hi,
if I use localmodconfig for example like this:
mkdir /tmp/tb/
echo thunderbolt >/tmp/tb/lsmod
make O=/tmp/tb LSMOD=/tmp/tb/lsmod localmodconfig
I get:
using config: '.config'
thunderbolt config not found!!
$ grep 'USB4\>' /tmp/tb/.config
# CONFIG_USB4 is not set
I believe it's due to:
obj-${CONFIG_USB4} := thunderbolt.o
in drivers/thunderbolt/Makefile. I.e. ${} used instead of more common $().
But even if I change the parser:
--- a/scripts/kconfig/streamline_config.pl
+++ b/scripts/kconfig/streamline_config.pl
@@ -317,7 +317,7 @@ foreach my $makefile (@makefiles) {
$_ = convert_vars($_, %make_vars);
# collect objects after obj-$(CONFIG_FOO_BAR)
- if (/obj-\$\((CONFIG_[^\)]*)\)\s*[+:]?=\s*(.*)/) {
+ if (/obj-\$[({](CONFIG_[^})]*)[)}]\s*[+:]?=\s*(.*)/) {
$var = $1;
$objs = $2;
Will you send this fix as a patch?