X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/a4d916c9b5433b0076acedf3f7be0621f447138b..7e4695ba28ead244da172834758c85ceb95aad86:/scripts/metadata.pm diff --git a/scripts/metadata.pm b/scripts/metadata.pm index a527d68f8..dd62b4c04 100644 --- a/scripts/metadata.pm +++ b/scripts/metadata.pm @@ -16,7 +16,6 @@ sub get_multiline { my $str; while (<$fh>) { last if /^@@/; - s/^\s*//g; $str .= (($_ and $prefix) ? $prefix . $_ : $_); } @@ -60,9 +59,11 @@ sub parse_package_metadata($) { $pkg->{src} = $src; $pkg->{makefile} = $makefile; $pkg->{name} = $1; + $pkg->{title} = ""; $pkg->{default} = "m if ALL"; $pkg->{depends} = []; $pkg->{builddepends} = []; + $pkg->{buildtypes} = []; $pkg->{subdir} = $subdir; $pkg->{tristate} = 1; $package{$1} = $pkg; @@ -73,6 +74,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; @@ -88,7 +90,10 @@ sub parse_package_metadata($) { } }; /^Depends: \s*(.+)\s*$/ and $pkg->{depends} = [ split /\s+/, $1 ]; + /^Build-Only: \s*(.+)\s*$/ and $pkg->{buildonly} = 1; /^Build-Depends: \s*(.+)\s*$/ and $pkg->{builddepends} = [ split /\s+/, $1 ]; + /^Build-Depends\/(\w+): \s*(.+)\s*$/ and $pkg->{"builddepends/$1"} = [ split /\s+/, $2 ]; + /^Build-Types:\s*(.+)\s*$/ and $pkg->{buildtypes} = [ split /\s+/, $1 ]; /^Category: \s*(.+)\s*$/ and do { $pkg->{category} = $1; defined $category{$1} or $category{$1} = {}; @@ -103,7 +108,7 @@ sub parse_package_metadata($) { $type =~ /ipkg/ and $pkg->{tristate} = 1; } }; - /^Config: \s*(.*)\s*$/ and $pkg->{config} = "$1\n".get_multiline(*FILE, "\t"); + /^Config:\s*(.*)\s*$/ and $pkg->{config} = "$1\n".get_multiline(*FILE, "\t"); /^Prereq-Check:/ and $pkg->{prereq} = 1; /^Preconfig:\s*(.+)\s*$/ and do { my $pkgname = $pkg->{name};