Skip to content

vezel-dev/zig-toolsets

Zig Toolsets

Zig Toolsets

The Zig compiler and standard library packaged for use in MSBuild.

License Commits Build Discussions Discord


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
Vezel.Zig.Toolsets.linux-arm Provides the toolset for the linux-arm build platform. Downloads
Vezel.Zig.Toolsets.linux-arm64 Provides the toolset for the linux-arm64 build platform. Downloads
Vezel.Zig.Toolsets.linux-ppc64le Provides the toolset for the linux-ppc64le build platform. Downloads
Vezel.Zig.Toolsets.linux-riscv64 Provides the toolset for the linux-riscv64 build platform. Downloads
Vezel.Zig.Toolsets.linux-x64 Provides the toolset for the linux-x64 build platform. Downloads
Vezel.Zig.Toolsets.osx-arm64 Provides the toolset for the osx-arm64 build platform. Downloads
Vezel.Zig.Toolsets.osx-x64 Provides the toolset for the osx-x64 build platform. Downloads
Vezel.Zig.Toolsets.win-arm64 Provides the toolset for the win-arm64 build platform. Downloads
Vezel.Zig.Toolsets.win-x64 Provides the toolset for the win-x64 build platform. Downloads
Vezel.Zig.Toolsets.win-x86 Provides the toolset for the win-x86 build platform. Downloads

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.