#!/bin/sh # ^^^^^^^ Please try to keep this script Bourne-compatible. ######################################################################## # WARNING: emcc.sh is generated from emcc.sh.in by the configure # process. Do not edit emcc.sh directly, as it may be deleted or # overwritten by the configure script. # # A wrapper around the emcc compiler which uses configure-time state # to locate the Emscripten SDK and import the SDK's environment # script, if needed. ######################################################################## # EMSDK_HOME comes from the configure --with-emsdk=/dir flag. # EMSDK_ENV_SH is ${thatDir}/emsdk_env.sh and is also set by the # configure process. EMSDK_HOME="@EMSDK_HOME@" EMSDK_ENV_SH="@EMSDK_ENV_SH@" emcc="@BIN_EMCC@" if [ x = "x${emcc}" ]; then emcc=`which emcc 2>/dev/null` fi if [ x = "x${emcc}" ]; then # If emcc is not found in the path, try to find it via an emsdk # installation. The SDK variant is the official installation style # supported by the Emscripten project, but emcc is also available # via package managers on some OSes. if [ x = "x${EMSDK_HOME}" ]; then echo "EMSDK_HOME is not set. Pass --with-emsdk=/path/to/emsdk" \ "to the configure script." 1>&2 exit 1 fi if [ x = "x${EMSDK_ENV_SH}" ]; then if [ -f "${EMSDK_HOME}/emsdk_env.sh" ]; then EMSDK_ENV_SH="${EMSDK_HOME}/emsdk_env.sh" else echo "EMSDK_ENV_SH is not set. Expecting configure script to set it." 1>&2 exit 2 fi fi if [ ! -f "${EMSDK_ENV_SH}" ]; then echo "emsdk_env script not found: $EMSDK_ENV_SH" 1>&2 exit 3 fi # $EMSDK is part of the state set by emsdk_env.sh. if [ x = "x${EMSDK}" ]; then EMSDK_QUIET=1 export EMSDK_QUIET # ^^^ Squelches informational output from ${EMSDK_ENV_SH}. source "${EMSDK_ENV_SH}" || { rc=$? echo "Error sourcing ${EMSDK_ENV_SH}" exit $rc } fi emcc=`which emcc 2>/dev/null` if [ x = "x${emcc}" ]; then echo "emcc not found in PATH. Normally that's set up by ${EMSDK_ENV_SH}." 1>&2 exit 4 fi fi exec emcc "$@"