Building from source¶
YAOPL builds with the ps2dev toolchain image pinned in .github/workflows/compilation.yml (TOOLCHAIN_IMAGE):
git clone https://github.com/yaopl/yaopl.git && cd yaopl
docker run --rm -v "$PWD:/src" -w /src <TOOLCHAIN_IMAGE> sh -c 'git config --global --add safe.directory /src && make release'
make builds the ELF, make release also a ZIP of it with LICENSE and CREDITS. Use a full clone with
its tags: the version counts the commits since the last yaopl-v* release tag (make oplversion prints it).
The options are at the top of the Makefile:
| Option | Default | Effect |
|---|---|---|
PADEMU |
1 | DualShock 3/4 pad emulation and pad macros |
EXTRA_FEATURES |
0 | Sets RTL (right-to-left languages) and IGS (in-game screenshots) |
RTL, IGS |
EXTRA_FEATURES |
Each one on its own |
DTL_T10000 |
0 | A build for the DTL-T10000 development kit |
NOT_PACKED |
0 | Do not strip and compress the ELF |
LOCALVERSION |
yaopl |
The end of the version |
For example make PADEMU=0 EXTRA_FEATURES=1. make format formats the code with clang-format 12. The debug
builds (make debug, make iopcore_debug, ...) are listed in the Makefile.
This documentation¶
The site is built from docs/ and mkdocs.yml with Zensical:
pip install zensical==0.0.70
zensical serve
How changes to YAOPL are made and checked is in CONTRIBUTING.md.