diff options
| author | Don <don.j.olmstead@gmail.com> | 2019-03-28 14:34:26 -0700 |
|---|---|---|
| committer | Phil Christensen <philc@microsoft.com> | 2019-03-28 14:34:26 -0700 |
| commit | d71ad4800bd5023f1452200af6c29832673892dc (patch) | |
| tree | f4ee58b1a5733b7d2868305cf60f7d1bae3f468e /toolsrc/src | |
| parent | 78a8de6cf468dc3d3301b26fedae7969bb366a75 (diff) | |
| download | vcpkg-d71ad4800bd5023f1452200af6c29832673892dc.tar.gz vcpkg-d71ad4800bd5023f1452200af6c29832673892dc.zip | |
Allow additional environment variables to be set in a clean environment (#5650)
* Allow additional environment variables to be set in a clean environment
* Add documentation for VCPKG_KEEP_ENV_VARS
Diffstat (limited to 'toolsrc/src')
| -rw-r--r-- | toolsrc/src/vcpkg/base/system.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/toolsrc/src/vcpkg/base/system.cpp b/toolsrc/src/vcpkg/base/system.cpp index 90b9c34b3..6ddf17496 100644 --- a/toolsrc/src/vcpkg/base/system.cpp +++ b/toolsrc/src/vcpkg/base/system.cpp @@ -178,6 +178,19 @@ namespace vcpkg::System L"ANDROID_NDK_HOME", }; + const Optional<std::string> keep_vars = System::get_environment_variable("VCPKG_KEEP_ENV_VARS"); + const auto k = keep_vars.get(); + + if (k && !k->empty()) + { + auto vars = Strings::split(*k, ";"); + + for (auto&& var : vars) + { + env_wstrings.push_back(Strings::to_utf16(var.c_str())); + } + } + std::wstring env_cstr; for (auto&& env_wstring : env_wstrings) |
