Files
June dda143a42d docs: add build instructions to README (#174)
* docs: add build instructions to README

Resolves #7

Added comprehensive build documentation covering:
- Prerequisites (CMake 3.25+, C++20 compiler)
- Building included examples
- Integrating Aurora into game decomp projects
- Available CMake options

Verified on macOS with clang by successfully building the simple example.

* qa: fix --recursive flag (no submodules) and add missing AURORA_CACHE_USE_ZSTD option

- Remove --recursive from clone command: repo uses FetchContent, not submodules
- Document AURORA_CACHE_USE_ZSTD option (default: ON) that was missing from the list

* move build instructions to docs/building.md
2026-05-14 15:40:12 -06:00

1.4 KiB

Building

Prerequisites

  • CMake 3.25 or later
  • A C++20 compatible compiler (Clang, GCC, or MSVC)
  • Git (for cloning)

Building the Examples

To build Aurora's included examples:

git clone https://github.com/encounter/aurora.git
cd aurora
mkdir build && cd build
cmake ..
cmake --build . --target simple

The simple example demonstrates a minimal Aurora application with a blue screen. The built executable will be in build/examples/simple.

Using Aurora in Your Project

Aurora is designed to be integrated as a library in GameCube/Wii decompilation projects.

CMakeLists.txt example:

cmake_minimum_required(VERSION 3.25)
project(your_game)

# Add Aurora as a subdirectory
add_subdirectory(extern/aurora EXCLUDE_FROM_ALL)

# Create your executable
add_executable(your_game src/main.c)

# Link against Aurora components
target_link_libraries(your_game PRIVATE 
    aurora::core 
    aurora::gx 
    aurora::main 
    aurora::vi
)

See examples/simple.c for a minimal application template.

CMake Options

  • AURORA_ENABLE_GX (default: ON) - Enable GX implementation and WebGPU renderer
  • AURORA_ENABLE_DVD (default: OFF) - Enable DVD implementation backed by nod
  • AURORA_ENABLE_CARD (default: ON) - Enable CARD implementation based on kabufuda
  • AURORA_ENABLE_RMLUI (default: OFF) - Enable HTML/CSS based UI library
  • AURORA_CACHE_USE_ZSTD (default: ON) - Compress WebGPU cache entries with zstd