diff options
author | Marc Espie <espie@cvs.openbsd.org> | 2010-12-24 09:04:15 +0000 |
---|---|---|
committer | Marc Espie <espie@cvs.openbsd.org> | 2010-12-24 09:04:15 +0000 |
commit | fad9aa48fa7616bef3da618e4d69e10390f368af (patch) | |
tree | 88efd00c61e7bb289cb682ca2ae56ea1399d76c9 /usr.sbin | |
parent | e8aa660d2596713d58d74612b0c701258b61f0b2 (diff) |
handle failures from ports tree with more care.
this does avoid infinite loops in case of wrong plists.
necessary since print-plist-with-depends CAN fail...
Diffstat (limited to 'usr.sbin')
51 files changed, 102 insertions, 73 deletions
diff --git a/usr.sbin/pkg_add/OpenBSD/Add.pm b/usr.sbin/pkg_add/OpenBSD/Add.pm index 2854abd1a27..1cc4f6e7a9b 100644 --- a/usr.sbin/pkg_add/OpenBSD/Add.pm +++ b/usr.sbin/pkg_add/OpenBSD/Add.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Add.pm,v 1.116 2010/10/02 13:33:05 espie Exp $ +# $OpenBSD: Add.pm,v 1.117 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2007 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/AddCreateDelete.pm b/usr.sbin/pkg_add/OpenBSD/AddCreateDelete.pm index ae15c3a6acc..72492f28504 100644 --- a/usr.sbin/pkg_add/OpenBSD/AddCreateDelete.pm +++ b/usr.sbin/pkg_add/OpenBSD/AddCreateDelete.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: AddCreateDelete.pm,v 1.12 2010/10/25 21:02:44 espie Exp $ +# $OpenBSD: AddCreateDelete.pm,v 1.13 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2007-2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/AddDelete.pm b/usr.sbin/pkg_add/OpenBSD/AddDelete.pm index 69f2b20ef44..3bf8d67c262 100644 --- a/usr.sbin/pkg_add/OpenBSD/AddDelete.pm +++ b/usr.sbin/pkg_add/OpenBSD/AddDelete.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: AddDelete.pm,v 1.41 2010/12/18 10:39:01 espie Exp $ +# $OpenBSD: AddDelete.pm,v 1.42 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2007-2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/ArcCheck.pm b/usr.sbin/pkg_add/OpenBSD/ArcCheck.pm index 86426df5113..7898f416db5 100644 --- a/usr.sbin/pkg_add/OpenBSD/ArcCheck.pm +++ b/usr.sbin/pkg_add/OpenBSD/ArcCheck.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: ArcCheck.pm,v 1.19 2010/10/02 13:33:05 espie Exp $ +# $OpenBSD: ArcCheck.pm,v 1.20 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2005-2006 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/CollisionReport.pm b/usr.sbin/pkg_add/OpenBSD/CollisionReport.pm index 1034517cae1..bc651f380c6 100644 --- a/usr.sbin/pkg_add/OpenBSD/CollisionReport.pm +++ b/usr.sbin/pkg_add/OpenBSD/CollisionReport.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: CollisionReport.pm,v 1.39 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: CollisionReport.pm,v 1.40 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2006 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/Delete.pm b/usr.sbin/pkg_add/OpenBSD/Delete.pm index cf343c80880..345c7127cbe 100644 --- a/usr.sbin/pkg_add/OpenBSD/Delete.pm +++ b/usr.sbin/pkg_add/OpenBSD/Delete.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Delete.pm,v 1.110 2010/12/13 12:13:54 espie Exp $ +# $OpenBSD: Delete.pm,v 1.111 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2007 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/Dependencies.pm b/usr.sbin/pkg_add/OpenBSD/Dependencies.pm index 8f51fcac1fd..eae6bfee6ed 100644 --- a/usr.sbin/pkg_add/OpenBSD/Dependencies.pm +++ b/usr.sbin/pkg_add/OpenBSD/Dependencies.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Dependencies.pm,v 1.150 2010/12/21 17:43:07 espie Exp $ +# $OpenBSD: Dependencies.pm,v 1.151 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2005-2010 Marc Espie <espie@openbsd.org> # @@ -73,7 +73,7 @@ sub dump my ($self, $state) = @_; return unless %{$self->{done}}; - $state->say("Full dependency tree is #1", + $state->say("Full dependency tree is #1", join(' ', keys %{$self->{done}})); } @@ -167,7 +167,7 @@ sub find_in_already_done my ($self, $solver, $state, $obj) = @_; my $r = $self->{known_tags}->{$obj}; if (defined $r) { - $state->say("Found tag #1 in #2", $obj, $r) + $state->say("Found tag #1 in #2", $obj, $r) if $state->verbose >= 3; } return $r; @@ -590,7 +590,7 @@ sub find_dep_in_stuff_to_install { my ($self, $state, $dep) = @_; - my $v = $self->find_candidate($dep, + my $v = $self->find_candidate($dep, keys %{$state->tracker->{uptodate}}); if ($v) { $self->set_global($dep, _cache::installed->new($v)); diff --git a/usr.sbin/pkg_add/OpenBSD/Error.pm b/usr.sbin/pkg_add/OpenBSD/Error.pm index fba3a069e38..6e5f42a9a9e 100644 --- a/usr.sbin/pkg_add/OpenBSD/Error.pm +++ b/usr.sbin/pkg_add/OpenBSD/Error.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Error.pm,v 1.29 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: Error.pm,v 1.30 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2004-2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/ForwardDependencies.pm b/usr.sbin/pkg_add/OpenBSD/ForwardDependencies.pm index db86613bead..e05eee3a3e1 100644 --- a/usr.sbin/pkg_add/OpenBSD/ForwardDependencies.pm +++ b/usr.sbin/pkg_add/OpenBSD/ForwardDependencies.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: ForwardDependencies.pm,v 1.10 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: ForwardDependencies.pm,v 1.11 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2009 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/Getopt.pm b/usr.sbin/pkg_add/OpenBSD/Getopt.pm index 3b03d36bf06..fcca2bfba8d 100644 --- a/usr.sbin/pkg_add/OpenBSD/Getopt.pm +++ b/usr.sbin/pkg_add/OpenBSD/Getopt.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Getopt.pm,v 1.10 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: Getopt.pm,v 1.11 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2006 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/Handle.pm b/usr.sbin/pkg_add/OpenBSD/Handle.pm index 514e52a9ab6..bbdf354a988 100644 --- a/usr.sbin/pkg_add/OpenBSD/Handle.pm +++ b/usr.sbin/pkg_add/OpenBSD/Handle.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Handle.pm,v 1.26 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: Handle.pm,v 1.27 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2007-2009 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/IdCache.pm b/usr.sbin/pkg_add/OpenBSD/IdCache.pm index d6e48bcea3d..78bd4c52d59 100644 --- a/usr.sbin/pkg_add/OpenBSD/IdCache.pm +++ b/usr.sbin/pkg_add/OpenBSD/IdCache.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: IdCache.pm,v 1.9 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: IdCache.pm,v 1.10 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2002-2005 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/Interactive.pm b/usr.sbin/pkg_add/OpenBSD/Interactive.pm index 3ce9c000925..99a3cd49285 100644 --- a/usr.sbin/pkg_add/OpenBSD/Interactive.pm +++ b/usr.sbin/pkg_add/OpenBSD/Interactive.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Interactive.pm,v 1.16 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: Interactive.pm,v 1.17 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2005-2007 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/LibSpec.pm b/usr.sbin/pkg_add/OpenBSD/LibSpec.pm index d21803a601b..2c018f372fd 100644 --- a/usr.sbin/pkg_add/OpenBSD/LibSpec.pm +++ b/usr.sbin/pkg_add/OpenBSD/LibSpec.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: LibSpec.pm,v 1.14 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: LibSpec.pm,v 1.15 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/Log.pm b/usr.sbin/pkg_add/OpenBSD/Log.pm index 0ee1602f3dc..15f7ba5622a 100644 --- a/usr.sbin/pkg_add/OpenBSD/Log.pm +++ b/usr.sbin/pkg_add/OpenBSD/Log.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Log.pm,v 1.5 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: Log.pm,v 1.6 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2007-2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/Mtree.pm b/usr.sbin/pkg_add/OpenBSD/Mtree.pm index 365d8a6a39e..09eebad080f 100644 --- a/usr.sbin/pkg_add/OpenBSD/Mtree.pm +++ b/usr.sbin/pkg_add/OpenBSD/Mtree.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Mtree.pm,v 1.11 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: Mtree.pm,v 1.12 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2004-2005 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/OldLibs.pm b/usr.sbin/pkg_add/OpenBSD/OldLibs.pm index f25c0021c28..639ab304bf6 100644 --- a/usr.sbin/pkg_add/OpenBSD/OldLibs.pm +++ b/usr.sbin/pkg_add/OpenBSD/OldLibs.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: OldLibs.pm,v 1.7 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: OldLibs.pm,v 1.8 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2004-2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/PackageInfo.pm b/usr.sbin/pkg_add/OpenBSD/PackageInfo.pm index a22a61fb4ea..3909f835f35 100644 --- a/usr.sbin/pkg_add/OpenBSD/PackageInfo.pm +++ b/usr.sbin/pkg_add/OpenBSD/PackageInfo.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: PackageInfo.pm,v 1.51 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: PackageInfo.pm,v 1.52 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2007 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/PackageLocation.pm b/usr.sbin/pkg_add/OpenBSD/PackageLocation.pm index fabfd5ed3e5..e85e8ddf660 100644 --- a/usr.sbin/pkg_add/OpenBSD/PackageLocation.pm +++ b/usr.sbin/pkg_add/OpenBSD/PackageLocation.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: PackageLocation.pm,v 1.26 2010/10/02 13:36:56 espie Exp $ +# $OpenBSD: PackageLocation.pm,v 1.27 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2007 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/PackageLocator.pm b/usr.sbin/pkg_add/OpenBSD/PackageLocator.pm index 4d6463134c5..ad4c1ee511c 100644 --- a/usr.sbin/pkg_add/OpenBSD/PackageLocator.pm +++ b/usr.sbin/pkg_add/OpenBSD/PackageLocator.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: PackageLocator.pm,v 1.97 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: PackageLocator.pm,v 1.98 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/PackageName.pm b/usr.sbin/pkg_add/OpenBSD/PackageName.pm index 2b91621f15a..7b8adaec5cb 100644 --- a/usr.sbin/pkg_add/OpenBSD/PackageName.pm +++ b/usr.sbin/pkg_add/OpenBSD/PackageName.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: PackageName.pm,v 1.49 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: PackageName.pm,v 1.50 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/PackageRepository.pm b/usr.sbin/pkg_add/OpenBSD/PackageRepository.pm index 8b32c849e3e..6aa19e54a36 100644 --- a/usr.sbin/pkg_add/OpenBSD/PackageRepository.pm +++ b/usr.sbin/pkg_add/OpenBSD/PackageRepository.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: PackageRepository.pm,v 1.92 2010/12/18 10:37:53 espie Exp $ +# $OpenBSD: PackageRepository.pm,v 1.93 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/PackageRepositoryList.pm b/usr.sbin/pkg_add/OpenBSD/PackageRepositoryList.pm index 59f8787adf5..5984f7afa6f 100644 --- a/usr.sbin/pkg_add/OpenBSD/PackageRepositoryList.pm +++ b/usr.sbin/pkg_add/OpenBSD/PackageRepositoryList.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: PackageRepositoryList.pm,v 1.27 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: PackageRepositoryList.pm,v 1.28 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2006 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/PackingElement.pm b/usr.sbin/pkg_add/OpenBSD/PackingElement.pm index 15ee11eedc3..eb3657b8846 100644 --- a/usr.sbin/pkg_add/OpenBSD/PackingElement.pm +++ b/usr.sbin/pkg_add/OpenBSD/PackingElement.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: PackingElement.pm,v 1.188 2010/12/18 10:33:21 espie Exp $ +# $OpenBSD: PackingElement.pm,v 1.189 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2010 Marc Espie <espie@openbsd.org> # @@ -556,12 +556,12 @@ sub format } if (my ($dir, $file) = $fname =~ m/^(.*)\/([^\/]+\/[^\/]+)$/) { $state->system(sub { - open STDOUT, '>', "$dest" or + open STDOUT, '>', "$dest" or die "Can't write to $dest"; chdir($dir) or die "Can't chdir to $dir"; - }, + }, OpenBSD::Paths->groff, - '-Tascii', '-mandoc', '-Wall', '-mtty-char', @extra, '--', + '-Tascii', '-mandoc', '-Wall', '-mtty-char', @extra, '--', $file); } else { die "Can't parse source name $fname"; @@ -1448,7 +1448,7 @@ sub restore_fontdir if (-f "$dirname/fonts.dir.dist") { unlink("$dirname/fonts.dir"); - $state->copy_file("$dirname/fonts.dir.dist", + $state->copy_file("$dirname/fonts.dir.dist", "$dirname/fonts.dir"); } } diff --git a/usr.sbin/pkg_add/OpenBSD/PackingList.pm b/usr.sbin/pkg_add/OpenBSD/PackingList.pm index d5d1d7a05b8..625bbbb91a7 100644 --- a/usr.sbin/pkg_add/OpenBSD/PackingList.pm +++ b/usr.sbin/pkg_add/OpenBSD/PackingList.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: PackingList.pm,v 1.110 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: PackingList.pm,v 1.111 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/Paths.pm b/usr.sbin/pkg_add/OpenBSD/Paths.pm index bac17f44ae9..4c68b71af5d 100644 --- a/usr.sbin/pkg_add/OpenBSD/Paths.pm +++ b/usr.sbin/pkg_add/OpenBSD/Paths.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Paths.pm,v 1.16 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: Paths.pm,v 1.17 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2007 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/PkgAdd.pm b/usr.sbin/pkg_add/OpenBSD/PkgAdd.pm index 3189952dbe5..cad65779184 100644 --- a/usr.sbin/pkg_add/OpenBSD/PkgAdd.pm +++ b/usr.sbin/pkg_add/OpenBSD/PkgAdd.pm @@ -1,7 +1,7 @@ #! /usr/bin/perl # ex:ts=8 sw=4: -# $OpenBSD: PkgAdd.pm,v 1.17 2010/12/13 12:13:54 espie Exp $ +# $OpenBSD: PkgAdd.pm,v 1.18 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/PkgCfl.pm b/usr.sbin/pkg_add/OpenBSD/PkgCfl.pm index eff117315ad..483983aefbb 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.35 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: PkgCfl.pm,v 1.36 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2005 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/PkgCheck.pm b/usr.sbin/pkg_add/OpenBSD/PkgCheck.pm index 9466ae41d8f..de528b65ea9 100644 --- a/usr.sbin/pkg_add/OpenBSD/PkgCheck.pm +++ b/usr.sbin/pkg_add/OpenBSD/PkgCheck.pm @@ -1,7 +1,7 @@ #! /usr/bin/perl # ex:ts=8 sw=4: -# $OpenBSD: PkgCheck.pm,v 1.25 2010/12/05 09:41:55 espie Exp $ +# $OpenBSD: PkgCheck.pm,v 1.26 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/PkgConfig.pm b/usr.sbin/pkg_add/OpenBSD/PkgConfig.pm index d791a3f350c..718f9751b59 100644 --- a/usr.sbin/pkg_add/OpenBSD/PkgConfig.pm +++ b/usr.sbin/pkg_add/OpenBSD/PkgConfig.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: PkgConfig.pm,v 1.17 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: PkgConfig.pm,v 1.18 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2006 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/PkgCreate.pm b/usr.sbin/pkg_add/OpenBSD/PkgCreate.pm index 28f49602b6f..766dfdf3624 100644 --- a/usr.sbin/pkg_add/OpenBSD/PkgCreate.pm +++ b/usr.sbin/pkg_add/OpenBSD/PkgCreate.pm @@ -1,6 +1,6 @@ #! /usr/bin/perl # ex:ts=8 sw=4: -# $OpenBSD: PkgCreate.pm,v 1.36 2010/12/22 14:50:45 espie Exp $ +# $OpenBSD: PkgCreate.pm,v 1.37 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2010 Marc Espie <espie@openbsd.org> # @@ -161,7 +161,7 @@ sub compute_checksum } for my $field (qw(symlink link size)) { # md5 if (defined $result->{$field}) { - $state->error("User tried to define @#1 for #2", + $state->error("User tried to define @#1 for #2", $field, $fname); } } @@ -554,7 +554,7 @@ sub really_solve_dependency if (!defined $v) { $v = $self->find_dep_in_self($state, $dep); } - + # and in portstree otherwise if (!defined $v) { $v = $self->solve_from_ports($state, $dep, $package); @@ -566,16 +566,23 @@ sub solve_from_ports { my ($self, $state, $dep, $package) = @_; - my $portsdir = $state->defines('PORTSDIR') - // $ENV{'PORTSDIR'} - // OpenBSD::Paths->portsdir; - my $make = OpenBSD::Paths->make; - open(my $fh, "cd $portsdir && SUBDIR=$dep->{pkgpath} ECHO_MSG=: $make print-plist-with-depends|") or return undef; - my $plist = OpenBSD::PackingList->read($fh, - \&OpenBSD::PackingList::PrelinkStuffOnly); + my $portsdir = $state->defines('PORTSDIR'); + return undef unless defined $portsdir; + my $plist = $self->ask_tree($state, $dep, $portsdir, + 'print-plist-with-depends'); + if ($? != 0 || !defined $plist->pkgname) { + $plist = $self->ask_tree($state, $dep, $portsdir, + 'print-plist'); + } + if ($? != 0 || !defined $plist->pkgname) { + $state->error("Can't obtain dependency #1 from ports tree", + $dep->{pattern}); + return undef; + } if ($dep->spec->filter($plist->pkgname) == 0) { - $state->error("Dependency #1 doesn't match FULLPKGNAME: #2", + $state->error("Dependency #1 doesn't match FULLPKGNAME: #2", $dep->{pattern}, $plist->pkgname); + return undef; } OpenBSD::SharedLibs::add_libs_from_plist($plist, $state); @@ -583,10 +590,32 @@ sub solve_from_ports return $plist->pkgname; } +sub ask_tree +{ + my ($self, $state, $dep, $portsdir, $action) = @_; + + my $make = OpenBSD::Paths->make; + my $pid = open(my $fh, "-|"); + if (!defined $pid) { + $state->fatal("cannot fork: $!"); + } + if ($pid == 0) { + chdir $portsdir or exit 2; + open STDERR, '>', '/dev/null'; + $ENV{SUBDIR} = $dep->{pkgpath}; + $ENV{ECHO_MSG} = ':'; + exec $make ('make', $action); + } + my $plist = OpenBSD::PackingList->read($fh, + \&OpenBSD::PackingList::PrelinkStuffOnly); + close($fh); + return $plist; +} + sub errsay_library { my ($solver, $state, $h) = @_; - + $state->errsay("Can't create #1 because of libraries", $h->pkgname); } @@ -632,7 +661,7 @@ sub newer { return @{shift->{new}}; } - + sub newer_names { diff --git a/usr.sbin/pkg_add/OpenBSD/PkgDelete.pm b/usr.sbin/pkg_add/OpenBSD/PkgDelete.pm index 2d68dc5688a..ac3b7884aac 100644 --- a/usr.sbin/pkg_add/OpenBSD/PkgDelete.pm +++ b/usr.sbin/pkg_add/OpenBSD/PkgDelete.pm @@ -1,6 +1,6 @@ #!/usr/bin/perl # ex:ts=8 sw=4: -# $OpenBSD: PkgDelete.pm,v 1.10 2010/12/13 12:14:38 espie Exp $ +# $OpenBSD: PkgDelete.pm,v 1.11 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/PkgInfo.pm b/usr.sbin/pkg_add/OpenBSD/PkgInfo.pm index b84dfb2495e..2db34ca21e7 100644 --- a/usr.sbin/pkg_add/OpenBSD/PkgInfo.pm +++ b/usr.sbin/pkg_add/OpenBSD/PkgInfo.pm @@ -1,6 +1,6 @@ #! /usr/bin/perl # ex:ts=8 sw=4: -# $OpenBSD: PkgInfo.pm,v 1.17 2010/12/18 10:17:31 espie Exp $ +# $OpenBSD: PkgInfo.pm,v 1.18 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/PkgSpec.pm b/usr.sbin/pkg_add/OpenBSD/PkgSpec.pm index f48cd6c70f3..8e6a3006491 100644 --- a/usr.sbin/pkg_add/OpenBSD/PkgSpec.pm +++ b/usr.sbin/pkg_add/OpenBSD/PkgSpec.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: PkgSpec.pm,v 1.33 2010/11/04 07:43:53 espie Exp $ +# $OpenBSD: PkgSpec.pm,v 1.34 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2007 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/ProgressMeter.pm b/usr.sbin/pkg_add/OpenBSD/ProgressMeter.pm index 7627f1e1566..5d1e6675c00 100644 --- a/usr.sbin/pkg_add/OpenBSD/ProgressMeter.pm +++ b/usr.sbin/pkg_add/OpenBSD/ProgressMeter.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: ProgressMeter.pm,v 1.37 2010/10/25 21:02:44 espie Exp $ +# $OpenBSD: ProgressMeter.pm,v 1.38 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/Replace.pm b/usr.sbin/pkg_add/OpenBSD/Replace.pm index c96e40491d4..4a6fd65274f 100644 --- a/usr.sbin/pkg_add/OpenBSD/Replace.pm +++ b/usr.sbin/pkg_add/OpenBSD/Replace.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Replace.pm,v 1.79 2010/10/28 22:33:43 espie Exp $ +# $OpenBSD: Replace.pm,v 1.80 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2004-2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/RequiredBy.pm b/usr.sbin/pkg_add/OpenBSD/RequiredBy.pm index 301470962e9..255657df833 100644 --- a/usr.sbin/pkg_add/OpenBSD/RequiredBy.pm +++ b/usr.sbin/pkg_add/OpenBSD/RequiredBy.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: RequiredBy.pm,v 1.24 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: RequiredBy.pm,v 1.25 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2005 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/Search.pm b/usr.sbin/pkg_add/OpenBSD/Search.pm index d034d294183..6bbfcdde0b3 100644 --- a/usr.sbin/pkg_add/OpenBSD/Search.pm +++ b/usr.sbin/pkg_add/OpenBSD/Search.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Search.pm,v 1.25 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: Search.pm,v 1.26 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2007 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/SharedItems.pm b/usr.sbin/pkg_add/OpenBSD/SharedItems.pm index b9c219a06ab..3bbb1df992f 100644 --- a/usr.sbin/pkg_add/OpenBSD/SharedItems.pm +++ b/usr.sbin/pkg_add/OpenBSD/SharedItems.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: SharedItems.pm,v 1.29 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: SharedItems.pm,v 1.30 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2004-2006 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/SharedLibs.pm b/usr.sbin/pkg_add/OpenBSD/SharedLibs.pm index a61aed2cad5..c35ab517e91 100644 --- a/usr.sbin/pkg_add/OpenBSD/SharedLibs.pm +++ b/usr.sbin/pkg_add/OpenBSD/SharedLibs.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: SharedLibs.pm,v 1.54 2010/12/20 09:03:51 espie Exp $ +# $OpenBSD: SharedLibs.pm,v 1.55 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2010 Marc Espie <espie@openbsd.org> # @@ -32,7 +32,7 @@ package OpenBSD::PackingElement::Lib; sub mark_available_lib { my ($self, $pkgname, $state) = @_; - OpenBSD::SharedLibs::register_libname($self->fullname, + OpenBSD::SharedLibs::register_libname($self->fullname, $pkgname, $state); } diff --git a/usr.sbin/pkg_add/OpenBSD/Signature.pm b/usr.sbin/pkg_add/OpenBSD/Signature.pm index 8c520ba8e04..7987252002b 100644 --- a/usr.sbin/pkg_add/OpenBSD/Signature.pm +++ b/usr.sbin/pkg_add/OpenBSD/Signature.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Signature.pm,v 1.10 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: Signature.pm,v 1.11 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/State.pm b/usr.sbin/pkg_add/OpenBSD/State.pm index 72e41215a08..8384ef504d5 100644 --- a/usr.sbin/pkg_add/OpenBSD/State.pm +++ b/usr.sbin/pkg_add/OpenBSD/State.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: State.pm,v 1.19 2010/12/18 10:39:01 espie Exp $ +# $OpenBSD: State.pm,v 1.20 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2007-2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/Subst.pm b/usr.sbin/pkg_add/OpenBSD/Subst.pm index 3ae85385d1c..f1082facc58 100644 --- a/usr.sbin/pkg_add/OpenBSD/Subst.pm +++ b/usr.sbin/pkg_add/OpenBSD/Subst.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Subst.pm,v 1.13 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: Subst.pm,v 1.14 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2008 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/Temp.pm b/usr.sbin/pkg_add/OpenBSD/Temp.pm index 84f7c1f55c4..9c8137037d2 100644 --- a/usr.sbin/pkg_add/OpenBSD/Temp.pm +++ b/usr.sbin/pkg_add/OpenBSD/Temp.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Temp.pm,v 1.21 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: Temp.pm,v 1.22 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2005 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/Tracker.pm b/usr.sbin/pkg_add/OpenBSD/Tracker.pm index d0862bbd038..e7ab4d98e0d 100644 --- a/usr.sbin/pkg_add/OpenBSD/Tracker.pm +++ b/usr.sbin/pkg_add/OpenBSD/Tracker.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Tracker.pm,v 1.24 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: Tracker.pm,v 1.25 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2009 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/Update.pm b/usr.sbin/pkg_add/OpenBSD/Update.pm index aaaf7d99405..3fdaba84af3 100644 --- a/usr.sbin/pkg_add/OpenBSD/Update.pm +++ b/usr.sbin/pkg_add/OpenBSD/Update.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Update.pm,v 1.146 2010/10/02 13:33:05 espie Exp $ +# $OpenBSD: Update.pm,v 1.147 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2004-2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/UpdateSet.pm b/usr.sbin/pkg_add/OpenBSD/UpdateSet.pm index 9c73ff2e3f5..cdcc068a600 100644 --- a/usr.sbin/pkg_add/OpenBSD/UpdateSet.pm +++ b/usr.sbin/pkg_add/OpenBSD/UpdateSet.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: UpdateSet.pm,v 1.63 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: UpdateSet.pm,v 1.64 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2007-2010 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/Ustar.pm b/usr.sbin/pkg_add/OpenBSD/Ustar.pm index 41cf8ea35d0..da70ae5be0a 100644 --- a/usr.sbin/pkg_add/OpenBSD/Ustar.pm +++ b/usr.sbin/pkg_add/OpenBSD/Ustar.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Ustar.pm,v 1.65 2010/10/02 13:36:56 espie Exp $ +# $OpenBSD: Ustar.pm,v 1.66 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2002-2007 Marc Espie <espie@openbsd.org> # @@ -403,7 +403,7 @@ sub set_modes chown $self->{uid}, $self->{gid}, $self->{destdir}.$self->name; chmod $self->{mode}, $self->{destdir}.$self->name; if (defined $self->{mtime} || defined $self->{atime}) { - utime $self->{atime} // time, $self->{mtime} // time, + utime $self->{atime} // time, $self->{mtime} // time, $self->{destdir}.$self->name; } } diff --git a/usr.sbin/pkg_add/OpenBSD/Vstat.pm b/usr.sbin/pkg_add/OpenBSD/Vstat.pm index fbbf68bbb41..3b642323655 100644 --- a/usr.sbin/pkg_add/OpenBSD/Vstat.pm +++ b/usr.sbin/pkg_add/OpenBSD/Vstat.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Vstat.pm,v 1.63 2010/10/02 13:33:05 espie Exp $ +# $OpenBSD: Vstat.pm,v 1.64 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2007 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/md5.pm b/usr.sbin/pkg_add/OpenBSD/md5.pm index 3a23c194df7..fdfca08f012 100644 --- a/usr.sbin/pkg_add/OpenBSD/md5.pm +++ b/usr.sbin/pkg_add/OpenBSD/md5.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: md5.pm,v 1.12 2010/10/27 14:35:56 espie Exp $ +# $OpenBSD: md5.pm,v 1.13 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2007 Marc Espie <espie@openbsd.org> # diff --git a/usr.sbin/pkg_add/OpenBSD/x509.pm b/usr.sbin/pkg_add/OpenBSD/x509.pm index 1d0d1a96f3f..3ea670755ce 100644 --- a/usr.sbin/pkg_add/OpenBSD/x509.pm +++ b/usr.sbin/pkg_add/OpenBSD/x509.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: x509.pm,v 1.10 2010/10/25 21:03:25 espie Exp $ +# $OpenBSD: x509.pm,v 1.11 2010/12/24 09:04:14 espie Exp $ # # Copyright (c) 2003-2007 Marc Espie <espie@openbsd.org> # @@ -92,7 +92,7 @@ sub check_signature close $fh; close $fh2; my ($fh3, $fname3) = mkstemp("/tmp/commandresult.XXXXXXXXX"); - if ($state->system(sub { open STDERR ,">&", $fh3}, + if ($state->system(sub { open STDERR ,">&", $fh3}, OpenBSD::Paths->openssl, "smime", "-verify", "-binary", "-inform", "DEM", "-in", $fname2, "-content", $fname, "-CAfile", OpenBSD::Paths->pkgca, "-out", "/dev/null") != 0) { |