Let's try make a Wii U Toolchain / SDK for creating rpx/rpl.
Go to file
Crayon 78ee1c51bc Add Nunchuk/CC emulated sticks, KPAD accelerometer data, WPAD/KPAD documentation (#114)
* Add emulated stick values for Nunchuk and Classic Controller

* Add acceleration sensor data to KPADStatus

I have also changed the posValid type from uint8_t to int8_t because the value can be negative.
A negative value means that the result validity is not really good.

* Set version to beta in the doc

* Added mask for button C and button Z on the Nunchuk

The same mask applies to WPADButton and WPADNunchukButton.

* Add doxygen comments and fix typos

Most of the comments are pretty obvious but at least it's a start.

* Fix a copy-paste error in my last commit

I have also added comments for VPADGetTPCalibrationParam and VPADSetTPCalibrationParam.

* Add documentation for all buttons
2020-01-20 17:38:29 +11:00
.github/workflows Move from travis to github actions. 2019-11-20 17:25:50 +00:00
cafe cafe: remove snd_core and snd_user 2019-05-04 20:56:31 +10:00
docs Add Nunchuk/CC emulated sticks, KPAD accelerometer data, WPAD/KPAD documentation (#114) 2020-01-20 17:38:29 +11:00
include Add Nunchuk/CC emulated sticks, KPAD accelerometer data, WPAD/KPAD documentation (#114) 2020-01-20 17:38:29 +11:00
libraries wutstdc++: Use OSSetThreadRunQuantum in gthread implementation. 2020-01-18 10:58:02 +00:00
samples samples/cmake: Update to use new cmake functions. 2019-11-23 10:12:28 +00:00
share wut.toolchain.cmake: Add internal library directories to find path 2019-12-01 10:24:13 +11:00
tests Update tests to use new cmake functions. 2019-11-23 10:14:59 +00:00
.gitignore samples: port helloworld to make 2019-04-09 19:15:24 +10:00
CHANGELOG.md cafe: remove snd_core and snd_user 2019-05-04 20:56:31 +10:00
LICENSE.md Create LICENSE.md 2015-12-27 02:16:34 +00:00
Makefile prevent .a rule from devkitPPC/base_rules taking priority (macOS make 3.81) 2019-11-25 14:36:10 +00:00
README.md Update README.md to reflect changes to cmake functions. 2019-11-23 10:13:41 +00:00

Build status

wut

Let's try make a Wii U Toolchain / SDK for creating rpx/rpl.

Licensed under the terms of the GNU General Public License, version 2 or later (GPLv2+).

Install

It is recommended to install wut by using the devkitPro package manager

For example you might do:

sudo dkp-pacman -Syu devkitPPC wut-tools wut

Usage

See samples for examples of how to use wut.

The share/wut.cmake file 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 from source

Requires:

Building with devkitPPC

Ensure you have the devkitPPC and wut-tools packages provided by devkitPro:

sudo dkp-pacman -Syu devkitPPC wut-tools
export DEVKITPRO=/opt/devkitpro
export DEVKITPPC=/opt/devkitpro/devkitPPC

Then it's as simple as running make or make install:

make
make install

Building with a locally built wut-tools

If you have locally built wut-tools then just add the directory containing the built binaries to PATH and they should be used instead:

export PATH=/path/to/wut-tools/bin:$PATH
make

Building wut projects

Building wut projects with make

Simply export the required variables and call make.

export DEVKITPRO=/opt/devkitpro
export DEVKITPPC=/opt/devkitpro/devkitPPC
make

Building wut projects with CMake

For any wut project you want to build with CMake you must use the wut.toolchain.cmake toolchain file:

export DEVKITPRO=/opt/devkitpro
cd samples/cmake/helloworld
mkdir build && cd build
cmake -DCMAKE_TOOLCHAIN_FILE=$DEVKITPRO/wut/share/wut.toolchain.cmake ../
make

A minimal CMakeLists.txt file for a C++ project might look like:

cmake_minimum_required(VERSION 3.2)
project(helloworld_cpp CXX)
include("${DEVKITPRO}/wut/share/wut.cmake" REQUIRED)

add_executable(helloworld_cpp main.cpp)
wut_create_rpx(helloworld_cpp.rpx helloworld_cpp)