Commit 92dd9e2
authored
Fix emscripten build by removing dummy atexit function (#4435)
Since emscripten-core/emscripten#15905 landed
emscripten now includes its own dummy atexit function when building with
EXIT_RUNTIME=0.
This dummy function conflicts with the emscripten-provided one:
```
wasm-ld: error: duplicate symbol: atexit
>>> defined in CMakeFiles/binaryen_wasm.dir/src/binaryen-c.cpp.o
>>> defined in ...wasm32-emscripten/lto/libnoexit.a(atexit_dummy.o)
```
Normally overriding symbols from libc does not causes issues but one
needs to be sure to override all the symbols in a given object file so
that the object in question (atexit_dummy.o) does not get linked in. In
this case some other symbol being defined in in atexit_dummy.o (e.g.
__cxa_atexit) is likely the cause of the conflict.
Overriding symbols from libc is likely to break in this way as the libc
evolves, and since emscripten is now providing a dummy, just as we want,
its better/safer to simply remove our dummy.1 parent 1ef8f1f commit 92dd9e2
1 file changed
+0
-4
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4617 | 4617 | | |
4618 | 4618 | | |
4619 | 4619 | | |
4620 | | - | |
4621 | | - | |
4622 | | - | |
4623 | | - | |
4624 | 4620 | | |
4625 | 4621 | | |
4626 | 4622 | | |
| |||
0 commit comments