# FIXME: this should be provided by SDL2
include(FindPackageHandleStandardArgs)
include("${CMAKE_CURRENT_LIST_DIR}/CommonFindSDL2.cmake")
find_library(SDL2_LIBRARY
NAMES SDL2
HINTS ${SDL2_DIR} ENV SDL2_DIR
PATH_SUFFIXES ${_lib_suffixes}
)
find_path(SDL2_INCLUDE_DIR
NAMES SDL_haptic.h
PATH_SUFFIXES SDL2
HINTS ${SDL2_DIR} ENV SDL2_DIR
PATH_SUFFIXES ${_inc_suffixes}
)
set(SDL2_VERSION)
if(SDL2_INCLUDE_DIR)
file(READ "${SDL2_INCLUDE_DIR}/SDL_version.h" _sdl_version_h)
string(REGEX MATCH "#define[ \t]+SDL_MAJOR_VERSION[ \t]+([0-9]+)" _sdl2_major_re "${_sdl_version_h}")
set(_sdl2_major "${CMAKE_MATCH_1}")
string(REGEX MATCH "#define[ \t]+SDL_MINOR_VERSION[ \t]+([0-9]+)" _sdl2_minor_re "${_sdl_version_h}")
set(_sdl2_minor "${CMAKE_MATCH_1}")
string(REGEX MATCH "#define[ \t]+SDL_PATCHLEVEL[ \t]+([0-9]+)" _sdl2_patch_re "${_sdl_version_h}")
set(_sdl2_patch "${CMAKE_MATCH_1}")
if(_sdl2_major_re AND _sdl2_minor_re AND _sdl2_patch_re)
set(SDL2_VERSION "${_sdl2_major}.${_sdl2_minor}.${_sdl2_patch}")
endif()
endif()
find_package_handle_standard_args(PrivateSDL2
REQUIRED_VARS SDL2_LIBRARY SDL2_INCLUDE_DIR
VERSION_VAR SDL2_VERSION
)
if(PrivateSDL2_FOUND)
if(NOT TARGET PrivateSDL2::PrivateSDL2)
add_library(PrivateSDL2::PrivateSDL2 UNKNOWN IMPORTED)
set_target_properties(PrivateSDL2::PrivateSDL2 PROPERTIES
INTERFACE_INCLUDE_DIRECTORIES "${SDL2_INCLUDE_DIR}"
IMPORTED_LINK_INTERFACE_LANGUAGES "C"
IMPORTED_LOCATION "${SDL2_LIBRARY}"
)
endif()
endif()