• R
    ARM: config: sort select statements alphanumerically · b1b3f49c
    Russell King 提交于
    As suggested by Andrew Morton:
    
      This is a pet peeve of mine.  Any time there's a long list of items
      (header file inclusions, kconfig entries, array initalisers, etc) and
      someone wants to add a new item, they *always* go and stick it at the
      end of the list.
    
      Guys, don't do this.  Either put the new item into a randomly-chosen
      position or, probably better, alphanumerically sort the list.
    
    lets sort all our select statements alphanumerically.  This commit was
    created by the following perl:
    
    while (<>) {
    	while (/\\\s*$/) {
    		$_ .= <>;
    	}
    	undef %selects if /^\s*config\s+/;
    	if (/^\s+select\s+(\w+).*/) {
    		if (defined($selects{$1})) {
    			if ($selects{$1} eq $_) {
    				print STDERR "Warning: removing duplicated $1 entry\n";
    			} else {
    				print STDERR "Error: $1 differently selected\n".
    					"\tOld: $selects{$1}\n".
    					"\tNew: $_\n";
    				exit 1;
    			}
    		}
    		$selects{$1} = $_;
    		next;
    	}
    	if (%selects and (/^\s*$/ or /^\s+help/ or /^\s+---help---/ or
    			  /^endif/ or /^endchoice/)) {
    		foreach $k (sort (keys %selects)) {
    			print "$selects{$k}";
    		}
    		undef %selects;
    	}
    	print;
    }
    if (%selects) {
    	foreach $k (sort (keys %selects)) {
    		print "$selects{$k}";
    	}
    }
    
    It found two duplicates:
    
    Warning: removing duplicated S5P_SETUP_MIPIPHY entry
    Warning: removing duplicated HARDIRQS_SW_RESEND entry
    
    and they are identical duplicates, hence the shrinkage in the diffstat
    of two lines.
    
    We have four testers reporting success of this change (Tony, Stephen,
    Linus and Sekhar.)
    Acked-by: NJason Cooper <jason@lakedaemon.net>
    Acked-by: NTony Lindgren <tony@atomide.com>
    Acked-by: NStephen Warren <swarren@nvidia.com>
    Acked-by: NLinus Walleij <linus.walleij@linaro.org>
    Acked-by: NSekhar Nori <nsekhar@ti.com>
    Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
    b1b3f49c
Kconfig 4.8 KB