From fa6f9986dd73627643469c238b32dd92607f5214 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Mon, 9 Mar 2015 09:45:25 +0200 Subject: Add support for skipping already loaded/included buildfiles at top level The idea is that a buildfile shall be included/loaded only once for any given out_root. --- build/scope | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'build/scope') diff --git a/build/scope b/build/scope index b4f492d..e5c5fec 100644 --- a/build/scope +++ b/build/scope @@ -5,6 +5,8 @@ #ifndef BUILD_SCOPE #define BUILD_SCOPE +#include + #include #include #include @@ -49,6 +51,12 @@ namespace build variable_map variables; prerequisite_set prerequisites; + // Set of buildfiles already loaded for this scope. The included + // buildfiles are checked against project root scope while + // imported -- against the overall root scope (root_scope). + // + std::unordered_set buildfiles; + private: iterator i_; scope* parent_; -- cgit v1.1