2.2 KiB
Example plugin
This is just a simple example plugin which can be used as a template.
The plugin logs the FSOpenFile calls via UDP (Only when build via make DEBUG=1
).
The logging can be enabled/disabled via the WUPS Config menu (press L, DPAD Down and Minus on the GamePad, Pro Controller or Classic Controller).
Installation
([ENVIRONMENT]
is a placeholder for the actual environment name.)
- Copy the file
ExamplePlugin.wps
intosd:/wiiu/environments/[ENVIRONMENT]/plugins
. - Requires the WiiUPluginLoaderBackend in
sd:/wiiu/environments/[ENVIRONMENT]/modules
.
Start the environment (e.g Aroma) and the backend should load the plugin.
Building
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 should be able to compile via make
(with no logging) or make DEBUG=1
(with logging).
Buildflags
Logging
Building via make
only logs errors (via OSReport). To enable logging via the LoggingModule set DEBUG
to 1
or VERBOSE
.
make
Logs errors only (via OSReport).
make DEBUG=1
Enables information and error logging via LoggingModule.
make DEBUG=VERBOSE
Enables verbose information and error logging via LoggingModule.
If the LoggingModule is not present, it'll fallback to UDP (Port 4405) and CafeOS logging.
Building using the Dockerfile
It's possible to use a docker image for building. This way you don't need anything installed on your host system.
# Build docker image (only needed once)
docker build . -t example-plugin-builder
# make
docker run -it --rm -v ${PWD}:/project example-plugin-builder make DEBUG=1
# make clean
docker run -it --rm -v ${PWD}:/project example-plugin-builder make clean
Format the code via docker
docker run --rm -v ${PWD}:/src ghcr.io/wiiu-env/clang-format:13.0.0-2 -r ./src -i