diff --git a/CMakeLists.txt b/CMakeLists.txt index 5a471c4..1f887f5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,6 +9,10 @@ set(CMAKE_C_STANDARD 11) set(CMAKE_C_STANDARD_REQUIRED ON) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules) +option(ENABLE_TESTS "Enable tests" ON) + + +# Set target system if(NOT DEFINED DUSK_TARGET_SYSTEM) set(DUSK_TARGET_SYSTEM "linux") # set(DUSK_TARGET_SYSTEM "psp") @@ -27,9 +31,10 @@ set(DUSK_DATA_DIR "${DUSK_ROOT_DIR}/data") set(DUSK_ASSETS_DIR "${DUSK_ROOT_DIR}/assets") set(DUSK_BUILT_ASSETS_DIR "${DUSK_BUILD_DIR}/built_assets" CACHE INTERNAL ${DUSK_CACHE_TARGET}) set(DUSK_GENERATED_HEADERS_DIR "${DUSK_BUILD_DIR}/generated") -set(DUSK_TARGET_NAME "Dusk" CACHE INTERNAL ${DUSK_CACHE_TARGET}) set(DUSK_BUILD_BINARY ${DUSK_BUILD_DIR}/Dusk CACHE INTERNAL ${DUSK_CACHE_TARGET}) set(DUSK_ASSETS "" CACHE INTERNAL ${DUSK_CACHE_TARGET}) +set(DUSK_LIBRARY_TARGET_NAME "DuskCore" CACHE INTERNAL ${DUSK_CACHE_TARGET}) +set(DUSK_BINARY_TARGET_NAME "Dusk" CACHE INTERNAL ${DUSK_CACHE_TARGET}) # Create directories file(MAKE_DIRECTORY ${DUSK_GENERATED_HEADERS_DIR}) @@ -42,14 +47,23 @@ if(DUSK_TARGET_SYSTEM STREQUAL "psp") find_package(pspsdk REQUIRED) endif() -# Init Project -project(${DUSK_TARGET_NAME} +# Init Project. +project(${DUSK_LIBRARY_TARGET_NAME} VERSION 1.0.0 LANGUAGES C ) -# Executable -add_executable(${DUSK_TARGET_NAME}) +# MainLibrary +add_library(${DUSK_LIBRARY_TARGET_NAME}) + +# Binary Executable +add_executable(${DUSK_BINARY_TARGET_NAME}) + +# Link library to binary and test +target_link_libraries(${DUSK_BINARY_TARGET_NAME} + PUBLIC + ${DUSK_LIBRARY_TARGET_NAME} +) # Add tools add_subdirectory(tools) @@ -61,7 +75,7 @@ add_subdirectory(assets) if(DUSK_TARGET_SYSTEM STREQUAL "linux") find_package(SDL2 REQUIRED) find_package(OpenGL REQUIRED) - target_link_libraries(${DUSK_TARGET_NAME} PRIVATE + target_link_libraries(${DUSK_LIBRARY_TARGET_NAME} PRIVATE SDL2 OpenGL::GL GL @@ -70,7 +84,7 @@ if(DUSK_TARGET_SYSTEM STREQUAL "linux") elseif(DUSK_TARGET_SYSTEM STREQUAL "psp") find_package(SDL2 REQUIRED) find_package(OpenGL REQUIRED) - target_link_libraries(${DUSK_TARGET_NAME} PUBLIC + target_link_libraries(${DUSK_LIBRARY_TARGET_NAME} PUBLIC ${SDL2_LIBRARIES} SDL2 OpenGL::GL @@ -81,7 +95,7 @@ elseif(DUSK_TARGET_SYSTEM STREQUAL "psp") mbedcrypto lzma ) - target_include_directories(${DUSK_TARGET_NAME} PRIVATE + target_include_directories(${DUSK_LIBRARY_TARGET_NAME} PRIVATE ${SDL2_INCLUDE_DIRS} ) endif() @@ -89,6 +103,12 @@ endif() # Add code add_subdirectory(src) +# Handle tests +if(ENABLE_TESTS) + enable_testing() + add_subdirectory(test) +endif() + # Build assets add_custom_target(DUSK_ASSETS_BUILT ALL COMMAND @@ -99,21 +119,21 @@ add_custom_target(DUSK_ASSETS_BUILT ALL --headers-dir ${DUSK_GENERATED_HEADERS_DIR} --input ${DUSK_ASSETS} ) -add_dependencies(${DUSK_TARGET_NAME} DUSK_ASSETS_BUILT) +add_dependencies(${DUSK_LIBRARY_TARGET_NAME} DUSK_ASSETS_BUILT) # Include generated headers -target_include_directories(${DUSK_TARGET_NAME} PUBLIC +target_include_directories(${DUSK_LIBRARY_TARGET_NAME} PUBLIC ${DUSK_GENERATED_HEADERS_DIR} ) # Postbuild if(DUSK_TARGET_SYSTEM STREQUAL "psp") create_pbp_file( - TARGET "${DUSK_TARGET_NAME}" + TARGET "${DUSK_LIBRARY_TARGET_NAME}" ICON_PATH NULL BACKGROUND_PATH NULL PREVIEW_PATH NULL - TITLE "${DUSK_TARGET_NAME}" + TITLE "${DUSK_LIBRARY_TARGET_NAME}" PSAR_PATH ${DUSK_BUILD_DIR}/dusk.dsk VERSION 01.00 ) diff --git a/assets/CMakeLists.txt b/assets/CMakeLists.txt index b2527f4..ce61067 100644 --- a/assets/CMakeLists.txt +++ b/assets/CMakeLists.txt @@ -3,7 +3,7 @@ # This software is released under the MIT License. # https://opensource.org/licenses/MIT -set(DUSK_GAME_ASSETS_DIR "${CMAKE_CURRENT_SOURCE_DIR}" CACHE INTERNAL ${DUSK_CACHE_TARGET}) +set(DUSK_GAME_ASSETS_DIR "${CMAKE_CURRENT_SOURCE_DIR}" CACHE INTERNAL "Game assets directory") # Palette asset needs to be added before any images. add_subdirectory(palette) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 07a48d5..d2d5491 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -18,7 +18,7 @@ if(Lua_FOUND AND NOT TARGET Lua::Lua) endif() # Libs -target_link_libraries(${DUSK_TARGET_NAME} +target_link_libraries(${DUSK_LIBRARY_TARGET_NAME} PUBLIC m cglm @@ -28,21 +28,23 @@ target_link_libraries(${DUSK_TARGET_NAME} ) # Includes -target_include_directories(${DUSK_TARGET_NAME} - PRIVATE +target_include_directories(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC ${CMAKE_CURRENT_LIST_DIR} ) # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE + +# Main Binary Source +target_sources(${DUSK_BINARY_TARGET_NAME} + PUBLIC main.c ) # Defs add_defs(duskdefs.env duskdefs.h) -target_compile_definitions(${DUSK_TARGET_NAME} - PRIVATE +target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC DUSK_TARGET_SYSTEM="${DUSK_TARGET_SYSTEM}" ) diff --git a/src/assert/CMakeLists.txt b/src/assert/CMakeLists.txt index ca33cd5..af43017 100644 --- a/src/assert/CMakeLists.txt +++ b/src/assert/CMakeLists.txt @@ -4,7 +4,7 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC assert.c ) \ No newline at end of file diff --git a/src/asset/CMakeLists.txt b/src/asset/CMakeLists.txt index 399ef34..6b4648a 100644 --- a/src/asset/CMakeLists.txt +++ b/src/asset/CMakeLists.txt @@ -4,8 +4,8 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC asset.c ) diff --git a/src/asset/type/CMakeLists.txt b/src/asset/type/CMakeLists.txt index 1acad3d..cb4aafb 100644 --- a/src/asset/type/CMakeLists.txt +++ b/src/asset/type/CMakeLists.txt @@ -4,8 +4,8 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC assetalphaimage.c assetpaletteimage.c assetlanguage.c diff --git a/src/debug/CMakeLists.txt b/src/debug/CMakeLists.txt index 1bd53e4..f8e8529 100644 --- a/src/debug/CMakeLists.txt +++ b/src/debug/CMakeLists.txt @@ -4,8 +4,8 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC debug.c ) diff --git a/src/display/CMakeLists.txt b/src/display/CMakeLists.txt index a48f0d0..a579281 100644 --- a/src/display/CMakeLists.txt +++ b/src/display/CMakeLists.txt @@ -4,8 +4,8 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC display.c framebuffer.c camera.c @@ -20,16 +20,16 @@ add_subdirectory(palette) add_subdirectory(tileset) if(DUSK_TARGET_SYSTEM STREQUAL "linux") - target_compile_definitions(${DUSK_TARGET_NAME} - PRIVATE + target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC DISPLAY_SDL2=1 DISPLAY_WINDOW_WIDTH_DEFAULT=1080 DISPLAY_WINDOW_HEIGHT_DEFAULT=810 DISPLAY_SCREEN_HEIGHT_DEFAULT=270 ) elseif(DUSK_TARGET_SYSTEM STREQUAL "psp") - target_compile_definitions(${DUSK_TARGET_NAME} - PRIVATE + target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC DISPLAY_SDL2=1 DISPLAY_WINDOW_WIDTH_DEFAULT=480 DISPLAY_WINDOW_HEIGHT_DEFAULT=272 diff --git a/src/display/mesh/CMakeLists.txt b/src/display/mesh/CMakeLists.txt index 9befe9a..10b3cbe 100644 --- a/src/display/mesh/CMakeLists.txt +++ b/src/display/mesh/CMakeLists.txt @@ -4,8 +4,8 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC mesh.c quad.c ) \ No newline at end of file diff --git a/src/display/palette/CMakeLists.txt b/src/display/palette/CMakeLists.txt index 15c3bec..0b31e39 100644 --- a/src/display/palette/CMakeLists.txt +++ b/src/display/palette/CMakeLists.txt @@ -4,6 +4,6 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC ) \ No newline at end of file diff --git a/src/display/tileset/CMakeLists.txt b/src/display/tileset/CMakeLists.txt index 2be6457..5d521d0 100644 --- a/src/display/tileset/CMakeLists.txt +++ b/src/display/tileset/CMakeLists.txt @@ -4,7 +4,7 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC tileset.c ) \ No newline at end of file diff --git a/src/engine/CMakeLists.txt b/src/engine/CMakeLists.txt index 48dfead..84851ec 100644 --- a/src/engine/CMakeLists.txt +++ b/src/engine/CMakeLists.txt @@ -4,7 +4,7 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC engine.c ) \ No newline at end of file diff --git a/src/engine/engine.h b/src/engine/engine.h index b75d350..6394fdd 100644 --- a/src/engine/engine.h +++ b/src/engine/engine.h @@ -6,7 +6,9 @@ */ #pragma once -#include "display/display.h"// Important to be included first. + +// Important to be included first: +#include "display/display.h" #include "error/error.h" typedef struct { diff --git a/src/error/CMakeLists.txt b/src/error/CMakeLists.txt index b246fdb..e683922 100644 --- a/src/error/CMakeLists.txt +++ b/src/error/CMakeLists.txt @@ -4,7 +4,7 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC error.c ) \ No newline at end of file diff --git a/src/input/CMakeLists.txt b/src/input/CMakeLists.txt index 1426f89..9524354 100644 --- a/src/input/CMakeLists.txt +++ b/src/input/CMakeLists.txt @@ -4,24 +4,24 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC input.c inputbutton.c inputaction.c ) if(DUSK_TARGET_SYSTEM STREQUAL "linux") - target_compile_definitions(${DUSK_TARGET_NAME} - PRIVATE + target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC INPUT_SDL2=1 INPUT_KEYBOARD=1 INPUT_MOUSE=1 INPUT_GAMEPAD=1 ) elseif(DUSK_TARGET_SYSTEM STREQUAL "psp") - target_compile_definitions(${DUSK_TARGET_NAME} - PRIVATE + target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC INPUT_SDL2=1 INPUT_GAMEPAD=1 ) diff --git a/src/locale/CMakeLists.txt b/src/locale/CMakeLists.txt index 6ba5c6d..0feecf4 100644 --- a/src/locale/CMakeLists.txt +++ b/src/locale/CMakeLists.txt @@ -4,7 +4,7 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC localemanager.c ) \ No newline at end of file diff --git a/src/rpg/CMakeLists.txt b/src/rpg/CMakeLists.txt index 1a08b8b..515af3b 100644 --- a/src/rpg/CMakeLists.txt +++ b/src/rpg/CMakeLists.txt @@ -4,8 +4,8 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC rpg.c rpgcamera.c rpgtextbox.c diff --git a/src/rpg/cutscene/CMakeLists.txt b/src/rpg/cutscene/CMakeLists.txt index a2d1b86..9c92769 100644 --- a/src/rpg/cutscene/CMakeLists.txt +++ b/src/rpg/cutscene/CMakeLists.txt @@ -4,8 +4,8 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC cutscenesystem.c cutscenemode.c ) diff --git a/src/rpg/cutscene/item/CMakeLists.txt b/src/rpg/cutscene/item/CMakeLists.txt index 114d521..6b3e271 100755 --- a/src/rpg/cutscene/item/CMakeLists.txt +++ b/src/rpg/cutscene/item/CMakeLists.txt @@ -4,7 +4,7 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC cutsceneitem.c ) \ No newline at end of file diff --git a/src/rpg/entity/CMakeLists.txt b/src/rpg/entity/CMakeLists.txt index 08700a1..f6e4cda 100644 --- a/src/rpg/entity/CMakeLists.txt +++ b/src/rpg/entity/CMakeLists.txt @@ -4,8 +4,8 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC entity.c entityanim.c npc.c diff --git a/src/rpg/world/CMakeLists.txt b/src/rpg/world/CMakeLists.txt index b2284d7..b697bf8 100644 --- a/src/rpg/world/CMakeLists.txt +++ b/src/rpg/world/CMakeLists.txt @@ -4,8 +4,8 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC chunk.c map.c worldpos.c diff --git a/src/scene/CMakeLists.txt b/src/scene/CMakeLists.txt index 61b0f0a..94aaa08 100644 --- a/src/scene/CMakeLists.txt +++ b/src/scene/CMakeLists.txt @@ -4,8 +4,8 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC scenemanager.c ) diff --git a/src/scene/scene/CMakeLists.txt b/src/scene/scene/CMakeLists.txt index a7e70c6..e5e83ab 100644 --- a/src/scene/scene/CMakeLists.txt +++ b/src/scene/scene/CMakeLists.txt @@ -4,8 +4,8 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC scenetest.c scenemap.c ) diff --git a/src/script/CMakeLists.txt b/src/script/CMakeLists.txt index 39d737b..57e46d6 100644 --- a/src/script/CMakeLists.txt +++ b/src/script/CMakeLists.txt @@ -4,8 +4,8 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC scriptmanager.c scriptcontext.c scriptmodule.c diff --git a/src/thread/CMakeLists.txt b/src/thread/CMakeLists.txt index 89404af..258705b 100644 --- a/src/thread/CMakeLists.txt +++ b/src/thread/CMakeLists.txt @@ -4,21 +4,21 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC thread.c threadmutex.c ) # Compiler flags. if(DUSK_TARGET_SYSTEM STREQUAL "linux") - target_compile_definitions(${DUSK_TARGET_NAME} - PRIVATE + target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC THREAD_PTHREAD=1 ) elseif(DUSK_TARGET_SYSTEM STREQUAL "psp") - target_compile_definitions(${DUSK_TARGET_NAME} - PRIVATE + target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC THREAD_PTHREAD=1 ) endif() \ No newline at end of file diff --git a/src/time/CMakeLists.txt b/src/time/CMakeLists.txt index 2f93036..803e9c9 100644 --- a/src/time/CMakeLists.txt +++ b/src/time/CMakeLists.txt @@ -4,21 +4,21 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC time.c ) # Compiler defs if(DUSK_TARGET_SYSTEM STREQUAL "linux") - target_compile_definitions(${DUSK_TARGET_NAME} - PRIVATE + target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC TIME_SDL2=1 TIME_FIXED=0 ) elseif(DUSK_TARGET_SYSTEM STREQUAL "psp") - target_compile_definitions(${DUSK_TARGET_NAME} - PRIVATE + target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC TIME_FIXED=1 ) endif() \ No newline at end of file diff --git a/src/ui/CMakeLists.txt b/src/ui/CMakeLists.txt index eacb921..0155c3b 100644 --- a/src/ui/CMakeLists.txt +++ b/src/ui/CMakeLists.txt @@ -4,8 +4,8 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC ui.c uitext.c uidebug.c diff --git a/src/ui/element/CMakeLists.txt b/src/ui/element/CMakeLists.txt index 15c3bec..0b31e39 100644 --- a/src/ui/element/CMakeLists.txt +++ b/src/ui/element/CMakeLists.txt @@ -4,6 +4,6 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC ) \ No newline at end of file diff --git a/src/util/CMakeLists.txt b/src/util/CMakeLists.txt index 75b1187..13cb205 100644 --- a/src/util/CMakeLists.txt +++ b/src/util/CMakeLists.txt @@ -4,8 +4,8 @@ # https://opensource.org/licenses/MIT # Sources -target_sources(${DUSK_TARGET_NAME} - PRIVATE +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC memory.c string.c math.c diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt new file mode 100644 index 0000000..36c245f --- /dev/null +++ b/test/CMakeLists.txt @@ -0,0 +1,10 @@ +# Copyright (c) 2025 Dominic Masters +# +# This software is released under the MIT License. +# https://opensource.org/licenses/MIT + +# Tests +add_executable(test_main test_main.c) +target_include_directories(test_main PUBLIC ${CMAKE_CURRENT_LIST_DIR}) +target_link_libraries(test_main PUBLIC ${DUSK_LIBRARY_TARGET_NAME}) +add_test( NAME tests1 COMMAND test_main) \ No newline at end of file diff --git a/test/test_main.c b/test/test_main.c new file mode 100644 index 0000000..a83c319 --- /dev/null +++ b/test/test_main.c @@ -0,0 +1,11 @@ +/** + * Copyright (c) 2026 Dominic Masters + * + * This software is released under the MIT License. + * https://opensource.org/licenses/MIT + */ + +int main(int argc, char **argv) { + // return 1; + return 0; +} \ No newline at end of file diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt index a9aacea..23973f3 100644 --- a/tools/CMakeLists.txt +++ b/tools/CMakeLists.txt @@ -27,5 +27,5 @@ function(add_defs INPUT_PATH OUTPUT_NAME_RELATIVE) COMMENT "Generating ${OUTPUT_NAME_RELATIVE}" ) add_custom_target(${OUTPUT_NAME_RELATIVE}_header DEPENDS ${OUTPUT_FULL_PATH}) - add_dependencies(${DUSK_TARGET_NAME} ${OUTPUT_NAME_RELATIVE}_header) + add_dependencies(${DUSK_LIBRARY_TARGET_NAME} ${OUTPUT_NAME_RELATIVE}_header) endfunction() \ No newline at end of file