aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/cc/guess.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'libbuild2/cc/guess.hxx')
-rw-r--r--libbuild2/cc/guess.hxx11
1 files changed, 8 insertions, 3 deletions
diff --git a/libbuild2/cc/guess.hxx b/libbuild2/cc/guess.hxx
index 6bab649..7cbbd87 100644
--- a/libbuild2/cc/guess.hxx
+++ b/libbuild2/cc/guess.hxx
@@ -173,6 +173,9 @@ namespace build2
// search paths (similar to the PATH environment variable), in which case
// it will end with a directory separator but will not contain '*'.
//
+ // Watch out for the environment variables affecting any of the extracted
+ // information (like sys_*_dirs) since we cache it.
+ //
struct compiler_info
{
process_path path;
@@ -234,7 +237,7 @@ namespace build2
// entries, if extracted at the guess stage.
//
optional<pair<dir_paths, size_t>> sys_lib_dirs;
- optional<pair<dir_paths, size_t>> sys_inc_dirs;
+ optional<pair<dir_paths, size_t>> sys_hdr_dirs;
optional<pair<dir_paths, size_t>> sys_mod_dirs;
// Optional list of environment variables that affect the compiler and
@@ -250,8 +253,10 @@ namespace build2
// that most of it will be the same, at least for C and C++.
//
const compiler_info&
- guess (const char* xm, // Module (for var names in diagnostics).
+ guess (context&,
+ const char* xm, // Module (for var names in diagnostics).
lang xl, // Language.
+ const string& ec, // Environment checksum.
const path& xc, // Compiler path.
const string* xi, // Compiler id (optional).
const string* xv, // Compiler version (optional).
@@ -279,7 +284,7 @@ namespace build2
//
void
guess_std_importable_headers (const compiler_info&,
- const dir_paths& sys_inc_dirs,
+ const dir_paths& sys_hdr_dirs,
importable_headers&);
}
}