Skip to content

tiawl/glfw.zig

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

glfw.zig

This is a fork of hexops/glfw which is itself a fork of glfw/glfw.

Why this forkception ?

The intention under this fork is the same as hexops had when they forked glfw/glfw: package it for Zig. So:

  • Unnecessary files have been deleted,
  • The build system has been replaced with build.zig.

However this repository has subtle differences for maintainability tasks:

  • No shell scripting,
  • A cron runs every day to check glfw/glfw. Then it updates this repository if a new release is available,
  • No support for macOS.

How to use it

The goal of this repository is not to provide a Zig binding for glfw/glfw. There are at least as many legit ways as possible to make a binding as there are active accounts on Github. So you are not going to find an answer for this question here. The point of this repository is to abstract the glfw/glfw compilation process with Zig (which is not new comers friendly and not easy to maintain) to let you focus on your application. So you can use glfw.zig:

  • as raw (see GLFW examples here),
  • as a daily updated interface for your Zig binding of glfw/glfw (see here for a private usage).

Important note

The current usage of this repository is centered around tiawl/cimgui.zig compilation. So for your usage it could break because some files have been filtered in the process. If it happens, open an issue: this repository is open to potential usage evolution.

Dependencies

The Zig part of this package is relying on the latest Zig release (0.13.0) and will only be updated for the next one (so for the 0.14.0).

Here the repositories' version used by this fork:

CICD reminder

These repositories are automatically updated when a new release is available:

This repository is automatically updated when a new release is available from these repositories:

zig build options

These additional options have been implemented for maintainability tasks:

  -Dfetch   Update .references folder and build.zig.zon then stop execution
  -Dupdate  Update binding

License

This repository is not subject to a unique License:

The parts of this repository originated from this repository are dedicated to the public domain. See the LICENSE file for more details.

For other parts, it is subject to the License restrictions their respective owners choosed. By design, the public domain code is incompatible with the License notion. In this case, the License prevails. So if you have any doubt about a file property, open an issue.