metadata: make srcpackage extensible
Turn the srcpackage values into hashes to allow storing more information than just binary package names. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
This commit is contained in:
parent
1a2b5eb7ac
commit
19577582e4
@ -525,7 +525,7 @@ sub install_package {
|
||||
};
|
||||
|
||||
# install all dependencies referenced from the source package
|
||||
foreach my $vpkg (@{$feed_src->{$src}}) {
|
||||
foreach my $vpkg (@{$feed_src->{$src}{packages}}) {
|
||||
foreach my $dep (@{$vpkg->{depends}}, @{$vpkg->{builddepends}}, @{$vpkg->{"builddepends/host"}}) {
|
||||
next if $dep =~ /@/;
|
||||
$dep =~ s/^\+//;
|
||||
|
@ -212,7 +212,9 @@ sub parse_package_metadata($) {
|
||||
$src = $3;
|
||||
$subdir =~ s/^package\///;
|
||||
$subdir{$src} = $subdir;
|
||||
$srcpackage{$src} = [];
|
||||
$srcpackage{$src} = {
|
||||
packages => [],
|
||||
};
|
||||
$override = "";
|
||||
undef $pkg;
|
||||
};
|
||||
@ -237,7 +239,7 @@ sub parse_package_metadata($) {
|
||||
$pkg->{tristate} = 1;
|
||||
$pkg->{override} = $override;
|
||||
$package{$1} = $pkg;
|
||||
push @{$srcpackage{$src}}, $pkg;
|
||||
push @{$srcpackage{$src}{packages}}, $pkg;
|
||||
};
|
||||
/^Feature:\s*(.+?)\s*$/ and do {
|
||||
undef $pkg;
|
||||
|
@ -445,7 +445,7 @@ sub gen_package_mk() {
|
||||
print "buildtypes-$pkg->{subdir}$pkg->{src} = ".join(' ', @{$pkg->{buildtypes}})."\n";
|
||||
}
|
||||
|
||||
foreach my $spkg (@{$srcpackage{$pkg->{src}}}) {
|
||||
foreach my $spkg (@{$srcpackage{$pkg->{src}}{packages}}) {
|
||||
foreach my $dep (@{$spkg->{depends}}, @{$spkg->{builddepends}}) {
|
||||
$dep =~ /@/ or do {
|
||||
$dep =~ s/\+//g;
|
||||
|
Loading…
Reference in New Issue
Block a user