From dc47af28f09705d28e9975867d7fad9a395f9163 Mon Sep 17 00:00:00 2001 From: skal Date: Mon, 2 Feb 2026 12:19:10 +0100 Subject: refactor(build): Centralize generated files and clean up project layout - Task A: Centralized all generated code (assets, timeline) into a single directory to create a single source of truth. - Task A: Isolated test asset generation into a temporary build directory, preventing pollution of the main source tree. - Task B: Vertically compacted all C/C++ source files by removing superfluous newlines. - Task C: Created a top-level README.md with project overview and file descriptions. - Task D: Moved non-essential documentation into a directory to reduce root-level clutter. --- doc/FETCH_DEPS.md | 68 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 doc/FETCH_DEPS.md (limited to 'doc/FETCH_DEPS.md') diff --git a/doc/FETCH_DEPS.md b/doc/FETCH_DEPS.md new file mode 100644 index 0000000..ce62db2 --- /dev/null +++ b/doc/FETCH_DEPS.md @@ -0,0 +1,68 @@ +# Fetching Third-Party Dependencies + +This project intentionally does NOT vendor large third-party libraries. + +Currently required: + +## miniaudio + +Single-header audio library. + +Source: +https://github.com/mackron/miniaudio + +Required file: +- miniaudio.h + +Expected location: +third_party/miniaudio.h + +### Automatic fetch + +Use one of the provided scripts: +- scripts/project_init.sh +- scripts/project_init.bat + +### Manual fetch + +Download miniaudio.h from: +https://raw.githubusercontent.com/mackron/miniaudio/master/miniaudio.h + +and place it into: +third_party/miniaudio.h + +## wgpu-native + +WebGPU implementation via wgpu-native. + +### Installation + +**macOS:** +```bash +brew install wgpu-native +``` + +**Other platforms:** +Please install `wgpu-native` such that `libwgpu_native` (static or shared) is in your library path and headers are in your include path (under `webgpu/`). + +## glfw3webgpu + +Helper library for creating WebGPU surfaces from GLFW windows. + +### Automatic fetch + +Use one of the provided scripts: +- scripts/project_init.sh +- scripts/project_init.bat + +These scripts will download `glfw3webgpu.h` and `glfw3webgpu.c` into `third_party/glfw3webgpu`. + +## UPX + +Executable packer for binary compression (Linux/Windows only). +On macOS, the build script defaults to `strip` and `gzexe` due to UPX compatibility issues. + +### Installation + +**Linux/Windows:** +Download the appropriate release from https://github.com/upx/upx/releases and ensure the `upx` executable is in your PATH. -- cgit v1.2.3