media: media/*/Kconfig: sort entries
authorMauro Carvalho Chehab <mchehab@kernel.org>
Mon, 14 Mar 2022 10:01:05 +0000 (11:01 +0100)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Fri, 18 Mar 2022 04:58:35 +0000 (05:58 +0100)
commit6cdc31b2d7095af3d39f001b0d4e367a6f32664e
treed00cd220b6aed3328d5fd07c41e7c9ee9e26b3ae
parent9958d30f38b96fb763a10d44d18ddad39127d5f4
media: media/*/Kconfig: sort entries

Currently, the idems inside media Kconfig are out of order.
Sort them using the script below:

<script>
use strict;
use warnings;

my %config;
my @source;
my $out;

sub flush_config()
{
if (scalar %config) {
for my $c (sort keys %config) {
$out .= $config{$c} . "\n";
}
%config = ();
}

return if (!scalar @source);

$out .= "\n";
for my $s (sort @source) {
$out .= $s;
}
$out .= "\n";

@source = ();
}

sub sort_kconfig($)
{
my $fname = shift;
my $cur_config = "";

@source = ();
$out = "";
%config = ();

open IN, $fname or die;
while (<IN>) {
if (m/^config\s+(.*)/) {
$cur_config = $1;
$config{$cur_config} .= $_;
} elsif (m/^source\s+(.*)/) {
push @source, $_;
} elsif (m/^\s+/) {
if ($cur_config eq "") {
$out .= $_;
} else {
$config{$cur_config} .= $_;
}
} else {
flush_config();
$cur_config = "";
$out .= $_;
}
}
close IN or die;

flush_config();

$out =~ s/\n\n+/\n\n/g;
$out =~ s/\n+$/\n/;

open OUT, ">$fname";
print OUT $out;
close OUT;
}

for my $fname(@ARGV) {
sort_kconfig $fname
}
</script>

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
14 files changed:
drivers/media/common/Kconfig
drivers/media/dvb-frontends/Kconfig
drivers/media/i2c/Kconfig
drivers/media/mmc/Kconfig
drivers/media/pci/Kconfig
drivers/media/radio/Kconfig
drivers/media/rc/Kconfig
drivers/media/test-drivers/Kconfig
drivers/media/test-drivers/vidtv/Kconfig
drivers/media/tuners/Kconfig
drivers/media/usb/Kconfig
drivers/media/usb/dvb-usb-v2/Kconfig
drivers/media/usb/dvb-usb/Kconfig
drivers/media/usb/gspca/Kconfig