Browse Source

correct handling of conditional provides

master
Michael van Elst 23 years ago committed by Ralf S. Engelschall
parent
commit
4ce94c8590
  1. 21
      openpkg-tool/openpkg-build.pl
  2. 4
      openpkg-tool/openpkg-tool.spec

21
openpkg-tool/openpkg-build.pl

@ -883,7 +883,7 @@ sub simple_text_parser ($$$$$) {
};
}
if ($section eq 'provides') {
push @provides, $body;
push @provides, $body if !defined $usecond;
} elsif ($section ne '') {
push @{$bags->{"$usecond"}->{$section}}, $body;
}
@ -957,7 +957,7 @@ sub xml_parser ($$$$$) {
my(@include);
my($xml,$rep,$sub);
my($provides,@provides,%options,$rec);
my(@provides,%options,$rec);
my($href,$name,$version,$release,$desc);
my($options);
@ -979,15 +979,20 @@ sub xml_parser ($$$$$) {
defined $version &&
defined $release;
$provides = $_->{'Provides'}->[0]->{'rdf:bag'}->[0];
if ($provides->{'rdf:li'}) {
$provides = $provides->{'rdf:li'};
} else {
$provides = $provides->{'resource'};
@provides = ();
if ($_->{'Provides'}) {
@provides = map {
$_ = $_->{'rdf:bag'}->[0];
$_ = $_->{'rdf:li'} ? $_->{'rdf:li'} : $_->{'resource'};
@$_;
} grep {
!exists $_->{'cond'}
} @{$_->{'Provides'}};
}
@provides = map {
depends2provides(parse_depends($_))
} @$provides;
} @provides;
%options = map {
( $_->{with} => $_->{version} )

4
openpkg-tool/openpkg-tool.spec

@ -32,8 +32,8 @@ Packager: The OpenPKG Project
Distribution: OpenPKG [PLUS]
Group: Bootstrapping
License: GPL
Version: 20030630
Release: 20030630
Version: 20030702
Release: 20030702
# list of sources
Source0: openpkg.sh

Loading…
Cancel
Save