diff options
author | Marc Espie <espie@cvs.openbsd.org> | 2024-01-02 10:25:49 +0000 |
---|---|---|
committer | Marc Espie <espie@cvs.openbsd.org> | 2024-01-02 10:25:49 +0000 |
commit | 4684e68531e6ba535f74e10ecd225d5d50a35041 (patch) | |
tree | dd7fa8e41d4aa69b7375d968cf15ff1ba85fe2fb /usr.sbin/pkg_add | |
parent | 13d6c83f96fc1dda65778e3643ebfd8775316bea (diff) |
have quirks behave way more like other packages so it can have dependencies
Diffstat (limited to 'usr.sbin/pkg_add')
-rw-r--r-- | usr.sbin/pkg_add/OpenBSD/PkgAdd.pm | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/usr.sbin/pkg_add/OpenBSD/PkgAdd.pm b/usr.sbin/pkg_add/OpenBSD/PkgAdd.pm index 094db806830..056b37cbb17 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.149 2023/12/03 16:38:28 espie Exp $ +# $OpenBSD: PkgAdd.pm,v 1.150 2024/01/02 10:25:48 espie Exp $ # # Copyright (c) 2003-2014 Marc Espie <espie@openbsd.org> # @@ -1164,11 +1164,17 @@ sub quirk_set($state) sub do_quirks($self, $state) { - my $set = quirk_set($state); - $self->process_set($set, $state); + my $list = [quirk_set($state)]; + $state->tracker->todo(@$list); + while (my $set = shift @$list) { + $state->status->what->set($set); + $set = $set->real_set; + next if $set->{finished}; + $state->progress->set_header('Checking packages'); + unshift(@$list, $self->process_set($set, $state)); + } } - sub process_parameters($self, $state) { my $add_hints = $state->{fuzzy} ? "add_hints" : "add_hints2"; |