From 88cde9e5003c1235bcceb8e723d518558dbd68e7 Mon Sep 17 00:00:00 2001 From: Heikki Halmet Date: Tue, 1 Feb 2022 10:24:45 +0200 Subject: [PATCH] Set correct Emscripten environment variables MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Needed environment variables are set during emsdk installation when installation is done using emsdk.git. But those are not set as permanently. To have correct values we need to get them from install environment and set them permanently for build environment. Pick-to: 6.3 Pick-to: 6.2 Change-Id: Ifb80aa4a93608b79faffc8c59002c89804f60570 Reviewed-by: Tony Sarajärvi --- coin/provisioning/common/windows/emsdk.ps1 | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/coin/provisioning/common/windows/emsdk.ps1 b/coin/provisioning/common/windows/emsdk.ps1 index 70970555..d723d943 100644 --- a/coin/provisioning/common/windows/emsdk.ps1 +++ b/coin/provisioning/common/windows/emsdk.ps1 @@ -42,9 +42,6 @@ # This script will install emscripten needed by WebAssembly $version = "3.0.0" -$versionNode = "14.15.5" -$versionWinPython = "3.9.2-1" -$versionJre = "8.152" # Make sure python is in the path Prepend-Path "C:\Python27" @@ -56,11 +53,19 @@ cd $installLocationEmsdk .\emsdk install $version .\emsdk activate $version -Set-EnvironmentVariable "EMSDK" "$installLocationEmsdk" -Set-EnvironmentVariable "EM_CONFIG" "$installLocationEmsdk\.emscripten" -Set-EnvironmentVariable "EMSDK_NODE" "$installLocationEmsdk\node\${versionNode}_64bit\bin\node.exe" -Set-EnvironmentVariable "EMSDK_PYTHON" "$installLocationEmsdk\python\${versionWinPython}_64bit\python.exe" -Set-EnvironmentVariable "EMSDK_JAVA_HOME" "$installLocationEmsdk\java\${versionJre}_64bit" +$versionWinPython = $($Env:EMSDK_PYTHON -split ('python\\') -split ('_64bit'))[1] +$versionNode = $($Env:EMSDK_NODE -split ('node\\') -split ('_64bit'))[1] +$versionJre = $($Env:EMSDK_JAVA_HOME -split ('java\\') -split ('_64bit'))[1] + +# Set these environment variables permanently. +# Note! Using 'emsdk_env.bat --permanent' doesn't set these permanently +Set-EnvironmentVariable "EMSDK" "$env:EMSDK" +Set-EnvironmentVariable "EM_CONFIG" "$env:EM_CONFIG" +Set-EnvironmentVariable "EMSDK_NODE" "$env:EMSDK_NODE" +Set-EnvironmentVariable "EMSDK_PYTHON" "$env:EMSDK_PYTHON" +# In this case JAVA_HOME is the one emsdk install/activate set. +# We need to use EMSDK_JAVA_HOME so that we don't override JAVA_HOME which comes from install-jdk.ps1 +Set-EnvironmentVariable "EMSDK_JAVA_HOME" "$env:JAVA_HOME" Set-EnvironmentVariable "EMSDK_PATH" "$installLocationEmsdk;$installLocationEmsdk\node\${versionNode}_64bit\bin;$installLocationEmsdk\upstream\emscripten;$PATH" Add-Path "$env:EMSDK_PATH"