aboutsummaryrefslogtreecommitdiff
path: root/paludis/resolver/get_resolvents_for_helper.cc
diff options
context:
space:
mode:
Diffstat (limited to 'paludis/resolver/get_resolvents_for_helper.cc')
-rw-r--r--paludis/resolver/get_resolvents_for_helper.cc13
1 files changed, 7 insertions, 6 deletions
diff --git a/paludis/resolver/get_resolvents_for_helper.cc b/paludis/resolver/get_resolvents_for_helper.cc
index 04d5f494a..24a6f36c5 100644
--- a/paludis/resolver/get_resolvents_for_helper.cc
+++ b/paludis/resolver/get_resolvents_for_helper.cc
@@ -140,6 +140,7 @@ namespace
{
struct DestinationTypesFinder
{
+ const Environment * const env;
const DestinationType target_destination_type;
const bool want_target_dependencies;
const bool want_target_runtime_dependencies;
@@ -182,7 +183,7 @@ namespace
{
/* this will track run deps of build deps, which isn't
* really right... */
- if (is_run_or_post_dep(dep.sanitised_dependency()))
+ if (is_run_or_post_dep(env, package_id, dep.sanitised_dependency()))
binary_if_possible = true;
}
@@ -198,7 +199,7 @@ namespace
chroot_if_possible = true;
else if (want_target_runtime_dependencies)
{
- if (is_run_or_post_dep(dep.sanitised_dependency()))
+ if (is_run_or_post_dep(env, package_id, dep.sanitised_dependency()))
chroot_if_possible = true;
}
@@ -216,9 +217,9 @@ namespace
if (want_runtime_dependencies_on_slash ^ want_dependencies_on_slash)
{
- if (want_dependencies_on_slash && ! is_run_or_post_dep(dep.sanitised_dependency()))
+ if (want_dependencies_on_slash && ! is_run_or_post_dep(env, package_id, dep.sanitised_dependency()))
slash += dt_install_to_slash;
- if (want_runtime_dependencies_on_slash && is_run_or_post_dep(dep.sanitised_dependency()))
+ if (want_runtime_dependencies_on_slash && is_run_or_post_dep(env, package_id, dep.sanitised_dependency()))
slash += dt_install_to_slash;
}
else if (want_runtime_dependencies_on_slash || want_dependencies_on_slash)
@@ -244,7 +245,7 @@ namespace
};
DestinationTypes get_destination_types_for_fn(
- const Environment * const,
+ const Environment * const env,
const PackageDepSpec &,
const DestinationType target_destination_type,
const bool want_target_dependencies,
@@ -254,7 +255,7 @@ namespace
const std::shared_ptr<const PackageID> & package_id,
const std::shared_ptr<const Reason> & reason)
{
- DestinationTypesFinder f{target_destination_type, want_target_dependencies, want_target_runtime_dependencies,
+ DestinationTypesFinder f{env, target_destination_type, want_target_dependencies, want_target_runtime_dependencies,
want_dependencies_on_slash, want_runtime_dependencies_on_slash, package_id};
return reason->accept_returning<DestinationTypes>(f);
}