Beyley / ztyping

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ztyping

A reimplementation of UTyping in Zig, using wgpu-native for rendering

Platforms

Active platform support

  • Linux x86_64 glibc (x86_64-linux-gnu)

Compiles, ran at one point

Compiles, untested

  • MacOS aarch64 (aarch64-macos)

Does not compile

  • Linux x86_64 musl (x86_64-linux-musl)

Compilation

Setup the environment

Install the latest Zig 0.12.x from https://ziglang.org/ (or your favourite package manager)
Latest tested working version is 0.12.0-dev.1396+f6de3ec96, any newer or older versions may or may not work

Extras

Linux host

TODO

MacOS host

TODO

Windows host

TODO

Lets do it

Debug build

$ zig build

Release build

$ zig build -Doptimize=ReleaseFast

Options, explained

-Doptimize=X Sets the optimization settings for the compilation, possible options are:

  • Debug
  • ReleaseFast
  • ReleaseSmall
  • ReleaseSafe

-Dwgpu_from_source=true/false Whether to build wgpu-native from source or not, using the wgpu-native submodule, see here for info about setting up

-Dtarget=X Sets the target machine of the compilation, possible options are listed here in parentheses, below is a matrix of supported cross compilation targets, host on the top, target on the left

Linux x86_64 glibc Linux x86_64 musl MacOS x86_64 MacOS arm64 Windows x86_64 Windows arm64
Linux x86_64 glibc βœ”οΈ 🟨 ❌ ❓ βœ”οΈ βœ”οΈ
Linux x86_64 musl ❌ ❓ ❌ ❓ βœ”οΈ βœ”οΈ
MacOS x86_64 βœ”οΈ 🟨 βœ”οΈ 🟨 βœ”οΈ βœ”οΈ
MacOS arm64 βœ”οΈ 🟨 βœ”οΈ 🟨 βœ”οΈ βœ”οΈ
Windows x86_64 βœ”οΈ 🟨 βœ”οΈ 🟨 βœ”οΈ βœ”οΈ
Windows arm64 ❌ ❓ ❓ ❓ ❓ ❌
Windows x86 ❌ ❓ ❓ ❓ ❓ ❓

Notes

  • Native compilation will act differently than cross compilation, this table is specifically referencing cross compilation

βœ”οΈ = Tested working
🚧 = In progress
❌ = Broken
❓ = Untested, but likely broken
🟨 = Untested, but likely functional

Compiling wgpu-native from source

Why?

Allows debug builds and rapid modifications of wgpu-native, without packaging a library yourself

How?

Uses cross to setup a container for cross compilation of rust code, follow their setup instructions beforehand

From/to?

Linux x86_64 glibc Linux x86_64 musl MacOS x86_64 MacOS arm64 Windows x86_64
Linux x86_64 glibc βœ”οΈ 🟨 🟨 🟨 🟨
Linux x86_64 musl ❓ ❓ ❓ ❓ ❓
MacOS x86_64 ❌ ❌ 🟨 🟨 ❓
MacOS arm64 ❌ ❌ 🟨 🟨 ❓
Windows x86_64 βœ”οΈ 🟨 🟨 🟨 🟨
Windows x86 ❓ ❓ ❓ ❓ ❓

About


Languages

Language:Zig 99.3%Language:WGSL 0.7%