diff options
author | Jukka Jylänki <jujjyl@gmail.com> | 2013-12-05 16:27:02 +0200 |
---|---|---|
committer | Jukka Jylänki <jujjyl@gmail.com> | 2013-12-13 13:47:49 +0200 |
commit | 93f2e138610d735cbae7004d43f1370abeae101e (patch) | |
tree | b3e5156d51a8b265edccc06bb335350a59c19eb5 /tools | |
parent | 3e061d95104b88d6209d892bbda24e18a1539073 (diff) |
Add new emcc command line parameter --em-config that allows specifying the location of the .emscripten configuration file from the command line. This overrides and has the same meaning as the environment variable EM_CONFIG.
Diffstat (limited to 'tools')
-rw-r--r-- | tools/shared.py | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/tools/shared.py b/tools/shared.py index 3456ab18..e4fb7e08 100644 --- a/tools/shared.py +++ b/tools/shared.py @@ -176,13 +176,25 @@ if WINDOWS: else: logging.StreamHandler.emit = add_coloring_to_emit_ansi(logging.StreamHandler.emit) -# Emscripten configuration is done through the EM_CONFIG environment variable. -# If the string value contained in this environment variable contains newline -# separated definitions, then these definitions will be used to configure +# Emscripten configuration is done through the --em-config command line option or +# the EM_CONFIG environment variable. If the specified string value contains newline +# or semicolon-separated definitions, then these definitions will be used to configure # Emscripten. Otherwise, the string is understood to be a path to a settings # file that contains the required definitions. -EM_CONFIG = os.environ.get('EM_CONFIG') +try: + EM_CONFIG = sys.argv[sys.argv.index('--em-config')+1] +except: + EM_CONFIG = os.environ.get('EM_CONFIG') + +if EM_CONFIG and not os.path.isfile(EM_CONFIG): + if EM_CONFIG.startswith('-'): + raise Exception('Passed --em-config without an argument. Usage: --em-config /path/to/.emscripten or --em-config EMSCRIPTEN_ROOT=/path/;LLVM_ROOT=/path;...') + if not '=' in EM_CONFIG: + raise Exception('File ' + EM_CONFIG + ' passed to --em-config does not exist!') + else: + EM_CONFIG = EM_CONFIG.replace(';', '\n') + '\n' + if not EM_CONFIG: EM_CONFIG = '~/.emscripten' if '\n' in EM_CONFIG: |