wasm-micro-runtime/core/iwasm/libraries/libc-wasi
Gavin Hayes d8ee771e28
Add Cosmopolitan Libc Platform (#2598)
This PR adds the Cosmopolitan Libc platform enabling compatibility with multiple
x86_64 operating systems with the same binary. The platform is similar to the
Linux platform, but for now only x86_64 with interpreter modes are supported.

The only major change to the core is `posix.c/convert_errno()` was rewritten to use
a switch statement. With Cosmopolitan errno values depend on the currently
running operating system, and so they are non-constant and cannot be used in array
designators. However, the `cosmocc` compiler allows non-constant case labels in
switch statements, enabling the new version.

And updated wamr-test-suites script to add `-j <platform>` option. The spec tests
can be ran via `CC=cosmocc ./test_wamr.sh -j cosmopolitan -t classic-interp`
or `CC=cosmocc ./test_wamr.sh -j cosmopolitan -t fast-interp`.
2023-10-04 21:55:37 +08:00
..
sandboxed-system-primitives Add Cosmopolitan Libc Platform (#2598) 2023-10-04 21:55:37 +08:00
libc_wasi_wrapper.c Implement async termination of blocking thread (#2516) 2023-09-20 18:11:52 +08:00
libc_wasi_wrapper.h Implement part of Berkeley Socket API for libc-wasi (#1036) 2022-03-10 15:13:38 +08:00
libc_wasi.cmake Enable AoT and wamr-sdk, and change arguments of call wasm API (#157) 2020-01-21 13:26:14 +08:00
SConscript add porting codes of rt-thread (#494) 2021-01-14 11:26:35 +08:00