gutter_runner/emsdk.ps1
sergeypdev ddb78c3ecf Squashed 'libs/emsdk/' changes from 3bcf1dcd0..e062c54f4
e062c54f4 Add bazel feature for wasm-exceptions (#1575)
d49219d03 Release 4.0.11 (#1572)
d845e506c Fix python search path in emsdk launcher scripts (#1571)
62a853cd3 Release 4.0.10 (#1565)
2d480a1b7 Update Node.js to LTS 22.16.0. (#1563)
cfe7ccf16 Update python version note for Linux. (#1562)
d07c79341 Update Python to 3.13.3 and add support to Windows on ARM64. (#1477)

git-subtree-dir: libs/emsdk
git-subtree-split: e062c54f436e58ee102d2d37901cdaa052af249a
2025-07-24 23:47:27 +04:00

37 lines
1.1 KiB
PowerShell

$ScriptDirectory = Split-Path -parent $PSCommandPath
$PythonLocations = $(
"python\3.13.3-0_64bit\python.exe",
"python\3.9.2-1_64bit\python.exe",
"python\3.9.2-nuget_64bit\python.exe"
)
# Find python from an explicit location relative to the Emscripten SDK.
foreach ($Location in $PythonLocations) {
$FullLocation = Join-Path $ScriptDirectory $Location
if (Test-Path $FullLocation) {
$EMSDK_PY = $FullLocation
break
}
}
# As a last resort, access from PATH.
if (-Not $EMSDK_PY) {
$EMSDK_PY = "python"
}
# Tell EMSDK to create environment variable setter as a .ps1 file
$env:EMSDK_POWERSHELL = 1
& $EMSDK_PY "$ScriptDirectory/emsdk.py" $args
# python is not able to set environment variables to the parent calling process, so
# therefore have it craft a .ps1 file, which we invoke after finishing python execution,
# to set up the environment variables
if (Test-Path $ScriptDirectory/emsdk_set_env.ps1) {
& $ScriptDirectory/emsdk_set_env.ps1
Remove-Item $ScriptDirectory/emsdk_set_env.ps1
}
Remove-Item Env:\EMSDK_POWERSHELL