Implement recursive lookup of Recommends and Suggests
Everywhere where we call add_missing() on Depends, we must do it also on Recommends and Suggests based on $add_rec and $add_sug. Closes: #601203
This commit is contained in:
parent
c9489cd926
commit
8513b237af
|
@ -14,6 +14,8 @@ debian-cd (3.1.36) UNRELEASED; urgency=medium
|
|||
* Add cryptsetup-initramfs to tools/generate_di+k_list as cryptsetup 2.4.0
|
||||
dropped the recommends on the package and it's needed by d-i.
|
||||
* Fix install_firmwares_initrd to not fail when the firmware is not found.
|
||||
* Implement recursive lookup of Recommends and Suggests in sort_deps.
|
||||
Closes: #601203
|
||||
|
||||
[ Wolfgang Schweer ]
|
||||
* data/bookworm: Use Debian Edu 12 installer logo and syslinux splash image
|
||||
|
|
|
@ -984,12 +984,25 @@ sub get_missing {
|
|||
my @parents = ();
|
||||
my %t;
|
||||
my $dep_text;
|
||||
my $found_missing = 0;
|
||||
|
||||
$t{"Package"} = $p;
|
||||
$t{"CmpOp"} = "";
|
||||
$t{"Version"} = "";
|
||||
|
||||
if (not add_missing (\@deps_list, $packages{$p}{"Depends"}, \%t, 0, \@parents, $check_backports)) {
|
||||
if (add_missing (\@deps_list, $packages{$p}{"Depends"}, \%t, 0, \@parents, $check_backports)) {
|
||||
$found_missing = 1;
|
||||
}
|
||||
|
||||
if ($add_rec and add_missing (\@deps_list, $packages{$p}{"Recommends"}, \%t, 1, \@parents, $check_backports)) {
|
||||
$found_missing = 1;
|
||||
}
|
||||
|
||||
if ($add_sug and add_missing (\@deps_list, $packages{$p}{"Suggests"}, \%t, 1, \@parents, $check_backports)) {
|
||||
$found_missing = 1;
|
||||
}
|
||||
|
||||
if (not $found_missing) {
|
||||
return ();
|
||||
}
|
||||
|
||||
|
@ -1125,6 +1138,12 @@ sub add_missing {
|
|||
push (@{$list}, $pkg);
|
||||
if (add_missing ($list, $packages{$pkgname}{"Depends"}, $pkg, $soft_depend, $parents, $check_backports)) {
|
||||
$or_ok = 1;
|
||||
if ($add_rec) {
|
||||
add_missing ($list, $packages{$pkgname}{"Recommends"}, $pkg, 1, $parents, $check_backports);
|
||||
}
|
||||
if ($add_sug) {
|
||||
add_missing ($list, $packages{$pkgname}{"Suggests"}, $pkg, 1, $parents, $check_backports);
|
||||
}
|
||||
remove_entry($pkg, $list);
|
||||
push @{$list}, $pkg;
|
||||
last;
|
||||
|
@ -1181,6 +1200,13 @@ sub add_missing {
|
|||
pop @{$list};
|
||||
$ok = 0;
|
||||
}
|
||||
} else {
|
||||
if ($add_rec) {
|
||||
add_missing ($list, $packages{$t{"Package"}}{"Recommends"}, \%t, 1, $parents, $check_backports);
|
||||
}
|
||||
if ($add_sug) {
|
||||
add_missing ($list, $packages{$t{"Package"}}{"Suggests"}, \%t, 1, $parents, $check_backports);
|
||||
}
|
||||
}
|
||||
remove_entry(\%t, $list);
|
||||
push @{$list}, \%t;
|
||||
|
|
Loading…
Reference in New Issue