Commit graph

10 commits

Author SHA1 Message Date
Michael Meeks
4423770c52 cowasm: disable werror for now for dlopen detection:
otherwise generated:

| int
| main ()
| {
| return dlopen ();

wasm-ld: warning: function signature mismatch: dlopen
>>> defined as () -> i32 in /tmp/emscripten_temp_6nz4f0ww/conftest_0.o
>>> defined as (i32, i32) -> i32 in /home/builder/emsdk/upstream/emscripten/cache/sysroot/lib/wasm32-emscripten/libc.a(dynlink.o)
em++: error: running limited binaryen optimizations because DWARF info requested (or indirectly required) [-Wlimited-postlink-optimizations] [-Werror]

and erroneously claims that dlopen is not present, and
configure fails.

Change-Id: Ie54db7c2099787a0b63b76b0b6e3e44750c9046e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-10-29 11:05:18 -04:00
Michael Meeks
08f60bc72b cowasm: parameterize masses of paths included in command-lines.
Change-Id: I2a73e876290c10ee34385f807364ca4dd5b52063
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-10-27 20:49:26 -04:00
Tor Lillqvist
6d26fe07a2 Provide separate documentation for building COWASM without the container
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I8c1697732a9102197d4c273c23e60378420e598a
2023-02-13 13:57:43 +01:00
Tor Lillqvist
c944348ad7 Adapt to newer Emscripten SDK
Newer Emscripten SDKs no longer provide <sys/epoll.h> and
<sys/inotify.h>. The corresponding functionality is not present, I
assume.

Until now we have been using Emscripten SDK 2.0.31 and that is still
the recommended known-to-work version, but I am experimenting with the
latest, 3.1.30.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I26e89dc38554548aee3ce2dbf6ba352917ba6266
2023-01-30 08:10:17 +02:00
Tor Lillqvist
4417ec556b The poco-no-special-expat-sauce.diff wants -p0 to apply
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ib0b7227996a7fc9b79ad976cc73b7f8dbbd6ce34
2023-01-30 08:10:17 +02:00
Tor Lillqvist
d9024e8955 Add patch that prevents expat in Poco from causing trouble with WASM
As we build a single statically linked bunary for WASM, we will end up
with just one copy of each function in it. Both LO core and Poco
include expat. Upstream Poco builds one of the expat source files as
C++. That causes trouble as it then isn't compatible with what LO core
wants to call. Or something like that. You get "RuntimeError: null
function or function signature mismatch". (The "signature" concept in
WASM is orthogonal to C++ name mangling.)

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Iacf75ed34eea98611cb6aa6867e460697ea1fc4a
2023-01-16 18:43:21 +02:00
Michael Stahl
a4b31d4966 WASM add a note about memory required for linking
Signed-off-by: Michael Stahl <michael.stahl@allotropia.de>
Change-Id: Ic7f2cffdeb4408a9f726ad70a8ceb8db372787d9
2023-01-10 22:02:22 +02:00
Michael Stahl
ad6ea1a1db WASM improve README
Remove the dumb hard-coded home dir and add a section how to use the
pre-built dependencies from the container.

Signed-off-by: Michael Stahl <michael.stahl@allotropia.de>
Change-Id: Ibdc8d766be54dcde440682d2c77fb47f042f6056
2023-01-10 22:02:22 +02:00
Michael Stahl
b1a1522a2b WASM use same CXXFLAGS as core
-pthreads is required, or wasm-ld reports errors about
"was not compiled with 'atomics' or 'bulk-memory' features"

Also, POCO needs to be built with this, add it in README.

Signed-off-by: Michael Stahl <michael.stahl@allotropia.de>
Change-Id: Ie83e3942e5fc689e6df5a5a705d7ee2e1325ce03
2023-01-10 22:02:22 +02:00
Michael Stahl
e53ea70799 WASM document how to build dependencies in wasm/README
Signed-off-by: Michael Stahl <michael.stahl@allotropia.de>
Change-Id: I88977976be9212088f7a758940852719931b4263
2023-01-09 15:21:37 +02:00