Skip to content

Commit 1c052b8

Browse files
authored
new: water-go cross-platform support (#6)
Signed-off-by: Gaukas Wang <[email protected]>
1 parent c537dd8 commit 1c052b8

File tree

3 files changed

+46
-10
lines changed

3 files changed

+46
-10
lines changed

runtime/go.md

-10
This file was deleted.

runtime/go/cross-platform.md

+30
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
---
2+
layout: default
3+
title: Cross-platform Compatibility (Go)
4+
grand_parent: Runtime Library
5+
parent: Runtime Library in Go
6+
nav_order: 1
7+
---
8+
9+
# Cross-platform Support
10+
11+
The end goal of Project WATER is to provide a universal pluggable network transport layer that harnesses the power of WebAssembly to enable the Rapid Deployment of new network transport protocols on even the least flexible platforms such as smartphones with strict and slow app store review processes.
12+
13+
To achieve this, Project WATER is designed to be cross-platform and cross-architecture. The WATER maintainers are dedicated to expanding the cross-platform support of the runtime libraries to as many platforms as possible.
14+
15+
## Platform Support Matrix
16+
17+
Currently, `water` supports the following platforms:
18+
19+
| Target | Compiles? | Tests Pass? |
20+
| ------------------ | --------- | ----------- |
21+
| linux/amd64 |||
22+
| linux/arm64 |||
23+
| linux/riscv64 |||
24+
| macos/amd64 |||
25+
| macos/arm64 |||
26+
| windows/amd64 |||
27+
| windows/arm64 |||
28+
| others |||
29+
30+
Due to the absence of a machine in `windows/arm64`, we could not run tests on this platform. The compilation compatibility is tested by cross-compiling from `windows/amd64` to `windows/arm64`.

runtime/go/go.md

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
---
2+
layout: default
3+
title: Runtime Library in Go
4+
parent: Runtime Library
5+
nav_order: 1
6+
has_children: true
7+
permalink: /runtime/go.html
8+
---
9+
10+
# Runtime Library in Go
11+
12+
WATER Runtime Library for Go (a.k.a. `water-go`) is built with [wazero](https://github.com/tetratelabs/wazero) providing the WebAssembly runtime with WASI support, and implements an abstracted network programming interface that roughly ressembles the standard `net` package in Go.
13+
14+
## Cross-platform Support
15+
16+
Project WATER is designed to be cross-platform and cross-architecture. See [Cross-platform Compatibility (Go)](./go/cross-platform.html) for more details.

0 commit comments

Comments
 (0)