diff options
| author | skal <pascal.massimino@gmail.com> | 2026-02-09 19:34:46 +0100 |
|---|---|---|
| committer | skal <pascal.massimino@gmail.com> | 2026-02-09 19:34:46 +0100 |
| commit | f449fe7f78e059d455dfefcf4b09d763363f6344 (patch) | |
| tree | 0a1e6ebfc42025e4e72200d3c34e2bf799a32aa8 /scripts/test_headless.sh | |
| parent | dd42eeef53df8ea36f436986f915f29986c094a3 (diff) | |
feat: Add headless mode for testing without GPU
Implements DEMO_HEADLESS build option for fast iteration cycles:
- Functional GPU/platform stubs (not pure no-ops like STRIP_EXTERNAL_LIBS)
- Audio and timeline systems work normally
- No rendering overhead
- Useful for CI, audio development, timeline validation
Files added:
- doc/HEADLESS_MODE.md - Documentation
- src/gpu/headless_gpu.cc - Validated GPU stubs
- src/platform/headless_platform.cc - Time simulation (60Hz)
- scripts/test_headless.sh - End-to-end test script
Usage:
cmake -B build_headless -DDEMO_HEADLESS=ON
cmake --build build_headless -j4
./build_headless/demo64k --headless --duration 30
Progress printed every 5s. Compatible with --dump_wav mode.
handoff(Claude): Task #76 follow-up - headless mode complete
Diffstat (limited to 'scripts/test_headless.sh')
| -rwxr-xr-x | scripts/test_headless.sh | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/scripts/test_headless.sh b/scripts/test_headless.sh new file mode 100755 index 0000000..a18ed09 --- /dev/null +++ b/scripts/test_headless.sh @@ -0,0 +1,22 @@ +#!/bin/bash +# Test headless mode build and execution +# Workspace: demo (shared across all workspaces) + +set -e + +echo "=== Headless Mode Test ===" +echo + +echo "1. Configuring..." +cmake -S . -B build_headless -DDEMO_HEADLESS=ON + +echo +echo "2. Building..." +cmake --build build_headless -j4 + +echo +echo "3. Running 5s test..." +./build_headless/demo64k --headless --duration 5 + +echo +echo "=== Test Complete ===" |
