[![Build status](https://github.com/devkitPro/wut/workflows/C%2FC%2B%2B%20CI/badge.svg)](https://github.com/devkitPro/wut/actions?workflow=C%2FC%2B%2B+CI) # wut Let's try to make a Wii U Toolchain / SDK for creating rpx/rpl. Licensed under the terms of the zlib License (see [LICENSE.txt](LICENSE.txt)). ## Install It is recommended to follow [devkitPro's Getting Started guide](https://devkitpro.org/wiki/Getting_Started), which will guide you through setting up a suitable homebrew development environment. [devkitPro Pacman](https://devkitpro.org/wiki/devkitPro_pacman) is exclusively used to manage installed homebrew development components. The following command installs all necessary packages for Wii U homebrew development, including wut: ``` (sudo) (dkp-)pacman -Syu --needed wiiu-dev ``` ## Usage See [samples](samples) for examples of how to use wut. devkitPro CMake provides some helpers for your build: - `wut_create_rpx(target)` - Will create an .rpx file from your CMake target generated by `add_executable` - `wut_create_rpl(target)` - Will create an .rpl file from your CMake target generated by `add_executable` - `wut_add_exports(target exports.def)` - Will add exports specified in exports.def for the given target ## Building wut projects ### Building wut projects with make You can easily build any devkitPro Makefile based wut project with the following commands: ``` cd samples/make/helloworld make ``` ### Building wut projects with CMake You can easily build any devkitPro CMake based wut project with the following commands: ``` cd samples/cmake/helloworld mkdir build && cd build /opt/devkitpro/portlibs/wiiu/bin/powerpc-eabi-cmake ../ make ``` A minimal CMakeLists.txt file for a C++ project might look like: ``` cmake_minimum_required(VERSION 3.7) project(helloworld_cpp CXX) add_executable(helloworld_cpp main.cpp) wut_create_rpx(helloworld_cpp) ``` ## Building from source **It is strongly recommended to stick to stable released packages installed with devkitPro Pacman.** Building wut is simple as running the following commands: ``` make (sudo -E) make install ```