aboutsummaryrefslogtreecommitdiff
path: root/mod/mod-build-task.cxx
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2020-05-02 19:28:02 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2020-05-02 19:28:02 +0300
commit8e54ae94ce44d57b49b35269f006fe2bf07ec13d (patch)
tree2afef6369545ed6222d08b6eddf77ca37212cc64 /mod/mod-build-task.cxx
parent96511bdc00c2e4c17517b0cc3fce50a08683b2a4 (diff)
For external test packages use the 'all' class as default underlying build class set
Diffstat (limited to 'mod/mod-build-task.cxx')
-rw-r--r--mod/mod-build-task.cxx12
1 files changed, 11 insertions, 1 deletions
diff --git a/mod/mod-build-task.cxx b/mod/mod-build-task.cxx
index 3eaa0d3..741d3b4 100644
--- a/mod/mod-build-task.cxx
+++ b/mod/mod-build-task.cxx
@@ -243,7 +243,17 @@ handle (request& rq, response& rs)
{
shared_ptr<build_package> p (t.package.load ());
- if (exclude (p->builds, p->constraints, *cm.config))
+ // Use the `all` class as a least restrictive default underlying
+ // build class set. Note that we should only apply the explicit
+ // build restrictions to the external test packages (think about
+ // the `builds: all` and `builds: -windows` manifest values for
+ // the primary and external test packages, respectively).
+ //
+ if (exclude (p->builds,
+ p->constraints,
+ *cm.config,
+ nullptr /* reason */,
+ true /* default_all_ucs */))
tes.push_back (package {move (p->id.name), move (p->version)});
}
}