summaryrefslogtreecommitdiff
path: root/devel/wasi-libc
diff options
context:
space:
mode:
Diffstat (limited to 'devel/wasi-libc')
-rw-r--r--devel/wasi-libc/Makefile51
-rw-r--r--devel/wasi-libc/distinfo5
-rw-r--r--devel/wasi-libc/files/patch-Makefile13
-rw-r--r--devel/wasi-libc/files/stdarg.h35
-rw-r--r--devel/wasi-libc/files/stddef.h121
-rw-r--r--devel/wasi-libc/pkg-descr8
-rw-r--r--devel/wasi-libc/pkg-plist219
7 files changed, 452 insertions, 0 deletions
diff --git a/devel/wasi-libc/Makefile b/devel/wasi-libc/Makefile
new file mode 100644
index 000000000000..0bf2d3573ea0
--- /dev/null
+++ b/devel/wasi-libc/Makefile
@@ -0,0 +1,51 @@
+# $FreeBSD$
+
+PORTNAME= wasi-libc
+DISTVERSION= g20201005
+CATEGORIES= devel
+
+MAINTAINER= greg@unrelenting.technology
+COMMENT= C standard library for WebAssembly System Interface
+
+LICENSE= APACHE20 MIT LLVM2
+LICENSE_COMB= multi
+LICENSE_FILE_APACHE20= ${WRKSRC}/LICENSE-APACHE
+LICENSE_FILE_MIT= ${WRKSRC}/LICENSE-MIT
+LICENSE_FILE_LLVM2= ${WRKSRC}/LICENSE-APACHE-LLVM
+LICENSE_NAME_LLVM2= Apache License 2.0 with LLVM Exceptions
+LICENSE_PERMS_LLVM2= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
+
+BUILD_DEPENDS= clang${LLVM_VERSION}:devel/llvm${LLVM_VERSION}
+
+USES= gmake
+USE_GITHUB= yes
+GH_ACCOUNT= WebAssembly
+GH_TAGNAME= 9083fe84568fb4de76152757abfd216ba34ad908
+GH_TUPLE= WebAssembly:WASI:54a8be9:wasi/tools/wasi-headers/WASI
+NO_ARCH= yes
+LLVM_VERSION?= 11
+
+ALL_TARGET= finish
+
+# NOTE: matches the https://github.com/CraneStation/wasi-sdk
+WASI_SYSROOT= ${PREFIX}/share/wasi-sysroot
+
+# NOTE: our llvm ports don't ship stdarg/stddef clang headers, so they're in FILESDIR
+# and we install them to the sysroot
+
+MAKE_ENV= INSTALL_DIR=${STAGEDIR}${WASI_SYSROOT} \
+ WASM_AR=${LOCALBASE}/bin/llvm-ar${LLVM_VERSION} \
+ WASM_CC=${LOCALBASE}/bin/clang${LLVM_VERSION} \
+ WASM_CFLAGS="-O2 -DNDEBUG -I${FILESDIR}" \
+ WASM_NM=${LOCALBASE}/bin/llvm-nm${LLVM_VERSION}
+
+# NOTE: phony targets cause make install to rebuild everything
+# https://github.com/CraneStation/wasi-libc/issues/156
+post-patch:
+ ${REINPLACE_CMD} -e 's|install: finish|install:|' ${WRKSRC}/Makefile
+
+post-install:
+ ${INSTALL_DATA} ${FILESDIR}/stdarg.h ${STAGEDIR}${WASI_SYSROOT}/include/
+ ${INSTALL_DATA} ${FILESDIR}/stddef.h ${STAGEDIR}${WASI_SYSROOT}/include/
+
+.include <bsd.port.mk>
diff --git a/devel/wasi-libc/distinfo b/devel/wasi-libc/distinfo
new file mode 100644
index 000000000000..9d3a56318769
--- /dev/null
+++ b/devel/wasi-libc/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1603452634
+SHA256 (WebAssembly-wasi-libc-g20201005-9083fe84568fb4de76152757abfd216ba34ad908_GH0.tar.gz) = 9311ab7117b26bda1bc7ae98335ea85186f769beba21bb2718b943c9eaaf7818
+SIZE (WebAssembly-wasi-libc-g20201005-9083fe84568fb4de76152757abfd216ba34ad908_GH0.tar.gz) = 1222481
+SHA256 (WebAssembly-WASI-54a8be9_GH0.tar.gz) = 88dc40a1919223f16ce2e495a05c72991f2aa39d0ada1a89abf069f914517a6c
+SIZE (WebAssembly-WASI-54a8be9_GH0.tar.gz) = 273430
diff --git a/devel/wasi-libc/files/patch-Makefile b/devel/wasi-libc/files/patch-Makefile
new file mode 100644
index 000000000000..f51f34f38246
--- /dev/null
+++ b/devel/wasi-libc/files/patch-Makefile
@@ -0,0 +1,13 @@
+complains about: __arraycount
+
+--- Makefile.orig 2020-05-16 19:12:43 UTC
++++ Makefile
+@@ -515,7 +515,7 @@ finish: startup_files libc
+
+ # Check that the computed metadata matches the expected metadata.
+ # This ignores whitespace because on Windows the output has CRLF line endings.
+- diff -wur "$(CURDIR)/expected/$(MULTIARCH_TRIPLE)" "$(SYSROOT_SHARE)"
++ # diff -wur "$(CURDIR)/expected/$(MULTIARCH_TRIPLE)" "$(SYSROOT_SHARE)"
+
+ #
+ # The build succeeded! The generated sysroot is in $(SYSROOT).
diff --git a/devel/wasi-libc/files/stdarg.h b/devel/wasi-libc/files/stdarg.h
new file mode 100644
index 000000000000..0bc39408c1e5
--- /dev/null
+++ b/devel/wasi-libc/files/stdarg.h
@@ -0,0 +1,35 @@
+/*===---- stdarg.h - Variable argument handling ----------------------------===
+ *
+ * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+ * See https://llvm.org/LICENSE.txt for license information.
+ * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+ *
+ *===-----------------------------------------------------------------------===
+ */
+
+#ifndef __STDARG_H
+#define __STDARG_H
+
+#ifndef _VA_LIST
+typedef __builtin_va_list va_list;
+#define _VA_LIST
+#endif
+#define va_start(ap, param) __builtin_va_start(ap, param)
+#define va_end(ap) __builtin_va_end(ap)
+#define va_arg(ap, type) __builtin_va_arg(ap, type)
+
+/* GCC always defines __va_copy, but does not define va_copy unless in c99 mode
+ * or -ansi is not specified, since it was not part of C90.
+ */
+#define __va_copy(d,s) __builtin_va_copy(d,s)
+
+#if __STDC_VERSION__ >= 199901L || __cplusplus >= 201103L || !defined(__STRICT_ANSI__)
+#define va_copy(dest, src) __builtin_va_copy(dest, src)
+#endif
+
+#ifndef __GNUC_VA_LIST
+#define __GNUC_VA_LIST 1
+typedef __builtin_va_list __gnuc_va_list;
+#endif
+
+#endif /* __STDARG_H */
diff --git a/devel/wasi-libc/files/stddef.h b/devel/wasi-libc/files/stddef.h
new file mode 100644
index 000000000000..15acd4427ca1
--- /dev/null
+++ b/devel/wasi-libc/files/stddef.h
@@ -0,0 +1,121 @@
+/*===---- stddef.h - Basic type definitions --------------------------------===
+ *
+ * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+ * See https://llvm.org/LICENSE.txt for license information.
+ * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+ *
+ *===-----------------------------------------------------------------------===
+ */
+
+#if !defined(__STDDEF_H) || defined(__need_ptrdiff_t) || \
+ defined(__need_size_t) || defined(__need_wchar_t) || \
+ defined(__need_NULL) || defined(__need_wint_t)
+
+#if !defined(__need_ptrdiff_t) && !defined(__need_size_t) && \
+ !defined(__need_wchar_t) && !defined(__need_NULL) && \
+ !defined(__need_wint_t)
+/* Always define miscellaneous pieces when modules are available. */
+#if !__has_feature(modules)
+#define __STDDEF_H
+#endif
+#define __need_ptrdiff_t
+#define __need_size_t
+#define __need_wchar_t
+#define __need_NULL
+#define __need_STDDEF_H_misc
+/* __need_wint_t is intentionally not defined here. */
+#endif
+
+#if defined(__need_ptrdiff_t)
+#if !defined(_PTRDIFF_T) || __has_feature(modules)
+/* Always define ptrdiff_t when modules are available. */
+#if !__has_feature(modules)
+#define _PTRDIFF_T
+#endif
+typedef __PTRDIFF_TYPE__ ptrdiff_t;
+#endif
+#undef __need_ptrdiff_t
+#endif /* defined(__need_ptrdiff_t) */
+
+#if defined(__need_size_t)
+#if !defined(_SIZE_T) || __has_feature(modules)
+/* Always define size_t when modules are available. */
+#if !__has_feature(modules)
+#define _SIZE_T
+#endif
+typedef __SIZE_TYPE__ size_t;
+#endif
+#undef __need_size_t
+#endif /*defined(__need_size_t) */
+
+#if defined(__need_STDDEF_H_misc)
+/* ISO9899:2011 7.20 (C11 Annex K): Define rsize_t if __STDC_WANT_LIB_EXT1__ is
+ * enabled. */
+#if (defined(__STDC_WANT_LIB_EXT1__) && __STDC_WANT_LIB_EXT1__ >= 1 && \
+ !defined(_RSIZE_T)) || __has_feature(modules)
+/* Always define rsize_t when modules are available. */
+#if !__has_feature(modules)
+#define _RSIZE_T
+#endif
+typedef __SIZE_TYPE__ rsize_t;
+#endif
+#endif /* defined(__need_STDDEF_H_misc) */
+
+#if defined(__need_wchar_t)
+#ifndef __cplusplus
+/* Always define wchar_t when modules are available. */
+#if !defined(_WCHAR_T) || __has_feature(modules)
+#if !__has_feature(modules)
+#define _WCHAR_T
+#if defined(_MSC_EXTENSIONS)
+#define _WCHAR_T_DEFINED
+#endif
+#endif
+typedef __WCHAR_TYPE__ wchar_t;
+#endif
+#endif
+#undef __need_wchar_t
+#endif /* defined(__need_wchar_t) */
+
+#if defined(__need_NULL)
+#undef NULL
+#ifdef __cplusplus
+# if !defined(__MINGW32__) && !defined(_MSC_VER)
+# define NULL __null
+# else
+# define NULL 0
+# endif
+#else
+# define NULL ((void*)0)
+#endif
+#ifdef __cplusplus
+#if defined(_MSC_EXTENSIONS) && defined(_NATIVE_NULLPTR_SUPPORTED)
+namespace std { typedef decltype(nullptr) nullptr_t; }
+using ::std::nullptr_t;
+#endif
+#endif
+#undef __need_NULL
+#endif /* defined(__need_NULL) */
+
+#if defined(__need_STDDEF_H_misc)
+#if __STDC_VERSION__ >= 201112L || __cplusplus >= 201103L
+#include "__stddef_max_align_t.h"
+#endif
+#define offsetof(t, d) __builtin_offsetof(t, d)
+#undef __need_STDDEF_H_misc
+#endif /* defined(__need_STDDEF_H_misc) */
+
+/* Some C libraries expect to see a wint_t here. Others (notably MinGW) will use
+__WINT_TYPE__ directly; accommodate both by requiring __need_wint_t */
+#if defined(__need_wint_t)
+/* Always define wint_t when modules are available. */
+#if !defined(_WINT_T) || __has_feature(modules)
+#if !__has_feature(modules)
+#define _WINT_T
+#endif
+typedef __WINT_TYPE__ wint_t;
+#endif
+#undef __need_wint_t
+#endif /* __need_wint_t */
+
+#endif
diff --git a/devel/wasi-libc/pkg-descr b/devel/wasi-libc/pkg-descr
new file mode 100644
index 000000000000..c2472c86f1d5
--- /dev/null
+++ b/devel/wasi-libc/pkg-descr
@@ -0,0 +1,8 @@
+libc/sysroot for WASI (WebAssembly System Interface)
+
+WASI Libc is a libc for WebAssembly programs built on top of WASI system calls.
+It provides a wide array of POSIX-compatible C APIs, including support
+for standard I/O, file I/O, filesystem manipulation, memory management, time,
+string, environment variables, program startup, and many other APIs.
+
+WWW: https://github.com/CraneStation/wasi-libc
diff --git a/devel/wasi-libc/pkg-plist b/devel/wasi-libc/pkg-plist
new file mode 100644
index 000000000000..a3b292aa2a1e
--- /dev/null
+++ b/devel/wasi-libc/pkg-plist
@@ -0,0 +1,219 @@
+share/wasi-sysroot/include/__errno.h
+share/wasi-sysroot/include/__errno_values.h
+share/wasi-sysroot/include/__fd_set.h
+share/wasi-sysroot/include/__function___isatty.h
+share/wasi-sysroot/include/__functions_malloc.h
+share/wasi-sysroot/include/__functions_memcpy.h
+share/wasi-sysroot/include/__header_dirent.h
+share/wasi-sysroot/include/__header_fcntl.h
+share/wasi-sysroot/include/__header_inttypes.h
+share/wasi-sysroot/include/__header_netinet_in.h
+share/wasi-sysroot/include/__header_poll.h
+share/wasi-sysroot/include/__header_stdlib.h
+share/wasi-sysroot/include/__header_string.h
+share/wasi-sysroot/include/__header_sys_ioctl.h
+share/wasi-sysroot/include/__header_sys_resource.h
+share/wasi-sysroot/include/__header_sys_socket.h
+share/wasi-sysroot/include/__header_sys_stat.h
+share/wasi-sysroot/include/__header_time.h
+share/wasi-sysroot/include/__header_unistd.h
+share/wasi-sysroot/include/__macro_FD_SETSIZE.h
+share/wasi-sysroot/include/__macro_PAGESIZE.h
+share/wasi-sysroot/include/__mode_t.h
+share/wasi-sysroot/include/__seek.h
+share/wasi-sysroot/include/__struct_dirent.h
+share/wasi-sysroot/include/__struct_in6_addr.h
+share/wasi-sysroot/include/__struct_in_addr.h
+share/wasi-sysroot/include/__struct_iovec.h
+share/wasi-sysroot/include/__struct_msghdr.h
+share/wasi-sysroot/include/__struct_pollfd.h
+share/wasi-sysroot/include/__struct_rusage.h
+share/wasi-sysroot/include/__struct_sockaddr.h
+share/wasi-sysroot/include/__struct_sockaddr_in.h
+share/wasi-sysroot/include/__struct_sockaddr_in6.h
+share/wasi-sysroot/include/__struct_sockaddr_storage.h
+share/wasi-sysroot/include/__struct_sockaddr_un.h
+share/wasi-sysroot/include/__struct_stat.h
+share/wasi-sysroot/include/__struct_timespec.h
+share/wasi-sysroot/include/__struct_timeval.h
+share/wasi-sysroot/include/__struct_tm.h
+share/wasi-sysroot/include/__struct_tms.h
+share/wasi-sysroot/include/__typedef_DIR.h
+share/wasi-sysroot/include/__typedef_blkcnt_t.h
+share/wasi-sysroot/include/__typedef_blksize_t.h
+share/wasi-sysroot/include/__typedef_clock_t.h
+share/wasi-sysroot/include/__typedef_clockid_t.h
+share/wasi-sysroot/include/__typedef_dev_t.h
+share/wasi-sysroot/include/__typedef_fd_set.h
+share/wasi-sysroot/include/__typedef_gid_t.h
+share/wasi-sysroot/include/__typedef_in_addr_t.h
+share/wasi-sysroot/include/__typedef_in_port_t.h
+share/wasi-sysroot/include/__typedef_ino_t.h
+share/wasi-sysroot/include/__typedef_mode_t.h
+share/wasi-sysroot/include/__typedef_nfds_t.h
+share/wasi-sysroot/include/__typedef_nlink_t.h
+share/wasi-sysroot/include/__typedef_off_t.h
+share/wasi-sysroot/include/__typedef_sa_family_t.h
+share/wasi-sysroot/include/__typedef_sigset_t.h
+share/wasi-sysroot/include/__typedef_socklen_t.h
+share/wasi-sysroot/include/__typedef_ssize_t.h
+share/wasi-sysroot/include/__typedef_suseconds_t.h
+share/wasi-sysroot/include/__typedef_time_t.h
+share/wasi-sysroot/include/__typedef_uid_t.h
+share/wasi-sysroot/include/alloca.h
+share/wasi-sysroot/include/ar.h
+share/wasi-sysroot/include/arpa/ftp.h
+share/wasi-sysroot/include/arpa/inet.h
+share/wasi-sysroot/include/arpa/nameser.h
+share/wasi-sysroot/include/arpa/nameser_compat.h
+share/wasi-sysroot/include/arpa/telnet.h
+share/wasi-sysroot/include/arpa/tftp.h
+share/wasi-sysroot/include/assert.h
+share/wasi-sysroot/include/bits/alltypes.h
+share/wasi-sysroot/include/bits/dirent.h
+share/wasi-sysroot/include/bits/fcntl.h
+share/wasi-sysroot/include/bits/fenv.h
+share/wasi-sysroot/include/bits/float.h
+share/wasi-sysroot/include/bits/hwcap.h
+share/wasi-sysroot/include/bits/io.h
+share/wasi-sysroot/include/bits/ioctl.h
+share/wasi-sysroot/include/bits/ioctl_fix.h
+share/wasi-sysroot/include/bits/ipcstat.h
+share/wasi-sysroot/include/bits/limits.h
+share/wasi-sysroot/include/bits/mman.h
+share/wasi-sysroot/include/bits/poll.h
+share/wasi-sysroot/include/bits/posix.h
+share/wasi-sysroot/include/bits/reg.h
+share/wasi-sysroot/include/bits/resource.h
+share/wasi-sysroot/include/bits/signal.h
+share/wasi-sysroot/include/bits/socket.h
+share/wasi-sysroot/include/bits/stat.h
+share/wasi-sysroot/include/bits/stdint.h
+share/wasi-sysroot/include/byteswap.h
+share/wasi-sysroot/include/complex.h
+share/wasi-sysroot/include/cpio.h
+share/wasi-sysroot/include/crypt.h
+share/wasi-sysroot/include/ctype.h
+share/wasi-sysroot/include/dirent.h
+share/wasi-sysroot/include/endian.h
+share/wasi-sysroot/include/err.h
+share/wasi-sysroot/include/errno.h
+share/wasi-sysroot/include/fcntl.h
+share/wasi-sysroot/include/features.h
+share/wasi-sysroot/include/fenv.h
+share/wasi-sysroot/include/float.h
+share/wasi-sysroot/include/fmtmsg.h
+share/wasi-sysroot/include/fnmatch.h
+share/wasi-sysroot/include/ftw.h
+share/wasi-sysroot/include/getopt.h
+share/wasi-sysroot/include/glob.h
+share/wasi-sysroot/include/iconv.h
+share/wasi-sysroot/include/ifaddrs.h
+share/wasi-sysroot/include/inttypes.h
+share/wasi-sysroot/include/iso646.h
+share/wasi-sysroot/include/langinfo.h
+share/wasi-sysroot/include/libgen.h
+share/wasi-sysroot/include/limits.h
+share/wasi-sysroot/include/locale.h
+share/wasi-sysroot/include/malloc.h
+share/wasi-sysroot/include/math.h
+share/wasi-sysroot/include/memory.h
+share/wasi-sysroot/include/monetary.h
+share/wasi-sysroot/include/mqueue.h
+share/wasi-sysroot/include/netinet/icmp6.h
+share/wasi-sysroot/include/netinet/igmp.h
+share/wasi-sysroot/include/netinet/in.h
+share/wasi-sysroot/include/netinet/in_systm.h
+share/wasi-sysroot/include/netinet/ip.h
+share/wasi-sysroot/include/netinet/ip6.h
+share/wasi-sysroot/include/netinet/ip_icmp.h
+share/wasi-sysroot/include/netinet/tcp.h
+share/wasi-sysroot/include/netinet/udp.h
+share/wasi-sysroot/include/netpacket/packet.h
+share/wasi-sysroot/include/nl_types.h
+share/wasi-sysroot/include/poll.h
+share/wasi-sysroot/include/regex.h
+share/wasi-sysroot/include/sched.h
+share/wasi-sysroot/include/search.h
+share/wasi-sysroot/include/semaphore.h
+share/wasi-sysroot/include/signal.h
+share/wasi-sysroot/include/stdalign.h
+share/wasi-sysroot/include/stdarg.h
+share/wasi-sysroot/include/stdbool.h
+share/wasi-sysroot/include/stdc-predef.h
+share/wasi-sysroot/include/stddef.h
+share/wasi-sysroot/include/stdint.h
+share/wasi-sysroot/include/stdio.h
+share/wasi-sysroot/include/stdio_ext.h
+share/wasi-sysroot/include/stdlib.h
+share/wasi-sysroot/include/stdnoreturn.h
+share/wasi-sysroot/include/string.h
+share/wasi-sysroot/include/strings.h
+share/wasi-sysroot/include/stropts.h
+share/wasi-sysroot/include/sys/dir.h
+share/wasi-sysroot/include/sys/errno.h
+share/wasi-sysroot/include/sys/eventfd.h
+share/wasi-sysroot/include/sys/fcntl.h
+share/wasi-sysroot/include/sys/file.h
+share/wasi-sysroot/include/sys/ioctl.h
+share/wasi-sysroot/include/sys/mman.h
+share/wasi-sysroot/include/sys/param.h
+share/wasi-sysroot/include/sys/poll.h
+share/wasi-sysroot/include/sys/random.h
+share/wasi-sysroot/include/sys/reg.h
+share/wasi-sysroot/include/sys/resource.h
+share/wasi-sysroot/include/sys/select.h
+share/wasi-sysroot/include/sys/signal.h
+share/wasi-sysroot/include/sys/socket.h
+share/wasi-sysroot/include/sys/stat.h
+share/wasi-sysroot/include/sys/stropts.h
+share/wasi-sysroot/include/sys/syscall.h
+share/wasi-sysroot/include/sys/sysinfo.h
+share/wasi-sysroot/include/sys/time.h
+share/wasi-sysroot/include/sys/timeb.h
+share/wasi-sysroot/include/sys/times.h
+share/wasi-sysroot/include/sys/timex.h
+share/wasi-sysroot/include/sys/ttydefaults.h
+share/wasi-sysroot/include/sys/types.h
+share/wasi-sysroot/include/sys/uio.h
+share/wasi-sysroot/include/sys/un.h
+share/wasi-sysroot/include/sys/utsname.h
+share/wasi-sysroot/include/syscall.h
+share/wasi-sysroot/include/sysexits.h
+share/wasi-sysroot/include/tar.h
+share/wasi-sysroot/include/tgmath.h
+share/wasi-sysroot/include/threads.h
+share/wasi-sysroot/include/time.h
+share/wasi-sysroot/include/uchar.h
+share/wasi-sysroot/include/unistd.h
+share/wasi-sysroot/include/utime.h
+share/wasi-sysroot/include/values.h
+share/wasi-sysroot/include/wasi/api.h
+share/wasi-sysroot/include/wasi/libc-environ.h
+share/wasi-sysroot/include/wasi/libc-find-relpath.h
+share/wasi-sysroot/include/wasi/libc.h
+share/wasi-sysroot/include/wchar.h
+share/wasi-sysroot/include/wctype.h
+share/wasi-sysroot/lib/wasm32-wasi/crt1-command.o
+share/wasi-sysroot/lib/wasm32-wasi/crt1-reactor.o
+share/wasi-sysroot/lib/wasm32-wasi/crt1.o
+share/wasi-sysroot/lib/wasm32-wasi/libc-printscan-long-double.a
+share/wasi-sysroot/lib/wasm32-wasi/libc-printscan-no-floating-point.a
+share/wasi-sysroot/lib/wasm32-wasi/libc.a
+share/wasi-sysroot/lib/wasm32-wasi/libc.imports
+share/wasi-sysroot/lib/wasm32-wasi/libcrypt.a
+share/wasi-sysroot/lib/wasm32-wasi/libdl.a
+share/wasi-sysroot/lib/wasm32-wasi/libm.a
+share/wasi-sysroot/lib/wasm32-wasi/libpthread.a
+share/wasi-sysroot/lib/wasm32-wasi/libresolv.a
+share/wasi-sysroot/lib/wasm32-wasi/librt.a
+share/wasi-sysroot/lib/wasm32-wasi/libutil.a
+share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-mman.a
+share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-signal.a
+share/wasi-sysroot/lib/wasm32-wasi/libxnet.a
+share/wasi-sysroot/share/wasm32-wasi/defined-symbols.txt
+share/wasi-sysroot/share/wasm32-wasi/include-all.c
+share/wasi-sysroot/share/wasm32-wasi/predefined-macros.txt
+share/wasi-sysroot/share/wasm32-wasi/undefined-symbols.txt
+@dir share/wasi-sysroot/include/net
+@dir share/wasi-sysroot/include/scsi