Merge branch 'master' into upstream-ready
This commit is contained in:
commit
73ce487193
@ -28,6 +28,7 @@ This module will set the following variables in your project:
|
|||||||
SDL2_LIBRARIES, the name of the library to link against
|
SDL2_LIBRARIES, the name of the library to link against
|
||||||
SDL2_INCLUDE_DIRS, where to find SDL.h
|
SDL2_INCLUDE_DIRS, where to find SDL.h
|
||||||
SDL2_FOUND, if false, do not try to link to SDL2
|
SDL2_FOUND, if false, do not try to link to SDL2
|
||||||
|
SDL2MAIN_FOUND, if false, do not try to link to SDL2main
|
||||||
SDL2_VERSION_STRING, human-readable string containing the version of SDL2
|
SDL2_VERSION_STRING, human-readable string containing the version of SDL2
|
||||||
|
|
||||||
|
|
||||||
@ -279,9 +280,15 @@ endif()
|
|||||||
include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
|
include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
|
||||||
|
|
||||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL2
|
FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL2
|
||||||
REQUIRED_VARS SDL2_LIBRARIES SDL2_INCLUDE_DIRS
|
REQUIRED_VARS SDL2_LIBRARY SDL2_INCLUDE_DIR
|
||||||
VERSION_VAR SDL2_VERSION_STRING)
|
VERSION_VAR SDL2_VERSION_STRING)
|
||||||
|
|
||||||
|
if(SDL2MAIN_LIBRARY)
|
||||||
|
FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL2main
|
||||||
|
REQUIRED_VARS SDL2MAIN_LIBRARY SDL2_INCLUDE_DIR
|
||||||
|
VERSION_VAR SDL2_VERSION_STRING)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
mark_as_advanced(SDL2_PATH
|
mark_as_advanced(SDL2_PATH
|
||||||
SDL2_NO_DEFAULT_PATH
|
SDL2_NO_DEFAULT_PATH
|
||||||
@ -312,16 +319,6 @@ if(SDL2_FOUND)
|
|||||||
set_property(TARGET SDL2::Core APPEND PROPERTY
|
set_property(TARGET SDL2::Core APPEND PROPERTY
|
||||||
INTERFACE_LINK_LIBRARIES Threads::Threads)
|
INTERFACE_LINK_LIBRARIES Threads::Threads)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# MinGW needs an additional link flag, -mwindows
|
|
||||||
# and link to mingw32
|
|
||||||
if(MINGW)
|
|
||||||
set_property(TARGET SDL2::Core APPEND PROPERTY
|
|
||||||
INTERFACE_LINK_LIBRARIES mingw32)
|
|
||||||
set_property(TARGET SDL2::Core APPEND PROPERTY
|
|
||||||
INTERFACE_LINK_OPTIONS "-mwindows")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# SDL2::Main target
|
# SDL2::Main target
|
||||||
@ -329,20 +326,31 @@ if(SDL2_FOUND)
|
|||||||
# For more details, please see above.
|
# For more details, please see above.
|
||||||
if(NOT SDL2_BUILDING_LIBRARY AND NOT TARGET SDL2::Main)
|
if(NOT SDL2_BUILDING_LIBRARY AND NOT TARGET SDL2::Main)
|
||||||
|
|
||||||
if(SDL2_INCLUDE_DIR MATCHES ".framework" )
|
if(SDL2_INCLUDE_DIR MATCHES ".framework" OR NOT SDL2MAIN_LIBRARY)
|
||||||
add_library(SDL2::Main INTERFACE IMPORTED)
|
add_library(SDL2::Main INTERFACE IMPORTED)
|
||||||
elseif(SDL2MAIN_LIBRARY)
|
|
||||||
add_library(SDL2::Main UNKNOWN IMPORTED)
|
|
||||||
set_property(TARGET SDL2::Main PROPERTY
|
|
||||||
IMPORTED_LOCATION "${SDL2MAIN_LIBRARY}")
|
|
||||||
elseif(UNIX)
|
|
||||||
add_library(SDL2::Main INTERFACE IMPORTED)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Add SDL2::Core as a dependency
|
|
||||||
if(TARGET SDL2::Main)
|
|
||||||
set_property(TARGET SDL2::Main PROPERTY
|
set_property(TARGET SDL2::Main PROPERTY
|
||||||
INTERFACE_LINK_LIBRARIES SDL2::Core)
|
INTERFACE_LINK_LIBRARIES SDL2::Core)
|
||||||
|
elseif(SDL2MAIN_LIBRARY)
|
||||||
|
# MinGW requires that the mingw32 library is specified before the
|
||||||
|
# libSDL2main.a static library when linking.
|
||||||
|
# The SDL2::MainInternal target is used internally to make sure that
|
||||||
|
# CMake respects this condition.
|
||||||
|
add_library(SDL2::MainInternal UNKNOWN IMPORTED)
|
||||||
|
set_property(TARGET SDL2::MainInternal PROPERTY
|
||||||
|
IMPORTED_LOCATION "${SDL2MAIN_LIBRARY}")
|
||||||
|
set_property(TARGET SDL2::MainInternal PROPERTY
|
||||||
|
INTERFACE_LINK_LIBRARIES SDL2::Core)
|
||||||
|
|
||||||
|
add_library(SDL2::Main INTERFACE IMPORTED)
|
||||||
|
|
||||||
|
if(MINGW)
|
||||||
|
# MinGW needs an additional link flag '-mwindows' and link to mingw32
|
||||||
|
set_property(TARGET SDL2::Main PROPERTY
|
||||||
|
INTERFACE_LINK_LIBRARIES "mingw32" "-mwindows")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set_property(TARGET SDL2::Main APPEND PROPERTY
|
||||||
|
INTERFACE_LINK_LIBRARIES SDL2::MainInternal)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
Reference in New Issue
Block a user