Set correct Emscripten environment variables

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 <tony.sarajarvi@qt.io>
This commit is contained in:
Heikki Halmet 2022-02-01 10:24:45 +02:00
parent ec6e186d10
commit 88cde9e500
1 changed files with 13 additions and 8 deletions

View File

@ -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"