Zig Toolsets
The Zig compiler and standard library packaged for use in MSBuild.
[![License](https://img.shields.io/badge/license-0BSD%20AND%20MIT-brown)](LICENSE-0BSD)
[![Commits](https://img.shields.io/github/commit-activity/m/vezel-dev/zig-toolsets/master?label=commits&color=slateblue)](https://github.com/vezel-dev/zig-toolsets/commits/master)
[![Build](https://img.shields.io/github/actions/workflow/status/vezel-dev/zig-toolsets/build.yml?branch=master)](https://github.com/vezel-dev/zig-toolsets/actions/workflows/build.yml)
[![Discussions](https://img.shields.io/github/discussions/vezel-dev/zig-sdk?color=teal)](https://github.com/vezel-dev/zig-sdk/discussions)
[![Discord](https://img.shields.io/badge/discord-chat-7289da?logo=discord)](https://discord.gg/wtzCfaX2Nj)
[![Zulip](https://img.shields.io/badge/zulip-chat-394069?logo=zulip)](https://vezel.zulipchat.com)
This project packs and distributes the Zig compiler and
standard library in a set of NuGet packages for each platform that .NET runs on.
These packages are mainly used by the Zig SDK
but can also be used by other projects.
- For every official release of Zig, a set of NuGet packages with the name
pattern
Vezel.Zig.Toolsets.<rid>
is published, where <rid>
is replaced
with linux-arm64
, osx-x64
, win-x86
, etc.
- Only the RIDs that .NET runs on are covered (so e.g.
Vezel.Zig.Toolsets.linux-x86
is not available).
- The package version matches the official Zig release's version, with an extra
fourth component added indicating the packaging version.
Usage
This project offers the following packages:
Package |
Description |
Downloads |
|
Provides the toolset for the linux-arm build platform. |
|
|
Provides the toolset for the linux-arm64 build platform. |
|
|
Provides the toolset for the linux-ppc64le build platform. |
|
|
Provides the toolset for the linux-riscv64 build platform. |
|
|
Provides the toolset for the linux-x64 build platform. |
|
|
Provides the toolset for the osx-arm64 build platform. |
|
|
Provides the toolset for the osx-x64 build platform. |
|
|
Provides the toolset for the win-arm64 build platform. |
|
|
Provides the toolset for the win-x64 build platform. |
|
|
Provides the toolset for the win-x86 build platform. |
|
To install a package, run dotnet add package <name>
.
The following MSBuild properties will be injected into your project:
ZigToolsetPath
: Path to the extracted toolset package directory in the NuGet
package cache.
ZigExePath
: Path to the Zig compiler executable (zig
or zig.exe
).
ZigLibPath
: Path to the Zig standard library.
ZigDocPath
: Path to the Zig standard library documentation.
Building
You will need the .NET SDK installed. Simply run ./cake
(a Bash script) to build artifacts.
Note that, on Windows, you must have a tar
program capable of extracting
.tar.xz
archives. For example, tar
from
Git for Windows or MSYS2
will satisfy this requirement.
License
This project is licensed under the terms found in
LICENSE-0BSD
.
The Zig compiler and standard library are licensed under the terms found in
LICENSE-MIT
.
The Zig logo is licensed under the terms found in
LICENSE-CC-BY-SA-4.0
.