# SDL cmake project-config input for CMakeLists.txt script include(FeatureSummary) set_package_properties(SDL3 PROPERTIES URL "https://www.libsdl.org/" DESCRIPTION "low level access to audio, keyboard, mouse, joystick, and graphics hardware" ) @PACKAGE_INIT@ set(SDL3_FOUND TRUE) set(_sdl3_framework @SDL_FRAMEWORK@) # Find SDL3::Headers if(NOT TARGET SDL3::Headers) include("${CMAKE_CURRENT_LIST_DIR}/SDL3headersTargets.cmake") endif() set(SDL3_Headers_FOUND TRUE) # Find SDL3::SDL3-shared if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/SDL3sharedTargets.cmake") include("${CMAKE_CURRENT_LIST_DIR}/SDL3sharedTargets.cmake") set(SDL3_SDL3-shared_FOUND TRUE) endif() macro(find_sdl3_static_dependencies) @SDL_FIND_PKG_CONFIG_COMMANDS@ endmacro() # Find SDL3::SDL3-static if(_sdl3_framework) set(SDL3_SDL3-static_FOUND TRUE) find_sdl3_static_dependencies() find_package(SDL3-static CONFIG) if(SDL3_SDL3-static_FOUND AND SDL3-static_FOUND) set(SDL3_SDL3-static_FOUND TRUE) endif() else() if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/SDL3staticTargets.cmake") set(SDL3_SDL3-static_FOUND TRUE) find_sdl3_static_dependencies() if(SDL3_SDL3-static_FOUND) if(ANDROID OR HAIKU) enable_language(CXX) endif() include("${CMAKE_CURRENT_LIST_DIR}/SDL3staticTargets.cmake") endif() endif() endif() if(SDL3_SDL3-shared_FOUND OR SDL3_SDL3-static_FOUND) set(SDL3_SDL3_FOUND TRUE) endif() # Find SDL3::SDL3_test if(_sdl3_framework) find_package(SDL3_test CONFIG) if(SDL3_test_FOUND) enable_language(OBJC) set(SDL3_SDL3_test_FOUND TRUE) endif() else() if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/SDL3testTargets.cmake") set(SDL3_SDL3_test_FOUND TRUE) @SDL_TEST_FIND_PKG_CONFIG_COMMANDS@ if(SDL3_SDL3_test_FOUND) include("${CMAKE_CURRENT_LIST_DIR}/SDL3testTargets.cmake") endif() endif() endif() check_required_components(SDL3) function(_sdl_create_target_alias_compat NEW_TARGET TARGET) if(CMAKE_VERSION VERSION_LESS "3.18") # Aliasing local targets is not supported on CMake < 3.18, so make it global. add_library(${NEW_TARGET} INTERFACE IMPORTED) set_target_properties(${NEW_TARGET} PROPERTIES INTERFACE_LINK_LIBRARIES "${TARGET}") else() add_library(${NEW_TARGET} ALIAS ${TARGET}) endif() endfunction() # Make sure SDL3::SDL3 always exists if(NOT TARGET SDL3::SDL3) if(TARGET SDL3::SDL3-shared) _sdl_create_target_alias_compat(SDL3::SDL3 SDL3::SDL3-shared) else() _sdl_create_target_alias_compat(SDL3::SDL3 SDL3::SDL3-static) endif() endif() set(SDL3_LIBRARIES SDL3::SDL3) set(SDL3_STATIC_LIBRARIES SDL3::SDL3-static) set(SDL3_STATIC_PRIVATE_LIBS) set(SDL3TEST_LIBRARY SDL3::SDL3_test)