https://github.com/lethalbit/uwu-efi
A clean, modern C++ 17 SDK for writing UEFI applications.
https://github.com/lethalbit/uwu-efi
uefi
Last synced: 10 months ago
JSON representation
A clean, modern C++ 17 SDK for writing UEFI applications.
- Host: GitHub
- URL: https://github.com/lethalbit/uwu-efi
- Owner: lethalbit
- License: bsd-3-clause
- Created: 2021-06-27T14:45:01.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2021-09-01T06:07:52.000Z (over 4 years ago)
- Last Synced: 2025-03-22T12:11:57.517Z (11 months ago)
- Topics: uefi
- Language: Python
- Homepage:
- Size: 57.6 KB
- Stars: 16
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# uwu-efi
A clean, modern C++ 17 SDK for writing UEFI applications.
uwu-efi is designed to be a fully UEFI 2.8 w/ Errata A standards compliant SDK for writing UEFI applications in either modern C++, or some support for UEFI Bytecode.
## Supported Platforms
uwu-efi is planned to fully support the following platforms,
| Platform | Status |
|------------|----------------|
| `aarch64` | `Planned` |
| `amd64` | `In Progress` |
| `rv64` | `Planned` |
## Configuring and Building
The following steps describe how to build the uwu-efi package
### Prerequisites
To build uwu-efi, ensure you have the following dependencies:
* git
* meson
* ninja
* g++ >= 8.4.0 or clang++ >= 8.0.1
Some support scripts that uwu-efi uses need the following:
* Python >= 3.7
* python-construct
* python-jinja2
### Configuring
You can build uwu-efi with the default options, all of which can be found in [`meson_options.txt`](meson_options.txt). You can change these by specifying `-D=` at initial meson invocation time, or with `meson configure` in the build directory post initial configure.
To change the install prefix, which is `/usr/local` by default ensure to pass `--prefix ` when running meson for the first time.
In either case, simply running `meson build` from the root of the repository will be sufficient and place all of the build files in the `build` subdirectory.
### Building
Once you have configured uwu-efi appropriately, to simply build and install simply run the following:
```
$ ninja -C build
$ ninja -C build install
```
This will build and install uwu-efi into the default prefix which is `/usr/local`, to change that see the configuration steps above.
### Notes to Package Maintainers
If you are building uwu-efi for inclusion in a distributions package system then ensure to set `DESTDIR` prior to running meson install.
There is also a `bugreport_url` configuration option that is set to this repositories issues tracker by default, it is recommended to change it to your distributions bug tracking page.
## Using uwu-efi and Documentation
TODO
## License
uwu-efi is licensed under the [BSD-3-Clause](https://spdx.org/licenses/BSD-3-Clause.html) license, the full text of which can be found in the [`LICENSE`](./LICENSE) file