@@ -266,12 +266,14 @@ namespace vcpkg
266
266
267
267
struct AbiInfo
268
268
{
269
+ // These should always be known if an AbiInfo exists
269
270
std::unique_ptr<PreBuildInfo> pre_build_info;
270
271
Optional<const Toolset&> toolset;
272
+ // These might not be known if compiler tracking is turned off or the port is --editable
273
+ Optional<const CompilerInfo&> compiler_info;
271
274
Optional<const std::string&> triplet_abi;
272
275
std::string package_abi;
273
276
Optional<Path> abi_tag_file;
274
- Optional<const CompilerInfo&> compiler_info;
275
277
std::vector<Path> relative_port_files;
276
278
std::vector<std::string> relative_port_hashes;
277
279
std::vector<Json::Value> heuristic_resources;
@@ -286,9 +288,15 @@ namespace vcpkg
286
288
{
287
289
explicit EnvCache (bool compiler_tracking) : m_compiler_tracking(compiler_tracking) { }
288
290
289
- const Environment& get_action_env (const VcpkgPaths& paths, const AbiInfo& abi_info);
290
- const std::string& get_triplet_info (const VcpkgPaths& paths, const AbiInfo& abi_info);
291
- const CompilerInfo& get_compiler_info (const VcpkgPaths& paths, const AbiInfo& abi_info);
291
+ const Environment& get_action_env (const VcpkgPaths& paths,
292
+ const PreBuildInfo& pre_build_info,
293
+ const Toolset& toolset);
294
+ const std::string& get_triplet_info (const VcpkgPaths& paths,
295
+ const PreBuildInfo& pre_build_info,
296
+ const Toolset& toolset);
297
+ const CompilerInfo& get_compiler_info (const VcpkgPaths& paths,
298
+ const PreBuildInfo& pre_build_info,
299
+ const Toolset& toolset);
292
300
293
301
private:
294
302
struct TripletMapEntry
0 commit comments