diff options
Diffstat (limited to 'src/plugins/webassembly')
-rw-r--r-- | src/plugins/webassembly/webassemblytoolchain.cpp | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/src/plugins/webassembly/webassemblytoolchain.cpp b/src/plugins/webassembly/webassemblytoolchain.cpp index ec4726aa6f7..73c407c3617 100644 --- a/src/plugins/webassembly/webassemblytoolchain.cpp +++ b/src/plugins/webassembly/webassemblytoolchain.cpp @@ -91,7 +91,7 @@ static ProjectExplorer::Abi toolChainAbi() }; } -void WebAssemblyToolChain::addToEnvironment(Utils::Environment &env) const +static void addEmscriptenToEnvironment(Utils::Environment &env) { const CompilerConfiguration configuration = compilerConfiguration(); @@ -113,6 +113,25 @@ void WebAssemblyToolChain::addToEnvironment(Utils::Environment &env) const env.set("EMSCRIPTEN", configuration.emScripten.toUserOutput()); } +static void addRegisteredMinGWToEnvironment(Utils::Environment &env) +{ + using namespace ProjectExplorer; + const ToolChain *toolChain = ToolChainManager::toolChain([](const ToolChain *t){ + return t->typeId() == ProjectExplorer::Constants::MINGW_TOOLCHAIN_TYPEID; + }); + if (toolChain) { + const QString mingwPath = toolChain->compilerCommand().parentDir().toUserOutput(); + env.appendOrSetPath(mingwPath); + } +} + +void WebAssemblyToolChain::addToEnvironment(Utils::Environment &env) const +{ + addEmscriptenToEnvironment(env); + if (Utils::HostOsInfo::isWindowsHost()) + addRegisteredMinGWToEnvironment(env); +} + WebAssemblyToolChain::WebAssemblyToolChain() : ClangToolChain(Constants::WEBASSEMBLY_TOOLCHAIN_TYPEID) { |