SDL

Форк
0
/
SDL3Config.cmake.in 
105 строк · 2.9 Кб
1
# SDL cmake project-config input for CMakeLists.txt script
2

3
include(FeatureSummary)
4
set_package_properties(SDL3 PROPERTIES
5
  URL "https://www.libsdl.org/"
6
  DESCRIPTION "low level access to audio, keyboard, mouse, joystick, and graphics hardware"
7
)
8

9
@PACKAGE_INIT@
10

11
set(SDL3_FOUND TRUE)
12
set(_sdl3_framework @SDL_FRAMEWORK@)
13

14
# Find SDL3::Headers
15
if(NOT TARGET SDL3::Headers)
16
  include("${CMAKE_CURRENT_LIST_DIR}/SDL3headersTargets.cmake")
17
  if(NOT CMAKE_VERSION VERSION_LESS "3.25")
18
    set_property(TARGET SDL3::Headers PROPERTY SYSTEM 0)
19
  endif()
20
endif()
21
set(SDL3_Headers_FOUND TRUE)
22

23
# Find SDL3::SDL3-shared
24
if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/SDL3sharedTargets.cmake")
25
  include("${CMAKE_CURRENT_LIST_DIR}/SDL3sharedTargets.cmake")
26
  set(SDL3_SDL3-shared_FOUND TRUE)
27
endif()
28

29
macro(find_sdl3_static_dependencies)
30
@SDL_FIND_PKG_CONFIG_COMMANDS@
31
endmacro()
32

33
# Find SDL3::SDL3-static
34
if(_sdl3_framework)
35
  set(SDL3_SDL3-static_FOUND TRUE)
36
  find_sdl3_static_dependencies()
37
  find_package(SDL3-static CONFIG)
38
  if(SDL3_SDL3-static_FOUND AND SDL3-static_FOUND)
39
    set(SDL3_SDL3-static_FOUND TRUE)
40
  endif()
41
else()
42
  if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/SDL3staticTargets.cmake")
43
    set(SDL3_SDL3-static_FOUND TRUE)
44
    find_sdl3_static_dependencies()
45
    if(SDL3_SDL3-static_FOUND)
46
      if(ANDROID OR HAIKU)
47
        enable_language(CXX)
48
      endif()
49
      include("${CMAKE_CURRENT_LIST_DIR}/SDL3staticTargets.cmake")
50
    endif()
51
  endif()
52
endif()
53

54
if(ANDROID AND EXISTS "${CMAKE_CURRENT_LIST_DIR}/SDL3jarTargets.cmake")
55
  include("${CMAKE_CURRENT_LIST_DIR}/SDL3jarTargets.cmake")
56
  set(SDL3_Jar_FOUND TRUE)
57
endif()
58

59
if(SDL3_SDL3-shared_FOUND OR SDL3_SDL3-static_FOUND)
60
  set(SDL3_SDL3_FOUND TRUE)
61
endif()
62

63
# Find SDL3::SDL3_test
64
if(_sdl3_framework)
65
  find_package(SDL3_test CONFIG)
66
  if(SDL3_test_FOUND)
67
    enable_language(OBJC)
68
    set(SDL3_SDL3_test_FOUND TRUE)
69
  endif()
70
else()
71
  if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/SDL3testTargets.cmake")
72
    set(SDL3_SDL3_test_FOUND TRUE)
73
@SDL_TEST_FIND_PKG_CONFIG_COMMANDS@
74
    if(SDL3_SDL3_test_FOUND)
75
      include("${CMAKE_CURRENT_LIST_DIR}/SDL3testTargets.cmake")
76
    endif()
77
  endif()
78
endif()
79

80
check_required_components(SDL3)
81

82
function(_sdl_create_target_alias_compat NEW_TARGET TARGET)
83
  if(CMAKE_VERSION VERSION_LESS "3.18")
84
    # Aliasing local targets is not supported on CMake < 3.18, so make it global.
85
    add_library(${NEW_TARGET} INTERFACE IMPORTED)
86
    set_target_properties(${NEW_TARGET} PROPERTIES INTERFACE_LINK_LIBRARIES "${TARGET}")
87
  else()
88
    add_library(${NEW_TARGET} ALIAS ${TARGET})
89
  endif()
90
endfunction()
91

92
# Make sure SDL3::SDL3 always exists
93
if(NOT TARGET SDL3::SDL3)
94
  if(TARGET SDL3::SDL3-shared)
95
    _sdl_create_target_alias_compat(SDL3::SDL3 SDL3::SDL3-shared)
96
  else()
97
    _sdl_create_target_alias_compat(SDL3::SDL3 SDL3::SDL3-static)
98
  endif()
99
endif()
100

101
set(SDL3_LIBRARIES SDL3::SDL3)
102
set(SDL3_STATIC_LIBRARIES SDL3::SDL3-static)
103
set(SDL3_STATIC_PRIVATE_LIBS)
104

105
set(SDL3TEST_LIBRARY SDL3::SDL3_test)
106

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.