Skip to content

Commit 9f179f8

Browse files
authored
Allow building for wasm32-wasi target. (#42)
Signed-off-by: Piotr Sikora <piotrsikora@google.com>
1 parent 3aad1be commit 9f179f8

File tree

2 files changed

+31
-5
lines changed

2 files changed

+31
-5
lines changed

.github/workflows/rust.yml

Lines changed: 26 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -89,17 +89,28 @@ jobs:
8989
run: |
9090
rustup toolchain install stable --component clippy --component rustfmt
9191
rustup target add wasm32-unknown-unknown
92+
rustup target add wasm32-wasi
9293
93-
- name: Build
94+
- name: Build (wasm32-unknown-unknown)
9495
env:
9596
RUSTFLAGS: -D warnings -C link-args=-S
9697
run: cargo build --release --all-targets --target=wasm32-unknown-unknown
9798

98-
- name: Format (clippy)
99+
- name: Clippy (wasm32-unknown-unknown)
99100
env:
100101
RUSTFLAGS: -D warnings -C link-args=-S
101102
run: cargo clippy --release --all-targets --target=wasm32-unknown-unknown
102103

104+
- name: Build (wasm32-wasi)
105+
env:
106+
RUSTFLAGS: -D warnings -C link-args=-S
107+
run: cargo build --release --all-targets --target=wasm32-wasi
108+
109+
- name: Clippy (wasm32-wasi)
110+
env:
111+
RUSTFLAGS: -D warnings -C link-args=-S
112+
run: cargo clippy --release --all-targets --target=wasm32-wasi
113+
103114
- name: Format (rustfmt)
104115
run: cargo fmt -- --check
105116

@@ -122,18 +133,29 @@ jobs:
122133
run: |
123134
rustup toolchain install nightly --component clippy --component rustfmt
124135
rustup +nightly target add wasm32-unknown-unknown
136+
rustup +nightly target add wasm32-wasi
125137
rustup default nightly
126138
127-
- name: Build
139+
- name: Build (wasm32-unknown-unknown)
128140
env:
129141
RUSTFLAGS: -D warnings -C link-args=-S
130142
run: cargo build --release --all-targets --target=wasm32-unknown-unknown
131143

132-
- name: Format (clippy)
144+
- name: Clippy (wasm32-unknown-unknown)
133145
env:
134146
RUSTFLAGS: -D warnings -C link-args=-S
135147
run: cargo clippy --release --all-targets --target=wasm32-unknown-unknown
136148

149+
- name: Build (wasm32-wasi)
150+
env:
151+
RUSTFLAGS: -D warnings -C link-args=-S
152+
run: cargo build --release --all-targets --target=wasm32-wasi
153+
154+
- name: Clippy (wasm32-wasi)
155+
env:
156+
RUSTFLAGS: -D warnings -C link-args=-S
157+
run: cargo clippy --release --all-targets --target=wasm32-wasi
158+
137159
- name: Format (rustfmt)
138160
run: cargo fmt -- --check
139161

src/allocator.rs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,12 @@
1515
#[global_allocator]
1616
static ALLOC: wee_alloc::WeeAlloc = wee_alloc::WeeAlloc::INIT;
1717

18+
#[cfg_attr(
19+
all(target_arch = "wasm32", target_os = "unknown"),
20+
export_name = "malloc"
21+
)]
1822
#[no_mangle]
19-
pub extern "C" fn malloc(size: usize) -> *mut u8 {
23+
pub extern "C" fn proxy_on_memory_allocate(size: usize) -> *mut u8 {
2024
let mut vec: Vec<u8> = Vec::with_capacity(size);
2125
unsafe {
2226
vec.set_len(size);

0 commit comments

Comments
 (0)