Commit Graph

10 Commits

Author SHA1 Message Date
Joel Dice
9d4742c78d add stubs for statvfs, chmod, etc. (#463)
Per https://github.com/WebAssembly/wasi-sdk/issues/373, LLVM's libc++ no longer
allows us to enable `<fstream>` and `<filesystem>` separately -- it's both or
neither.  Consequently, we either need to patch libc++ to not use `statvfs`,
`chmod`, etc. or add stub functions for those features to `wasi-libc`.  Since
we're planning to eventually support those features with WASI Preview 2 and
beyond, it makes sense to do the latter.

Note that since libc++ uses `DT_SOCK`, I've added a definition for it -- even
though WASI Preview 1 does not define it.  No Preview 1 file will ever have that
type, so code that handles that type will never be reached, but defining it
allows us to avoid WASI-specific patches to libc++.

Related to `DT_SOCK`, I had to change the `S_IFIFO` value so it does not
conflict with `S_IFSOCK`, thereby avoiding ambiguity in `__wasilibc_iftodt`.

Signed-off-by: Joel Dice <joel.dice@fermyon.com>
2024-06-25 12:13:35 +02:00
Dan Gohman
5d8a1409aa
Update to musl 1.2.3.
* Update to musl 1.2.3.

See the WHATSNEW file for details.
2022-05-24 19:31:23 -07:00
Dan Gohman
322bd4ff9e Update to musl 1.2.2.
See the WHATSNEW file for details.
2021-03-18 11:18:41 -07:00
Dan Gohman
79a9b40837 Update to musl 1.1.24.
See the WHATSNEW file for details; this doesn't have any major changes
for wasi-libc; in particular, the new catgets and GLOB_TILDE features
are disabled.
2020-02-26 10:23:05 -08:00
Dan Gohman
a413650013 Don't declare realpath or pseudo-terminal functions.
These functions are not currently defined, so suppress their declarations
in the headers.
2019-07-11 10:36:28 -07:00
Dan Gohman
0a738e8fd6 Remove more declarations for symbols that aren't defined. 2019-05-15 12:01:17 -07:00
Dan Gohman
7ba6adfc61 Fix miscellaneous lint warnings. 2019-04-15 09:47:16 -07:00
Dan Gohman
9f0d8e85e3 Define _ALL_SOURCE when generating predefined-macros.txt.
And clean up various stale declarations and macros that this turned up.
In particular:
 - Don't install pthread.h or aio.h in THREAD_MODEL=single mode.
 - Don't define mkstemp and friends, since WASI currently has no support for
   temporary directories.
2019-04-15 04:05:20 -07:00
Dan Gohman
e5f14be383 Add comments explaining changes to upstream source files.
Add at least a one-line comment on every
`#ifdef __wasilibc_unmodified_upstream` briefly indicating what its
purpose is.

While here, reenable some of the code that was previously disabled when
getenv wasn't supported, as getenv is now supported.
2019-04-05 06:39:09 -07:00
Dan Gohman
320054e84f WASI libc prototype implementation.
This incoporates pieces from musl-libc, cloudlibc, cloudabi, libpreopen,
and dlmalloc, as well as a significant amount of new code.
2019-03-27 07:59:55 -07:00