diff options
| author | skal <pascal.massimino@gmail.com> | 2026-02-07 17:22:03 +0100 |
|---|---|---|
| committer | skal <pascal.massimino@gmail.com> | 2026-02-07 17:22:03 +0100 |
| commit | fb2aa8b608cb423b8b9f140b359b5a0dddbcb43c (patch) | |
| tree | c09f30ba2a4b646d6bd0ce082c9f9425a6c26b9d /CMakeLists.txt | |
| parent | 8c9815a210f457baafec36724d0d26e61bde52e4 (diff) | |
fix: Auto-regenerate assets after clean build
- Added GENERATED property to all generated files
- Added explicit dependencies: audio/3d/gpu libraries depend on generate_demo_assets
- Updated seq_compiler to use GpuContext instead of device/queue/format
- Removed stale test asset files from src/generated (now in build/src/generated_test)
Fixes 'fatal error: generated/assets.h file not found' after make clean.
All 28 tests pass.
Diffstat (limited to 'CMakeLists.txt')
| -rw-r--r-- | CMakeLists.txt | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index c2484af..53d0285 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -137,6 +137,11 @@ add_library(audio STATIC ${AUDIO_SOURCES}) add_library(3d STATIC ${3D_SOURCES}) add_library(gpu STATIC ${GPU_SOURCES}) +# Libraries must wait for asset generation (they include generated/assets.h) +add_dependencies(audio generate_demo_assets) +add_dependencies(3d generate_demo_assets) +add_dependencies(gpu generate_demo_assets) + target_include_directories(util PUBLIC ${CORE_INCLUDES}) target_include_directories(procedural PUBLIC ${CORE_INCLUDES}) target_include_directories(audio PUBLIC ${CORE_INCLUDES}) @@ -292,6 +297,12 @@ add_custom_target(generate_tracker_music ALL DEPENDS ${GENERATED_MUSIC_DATA_CC}) pack_assets(assets ${CMAKE_CURRENT_SOURCE_DIR}/assets/final/demo_assets.txt GEN_DEMO_H GEN_DEMO_CC generate_demo_assets) pack_test_assets(test_assets ${CMAKE_CURRENT_SOURCE_DIR}/assets/final/test_assets_list.txt GEN_TEST_H GEN_TEST_CC generate_test_assets) +# Mark generated files so CMake always checks if they need rebuilding +set_source_files_properties(${GEN_DEMO_H} ${GEN_DEMO_CC} PROPERTIES GENERATED TRUE) +set_source_files_properties(${GEN_TEST_H} ${GEN_TEST_CC} PROPERTIES GENERATED TRUE) +set_source_files_properties(${GENERATED_TIMELINE_CC} PROPERTIES GENERATED TRUE) +set_source_files_properties(${GENERATED_MUSIC_DATA_CC} PROPERTIES GENERATED TRUE) + #-- - Main Demo -- - add_demo_executable(demo64k src/main.cc ${PLATFORM_SOURCES} ${GEN_DEMO_CC} ${GENERATED_TIMELINE_CC} ${GENERATED_MUSIC_DATA_CC}) @@ -367,6 +378,10 @@ add_custom_command( ) add_custom_target(generate_test_demo_music ALL DEPENDS ${GENERATED_TEST_DEMO_MUSIC_CC}) +# Mark test_demo generated files as GENERATED +set_source_files_properties(${GENERATED_TEST_DEMO_TIMELINE_CC} PROPERTIES GENERATED TRUE) +set_source_files_properties(${GENERATED_TEST_DEMO_MUSIC_CC} PROPERTIES GENERATED TRUE) + # Build executable (uses main demo assets) add_demo_executable( test_demo |
