Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge tag 'localmodconfig-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-kconfig

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

+7
+7
scripts/kconfig/streamline_config.pl
··· 219 219 $depends{$config} = $1; 220 220 } elsif ($state eq "DEP" && /^\s*depends\s+on\s+(.*)$/) { 221 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 230 # Get the configs that select this config 224 231 } elsif ($state ne "NONE" && /^\s*select\s+(\S+)/) {