]> git.baikalelectronics.ru Git - kernel.git/commit
ARM: config: sort select statements alphanumerically
authorRussell King <rmk+kernel@arm.linux.org.uk>
Sat, 6 Oct 2012 16:12:25 +0000 (17:12 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Sat, 13 Oct 2012 16:11:28 +0000 (17:11 +0100)
commit8205bc86ed07862d0e17821d178c1bb9a8496946
treec9cfdc72dd580a9c3ace71846af45b4f65268f46
parent03f33b48f04847be9e4a1906ae2b1384006cd0e7
ARM: config: sort select statements alphanumerically

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: Jason Cooper <jason@lakedaemon.net>
Acked-by: Tony Lindgren <tony@atomide.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
39 files changed:
arch/arm/Kconfig
arch/arm/common/Kconfig
arch/arm/mach-at91/Kconfig
arch/arm/mach-clps711x/Kconfig
arch/arm/mach-davinci/Kconfig
arch/arm/mach-exynos/Kconfig
arch/arm/mach-footbridge/Kconfig
arch/arm/mach-h720x/Kconfig
arch/arm/mach-imx/Kconfig
arch/arm/mach-ixp4xx/Kconfig
arch/arm/mach-mmp/Kconfig
arch/arm/mach-msm/Kconfig
arch/arm/mach-nomadik/Kconfig
arch/arm/mach-omap1/Kconfig
arch/arm/mach-omap2/Kconfig
arch/arm/mach-prima2/Kconfig
arch/arm/mach-pxa/Kconfig
arch/arm/mach-realview/Kconfig
arch/arm/mach-s3c2412/Kconfig
arch/arm/mach-s3c2440/Kconfig
arch/arm/mach-s3c24xx/Kconfig
arch/arm/mach-s3c64xx/Kconfig
arch/arm/mach-s5p64x0/Kconfig
arch/arm/mach-s5pc100/Kconfig
arch/arm/mach-s5pv210/Kconfig
arch/arm/mach-sa1100/Kconfig
arch/arm/mach-shmobile/Kconfig
arch/arm/mach-tegra/Kconfig
arch/arm/mach-u300/Kconfig
arch/arm/mach-ux500/Kconfig
arch/arm/mach-versatile/Kconfig
arch/arm/mm/Kconfig
arch/arm/plat-mxc/Kconfig
arch/arm/plat-mxc/devices/Kconfig
arch/arm/plat-nomadik/Kconfig
arch/arm/plat-omap/Kconfig
arch/arm/plat-s3c24xx/Kconfig
arch/arm/plat-samsung/Kconfig
arch/arm/plat-spear/Kconfig