@@ -26,14 +26,10 @@ OBJDIR ?= build/$(TARGET_TRIPLE)
2626# The directory where we store files and tools for generating WASI Preview 2 bindings
2727BINDING_WORK_DIR ?= build/bindings
2828# URL from which to retrieve the WIT files used to generate the WASI Preview 2 bindings
29- WASI_CLI_URL ?= https://github.com/WebAssembly/wasi-cli/archive/refs/tags/v0.2.0-rc-2023-12-05 .tar.gz
29+ WASI_CLI_URL ?= https://github.com/WebAssembly/wasi-cli/archive/refs/tags/v0.2.0.tar.gz
3030# URL from which to retrieve the `wit-bindgen` command used to generate the WASI
3131# Preview 2 bindings.
32- #
33- # TODO: Switch to bytecodealliance/wit-bindgen 0.17.0 once it's released (which
34- # will include https://github.com/bytecodealliance/wit-bindgen/pull/804 and
35- # https://github.com/bytecodealliance/wit-bindgen/pull/805, which we rely on)
36- WIT_BINDGEN_URL ?= https://github.com/dicej/wit-bindgen/releases/download/wit-bindgen-cli-0.17.0-dicej-pre0/wit-bindgen-v0.17.0-dicej-pre0-x86_64-linux.tar.gz
32+ WIT_BINDGEN_URL ?= https://github.com/bytecodealliance/wit-bindgen/releases/download/wit-bindgen-cli-0.17.0/wit-bindgen-v0.17.0-x86_64-linux.tar.gz
3733
3834# When the length is no larger than this threshold, we consider the
3935# overhead of bulk memory opcodes to outweigh the performance benefit,
@@ -854,40 +850,41 @@ $(BINDING_WORK_DIR)/wit-bindgen:
854850bindings : $(BINDING_WORK_DIR ) /wasi-cli $(BINDING_WORK_DIR ) /wit-bindgen
855851 cd " $( BINDING_WORK_DIR) " && \
856852 ./wit-bindgen/wit-bindgen c \
853+ --autodrop-borrows yes \
857854 --rename-world preview2 \
858855 --type-section-suffix __wasi_libc \
859- --world wasi:cli/imports@0.2.0-rc-2023-12-05 \
860- --rename wasi:clocks/monotonic-clock@0.2.0-rc-2023-11-10 =monotonic_clock \
861- --rename wasi:clocks/wall-clock@0.2.0-rc-2023-11-10 =wall_clock \
862- --rename wasi:filesystem/preopens@0.2.0-rc-2023-11-10 =filesystem_preopens \
863- --rename wasi:filesystem/types@0.2.0-rc-2023-11-10 =filesystem \
864- --rename wasi:io/error@0.2.0-rc-2023-11-10 =io_error \
865- --rename wasi:io/poll@0.2.0-rc-2023-11-10 =poll \
866- --rename wasi:io/streams@0.2.0-rc-2023-11-10 =streams \
867- --rename wasi:random/insecure-seed@0.2.0-rc-2023-11-10 =random_insecure_seed \
868- --rename wasi:random/insecure@0.2.0-rc-2023-11-10 =random_insecure \
869- --rename wasi:random/random@0.2.0-rc-2023-11-10 =random \
870- --rename wasi:sockets/instance-network@0.2.0-rc-2023-11-10 =instance_network \
871- --rename wasi:sockets/ip-name-lookup@0.2.0-rc-2023-11-10 =ip_name_lookup \
872- --rename wasi:sockets/network@0.2.0-rc-2023-11-10 =network \
873- --rename wasi:sockets/tcp-create-socket@0.2.0-rc-2023-11-10 =tcp_create_socket \
874- --rename wasi:sockets/tcp@0.2.0-rc-2023-11-10 =tcp \
875- --rename wasi:sockets/udp-create-socket@0.2.0-rc-2023-11-10 =udp_create_socket \
876- --rename wasi:sockets/udp@0.2.0-rc-2023-11-10 =udp \
877- --rename wasi:cli/environment@0.2.0-rc-2023-12-05 =environment \
878- --rename wasi:cli/exit@0.2.0-rc-2023-12-05 =exit \
879- --rename wasi:cli/stdin@0.2.0-rc-2023-12-05 =stdin \
880- --rename wasi:cli/stdout@0.2.0-rc-2023-12-05 =stdout \
881- --rename wasi:cli/stderr@0.2.0-rc-2023-12-05 =stderr \
882- --rename wasi:cli/terminal-input@0.2.0-rc-2023-12-05 =terminal_input \
883- --rename wasi:cli/terminal-output@0.2.0-rc-2023-12-05 =terminal_output \
884- --rename wasi:cli/terminal-stdin@0.2.0-rc-2023-12-05 =terminal_stdin \
885- --rename wasi:cli/terminal-stdout@0.2.0-rc-2023-12-05 =terminal_stdout \
886- --rename wasi:cli/terminal-stderr@0.2.0-rc-2023-12-05 =terminal_stderr \
856+ --world wasi:cli/imports@0.2.0 \
857+ --rename wasi:clocks/monotonic-clock@0.2.0=monotonic_clock \
858+ --rename wasi:clocks/wall-clock@0.2.0=wall_clock \
859+ --rename wasi:filesystem/preopens@0.2.0=filesystem_preopens \
860+ --rename wasi:filesystem/types@0.2.0=filesystem \
861+ --rename wasi:io/error@0.2.0=io_error \
862+ --rename wasi:io/poll@0.2.0=poll \
863+ --rename wasi:io/streams@0.2.0=streams \
864+ --rename wasi:random/insecure-seed@0.2.0=random_insecure_seed \
865+ --rename wasi:random/insecure@0.2.0=random_insecure \
866+ --rename wasi:random/random@0.2.0=random \
867+ --rename wasi:sockets/instance-network@0.2.0=instance_network \
868+ --rename wasi:sockets/ip-name-lookup@0.2.0=ip_name_lookup \
869+ --rename wasi:sockets/network@0.2.0=network \
870+ --rename wasi:sockets/tcp-create-socket@0.2.0=tcp_create_socket \
871+ --rename wasi:sockets/tcp@0.2.0=tcp \
872+ --rename wasi:sockets/udp-create-socket@0.2.0=udp_create_socket \
873+ --rename wasi:sockets/udp@0.2.0=udp \
874+ --rename wasi:cli/environment@0.2.0=environment \
875+ --rename wasi:cli/exit@0.2.0=exit \
876+ --rename wasi:cli/stdin@0.2.0=stdin \
877+ --rename wasi:cli/stdout@0.2.0=stdout \
878+ --rename wasi:cli/stderr@0.2.0=stderr \
879+ --rename wasi:cli/terminal-input@0.2.0=terminal_input \
880+ --rename wasi:cli/terminal-output@0.2.0=terminal_output \
881+ --rename wasi:cli/terminal-stdin@0.2.0=terminal_stdin \
882+ --rename wasi:cli/terminal-stdout@0.2.0=terminal_stdout \
883+ --rename wasi:cli/terminal-stderr@0.2.0=terminal_stderr \
887884 ./wasi-cli/wit && \
888885 mv preview2.h ../../libc-bottom-half/headers/public/wasi/ && \
889886 mv preview2_component_type.o ../../libc-bottom-half/sources && \
890- sed ' s_#include "preview2.h"_#include "wasi/preview2.h"_' \
887+ sed ' s_#include "preview2\ .h"_#include "wasi/preview2.h"_' \
891888 < preview2.c \
892889 > ../../libc-bottom-half/sources/preview2.c && \
893890 rm preview2.c
0 commit comments