Go to file
Ash 276d923569
Enable LTO build (#77)
* fix(Makefile): Don't double up on optimisation flags

This is already provided by BUILD_CFLAGS later on

* feat(common): Mark explicitly-placed things as used

If we put something in a given section, we should be able to expect it to actually turn up in that section!

Doing this will prevent LTO from slurping all the hooks away as "unused".

* feat: Enable LTO

This uses "fat" binaries, so normal builds won't break, but also includes the LTO data for builds that wish to use it
2024-12-14 11:11:07 +01:00
.github/workflows Bump actions/checkout from 3 to 4 2024-05-05 14:41:06 +02:00
include Enable LTO build (#77) 2024-12-14 11:11:07 +01:00
libraries/libwups Add WUPSConfigAPI_GetMenuOpen() to detect if the config menu is open. (#76) 2024-11-28 19:43:24 +01:00
plugins StorageAPI: Update documentation and fix storage test plugin 2024-05-05 14:41:06 +02:00
share WUPS 0.6, add support for config and storage 2021-09-24 19:58:40 +02:00
.clang-format Add clang-format for formatting, check building the example in CI 2022-02-03 16:24:36 +01:00
.gitignore Update .gitignore 2022-05-13 12:31:49 +02:00
Dockerfile Update Dockerfiles 2024-05-05 14:41:06 +02:00
Dockerfile.buildexamples Update Dockerfiles 2024-05-05 14:41:06 +02:00
Dockerfile.buildlocal Update Dockerfiles 2024-05-05 14:41:06 +02:00
LICENSE Change LICENSE to LGPL 2022-09-04 10:33:37 +02:00
Makefile Enable LTO build (#77) 2024-12-14 11:11:07 +01:00
README.MD Example: Update the existing example_plugin and add C++ example plugin 2024-04-25 13:57:35 +02:00

Issue Tracker | Discord

What is the Wii U Plugin System?

The Wii U Plugin System is a library to create plugins for the WiiUPluginLoaderBackend. See the repository of the Backend for more information.

How create plugins

See the example plugin for more information about creating a plugin.

Compile and install the WUPS lib

For building you need:

Install them (in this order) according to their README's. Don't forget the dependencies of the libs itself.

Then you can compile and install this lib via make install.

Use this lib in Dockerfiles.

A prebuilt version of this lib can found on dockerhub. To use it for your projects, add this to your Dockerfile.

[...]
COPY --from=ghcr.io/wiiu-env/wiiupluginsystem:[tag] /artifacts $DEVKITPRO
[...]

Replace [tag] with a tag you want to use, a list of tags can be found here. It's highly recommended to pin the version to the latest date instead of using latest.

Format the code via docker

docker run --rm -v ${PWD}:/src ghcr.io/wiiu-env/clang-format:13.0.0-2 -r ./include ./libraries ./plugins/example_plugin/src ./plugins/example_plugin_cpp/src ./plugins/storage_test_plugin/src --exclude ./plugins/storage_test_plugin/src/catch2 -i