#!/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 PYTHON3=$(which python3 2> /dev/null) if [ $? = 0 ]; 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" "$@"