2022-02-11 19:57:54 +01:00
[![Publish Docker Image ](https://github.com/wiiu-env/libfunctionpatcher/actions/workflows/push_image.yml/badge.svg )](https://github.com/wiiu-env/libfunctionpatcher/actions/workflows/push_image.yml)
2021-04-07 15:51:49 +02:00
# libfunctionpatcher
2022-02-11 19:56:35 +01:00
Requires the [FunctionPatcherModule ](https://github.com/wiiu-env/FunctionPatcherModule ) to be running via [WUMSLoader ](https://github.com/wiiu-env/WUMSLoader ).
2020-06-06 22:20:11 +02:00
Requires [wut ](https://github.com/decaf-emu/wut ) for building.
2021-04-07 15:51:49 +02:00
Install via `make install` .
## Usage
When linking, make sure to add the `libfunctionpatcher.ld` file to the LDFLAGS.
Example:
```
LDFLAGS = -g $(ARCH) $(RPXSPECS) -Wl,-Map,$(notdir $*.map) -T$(WUMS_ROOT)/share/libfunctionpatcher.ld
```
Make also sure to define
```
WUMS_ROOT := $(DEVKITPRO)/wums
```
and add `-lfunctionpatcher` to `LIBS` and `$(WUMS_ROOT)` to `LIBDIRS` .
After that you can simply include `<function_patcher/function_patching.h>` to get access to the function patcher functions.
## 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=wiiuenv/libfunctionpatcher:[tag] /artifacts $DEVKITPRO
[...]
```
Replace [tag] with a tag you want to use, a list of tags can be found [here ](https://hub.docker.com/r/wiiuenv/libfunctionpatcher/tags ).
2022-02-11 19:57:54 +01:00
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 wiiuenv/clang-format:13.0.0-2 -r ./source ./include -i`