From d0a057e0ee898c8c453d5f1be1e10d99b02df013 Mon Sep 17 00:00:00 2001 From: Dominic Masters Date: Tue, 17 Feb 2026 11:33:00 -0600 Subject: [PATCH] Moved all defs into main file. --- CMakeLists.txt | 65 ++++++++++++++++++++++++++++++-------- src/debug/CMakeLists.txt | 4 +-- src/display/CMakeLists.txt | 30 +----------------- src/input/CMakeLists.txt | 25 +-------------- src/item/CMakeLists.txt | 1 + src/story/CMakeLists.txt | 1 + src/thread/CMakeLists.txt | 19 +---------- src/time/CMakeLists.txt | 21 +----------- 8 files changed, 58 insertions(+), 108 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index ab7c886..c44d82c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -38,10 +38,9 @@ file(MAKE_DIRECTORY ${DUSK_GENERATED_HEADERS_DIR}) # Find packages find_package(Python3 COMPONENTS Interpreter REQUIRED) -# Set target system +# Set target system, default to linux if not set. if(NOT DEFINED DUSK_TARGET_SYSTEM) set(DUSK_TARGET_SYSTEM "linux") - # set(DUSK_TARGET_SYSTEM "psp") endif() # Toolchains @@ -82,13 +81,11 @@ endif() # Add tools add_subdirectory(tools) -# Assets -# add_subdirectory(assets) - -# Add libraries +# Per Target Libraries and definitions if(DUSK_TARGET_SYSTEM STREQUAL "linux") find_package(SDL2 REQUIRED) find_package(OpenGL REQUIRED) + target_link_libraries(${DUSK_LIBRARY_TARGET_NAME} PUBLIC SDL2 pthread @@ -97,9 +94,25 @@ if(DUSK_TARGET_SYSTEM STREQUAL "linux") m ) + 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 + INPUT_SDL2=1 + INPUT_KEYBOARD=1 + INPUT_POINTER=1 + INPUT_GAMEPAD=1 + THREAD_PTHREAD=1 + TIME_SDL2=1 + TIME_FIXED=0 + ) + elseif(DUSK_TARGET_SYSTEM STREQUAL "psp") find_package(SDL2 REQUIRED) find_package(OpenGL REQUIRED) + target_link_libraries(${DUSK_LIBRARY_TARGET_NAME} PUBLIC ${SDL2_LIBRARIES} SDL2 @@ -113,10 +126,25 @@ elseif(DUSK_TARGET_SYSTEM STREQUAL "psp") lzma m ) + target_include_directories(${DUSK_LIBRARY_TARGET_NAME} PRIVATE ${SDL2_INCLUDE_DIRS} ) + target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC + DISPLAY_SDL2=1 + DISPLAY_WINDOW_WIDTH_DEFAULT=480 + DISPLAY_WINDOW_HEIGHT_DEFAULT=272 + DISPLAY_WIDTH=480 + DISPLAY_HEIGHT=272 + DISPLAY_SIZE_DYNAMIC=0 + INPUT_SDL2=1 + INPUT_GAMEPAD=1 + THREAD_PTHREAD=1 + TIME_FIXED=1 + ) + elseif(DUSK_TARGET_SYSTEM STREQUAL "gamecube" OR DUSK_TARGET_SYSTEM STREQUAL "wii") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti -fno-exceptions") # configure_file(opengl.pc.in opengl.pc @ONLY) @@ -162,14 +190,28 @@ elseif(DUSK_TARGET_SYSTEM STREQUAL "gamecube" OR DUSK_TARGET_SYSTEM STREQUAL "wi fat PkgConfig::zip ) -endif() -# Force turn tests off for now -set(ENABLE_TESTS OFF CACHE BOOL "Enable tests" FORCE) + target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC + DISPLAY_WINDOW_WIDTH_DEFAULT=640 + DISPLAY_WINDOW_HEIGHT_DEFAULT=480 + DISPLAY_WIDTH=640 + DISPLAY_HEIGHT=480 + DISPLAY_SIZE_DYNAMIC=0 + INPUT_GAMEPAD=1 + THREAD_PTHREAD=1 + TIME_FIXED=1 + ) +endif() # Add code add_subdirectory(${DUSK_SOURCES_DIR}) +# Include generated headers +target_include_directories(${DUSK_LIBRARY_TARGET_NAME} PUBLIC + ${DUSK_GENERATED_HEADERS_DIR} +) + # Handle tests if(ENABLE_TESTS) enable_testing() @@ -190,11 +232,6 @@ add_custom_command( add_custom_target(DUSK_ASSETS_BUILT DEPENDS "${DUSK_ASSETS_ZIP}") add_dependencies(${DUSK_LIBRARY_TARGET_NAME} DUSK_ASSETS_BUILT) -# Include generated headers -target_include_directories(${DUSK_LIBRARY_TARGET_NAME} PUBLIC - ${DUSK_GENERATED_HEADERS_DIR} -) - # Postbuild if(DUSK_TARGET_SYSTEM STREQUAL "psp") create_pbp_file( diff --git a/src/debug/CMakeLists.txt b/src/debug/CMakeLists.txt index f8e8529..a01ae13 100644 --- a/src/debug/CMakeLists.txt +++ b/src/debug/CMakeLists.txt @@ -7,6 +7,4 @@ target_sources(${DUSK_LIBRARY_TARGET_NAME} PUBLIC debug.c -) - -# Subdirs \ No newline at end of file +) \ No newline at end of file diff --git a/src/display/CMakeLists.txt b/src/display/CMakeLists.txt index 7766e05..08af9fc 100644 --- a/src/display/CMakeLists.txt +++ b/src/display/CMakeLists.txt @@ -18,35 +18,7 @@ add_subdirectory(camera) add_subdirectory(mesh) add_subdirectory(texture) -if(DUSK_TARGET_SYSTEM STREQUAL "linux") - 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_LIBRARY_TARGET_NAME} - PUBLIC - DISPLAY_SDL2=1 - DISPLAY_WINDOW_WIDTH_DEFAULT=480 - DISPLAY_WINDOW_HEIGHT_DEFAULT=272 - DISPLAY_WIDTH=480 - DISPLAY_HEIGHT=272 - DISPLAY_SIZE_DYNAMIC=0 - ) -elseif(DUSK_TARGET_SYSTEM STREQUAL "gamecube" OR DUSK_TARGET_SYSTEM STREQUAL "wii") - target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} - PUBLIC - DISPLAY_WINDOW_WIDTH_DEFAULT=640 - DISPLAY_WINDOW_HEIGHT_DEFAULT=480 - DISPLAY_WIDTH=640 - DISPLAY_HEIGHT=480 - DISPLAY_SIZE_DYNAMIC=0 - ) -endif() - +# Color definitions dusk_run_python( dusk_color_defs tools.display.color.csv diff --git a/src/input/CMakeLists.txt b/src/input/CMakeLists.txt index 00d8905..fec6279 100644 --- a/src/input/CMakeLists.txt +++ b/src/input/CMakeLists.txt @@ -11,30 +11,7 @@ target_sources(${DUSK_LIBRARY_TARGET_NAME} inputaction.c ) -if(DUSK_TARGET_SYSTEM STREQUAL "linux") - target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} - PUBLIC - INPUT_SDL2=1 - INPUT_KEYBOARD=1 - INPUT_POINTER=1 - INPUT_GAMEPAD=1 - ) - -elseif(DUSK_TARGET_SYSTEM STREQUAL "psp") - target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} - PUBLIC - INPUT_SDL2=1 - INPUT_GAMEPAD=1 - ) - -elseif(DUSK_TARGET_SYSTEM STREQUAL "gamecube" OR DUSK_TARGET_SYSTEM STREQUAL "wii") - target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} - PUBLIC - INPUT_GAMEPAD=1 - ) -endif() - -# CSV +# Input Action Definitions dusk_run_python( dusk_input_csv_defs tools.input.csv diff --git a/src/item/CMakeLists.txt b/src/item/CMakeLists.txt index 1a30a79..4f5606e 100644 --- a/src/item/CMakeLists.txt +++ b/src/item/CMakeLists.txt @@ -10,6 +10,7 @@ target_sources(${DUSK_LIBRARY_TARGET_NAME} backpack.c ) +# Item Definitions dusk_run_python( dusk_item_csv_defs tools.item.csv diff --git a/src/story/CMakeLists.txt b/src/story/CMakeLists.txt index b9553a2..880548a 100644 --- a/src/story/CMakeLists.txt +++ b/src/story/CMakeLists.txt @@ -9,6 +9,7 @@ target_sources(${DUSK_LIBRARY_TARGET_NAME} storyflag.c ) +# Story Flag Definitions dusk_run_python( dusk_story_defs tools.story.csv diff --git a/src/thread/CMakeLists.txt b/src/thread/CMakeLists.txt index 160cedd..17267ba 100644 --- a/src/thread/CMakeLists.txt +++ b/src/thread/CMakeLists.txt @@ -8,21 +8,4 @@ target_sources(${DUSK_LIBRARY_TARGET_NAME} PUBLIC thread.c threadmutex.c -) - -# Compiler flags. -if(DUSK_TARGET_SYSTEM STREQUAL "linux") - target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} - PUBLIC - THREAD_PTHREAD=1 - ) -elseif(DUSK_TARGET_SYSTEM STREQUAL "psp") - target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} - PUBLIC - THREAD_PTHREAD=1 - ) -elseif(DUSK_TARGET_SYSTEM STREQUAL "gamecube" OR DUSK_TARGET_SYSTEM STREQUAL "wii") - target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} - PUBLIC - ) -endif() \ No newline at end of file +) \ No newline at end of file diff --git a/src/time/CMakeLists.txt b/src/time/CMakeLists.txt index 69e9f48..94361ac 100644 --- a/src/time/CMakeLists.txt +++ b/src/time/CMakeLists.txt @@ -7,23 +7,4 @@ target_sources(${DUSK_LIBRARY_TARGET_NAME} PUBLIC time.c -) - -# Compiler defs -if(DUSK_TARGET_SYSTEM STREQUAL "linux") - target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} - PUBLIC - TIME_SDL2=1 - TIME_FIXED=0 - ) -elseif(DUSK_TARGET_SYSTEM STREQUAL "psp") - target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} - PUBLIC - TIME_FIXED=1 - ) -elseif(DUSK_TARGET_SYSTEM STREQUAL "gamecube" OR DUSK_TARGET_SYSTEM STREQUAL "wii") - target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} - PUBLIC - TIME_FIXED=1 - ) -endif() \ No newline at end of file +) \ No newline at end of file