![](https://secure.gravatar.com/avatar/df8330968b6df8cd1c1942c5fb4b720c.jpg?s=120&d=mm&r=g)
commit 4f3e2c3ba32c8c498a9db51e2107604bbcdf74f4 Author: Danny Rawlins <contact@romster.me> Date: Sat Dec 11 22:27:57 2021 +1100 wasi-libc: initial import diff --git a/wasi-libc/.footprint b/wasi-libc/.footprint new file mode 100644 index 000000000..fb9f41a94 --- /dev/null +++ b/wasi-libc/.footprint @@ -0,0 +1,234 @@ +drwxr-xr-x root/root usr/ +drwxr-xr-x root/root usr/share/ +drwxr-xr-x root/root usr/share/wasi-sysroot/ +drwxr-xr-x root/root usr/share/wasi-sysroot/include/ +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__errno.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__errno_values.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__fd_set.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__function___isatty.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__functions_malloc.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__functions_memcpy.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__header_dirent.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__header_fcntl.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__header_inttypes.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__header_netinet_in.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__header_poll.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__header_stdlib.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__header_string.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__header_sys_ioctl.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__header_sys_resource.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__header_sys_socket.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__header_sys_stat.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__header_time.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__header_unistd.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__macro_FD_SETSIZE.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__macro_PAGESIZE.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__mode_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__seek.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__struct_dirent.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__struct_in6_addr.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__struct_in_addr.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__struct_iovec.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__struct_msghdr.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__struct_pollfd.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__struct_rusage.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__struct_sockaddr.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__struct_sockaddr_in.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__struct_sockaddr_in6.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__struct_sockaddr_storage.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__struct_sockaddr_un.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__struct_stat.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__struct_timespec.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__struct_timeval.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__struct_tm.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__struct_tms.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_DIR.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_blkcnt_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_blksize_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_clock_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_clockid_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_dev_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_fd_set.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_gid_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_in_addr_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_in_port_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_ino_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_mode_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_nfds_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_nlink_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_off_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_sa_family_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_sigset_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_socklen_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_ssize_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_suseconds_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_time_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/__typedef_uid_t.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/alloca.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/ar.h +drwxr-xr-x root/root usr/share/wasi-sysroot/include/arpa/ +-rw-r--r-- root/root usr/share/wasi-sysroot/include/arpa/ftp.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/arpa/inet.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/arpa/nameser.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/arpa/nameser_compat.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/arpa/telnet.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/arpa/tftp.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/assert.h +drwxr-xr-x root/root usr/share/wasi-sysroot/include/bits/ +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/alltypes.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/dirent.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/fcntl.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/fenv.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/float.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/hwcap.h (EMPTY) +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/io.h (EMPTY) +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/ioctl.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/ioctl_fix.h (EMPTY) +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/ipcstat.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/limits.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/mman.h (EMPTY) +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/poll.h (EMPTY) +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/posix.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/reg.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/resource.h (EMPTY) +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/signal.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/socket.h (EMPTY) +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/stat.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/bits/stdint.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/byteswap.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/complex.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/cpio.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/crypt.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/ctype.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/dirent.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/endian.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/err.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/errno.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/fcntl.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/features.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/fenv.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/float.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/fmtmsg.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/fnmatch.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/ftw.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/getopt.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/glob.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/iconv.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/ifaddrs.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/inttypes.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/iso646.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/langinfo.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/libgen.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/limits.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/locale.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/malloc.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/math.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/memory.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/monetary.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/mqueue.h +drwxr-xr-x root/root usr/share/wasi-sysroot/include/net/ +drwxr-xr-x root/root usr/share/wasi-sysroot/include/netinet/ +-rw-r--r-- root/root usr/share/wasi-sysroot/include/netinet/icmp6.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/netinet/igmp.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/netinet/in.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/netinet/in_systm.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/netinet/ip.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/netinet/ip6.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/netinet/ip_icmp.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/netinet/tcp.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/netinet/udp.h +drwxr-xr-x root/root usr/share/wasi-sysroot/include/netpacket/ +-rw-r--r-- root/root usr/share/wasi-sysroot/include/netpacket/packet.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/nl_types.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/poll.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/regex.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sched.h +drwxr-xr-x root/root usr/share/wasi-sysroot/include/scsi/ +-rw-r--r-- root/root usr/share/wasi-sysroot/include/search.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/semaphore.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/signal.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/stdalign.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/stdbool.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/stdc-predef.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/stdint.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/stdio.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/stdio_ext.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/stdlib.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/stdnoreturn.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/string.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/strings.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/stropts.h +drwxr-xr-x root/root usr/share/wasi-sysroot/include/sys/ +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/dir.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/errno.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/eventfd.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/fcntl.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/file.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/ioctl.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/mman.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/param.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/poll.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/random.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/reg.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/resource.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/select.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/signal.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/socket.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/stat.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/stropts.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/syscall.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/sysinfo.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/time.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/timeb.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/times.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/timex.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/ttydefaults.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/types.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/uio.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/un.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sys/utsname.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/syscall.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/sysexits.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/tar.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/tgmath.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/threads.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/time.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/uchar.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/unistd.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/utime.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/values.h +drwxr-xr-x root/root usr/share/wasi-sysroot/include/wasi/ +-rw-r--r-- root/root usr/share/wasi-sysroot/include/wasi/api.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/wasi/libc-environ.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/wasi/libc-find-relpath.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/wasi/libc-nocwd.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/wasi/libc.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/wchar.h +-rw-r--r-- root/root usr/share/wasi-sysroot/include/wctype.h +drwxr-xr-x root/root usr/share/wasi-sysroot/lib/ +drwxr-xr-x root/root usr/share/wasi-sysroot/lib/wasm32-wasi/ +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/crt1-command.o +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/crt1-reactor.o +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/crt1.o +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/libc-printscan-long-double.a +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/libc-printscan-no-floating-point.a +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/libc.a +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/libc.imports +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/libcrypt.a +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/libdl.a +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/libm.a +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/libpthread.a +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/libresolv.a +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/librt.a +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/libutil.a +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-getpid.a +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-mman.a +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-process-clocks.a +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-signal.a +-rw-r--r-- root/root usr/share/wasi-sysroot/lib/wasm32-wasi/libxnet.a +drwxr-xr-x root/root usr/share/wasi-sysroot/share/ +drwxr-xr-x root/root usr/share/wasi-sysroot/share/wasm32-wasi/ +-rw-r--r-- root/root usr/share/wasi-sysroot/share/wasm32-wasi/defined-symbols.txt +-rw-r--r-- root/root usr/share/wasi-sysroot/share/wasm32-wasi/include-all.c +-rw-r--r-- root/root usr/share/wasi-sysroot/share/wasm32-wasi/predefined-macros.txt +-rw-r--r-- root/root usr/share/wasi-sysroot/share/wasm32-wasi/undefined-symbols.txt diff --git a/wasi-libc/.nostrip b/wasi-libc/.nostrip new file mode 100644 index 000000000..f29e12907 --- /dev/null +++ b/wasi-libc/.nostrip @@ -0,0 +1 @@ +usr/share/wasi-sysroot/lib/wasm32-wasi/.*\.a diff --git a/wasi-libc/.signature b/wasi-libc/.signature new file mode 100644 index 000000000..9d4e4e1a5 --- /dev/null +++ b/wasi-libc/.signature @@ -0,0 +1,5 @@ +untrusted comment: verify with /etc/ports/contrib.pub +RWSagIOpLGJF31Ws4RrgLhsx46xiPjVLblKQANUDNqRMsbHT4+HN+cJimHdYfyCL4Q2cLFjMNm3den95qB4TKXTQG8MRpIlRqAI= +SHA256 (Pkgfile) = 561b7a3e3ca213414ef7d2ed26fd4e72b01473a05fc78c7fca5851e8564e68cb +SHA256 (.footprint) = c0628cc7294ebe05a3a7f4c43cffc9aa31ac513281cccbd92ba96f4f9c9ea87b +SHA256 (ad5133410f66b93a2381db5b542aad5e0964db96.zip) = 1940c3843c834bfb23f8db3e0ea1bedbebfb3b5e13c87ec1ba411c245cd36d17 diff --git a/wasi-libc/Pkgfile b/wasi-libc/Pkgfile new file mode 100644 index 000000000..ef136a9e3 --- /dev/null +++ b/wasi-libc/Pkgfile @@ -0,0 +1,28 @@ +# Description: WASI libc implementation for WebAssembly +# URL: https://github.com/WebAssembly/wasi-libc +# Maintainer: Danny Rawlins, crux at romster dot me +# Depends on: clang + +name=wasi-libc +version=0+222+ad5133 +_commit=ad5133410f66b93a2381db5b542aad5e0964db96 +release=1 +source=(https://github.com/WebAssembly/wasi-libc/archive/$_commit.zip) + +build() { + cd $name-$_commit + + make \ + WASM_CC=/usr/bin/clang \ + WASM_AR=/usr/bin/llvm-ar \ + WASM_NM=/usr/bin/llvm-nm + + install -dm755 $PKG/usr/share + cp -dr --preserve=mode,timestamp sysroot $PKG/usr/share/wasi-sysroot + + cd $PKG/usr/share/wasi-sysroot/lib/wasm32-wasi + for f in *.a; do + /usr/bin/llvm-ranlib $f + /usr/bin/llvm-strip --strip-debug $f + done +}