diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2016-04-11 07:57:19 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2016-04-11 07:57:19 +0200 |
commit | 0342dc2fcdd78ef28a4e59d84193a3807068d726 (patch) | |
tree | e750c3062d6ff54f0d409fe1a25984b7e78592c8 /build2/bin | |
parent | 5f7c3f923de106f9d204a8f3500274731ae84fd9 (diff) |
New configuration logic, iteration 1
Diffstat (limited to 'build2/bin')
-rw-r--r-- | build2/bin/module | 2 | ||||
-rw-r--r-- | build2/bin/module.cxx | 25 |
2 files changed, 13 insertions, 14 deletions
diff --git a/build2/bin/module b/build2/bin/module index 765eb2c..44dfbc7 100644 --- a/build2/bin/module +++ b/build2/bin/module @@ -16,7 +16,7 @@ namespace build2 { extern "C" bool bin_init ( - scope&, scope&, const location&, unique_ptr<module>&, bool, bool); + scope&, scope&, const location&, unique_ptr<module_base>&, bool, bool); } } diff --git a/build2/bin/module.cxx b/build2/bin/module.cxx index 5b1d8ca..866bab2 100644 --- a/build2/bin/module.cxx +++ b/build2/bin/module.cxx @@ -34,7 +34,7 @@ namespace build2 bin_init (scope& r, scope& b, const location&, - unique_ptr<module>&, + unique_ptr<module_base>&, bool first, bool) { @@ -47,17 +47,16 @@ namespace build2 { auto& v (var_pool); - // @@ OVR + // Note: some overridable, some not. // + v.insert<path> ("config.bin.ar", true); + v.insert<path> ("config.bin.ranlib", true); - v.insert<path> ("config.bin.ar"); - v.insert<path> ("config.bin.ranlib"); - - v.insert<string> ("config.bin.lib"); - v.insert<strings> ("config.bin.exe.lib"); - v.insert<strings> ("config.bin.liba.lib"); - v.insert<strings> ("config.bin.libso.lib"); - v.insert<dir_paths> ("config.bin.rpath"); + v.insert<string> ("config.bin.lib", true); + v.insert<strings> ("config.bin.exe.lib", true); + v.insert<strings> ("config.bin.liba.lib", true); + v.insert<strings> ("config.bin.libso.lib", true); + v.insert<dir_paths> ("config.bin.rpath", true); v.insert<string> ("bin.lib"); v.insert<strings> ("bin.exe.lib"); @@ -65,7 +64,7 @@ namespace build2 v.insert<strings> ("bin.libso.lib"); v.insert<dir_paths> ("bin.rpath"); - v.insert<string> ("bin.libprefix"); + v.insert<string> ("bin.libprefix", true); } // Register target types. @@ -158,8 +157,8 @@ namespace build2 // This one is optional and we merge it into bin.rpath, if any. // See the cxx module for details on merging. // - if (const value& v = config::optional (r, "config.bin.rpath")) - b.assign ("bin.rpath") += cast<dir_paths> (v); + b.assign ("bin.rpath") += cast_null<dir_paths> ( + config::optional (r, "config.bin.rpath")); // config.bin.ar // config.bin.ranlib |