Pull localmodconfig update from Steven Rostedt: "While debugging the problem with localmodconfig and the ALSA codec modules all being set, I discovered a small bug in the dependency logic. If a config has a dependency based on its setting value, localmodcondig misses it. For example: config FOO default y if BAR || ZOO If FOO is needed for a module and is set to '=m', and so are BAR or ZOO, localmodconfig will not see that BAR or ZOO are also needed for the foo module, and will incorrectly disable them" * tag 'localmodconfig-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-kconfig: localmodconfig: Add config depends by default settings
Unified · Split
| @@ -219,6 +219,13 @@ sub read_kconfig { · 218 unmodified lines | |||
| 219 | $depends{$config} = $1; | 219 | $depends{$config} = $1; |
| 220 | } elsif ($state eq "DEP" && /^\s*depends\s+on\s+(.*)$/) { | 220 | } elsif ($state eq "DEP" && /^\s*depends\s+on\s+(.*)$/) { |
| 221 | $depends{$config} .= " " . $1; | 221 | $depends{$config} .= " " . $1; |
| 222 | } elsif ($state eq "DEP" && /^\s*def(_(bool|tristate)|ault)\s+(\S.*)$/) { | ||
| 223 | my $dep = $3; | ||
| 224 | if ($dep !~ /^\s*(y|m|n)\s*$/) { | ||
| 225 | $dep =~ s/.*\sif\s+//; | ||
| 226 | $depends{$config} .= " " . $dep; | ||
| 227 | dprint "Added default depends $dep to $config\n"; | ||
| 228 | } | ||
| 222 | 229 | ||
| 223 | # Get the configs that select this config | 230 | # Get the configs that select this config |
| 224 | } elsif ($state ne "NONE" && /^\s*select\s+(\S+)/) { | 231 | } elsif ($state ne "NONE" && /^\s*select\s+(\S+)/) { |