]> git.proxmox.com Git - wasi-libc.git/log
wasi-libc.git
3 years agod/changelog: correct backport version proxmox/buster
Fabian Grünbichler [Fri, 16 Apr 2021 08:05:41 +0000 (10:05 +0200)]
d/changelog: correct backport version

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
3 years agobump version to 0.0~git20201130.5879558-1~exp1
Fabian Grünbichler [Fri, 16 Apr 2021 08:02:50 +0000 (10:02 +0200)]
bump version to 0.0~git20201130.5879558-1~exp1

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
3 years agoMerge tag 'debian/0.0_git20201130.5879558-1_exp1' into proxmox/buster
Fabian Grünbichler [Fri, 16 Apr 2021 08:02:18 +0000 (10:02 +0200)]
Merge tag 'debian/0.0_git20201130.5879558-1_exp1' into proxmox/buster

wasi-libc Debian release 0.0~git20201130.5879558-1~exp1

3 years agoRelease 0.0~git20201130.5879558-1~exp1 to Debian experimental.
Ximin Luo [Wed, 7 Apr 2021 00:43:36 +0000 (01:43 +0100)]
Release 0.0~git20201130.5879558-1~exp1 to Debian experimental.

3 years agoUpdate d/changelog
Ximin Luo [Wed, 7 Apr 2021 00:42:29 +0000 (01:42 +0100)]
Update d/changelog

3 years agoUpdate upstream source from tag 'upstream/0.0_git20201130.5879558'
Ximin Luo [Wed, 7 Apr 2021 00:38:26 +0000 (01:38 +0100)]
Update upstream source from tag 'upstream/0.0_git20201130.5879558'

Update to upstream version '0.0~git20201130.5879558'
with Debian dir 55183e956df1e429c65c3903e50f6f00ec477006

3 years agoNew upstream version 0.0~git20201130.5879558
Ximin Luo [Wed, 7 Apr 2021 00:38:19 +0000 (01:38 +0100)]
New upstream version 0.0~git20201130.5879558

3 years agoRelease 0.0~git20200731.215adc8-2 to Debian unstable.
Ximin Luo [Tue, 1 Dec 2020 20:03:44 +0000 (20:03 +0000)]
Release 0.0~git20200731.215adc8-2 to Debian unstable.

