diff options
author | Michael Schröder <mls@suse.de> | 2007-05-10 18:07:08 +0000 |
---|---|---|
committer | Michael Schröder <mls@suse.de> | 2007-05-10 18:07:08 +0000 |
commit | 4fe96e591404933c7b677151ef78d7d74c5b35bc (patch) | |
tree | ab9ae3e8268490d1b520a32236cb1d7d0c8c37eb /Build.pm | |
parent | 251f195cb0619885f3ef4d54436c08d06335c5f5 (diff) | |
download | obs-build-4fe96e591404933c7b677151ef78d7d74c5b35bc.tar.gz obs-build-4fe96e591404933c7b677151ef78d7d74c5b35bc.tar.bz2 obs-build-4fe96e591404933c7b677151ef78d7d74c5b35bc.zip |
- add _vendor to configs
- fix deban dependency compare
- allow not operator in configs
- fix build from source rpms
Diffstat (limited to 'Build.pm')
-rw-r--r-- | Build.pm | 13 |
1 files changed, 11 insertions, 2 deletions
@@ -112,7 +112,16 @@ sub read_config { next; } if ($l0 eq 'preinstall:' || $l0 eq 'vminstall:' || $l0 eq 'required:' || $l0 eq 'support:' || $l0 eq 'keep:' || $l0 eq 'prefer:' || $l0 eq 'ignore:' || $l0 eq 'conflict:' || $l0 eq 'runscripts:') { - push @{$config->{substr($l0, 0, -1)}}, @l; + my $t = substr($l0, 0, -1); + for my $l (@l) { + if ($l eq '!*') { + $config->{$t} = []; + } elsif ($l =~ /^!/) { + $config->{$t} = [ grep {"!$_" ne $l} @{$config->{$t}} ]; + } else { + push @{$config->{$t}}, $l; + } + } } elsif ($l0 eq 'substitute:') { next unless @l; $ll = shift @l; @@ -364,7 +373,7 @@ sub addproviders { } my $rr = $rf == 2 ? $pf : ($rf ^ 5); $rr &= 5 unless $pf & 2; - my $vv = Build::Rpm::verscmp($pv, $rv, 1); + my $vv = Build::Rpm::verscmp($pv, $rv, $config->{'type'} eq 'spec' ? 1 : 0); if ($rr & (1 << ($vv + 1))) { push @p, $rp; last; |