# SDL2 if (UNIX OR MINGW OR WIN32) add_subdirectory(src/lib/SDL) # When using bundled SDL, use the static target and set include directories set(SDL_TARGETS SDL2-static) set(SDL2_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/src/lib/SDL/include ${CMAKE_BINARY_DIR}/src/lib/SDL/include ${CMAKE_BINARY_DIR}/src/lib/SDL/include-config-${CMAKE_BUILD_TYPE} ) # Also set for consistency with bundled SDL set(SDL2_INCLUDE_DIRS ${SDL2_INCLUDE_DIR}) else() find_package(SDL2) # When using system SDL, use the imported targets set(SDL_TARGETS SDL2::SDL2) if(WIN32) list(PREPEND SDL_TARGETS SDL2::SDL2main ws2_32) add_definitions("-DSDL_MAIN_HANDLED") endif() endif() # libpng and ZLIB dependencies if(WIN32 AND NOT YAZE_MINIMAL_BUILD) # Use vcpkg on Windows find_package(ZLIB REQUIRED) find_package(PNG REQUIRED) elseif(YAZE_MINIMAL_BUILD) # For CI builds, try to find but don't require find_package(ZLIB QUIET) find_package(PNG QUIET) if(NOT ZLIB_FOUND OR NOT PNG_FOUND) message(STATUS "PNG/ZLIB not found in minimal build, some features may be disabled") set(PNG_FOUND FALSE) set(PNG_LIBRARIES "") set(PNG_INCLUDE_DIRS "") endif() else() # Regular builds require these dependencies find_package(ZLIB REQUIRED) find_package(PNG REQUIRED) endif()