3 years agoUpdate to musl 1.2.1. (#222)
Dan Gohman [Mon, 30 Nov 2020 20:47:45 +0000 (12:47 -0800)]
Update to musl 1.2.1. (#222)

See the WHATSNEW file for details. WASI libc currently uses a separate
malloc, so the new mallocng is not currently used.

This includes a few new custom changes to disable code for handling
directed rounding modes. Wasm doesn't have directed rounding modes,
so disabling this code size saves code size, something the WASI libc
project cares about!

3 years agoAdd basic emulation of getcwd/chdir (#214)
Alex Crichton [Mon, 30 Nov 2020 20:40:41 +0000 (14:40 -0600)]
Add basic emulation of getcwd/chdir (#214)

* Add basic emulation of getcwd/chdir

This commit adds basic emulation of a current working directory to
wasi-libc. The `getcwd` and `chdir` symbols are now implemented and
available for use. The `getcwd` implementation is pretty simple in that
it just copies out of a new global, `__wasilibc_cwd`, which defaults to
`"/"`. The `chdir` implementation is much more involved and has more
ramification, however.

A new function, `make_absolute`, was added to the preopens object. Paths
stored in the preopen table are now always stored as absolute paths
instead of relative paths, and initial relative paths are interpreted as
being relative to `/`. Looking up a path to preopen now always turns it
into an absolute path, relative to the current working directory, and an
appropriate path is then returned.

The signature of `__wasilibc_find_relpath` has changed as well. It now
returns two path components, one for the absolute part and one for the
relative part. Additionally the relative part is always dynamically
allocated since it may no longer be a substring of the original input
path.

This has been tested lightly against the Rust standard library so far,
but I'm not a regular C developer so there's likely a few things to
improve!

* Amortize mallocs made in syscalls

* Avoid size bloat on programs that don't use `chdir`

* Add threading compat

* Collect `link`/`renameat` second path lookup

* Update comments about chdir.c in makefile

* Move definition of `__wasilibc_find_relpath_alloc` to header

* Expand comments

* Document the format of strings a bit more

* Fixup a few issues in path logic

* Fix GitHub Actions

3 years agoUpdate to LLVM 11
Ximin Luo [Sun, 15 Nov 2020 16:32:01 +0000 (16:32 +0000)]
Update to LLVM 11

3 years agobump version to 0.0~git20200731.215adc8-1~bpo10+pve1
Fabian Grünbichler [Thu, 12 Nov 2020 12:14:26 +0000 (13:14 +0100)]
bump version to 0.0~git20200731.215adc8-1~bpo10+pve1

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
3 years agoMerge tag 'debian/0.0_git20200731.215adc8-1_exp1' into proxmox/buster
Fabian Grünbichler [Thu, 12 Nov 2020 12:13:45 +0000 (13:13 +0100)]
Merge tag 'debian/0.0_git20200731.215adc8-1_exp1' into proxmox/buster

wasi-libc Debian release 0.0~git20200731.215adc8-1~exp1

3 years agoRelease 0.0~git20200731.215adc8-1 to Debian unstable.
Ximin Luo [Sat, 7 Nov 2020 20:58:52 +0000 (20:58 +0000)]
Release 0.0~git20200731.215adc8-1 to Debian unstable.

3 years agoCI: use $GITHUB_PATH,ENV rather than add-path, set-env
Pat Hickey [Mon, 5 Oct 2020 20:33:32 +0000 (13:33 -0700)]
CI: use $GITHUB_PATH,ENV rather than add-path, set-env

In accordance with this advisory it's recommended we move to a
different scheme of setting env vars and updating PATH:

https://github.blog/changelog/2020-10-01-github-actions-deprecating-set-env-and-add-path-commands/

3 years agoNew-style command support. (#203)
Dan Gohman [Sat, 3 Oct 2020 21:18:39 +0000 (14:18 -0700)]
New-style command support. (#203)

This adds a new crt1-command.c startup file, which uses
[new-style command support]. Instead of calling `__wasm_call_ctors`
and `__wasm_call_dtors` directly, this lets wasm-ld automatically call
them.

This preserves the existing crt1.c, so that the same wasi-libc build
can support old-style and new-style commands, for compatibility during
the transition.

[new-style command support]: https://reviews.llvm.org/D81689

Co-authored-by: Dan Gohman <sunfish@mozilla.com>
3 years agoactivate the use of __heap_base (#215)
vms [Thu, 24 Sep 2020 01:14:32 +0000 (04:14 +0300)]
activate the use of __heap_base (#215)

3 years agoRelease 0.0~git20200731.215adc8-1~exp1 to Debian experimental.
Ximin Luo [Fri, 4 Sep 2020 16:29:10 +0000 (17:29 +0100)]
Release 0.0~git20200731.215adc8-1~exp1 to Debian experimental.

3 years agoUpdate d/changelog, patches
Ximin Luo [Fri, 4 Sep 2020 16:28:51 +0000 (17:28 +0100)]
Update d/changelog, patches

3 years agoUpdate upstream source from tag 'upstream/0.0_git20200731.215adc8'
Ximin Luo [Fri, 4 Sep 2020 16:27:59 +0000 (17:27 +0100)]
Update upstream source from tag 'upstream/0.0_git20200731.215adc8'

Update to upstream version '0.0~git20200731.215adc8'
with Debian dir 2eea1c752dc11a3545e5ad6acf4f1b64084d1c84

3 years agoNew upstream version 0.0~git20200731.215adc8
Ximin Luo [Fri, 4 Sep 2020 16:27:57 +0000 (17:27 +0100)]
New upstream version 0.0~git20200731.215adc8

3 years agoupdate upstream git url
Ximin Luo [Fri, 4 Sep 2020 16:27:26 +0000 (17:27 +0100)]
update upstream git url

3 years agoRelease 0.0~git20200319.9efc2f4-2 to Debian unstable.
Ximin Luo [Wed, 5 Aug 2020 20:52:27 +0000 (21:52 +0100)]
Release 0.0~git20200319.9efc2f4-2 to Debian unstable.

3 years agoUpdate to LLVM 10
Ximin Luo [Wed, 5 Aug 2020 20:51:24 +0000 (21:51 +0100)]
Update to LLVM 10

3 years agoRedefine the `access` bits to be compatible with other systems (#210)
Dan Gohman [Fri, 31 Jul 2020 20:44:58 +0000 (13:44 -0700)]
Redefine the `access` bits to be compatible with other systems (#210)

Normally bits like this would be considered implementation details, but
in this case, `X_OK`, `W_OK`, and `R_OK` line up with `S_IXOTH`,
`S_IWOTH`, and `S_IROTH` on other systems, and those bits do have
well-known values.

3 years agobump version to 0.0~git20200319.9efc2f4-1~bpo10+pve1
Fabian Grünbichler [Tue, 28 Jul 2020 06:34:21 +0000 (08:34 +0200)]
bump version to 0.0~git20200319.9efc2f4-1~bpo10+pve1

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
3 years agoMerge branch 'master' into proxmox/buster
Fabian Grünbichler [Tue, 28 Jul 2020 06:34:14 +0000 (08:34 +0200)]
Merge branch 'master' into proxmox/buster

3 years agoRelease 0.0~git20200319.9efc2f4-1 to Debian unstable.
Ximin Luo [Sat, 4 Jul 2020 16:25:33 +0000 (17:25 +0100)]
Release 0.0~git20200319.9efc2f4-1 to Debian unstable.

3 years agoUpdate changelog
Ximin Luo [Sat, 4 Jul 2020 16:25:28 +0000 (17:25 +0100)]
Update changelog

3 years agoUpdate upstream source from tag 'upstream/0.0_git20200319.9efc2f4'
Ximin Luo [Sat, 4 Jul 2020 16:24:11 +0000 (17:24 +0100)]
Update upstream source from tag 'upstream/0.0_git20200319.9efc2f4'

Update to upstream version '0.0~git20200319.9efc2f4'
with Debian dir c20be67b076a95932c4c8bdd6f0d3aca7928edac

3 years agoNew upstream version 0.0~git20200319.9efc2f4
Ximin Luo [Sat, 4 Jul 2020 16:24:08 +0000 (17:24 +0100)]
New upstream version 0.0~git20200319.9efc2f4

3 years agoadd more precise instructions on updating the source package
Ximin Luo [Sat, 4 Jul 2020 16:22:22 +0000 (17:22 +0100)]
add more precise instructions on updating the source package

3 years agoComment a use of `__attribute__((visibility("protected")))`. (#204)
Dan Gohman [Sat, 13 Jun 2020 03:21:12 +0000 (20:21 -0700)]
Comment a use of `__attribute__((visibility("protected")))`. (#204)

This comments out a use of "protected" visibility, since
[WebAssembly doesn't support it].

[WebAssembly doesn't support it]: https://reviews.llvm.org/D81688

3 years agoRename `__prepare_for_exit` to `__wasm_call_dtors`. (#201)
Dan Gohman [Mon, 8 Jun 2020 22:21:18 +0000 (15:21 -0700)]
Rename `__prepare_for_exit` to `__wasm_call_dtors`. (#201)

This emphasizes the relationship with `__wasm_call_ctors`. Note however
that while `__wasm_call_ctors` is synthesized by the linker,
`__wasm_call_dtors` is still defined by libc.

Static constructors are registered statically, but static destructors
need to be registered dynamically so that they only run if their
corresponding static constructors have run, and so that they're
ordered with respect to interleaved `atexit` calls.

3 years agoAvoid calling `poll_oneoff` with zero subscriptions. (#162)
Dan Gohman [Tue, 2 Jun 2020 02:00:30 +0000 (19:00 -0700)]
Avoid calling `poll_oneoff` with zero subscriptions. (#162)

* Avoid calling `poll_oneoff` with zero subscriptions.

With https://github.com/WebAssembly/WASI/pull/193 merged, WASI is moving
to make `poll_oneoff` with no arguments an error. Even though that's in
ephemeral and not yet in a snapshot, we can start to anticipate it in
libc:
 - Remove the `pause` function, since WASI has no signals and thus no
   way to ever wake it up short of having the host terminate it.
 - Make `poll` and `pselect` return `ENOTSUP` in the case of having no
   events to wait for.

* Remove `pause` from the defined-symbols.txt list.

* Fix __wasilibc_unmodified_upstream markers.

* Check for zero subscriptions, rather than zero events.

Make `poll` and `pselect` return `ENOTSUP` when asked to poll on zero
subscriptions, rather than when the systerm returns zero events.

While here, drop the `__wasilibc_unmodified_upstream` markers, which
were already pretty noisy here, and would be significantly worse with
this change.

* Add comments about the subtle relationship between nfds and nsubscriptions.

* Rewrite the comment.

* Fix code quotes.

3 years agoMerge the basics component into libc-bottom-half. (#199)
Dan Gohman [Mon, 1 Jun 2020 23:44:05 +0000 (16:44 -0700)]
Merge the basics component into libc-bottom-half. (#199)

We no longer have a need to maintain basics as a separate component.
Folding it into libc-bottom-half eliminates a fair amount of redundancy.

3 years agoRewrite the preopen functionality. (#173)
Dan Gohman [Mon, 1 Jun 2020 21:32:24 +0000 (14:32 -0700)]
Rewrite the preopen functionality. (#173)

* Rewrite the preopen functionality.

Rewrite the preopen functionality to be simpler, better organized,
and better integrated into WASI libc. Preopen support has diverged so
much from libpreopen that it no longer makes sense to track libpreopen
as an explicit upstream. And add more documentation.

* Fix missing #include.

* Fix a compilation error.

3 years agoReplace old <signal.h> support with emulated <signal.h> support. (#183)
Dan Gohman [Fri, 29 May 2020 20:07:52 +0000 (13:07 -0700)]
Replace old <signal.h> support with emulated <signal.h> support. (#183)

wasm doesn't support signals, so provide an emulation layer, enabled
with -D_WASI_EMULATED_SIGNAL and -lwasi-emulated-signal.

3 years agoReactor support. (#74)
Dan Gohman [Fri, 29 May 2020 16:09:58 +0000 (09:09 -0700)]
Reactor support. (#74)

* Add support for the Reactor model.

* Mark _activate and _start as wasm exports.

* Rename _activate to _initialize.

* Don't define `_fini`.

* Rename reactor-crt1.c to crt1-reactor.c.

3 years agoMake mmap() possible to use in a conformant way. (#197)
whitequark [Tue, 26 May 2020 19:49:13 +0000 (19:49 +0000)]
Make mmap() possible to use in a conformant way. (#197)

3 years agoMake munmap() actually work. (#198)
whitequark [Tue, 26 May 2020 19:14:52 +0000 (19:14 +0000)]
Make munmap() actually work. (#198)

Before this commit, he header of a mapped area, `struct map`, was
defined as follows:

    struct map {
        int prot;
        int flags;
        off_t offset;
        size_t length;
        char body[];
    };

Because the size and alignment of an `off_t` is 8 bytes, the entire
structure was padded to 24 bytes. However, the offset of `body` into
`struct map` was only 20 bytes. Therefore the code in mmap() and
munmap() did not agree on the offset from header to body.

This commit changes mmap() to skip the entire header, which is what
munmap() expects and what the size calculation uses.

3 years agobump version to 0.0~git20200114.1fad338-1~bpo10+pve1
Fabian Grünbichler [Thu, 14 May 2020 11:27:04 +0000 (13:27 +0200)]
bump version to 0.0~git20200114.1fad338-1~bpo10+pve1

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
3 years agoMerge tag 'debian/0.0_git20200114.1fad338-1' into proxmox/buster
Fabian Grünbichler [Thu, 14 May 2020 11:26:39 +0000 (13:26 +0200)]
Merge tag 'debian/0.0_git20200114.1fad338-1' into proxmox/buster

wasi-libc Debian release 0.0~git20200114.1fad338-1

4 years agoCI: use llvm 10.0.0 release (#194)
Pat Hickey [Mon, 6 Apr 2020 23:53:56 +0000 (16:53 -0700)]
CI: use llvm 10.0.0 release (#194)

* CI: use llvm 10.0.0 release

* ci: download mac over https, add -L flag to curl

* llvm 10 is shipping for ubuntu 18.04, which is reasonable

* llvm releases are now served from github! :tada:

* oops

* one of these days ill get it right

* love too program in yml

* missed the other spot to convert to 18.04

* mac ci: fix clang_dir

4 years agodebug
Pat Hickey [Fri, 3 Apr 2020 21:01:25 +0000 (14:01 -0700)]
debug

4 years agogithub ci: download llvm over https, add -L flag to curl
Pat Hickey [Fri, 3 Apr 2020 20:58:57 +0000 (13:58 -0700)]
github ci: download llvm over https, add -L flag to curl

L means follow redirects

4 years agoRelease 0.0~git20200114.1fad338-1 to Debian unstable.
Ximin Luo [Sat, 4 Apr 2020 01:54:21 +0000 (02:54 +0100)]
Release 0.0~git20200114.1fad338-1 to Debian unstable.

4 years agoUpdate changelog
Ximin Luo [Sat, 4 Apr 2020 01:54:05 +0000 (02:54 +0100)]
Update changelog

4 years agoUpdate upstream source from tag 'upstream/0.0_git20200114.1fad338'
Ximin Luo [Sat, 4 Apr 2020 01:51:34 +0000 (02:51 +0100)]
Update upstream source from tag 'upstream/0.0_git20200114.1fad338'

Update to upstream version '0.0~git20200114.1fad338'
with Debian dir 8e75f3f1d1816b432d31d0beee90cf9c9194a742

4 years agoNew upstream version 0.0~git20200114.1fad338
Ximin Luo [Sat, 4 Apr 2020 01:51:31 +0000 (02:51 +0100)]
New upstream version 0.0~git20200114.1fad338

4 years agoupdate watch file, and add instructions on updating the upstream source
Ximin Luo [Sat, 4 Apr 2020 01:38:40 +0000 (02:38 +0100)]
update watch file, and add instructions on updating the upstream source

4 years agoRelease 0.0~git20191220.a280fea-2 to Debian unstable.
Ximin Luo [Sat, 4 Apr 2020 00:12:57 +0000 (01:12 +0100)]
Release 0.0~git20191220.a280fea-2 to Debian unstable.

4 years agoAdded utime.h (#188)
Olaf Tomalka [Fri, 3 Apr 2020 22:39:43 +0000 (00:39 +0200)]
Added utime.h (#188)

* Added utime.h

* Changes after code review

* Auto-generated expected files instead of manually editing
* Fix libpreopoen stat and utime not following symlinks correctly

4 years agoregenerate api.h
Pat Hickey [Thu, 2 Apr 2020 22:46:19 +0000 (15:46 -0700)]
regenerate api.h

4 years agogen-headers: make handle output consistient with prior
Pat Hickey [Thu, 2 Apr 2020 21:45:52 +0000 (14:45 -0700)]
gen-headers: make handle output consistient with prior

4 years agowasi submodule: point to latest (witx 0.8.5 release)
Pat Hickey [Thu, 2 Apr 2020 21:45:33 +0000 (14:45 -0700)]
wasi submodule: point to latest (witx 0.8.5 release)

4 years agoUpdate libc-top-half/musl/README
Pat Hickey [Wed, 1 Apr 2020 18:25:43 +0000 (11:25 -0700)]
Update libc-top-half/musl/README

Co-Authored-By: Gabor Greif <ggreif@gmail.com>
4 years agoUpdate URL
Gabor Greif [Wed, 1 Apr 2020 10:13:17 +0000 (12:13 +0200)]
Update URL

4 years agoFix references to musl version
Gabor Greif [Wed, 1 Apr 2020 10:03:06 +0000 (12:03 +0200)]
Fix references to musl version

4 years agoMakefile refactoring; NFC (#186)
Dan Gohman [Fri, 20 Mar 2020 22:45:37 +0000 (15:45 -0700)]
Makefile refactoring; NFC (#186)

* Use ?= for variables intended to be overridable.

* Use `override` consistently for variables not meant to be overridden.

* Omit miscellaneous comments from the build output.

* Tidy up some comments.

* Use `addprefix` to factor out a common prefix.

* Add a comment.

* Reorganize.

* Adjust indentation.

* Simplify the logic for the `check` rule.

* Remove the `override` keywords.

They theoretically protect what the Makefile considers to be
implementation details from being overridden on the command-line,
but in practice this isn't super important, and they add a lot of
clutter.

* Put source file names on their own lines.

4 years agoLazy-initialize the environment variables. (#184)
Dan Gohman [Thu, 19 Mar 2020 16:32:41 +0000 (09:32 -0700)]
Lazy-initialize the environment variables. (#184)

* Lazy-initialize the environment variables.

This is the first in a series of PRs to make it easier to use WASI libc
in Wasm modules that don't have a `main` function. By initializing the
environment on demand, we avoid depending on having `__wasm_call_ctors`
run.

This uses weak symbols strategically to ensure that if `environ` is
used, it is initialized eagerly, but if only `getenv` and friends
are used, the environment is initialized lazily.

Eventually, I expect we'll have a convention for wasm modules without
main functions which will allow the `__wasm_call_ctors` function to be
called automatically, but this helps in simple cases for now.

Fixes #180.

* Add comments explaining the libc-environ-compat.h header usage.

4 years agoFix -std=gnu17 when generating predefined_macros.txt (#187)
Sam Clegg [Wed, 18 Mar 2020 11:26:57 +0000 (07:26 -0400)]
Fix -std=gnu17 when generating predefined_macros.txt (#187)

* Fix -std=gnu11 when generating predefined_macros.txt

The default recently changed in upstream clang:
https://reviews.llvm.org/D75383

We want to be immune to such things when generating this list so that
we can build wasi-libc with any recent clang version.

* 17

4 years agoMention libcxx and libcxxabi too.
Dan Gohman [Tue, 17 Mar 2020 23:21:10 +0000 (16:21 -0700)]
Mention libcxx and libcxxabi too.

4 years agoUpdate WASI Libc's README.md.
Dan Gohman [Tue, 10 Mar 2020 23:35:50 +0000 (16:35 -0700)]
Update WASI Libc's README.md.

Update the description, point users to wasi-sdk as a simpler place to
get started using this library, and remove old text about being a
"reference" implementation.

4 years agoMark as M-A: foreign for cross-compiling
Ximin Luo [Mon, 9 Mar 2020 00:41:46 +0000 (00:41 +0000)]
Mark as M-A: foreign for cross-compiling

4 years agoRelease 0.0~git20191220.a280fea-1 to Debian unstable.
Ximin Luo [Sun, 8 Mar 2020 22:38:24 +0000 (22:38 +0000)]
Release 0.0~git20191220.a280fea-1 to Debian unstable.

4 years agoAdd README.source
Ximin Luo [Sun, 8 Mar 2020 22:38:10 +0000 (22:38 +0000)]
Add README.source

4 years agoRewind changelog as those releases were REJECTed by FTP masters
Ximin Luo [Sun, 8 Mar 2020 22:36:03 +0000 (22:36 +0000)]
Rewind changelog as those releases were REJECTed by FTP masters

4 years agoFix copyright and update some more metadata
Ximin Luo [Sun, 8 Mar 2020 22:33:30 +0000 (22:33 +0000)]
Fix copyright and update some more metadata

4 years agoMulti-license wasi-libc under Apache and MIT licenses. (#174)
Dan Gohman [Sat, 29 Feb 2020 09:52:28 +0000 (01:52 -0800)]
Multi-license wasi-libc under Apache and MIT licenses. (#174)

Multi-license wasi-libc under the Apache-2.0 WITH LLVM-exception,
Apache-2.0, and MIT licenses.

4 years agoAdd support for `__main_argc_argv`.
Dan Gohman [Fri, 20 Dec 2019 23:14:02 +0000 (15:14 -0800)]
Add support for `__main_argc_argv`.

This adds support for the `__main_argc_argv` change, while preserving
compatibility with `__original_main`. This is needed by the LTO build
because the `__original_main` hack works in LLVM codegen, which is after
LTO. The `__main_argc_argv` change is implemented in clang, which makes
it properly visible to LTO.

4 years agoUpdate to musl 1.2.0.
Dan Gohman [Wed, 26 Feb 2020 16:56:59 +0000 (08:56 -0800)]
Update to musl 1.2.0.

See the WHATSNEW file for details. The biggest change in musl is the
switch to 64-bit time_t for 32-bit targets, however WASI libc was already
using 64-bit time_t. The main change affecting WASI is an update to
Unicode 12.1.0.

4 years agoUpdate to musl 1.1.24.
Dan Gohman [Mon, 14 Oct 2019 16:00:02 +0000 (09:00 -0700)]
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.

4 years agopoint at WASI with tagged unions merged into master
Pat Hickey [Tue, 18 Feb 2020 20:36:35 +0000 (12:36 -0800)]
point at WASI with tagged unions merged into master

4 years agorebased wasi repo branch
Pat Hickey [Fri, 14 Feb 2020 01:12:43 +0000 (17:12 -0800)]
rebased wasi repo branch

4 years agomain: get more useful help by requiring subcommand
Pat Hickey [Fri, 14 Feb 2020 00:48:33 +0000 (16:48 -0800)]
main: get more useful help by requiring subcommand

fake required arguments are no good

4 years agominor change in union AST in wasi- tag is namedtype
Pat Hickey [Fri, 14 Feb 2020 00:48:17 +0000 (16:48 -0800)]
minor change in union AST in wasi- tag is namedtype

4 years agolibc: change to flattened event struct
Pat Hickey [Wed, 12 Feb 2020 17:55:32 +0000 (09:55 -0800)]
libc: change to flattened event struct

4 years agoupdate to WASI where snashot event_u flattened to struct
Pat Hickey [Wed, 12 Feb 2020 17:49:07 +0000 (09:49 -0800)]
update to WASI where snashot event_u flattened to struct

4 years agocloudlibc & libpreopen: changes for tagged unions
Pat Hickey [Thu, 6 Feb 2020 21:21:11 +0000 (13:21 -0800)]
cloudlibc & libpreopen: changes for tagged unions

we decided to abandon the upstream code guarded by
 #ifdef __wasilibc_unmodified_upstream // non-anonymous unions
because these changes are sprawling and those guards are of diminishing
importance

4 years agowasi/api.h: regenerated with tagged unions
Pat Hickey [Thu, 6 Feb 2020 21:20:57 +0000 (13:20 -0800)]
wasi/api.h: regenerated with tagged unions

4 years agoWASI: tagged unions PR wip
Pat Hickey [Thu, 6 Feb 2020 21:19:58 +0000 (13:19 -0800)]
WASI: tagged unions PR wip

4 years agowasi-headers: unions are tagged now
Pat Hickey [Thu, 6 Feb 2020 21:19:44 +0000 (13:19 -0800)]
wasi-headers: unions are tagged now

4 years agoDefine a_clz_32 for musl so that it doesn't use a software version. (#171)
Dan Gohman [Fri, 21 Feb 2020 19:41:05 +0000 (11:41 -0800)]
Define a_clz_32 for musl so that it doesn't use a software version. (#171)

4 years agoWASI libc supports environment variables; update the README. (#172)
Dan Gohman [Fri, 21 Feb 2020 19:40:41 +0000 (11:40 -0800)]
WASI libc supports environment variables; update the README. (#172)

4 years agoRemove unused cloudlibc headers. (#170)
Dan Gohman [Fri, 21 Feb 2020 19:40:23 +0000 (11:40 -0800)]
Remove unused cloudlibc headers. (#170)

4 years agofix macos filename, use https
Pat Hickey [Wed, 19 Feb 2020 23:24:14 +0000 (15:24 -0800)]
fix macos filename, use https

4 years agoCI: upgrade to llvm 9.0.0
Pat Hickey [Wed, 19 Feb 2020 22:15:48 +0000 (14:15 -0800)]
CI: upgrade to llvm 9.0.0

4 years agoremove no-self-update workaround for windows azure
Pat Hickey [Wed, 19 Feb 2020 22:09:50 +0000 (14:09 -0800)]
remove no-self-update workaround for windows azure

4 years agodeprecate azure pipelines CI, build libc on GH Actions
Pat Hickey [Wed, 19 Feb 2020 01:46:29 +0000 (17:46 -0800)]
deprecate azure pipelines CI, build libc on GH Actions

4 years agoDon't call `free` on paths which are about to call `_Exit`. (#161)
Dan Gohman [Fri, 14 Feb 2020 22:02:59 +0000 (14:02 -0800)]
Don't call `free` on paths which are about to call `_Exit`. (#161)

This is a minor code-size optimization.

4 years agobump version for backport
Fabian Grünbichler [Thu, 13 Feb 2020 09:20:47 +0000 (10:20 +0100)]
bump version for backport

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
4 years agogen-headers: Generate assertions of layout from witx (#149)
Pat Hickey [Fri, 7 Feb 2020 21:21:18 +0000 (13:21 -0800)]
gen-headers: Generate assertions of layout from witx (#149)

* use pch/layout branch for witx; generate assertions of layout

* address review comments, add asserts for handle

* change wasm32 support comment to a preprocessor error

* expose `to_c_header` in wasi-headers crate for use in external test harness

* main.rs: inputs and output arguments are optional

so that generate-libc command works

* regen header

4 years agoCorrect minor typo in c_headers.rs (#166)
Daniel Bevenius [Fri, 7 Feb 2020 13:18:10 +0000 (14:18 +0100)]
Correct minor typo in c_headers.rs (#166)

The header api.h was update using the following command:
$ cd tools/wasi-headers
$ cargo run -- WASI/phases/snapshot/witx/typenames.witx \
  WASI/phases/snapshot/witx/wasi_snapshot_preview1.witx \
  --output ../../libc-bottom-half/headers/public/wasi/api.h

4 years agoConvert more wasi-libc code to `//`-style comments. (#153)
Dan Gohman [Fri, 17 Jan 2020 00:00:37 +0000 (16:00 -0800)]
Convert more wasi-libc code to `//`-style comments. (#153)

This is purely a style change, in accordance with #116.

4 years agoImprovements to wasi-headers tool (#160)
Pat Hickey [Tue, 14 Jan 2020 22:24:12 +0000 (14:24 -0800)]
Improvements to wasi-headers tool (#160)

* wasi-headers: update WASI submodule, handle changes to witx ast

* wasi-headers: restructure lib and exe to be more flexible

just factor out some of the hard-coded stuff

4 years agoFix environment variable init to exit successfully. (#159)
Dan Gohman [Tue, 14 Jan 2020 17:56:58 +0000 (09:56 -0800)]
Fix environment variable init to exit successfully. (#159)

This fixes https://github.com/bytecodealliance/wasmtime/issues/783.

4 years agoRelease 0.0~git20191220.a280fea-2 to Debian unstable.
Ximin Luo [Tue, 7 Jan 2020 15:45:28 +0000 (15:45 +0000)]
Release 0.0~git20191220.a280fea-2 to Debian unstable.

4 years agoDisable stack protector, wasi-libc doesn't support it yet
Ximin Luo [Tue, 7 Jan 2020 15:45:14 +0000 (15:45 +0000)]
Disable stack protector, wasi-libc doesn't support it yet

4 years agoInclude __stack_chk_fail and __stack_chk_guard
Ximin Luo [Tue, 7 Jan 2020 15:28:52 +0000 (15:28 +0000)]
Include __stack_chk_fail and __stack_chk_guard