libui-ng-sys
Rust bindings to libui-ng.
Features
build
This feature is enabled by default. When build is enabled, the libui-ng-sys build script automatically fetches, compiles, and statically links libui-ng to the final build product. Otherwise, when build is disabled, the system libui-ng is linked dynamically.
This feature may require external dependencies that cannot be automatically fetched by libui-ng-sys. The following sections list requirements for different values of $CARGO_CFG_TARGET_OS.
All
linux
- GTK3 ≥ v3.10.0
- Note: GTK4 is not currently supported; this is a limitation of libui-ng.
- pkg-config
- Used to detect GTK dependency libraries and include search paths.
windows
- Windows 10 or 11 SDK
These may be acquired from the Visual Studio Installer.
Other
Other targets are not currently supported.
build-with-ninja
This feature is enabled by default and implies build. When build-with-ninja is enabled, libui-ng is built with Ninja.
windows
Building with Ninja requires that certain compiler components are included in your $PATH. In this case, it may be best to build libui-ng-sys while in a Developer Command Prompt.
build-ninja
This feature is enabled by default and implies build-with-ninja. When build-ninja is enabled, Ninja is automatically fetched, compiled, and used to build libui-ng.
build-with-msvc
This feature implies build. When build-with-msvc is enabled, libui-ng is built with the system MSVC.
windows
The following Visual Studio components are required:
- MSVC C++ x64/x86 build tools
- C++ Clang Compiler for Windows
build-with-xcode
This feature implies build. When build-with-xcode is enabled, libui-ng is built with Xcode.
macos
- Xcode
Version Mapping
When the build feature is enabled, libui-ng-sys requires libui-ng, Meson, and possibly Ninja as dependencies, but Rust crates do not exist for them yet. To work around this, these are included as Git submodules. The latest commit hashes of the submodules are documented below for each version of libui-ng-sys.
0.2.0–0.4.3
| Dependency | Commit Hash |
|---|---|
| libui-ng | 42641e3d6bfb2c49ca4cc3b03d8ae277d9841a5d |
| Meson | 09ad4e28f1a59ab3d87de6f36540a108e836cfe5 |
| Ninja | 25cdbae0ee1270a5c8dd6ba67696e29ad8076919 |
0.1.0
| Dependency | Commit Hash |
|---|---|
| libui-ng | 42641e3d6bfb2c49ca4cc3b03d8ae277d9841a5d |