# Copyright (C) 2021 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # This is the init script that is passed to `emcc --em-config=.emscripten` # (Wasm toolchain). It sets vars to locate the various emsdk / llvm dirs. import os import sys from platform import system # We cannot use __file__ here. this_file = os.getenv('EM_CONFIG') if this_file is None: sys.stderr.write('Could not find EM_CONFIG in .emscripten\n') sys.exit(1) root_dir = os.path.dirname(os.path.dirname(os.path.dirname(this_file))) buildools_os = 'mac' if system().lower() == 'darwin' else 'linux64' node_path = os.path.join(root_dir, 'buildtools', buildools_os, 'nodejs') emsdk_path = os.path.join(root_dir, 'buildtools', buildools_os, 'emsdk') # Exported vars. NODE_JS = os.path.join(node_path, 'bin', 'node') LLVM_ROOT = os.path.join(emsdk_path, 'bin') BINARYEN_ROOT = emsdk_path EMSCRIPTEN_ROOT = os.path.join(emsdk_path, 'emscripten') COMPILER_ENGINE = NODE_JS JS_ENGINES = [NODE_JS]