| @echo off | |
| :: Find python from an explicit location relative to the Emscripten SDK. | |
| setlocal | |
| :: When using our bundled python we never want the users | |
| :: PYTHONHOME or PYTHONPATH | |
| :: https://github.com/emscripten-core/emsdk/issues/598 | |
| if exist "%~dp0python\3.9.2-1_64bit\python.exe" ( | |
| set EMSDK_PY="%~dp0python\3.9.2-1_64bit\python.exe" | |
| set PYTHONHOME= | |
| set PYTHONPATH= | |
| goto end | |
| ) | |
| if exist "%~dp0python\3.9.2-nuget_64bit\python.exe" ( | |
| set EMSDK_PY="%~dp0python\3.9.2-nuget_64bit\python.exe" | |
| set PYTHONHOME= | |
| set PYTHONPATH= | |
| goto end | |
| ) | |
| if exist "%~dp0python\3.7.4-pywin32_64bit\python.exe" ( | |
| set EMSDK_PY="%~dp0python\3.7.4-pywin32_64bit\python.exe" | |
| set PYTHONHOME= | |
| set PYTHONPATH= | |
| goto end | |
| ) | |
| if exist "%~dp0python\3.7.4_64bit\python.exe" ( | |
| set EMSDK_PY="%~dp0python\3.7.4_64bit\python.exe" | |
| set PYTHONHOME= | |
| set PYTHONPATH= | |
| goto end | |
| ) | |
| if exist "%~dp0python\2.7.13.1_64bit\python-2.7.13.amd64\python.exe" ( | |
| set EMSDK_PY="%~dp0python\2.7.13.1_64bit\python-2.7.13.amd64\python.exe" | |
| set PYTHONHOME= | |
| set PYTHONPATH= | |
| goto end | |
| ) | |
| :: As a last resort, access from PATH. | |
| set EMSDK_PY=python | |
| :end | |
| call %EMSDK_PY% "%~dp0\emsdk.py" %* | |
| endlocal | |
| :: python is not able to set environment variables to the parent calling | |
| :: process, so therefore have it craft a .bat file, which we invoke after | |
| :: finishing python execution, to set up the environment variables | |
| if exist "%~dp0\emsdk_set_env.bat" ( | |
| call "%~dp0\emsdk_set_env.bat" > nul | |
| del /F /Q "%~dp0\emsdk_set_env.bat" | |
| ) |