aboutsummaryrefslogtreecommitdiffstats
path: root/target/sdk/convert-config.pl
diff options
context:
space:
mode:
Diffstat (limited to 'target/sdk/convert-config.pl')
-rwxr-xr-xtarget/sdk/convert-config.pl41
1 files changed, 41 insertions, 0 deletions
diff --git a/target/sdk/convert-config.pl b/target/sdk/convert-config.pl
new file mode 100755
index 0000000..e701b42
--- /dev/null
+++ b/target/sdk/convert-config.pl
@@ -0,0 +1,41 @@
+#!/usr/bin/env perl
+use strict;
+
+print <<EOF;
+config ALL
+ bool
+ default y
+
+EOF
+
+while (<>) {
+ chomp;
+ next if /^CONFIG_SIGNED_PACKAGES/;
+ next unless /^CONFIG_([^=]+)=(.*)$/;
+
+ my $var = $1;
+ my $val = $2;
+ my $type;
+
+ next if $var eq 'ALL';
+
+ if ($val eq 'y') {
+ $type = "bool";
+ } elsif ($val eq 'm') {
+ $type = "tristate";
+ } elsif ($val =~ /^".*"$/) {
+ $type = "string";
+ } elsif ($val =~ /^\d+$/) {
+ $type = "int";
+ } else {
+ warn "WARNING: no type found for symbol CONFIG_$var=$val\n";
+ next;
+ }
+
+ print <<EOF;
+config $var
+ $type
+ default $val
+
+EOF
+}