summaryrefslogtreecommitdiff
path: root/platform/javascript
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2019-11-15 09:39:18 +0100
committerRémi Verschelde <rverschelde@gmail.com>2019-11-15 09:39:19 +0100
commite9e2a4b0443885490357ad20ba8bf8e5f54029c8 (patch)
tree7e0d675ed9388f5e2db151c3d3eb9e6353397cb9 /platform/javascript
parentd1f8fd6384ae8d2caae368d79d1db23654868b98 (diff)
HTML5: Fix support for Emscripten 1.39.1+
A change in upstream Emscripten 1.39.1+ made our buildsystem error out where it was previously only issuing a warning: ``` [ 5%] Linking Static Library ==> main/libmain.javascript.opt.bc shared:WARNING: Assuming object file output in the absence of `-c`, based on output filename. Please add with `-c` or `-r` to avoid this warning Ranlib Library ==> main/libmain.javascript.opt.bc /opt/emsdk/upstream/bin/llvm-ranlib: error: unable to load 'main/libmain.javascript.opt.bc': file too small to be an archive ``` As advised on emscripten-core/emscripten#9806, we should be using `emar` here to create the static library and not `emcc`. This was apparently done to workaround Emscripten issues in the past, but evidently this is no longer necessary. The rest of the `env` redefinitions should probably be re-assessed against the current state of Emscripten. Fixes #33374.
Diffstat (limited to 'platform/javascript')
-rw-r--r--platform/javascript/detect.py5
1 files changed, 1 insertions, 4 deletions
diff --git a/platform/javascript/detect.py b/platform/javascript/detect.py
index a0d6ac9214..172072db3c 100644
--- a/platform/javascript/detect.py
+++ b/platform/javascript/detect.py
@@ -82,10 +82,7 @@ def configure(env):
env['CXX'] = 'em++'
env['LINK'] = 'emcc'
- # Emscripten's ar has issues with duplicate file names, so use cc.
- env['AR'] = 'emcc'
- env['ARFLAGS'] = '-o'
- # emranlib is a noop, so it's safe to use with AR=emcc.
+ env['AR'] = 'emar'
env['RANLIB'] = 'emranlib'
# Use TempFileMunge since some AR invocations are too long for cmd.exe.