https://github.com/kassane/winpthreads-zigbuild
The Winpthreads Library for Zig toolchain
https://github.com/kassane/winpthreads-zigbuild
mingw mingw-w64 windows zig-package
Last synced: 4 days ago
JSON representation
The Winpthreads Library for Zig toolchain
- Host: GitHub
- URL: https://github.com/kassane/winpthreads-zigbuild
- Owner: kassane
- License: other
- Created: 2023-03-28T13:48:04.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-03-17T18:59:45.000Z (4 months ago)
- Last Synced: 2025-06-03T11:38:29.705Z (about 1 month ago)
- Topics: mingw, mingw-w64, windows, zig-package
- Language: C
- Homepage: https://sourceforge.net/p/mingw-w64/mingw-w64/
- Size: 708 KB
- Stars: 12
- Watchers: 3
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: COPYING
- Authors: AUTHORS
Awesome Lists containing this project
README
The Winpthreads Library for Zig
-----------------------[](https://github.com/kassane/winpthreads-zigbuild/actions/workflows/build.yml)
Based on: https://github.com/ziglang/zig/issues/10989
solved:
https://github.com/ziglang/zig/pull/22156 (Zig v0.14.0)Zig v0.6 ~ v0.13.0 toolchain/MinGW don't includes `winpthreads`.
This library provides POSIX threading APIs for mingw-w64.
For maximum compatibility, winpthreads headers expose APIs without the
`dllimport` attribute by default. If your program is linked against the
DLL, you may define the `WINPTHREADS_USE_DLLIMPORT` macro to add the
`dllimport` attribute to all APIs, which makes function calls to them a
bit more efficient.How to use
---------**Requires:** zig v0.12.0 or v0.13.0
* Make a project:
```bash
mkdir your-project-folder
cd your-project-folder
# generate both (exe and lib template w/ build.zig & build.zig.zon)
zig init
# get latest version (commit-tag or branch)
zig fetch git+https://github.com/kassane/winpthreads-zigbuild#main
```* Add on current project:
```bash
# (w/ build.zig & build.zig.zon)
cd your-project-folder
# get latest version
zig fetch git+https://github.com/kassane/winpthreads-zigbuild#main # or #commit-tag
```**Warn:** `main` branch changes commit hashes.