diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2021-04-26 10:21:44 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2021-04-26 10:21:44 +0200 |
commit | d55690a09ccc86b6ec285c9af2ab4f1921e84baf (patch) | |
tree | 537e3d6a70c82d3ca6f75e51c387b32ab64fb47d /libbuild2/config | |
parent | 7a96e3b0a4bb573bb26ca8ff93b97900bdb486b3 (diff) |
Detect and diagnose presence of certain GCC environment variables
Their presence is incompatible with what we are doing.
Diffstat (limited to 'libbuild2/config')
-rw-r--r-- | libbuild2/config/utility.hxx | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/libbuild2/config/utility.hxx b/libbuild2/config/utility.hxx index 4673d0c..cec4bc3 100644 --- a/libbuild2/config/utility.hxx +++ b/libbuild2/config/utility.hxx @@ -104,13 +104,12 @@ namespace build2 // // 4. Finally, there could be environment variables that are incompatible // with what we are doing (e.g., they change the mode of operation or - // some such; see GCC's DEPENDENCIES_OUTPUT for example). While they - // can be cleared for each invocation, this is burdensome and it is - // often easier to just unset them for the entire build system process - // if we can be reasonable sure that there can be no plausible use for - // this variable (e.g., by another module or by the buildfile - // directly). The module's load() function is a natural place to do - // that. + // some such; see GCC's DEPENDENCIES_OUTPUT for example). The two ways + // to deal with this is either clear them for each invocation or, if + // that's too burdensome and there is no good reason to have the build + // system invoked with such variables, detect their presence and fail. + // Note that unsetting them for the entire build system process is not + // an option since that would be racy. // // See also build2::hash_environment(). // |