From b4a4a63cc4ed8ebd8c1fbbfb3b89a408e907045a Mon Sep 17 00:00:00 2001 From: Tuomas Tynkkynen Date: Tue, 13 Sep 2016 13:52:07 +0300 Subject: [PATCH] kernel generate-config.pl: Properly support string options Or we get something like: option not set correctly: NLS_DEFAULT (wanted 'utf8', got '"utf8"') --- pkgs/os-specific/linux/kernel/generate-config.pl | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/kernel/generate-config.pl b/pkgs/os-specific/linux/kernel/generate-config.pl index 3cf1dc34baab..5574cc937af7 100644 --- a/pkgs/os-specific/linux/kernel/generate-config.pl +++ b/pkgs/os-specific/linux/kernel/generate-config.pl @@ -124,7 +124,10 @@ my %config; open CONFIG, "<.config" or die; while () { chomp; - if (/^CONFIG_([A-Za-z0-9_]+)=(.*)$/) { + if (/^CONFIG_([A-Za-z0-9_]+)="(.*)"$/) { + # String options have double quotes, e.g. 'CONFIG_NLS_DEFAULT="utf8"' and allow escaping. + ($config{$1} = $2) =~ s/\\([\\"])/$1/g; + } elsif (/^CONFIG_([A-Za-z0-9_]+)=(.*)$/) { $config{$1} = $2; } elsif (/^# CONFIG_([A-Za-z0-9_]+) is not set$/) { $config{$1} = "n";