diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2018-07-16 15:21:26 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2018-07-16 15:54:06 +0200 |
commit | 4f63afc1177021d6345502892dbd028f5d6db5eb (patch) | |
tree | 9f3919d7d6798a82deab6fd9ebfb1d1802b2030f /build2/b.cxx | |
parent | 55e858010b9ba53c27475d9ce6f864a84d28fa81 (diff) |
Implement in module
Given test.in containing something along these lines:
foo = $foo$
Now we can do:
using in
file{test}: in{test.in}
file{test}: foo = FOO
The alternative variable substitution symbol can be specified with the
in.symbol variable and lax (instead of the default strict) mode with
in.substitution. For example:
file{test}: in.symbol = '@'
file{test}: in.substitution = lax
Diffstat (limited to 'build2/b.cxx')
-rw-r--r-- | build2/b.cxx | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/build2/b.cxx b/build2/b.cxx index cd738f2..977a76e 100644 --- a/build2/b.cxx +++ b/build2/b.cxx @@ -45,15 +45,19 @@ using namespace butl; using namespace std; #include <build2/config/init.hxx> +#include <build2/version/init.hxx> +#include <build2/test/init.hxx> #include <build2/dist/init.hxx> +#include <build2/install/init.hxx> + +#include <build2/in/init.hxx> + #include <build2/bin/init.hxx> #include <build2/c/init.hxx> #include <build2/cc/init.hxx> #include <build2/cxx/init.hxx> + #include <build2/cli/init.hxx> -#include <build2/test/init.hxx> -#include <build2/install/init.hxx> -#include <build2/version/init.hxx> namespace build2 { @@ -385,6 +389,9 @@ main (int argc, char* argv[]) bm["install"] = mf {&install::boot, &install::init}; bm["version"] = mf {&version::boot, &version::init}; + bm["in.base"] = mf {nullptr, &in::base_init}; + bm["in"] = mf {nullptr, &in::init}; + bm["bin.vars"] = mf {nullptr, &bin::vars_init}; bm["bin.config"] = mf {nullptr, &bin::config_init}; bm["bin"] = mf {nullptr, &bin::init}; |