wasi-libc/libc-bottom-half
2019-04-15 09:47:16 -07:00
..
cloudlibc Fix miscellaneous lint warnings. 2019-04-15 09:47:16 -07:00
crt WASI libc prototype implementation. 2019-03-27 07:59:55 -07:00
headers Fix miscellaneous lint warnings. 2019-04-15 09:47:16 -07:00
libpreopen Provide a public interface to preopened directory lookups. (#10) 2019-04-05 06:30:30 -07:00
mman WASI libc prototype implementation. 2019-03-27 07:59:55 -07:00
sources Use the same indentation style as surrounding code. 2019-04-15 09:47:16 -07:00
README WASI libc prototype implementation. 2019-03-27 07:59:55 -07:00

"WASI" the WebAssembly System Interface.

WASI libc is conceptually the lower half of a traditional libc implementation.
It provides C interfaces to the low-level WASI syscalls.

This is largely based on [CloudABI], [cloudlibc], and [libpreopen], however we
use just the low-level syscall wrappers rather than all of cloudlibc and
libpreopen, and we have several customizations for use in a WebAssembly sysroot.

[CloudABI]: https://github.com/NuxiNL/cloudabi
[cloudlibc]: https://github.com/NuxiNL/cloudlibc
[libpreopen]: https://github.com/musec/libpreopen

The upstream repositories and versions used here are:

cloudlibc - https://github.com/NuxiNL/cloudlibc 92cb7670f864adc625c24eb214ff1c6d888adf6b
libpreopen - https://github.com/musec/libpreopen 8265fc50b9db3730c250597bdd084f1e728f3e48

Whole files which are unused are omitted. Changes to upstream code are wrapped
in preprocessor directives controlled by the macro `__wasilibc_unmodified_upstream`,
except that CloudABI names have also been renamed to WASI names without annotations.

WASI libc currently depends on the basics and dlmalloc components of reference-sysroot.