| #!/bin/sh | |
| # Copyright 2019 The Emscripten Authors. All rights reserved. | |
| # Emscripten is available under two separate licenses, the MIT license and the | |
| # University of Illinois/NCSA Open Source License. Both these licenses can be | |
| # found in the LICENSE file. | |
| # Wrapper script that runs emsdk.py | |
| # First look for python bundled in Emsdk | |
| if [ -z "$EMSDK_PYTHON" ]; then | |
| PYTHON3="$(dirname "$0")/python/3.9.2-1_64bit/bin/python3" | |
| PYTHON3_CERT_FILE="$(dirname "$0")/python/3.9.2-1_64bit/lib/python3.9/site-packages/certifi/cacert.pem" | |
| if [ ! -f "$PYTHON3" ]; then | |
| PYTHON3="$(dirname "$0")/python/3.7.4-2_64bit/bin/python3" | |
| PYTHON3_CERT_FILE="$(dirname "$0")/python/3.7.4-2_64bit/lib/python3.7/site-packages/certifi/cacert.pem" | |
| fi | |
| if [ -f "$PYTHON3" ]; then | |
| EMSDK_PYTHON="$PYTHON3" | |
| # When using our bundled python we never want the users | |
| # PYTHONHOME or PYTHONPATH | |
| # https://github.com/emscripten-core/emsdk/issues/598 | |
| unset PYTHONHOME | |
| unset PYTHONPATH | |
| # This is needed for MacOS. Without this, the urlopen | |
| # code will try to use /usr/local/etc/openssl/cert.pem | |
| # which may or may not exist on the system. | |
| export SSL_CERT_FILE="$PYTHON3_CERT_FILE" | |
| fi | |
| fi | |
| # If bundled python is not found, look for `python3` in PATH. This is especially important on macOS (See: | |
| # https://github.com/emscripten-core/emsdk/pull/273) | |
| if [ -z "$EMSDK_PYTHON" ]; then | |
| if PYTHON3="$(which python3 2>/dev/null)"; then | |
| EMSDK_PYTHON=$PYTHON3 | |
| fi | |
| fi | |
| # Finally fall back to just looking for `python` in PATH | |
| if [ -z "$EMSDK_PYTHON" ]; then | |
| EMSDK_PYTHON=python | |
| fi | |
| exec "$EMSDK_PYTHON" "$0.py" "$@" |