summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/package-dumpinfo.mk1
-rwxr-xr-xscripts/metadata.pl29
-rw-r--r--scripts/metadata.pm1
3 files changed, 30 insertions, 1 deletions
diff --git a/include/package-dumpinfo.mk b/include/package-dumpinfo.mk
index 6f1624aeb1..f5f1200ba2 100644
--- a/include/package-dumpinfo.mk
+++ b/include/package-dumpinfo.mk
@@ -28,6 +28,7 @@ ifneq ($(DUMP),)
echo "Category: $(CATEGORY)"; \
echo "Title: $(TITLE)"; \
echo "Maintainer: $(MAINTAINER)"; \
+ echo "Source: $(PKG_SOURCE)"; \
echo "Type: $(if $(Package/$(1)/targets),$(Package/$(1)/targets),$(if $(PKG_TARGETS),$(PKG_TARGETS),ipkg))"; \
$(if $(KCONFIG),echo "Kernel-Config: $(KCONFIG)";) \
$(if $(BUILDONLY),echo "Build-Only: $(BUILDONLY)";) \
diff --git a/scripts/metadata.pl b/scripts/metadata.pl
index fa30556205..7496f33a7d 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 9486c66cb3..97746809a4 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;