summaryrefslogtreecommitdiff
path: root/cmake/DemoOptions.cmake
blob: 92151195fa75ef703f620bf1c121ed8d7e0310e1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# Build Option Declarations
# All build configuration options for demo64k

# Size optimization flags
option(DEMO_SIZE_OPT "Enable size optimization flags" OFF)
option(DEMO_STRIP_ALL "Strip all unnecessary code for final build" OFF)
option(DEMO_FINAL_STRIP "Strip ALL error checking for final-final build" OFF)
option(DEMO_STRIP_EXTERNAL_LIBS "Stub external libs for size measurement (binary won't run)" OFF)

# Feature toggles
option(DEMO_BUILD_TESTS "Build tests" OFF)
option(DEMO_BUILD_TOOLS "Build tools" OFF)
option(DEMO_ENABLE_COVERAGE "Enable code coverage generation (macOS only)" OFF)
option(DEMO_ENABLE_DEBUG_LOGS "Enable all debug logging (for pre-commit checks)" OFF)
option(DEMO_HEADLESS "Build headless mode (functional stubs for testing)" OFF)
option(DEMO_ALL_OPTIONS "Activate all options at once" OFF)

# Workspace selection
set(DEMO_WORKSPACE "main" CACHE STRING "Active workspace (main, test, etc.)")