aboutsummaryrefslogtreecommitdiff
path: root/load/load.cxx
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2024-04-22 22:43:15 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2024-04-22 22:43:15 +0300
commit9d539574d55ad5c65d15c040ec40764ffb1f601e (patch)
tree6beeed6d29a943ff9d07c15bc10645e788b97aa0 /load/load.cxx
parent6aa21da22bf847c5a408f156626f9b5853a4acbe (diff)
Fix brep-load to apply package manifest overrides before converting package build configurations to brep's representation
Diffstat (limited to 'load/load.cxx')
-rw-r--r--load/load.cxx28
1 files changed, 15 insertions, 13 deletions
diff --git a/load/load.cxx b/load/load.cxx
index 5b4692c..474b443 100644
--- a/load/load.cxx
+++ b/load/load.cxx
@@ -437,6 +437,21 @@ load_packages (const options& lo,
if (p == nullptr)
{
+ // Apply the package manifest overrides.
+ //
+ if (!overrides.empty ())
+ try
+ {
+ pm.override (overrides, overrides_name);
+ }
+ catch (const manifest_parsing& e)
+ {
+ cerr << "error: unable to override " << pm.name << ' ' << pm.version
+ << " manifest: " << e << endl;
+
+ throw failed ();
+ }
+
// Convert the package manifest build configurations (contain public
// keys data) into the brep's build package configurations (contain
// public key object lazy pointers). Keep the bot key lists empty if
@@ -465,19 +480,6 @@ load_packages (const options& lo,
if (rp->internal)
{
- if (!overrides.empty ())
- try
- {
- pm.override (overrides, overrides_name);
- }
- catch (const manifest_parsing& e)
- {
- cerr << "error: unable to override " << p << " manifest: " << e
- << endl;
-
- throw failed ();
- }
-
// Create internal package object.
//
// Return nullopt if the text is in a file (can happen if the