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.
This commit is contained in:
parent
d1f8fd6384
commit
e9e2a4b044
1 changed files with 1 additions and 4 deletions
|
@ -82,10 +82,7 @@ def configure(env):
|
||||||
env['CXX'] = 'em++'
|
env['CXX'] = 'em++'
|
||||||
env['LINK'] = 'emcc'
|
env['LINK'] = 'emcc'
|
||||||
|
|
||||||
# Emscripten's ar has issues with duplicate file names, so use cc.
|
env['AR'] = 'emar'
|
||||||
env['AR'] = 'emcc'
|
|
||||||
env['ARFLAGS'] = '-o'
|
|
||||||
# emranlib is a noop, so it's safe to use with AR=emcc.
|
|
||||||
env['RANLIB'] = 'emranlib'
|
env['RANLIB'] = 'emranlib'
|
||||||
|
|
||||||
# Use TempFileMunge since some AR invocations are too long for cmd.exe.
|
# Use TempFileMunge since some AR invocations are too long for cmd.exe.
|
||||||
|
|
Loading…
Reference in a new issue