summaryrefslogtreecommitdiff
path: root/usr.sbin/pkg_add/OpenBSD/PkgCfl.pm
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/pkg_add/OpenBSD/PkgCfl.pm')
-rw-r--r--usr.sbin/pkg_add/OpenBSD/PkgCfl.pm9
1 files changed, 7 insertions, 2 deletions
diff --git a/usr.sbin/pkg_add/OpenBSD/PkgCfl.pm b/usr.sbin/pkg_add/OpenBSD/PkgCfl.pm
index 483983aefbb..57783b1d2bd 100644
--- a/usr.sbin/pkg_add/OpenBSD/PkgCfl.pm
+++ b/usr.sbin/pkg_add/OpenBSD/PkgCfl.pm
@@ -1,5 +1,5 @@
# ex:ts=8 sw=4:
-# $OpenBSD: PkgCfl.pm,v 1.36 2010/12/24 09:04:14 espie Exp $
+# $OpenBSD: PkgCfl.pm,v 1.37 2011/07/02 12:12:58 espie Exp $
#
# Copyright (c) 2003-2005 Marc Espie <espie@openbsd.org>
#
@@ -35,7 +35,6 @@ sub make_conflict_list
} else {
push(@$l, OpenBSD::Search::Exact->new("$pkgname|partial-$pkgname"));
}
- push(@$l, OpenBSD::Search::PkgSpec->new(".libs-$stem-*"));
if (defined $plist->{conflict}) {
for my $cfl (@{$plist->{conflict}}) {
push(@$l, $cfl->spec);
@@ -47,10 +46,13 @@ sub make_conflict_list
sub conflicts_with
{
my ($self, @pkgnames) = @_;
+ my @libs = grep {/^\.libs\d*\-/} @pkgnames;
+ @pkgnames = grep {!/^\.libs\d*\-/} @pkgnames;
if (wantarray) {
my @l = ();
for my $cfl (@$self) {
push(@l, $cfl->filter(@pkgnames));
+ push(@l, $cfl->filter_libs(@libs));
}
return @l;
} else {
@@ -58,6 +60,9 @@ sub conflicts_with
if ($cfl->filter(@pkgnames)) {
return 1;
}
+ if ($cfl->filter_libs(@libs)) {
+ return 1;
+ }
}
return 0;
}