summaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorralph <ralph@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-03-01 09:35:53 +0000
committerralph <ralph@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-03-01 09:35:53 +0000
commitc9f2186862ea3f19a9389b77c13326c6edb4cfed (patch)
tree58188899bb356a5be6b687e0cb68d427d8a05aad /scripts
parent412165bb4192b4598851a05cabc09020903e4304 (diff)
added source distribution to package dump, used by our SDK (include source distributions for offline usage)
added bugfix for sub-targets added bugfix for help info (thanks to Thomas) git-svn-id: svn://svn.openwrt.org/openwrt/trunk@14703 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/metadata.pl29
-rw-r--r--scripts/metadata.pm1
2 files changed, 29 insertions, 1 deletions
diff --git a/scripts/metadata.pl b/scripts/metadata.pl
index fa3055620..7496f33a7 100755
--- a/scripts/metadata.pl
+++ b/scripts/metadata.pl
@@ -201,12 +201,20 @@ sub print_target($) {
}
my $v = kver($target->{version});
+ if (@{$target->{subtargets}} == 0) {
$confstr = <<EOF;
config TARGET_$target->{conf}
bool "$target->{name}"
select LINUX_$kernel
select LINUX_$v
EOF
+ }
+ else {
+ $confstr = <<EOF;
+config TARGET_$target->{conf}
+ bool "$target->{name}"
+EOF
+ }
if ($target->{subtarget}) {
$confstr .= "\tdepends TARGET_$target->{boardconf}\n";
}
@@ -293,7 +301,14 @@ EOF
print "\tselect DEFAULT_$pkg\n";
$defaults{$pkg} = 1;
}
- print "\n";
+ my $help = $profile->{desc};
+ if ($help =~ /\w+/) {
+ $help =~ s/^\s*/\t /mg;
+ $help = "\thelp\n$help";
+ } else {
+ undef $help;
+ }
+ print "$help\n";
}
}
@@ -651,6 +666,16 @@ EOF
}
}
+sub gen_package_source() {
+ parse_package_metadata($ARGV[0]) or exit 1;
+ foreach my $name (sort {uc($a) cmp uc($b)} keys %package) {
+ my $pkg = $package{$name};
+ if ($pkg->{name} && $pkg->{source}) {
+ print "$pkg->{name}: ";
+ print "$pkg->{source}\n";
+ }
+ }
+}
sub parse_command() {
my $cmd = shift @ARGV;
@@ -659,6 +684,7 @@ sub parse_command() {
/^package_mk$/ and return gen_package_mk();
/^package_config$/ and return gen_package_config();
/^kconfig/ and return gen_kconfig_overrides();
+ /^package_source$/ and return gen_package_source();
}
print <<EOF
Available Commands:
@@ -666,6 +692,7 @@ Available Commands:
$0 package_mk [file] Package metadata in makefile format
$0 package_config [file] Package metadata in Kconfig format
$0 kconfig [file] [config] Kernel config overrides
+ $0 package_source [file] Package source file information
EOF
}
diff --git a/scripts/metadata.pm b/scripts/metadata.pm
index 9486c66cb..97746809a 100644
--- a/scripts/metadata.pm
+++ b/scripts/metadata.pm
@@ -73,6 +73,7 @@ sub parse_package_metadata($) {
/^Menu: \s*(.+)\s*$/ and $pkg->{menu} = $1;
/^Submenu: \s*(.+)\s*$/ and $pkg->{submenu} = $1;
/^Submenu-Depends: \s*(.+)\s*$/ and $pkg->{submenudep} = $1;
+ /^Source: \s*(.+)\s*$/ and $pkg->{source} = $1;
/^Default: \s*(.+)\s*$/ and $pkg->{default} = $1;
/^Provides: \s*(.+)\s*$/ and do {
my @vpkg = split /\s+/, $1;