diff options
-rw-r--r-- | scripts/kconfig/streamline_config.pl | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/scripts/kconfig/streamline_config.pl b/scripts/kconfig/streamline_config.pl index 343a56863660..4606cdfb859d 100644 --- a/scripts/kconfig/streamline_config.pl +++ b/scripts/kconfig/streamline_config.pl | |||
@@ -156,7 +156,6 @@ sub read_kconfig { | |||
156 | 156 | ||
157 | my $state = "NONE"; | 157 | my $state = "NONE"; |
158 | my $config; | 158 | my $config; |
159 | my @kconfigs; | ||
160 | 159 | ||
161 | my $cont = 0; | 160 | my $cont = 0; |
162 | my $line; | 161 | my $line; |
@@ -190,7 +189,13 @@ sub read_kconfig { | |||
190 | 189 | ||
191 | # collect any Kconfig sources | 190 | # collect any Kconfig sources |
192 | if (/^source\s*"(.*)"/) { | 191 | if (/^source\s*"(.*)"/) { |
193 | $kconfigs[$#kconfigs+1] = $1; | 192 | my $kconfig = $1; |
193 | # prevent reading twice. | ||
194 | if (!defined($read_kconfigs{$kconfig})) { | ||
195 | $read_kconfigs{$kconfig} = 1; | ||
196 | read_kconfig($kconfig); | ||
197 | } | ||
198 | next; | ||
194 | } | 199 | } |
195 | 200 | ||
196 | # configs found | 201 | # configs found |
@@ -250,14 +255,6 @@ sub read_kconfig { | |||
250 | } | 255 | } |
251 | } | 256 | } |
252 | close($kinfile); | 257 | close($kinfile); |
253 | |||
254 | # read in any configs that were found. | ||
255 | foreach my $kconfig (@kconfigs) { | ||
256 | if (!defined($read_kconfigs{$kconfig})) { | ||
257 | $read_kconfigs{$kconfig} = 1; | ||
258 | read_kconfig($kconfig); | ||
259 | } | ||
260 | } | ||
261 | } | 258 | } |
262 | 259 | ||
263 | if ($kconfig) { | 260 | if ($kconfig) { |