@@ -7,6 +7,8 @@ if(POLICY CMP0072)
7
7
cmake_policy (SET CMP0072 NEW)
8
8
endif ()
9
9
10
+ set (RAYLIB_DEPENDENCIES "include(CMakeFindDependencyMacro)" )
11
+
10
12
if (${PLATFORM} MATCHES "Desktop" )
11
13
set (PLATFORM_CPP "PLATFORM_DESKTOP" )
12
14
@@ -36,19 +38,22 @@ if (${PLATFORM} MATCHES "Desktop")
36
38
find_library (OSS_LIBRARY ossaudio)
37
39
endif ()
38
40
39
- set (LIBS_PRIVATE m pthread ${OPENGL_LIBRARIES} ${OSS_LIBRARY} )
41
+ set (LIBS_PRIVATE pthread ${OPENGL_LIBRARIES} ${OSS_LIBRARY} )
42
+ set (LIBS_PUBLIC m)
40
43
else ()
41
44
find_library (pthread NAMES pthread)
42
45
find_package (OpenGL QUIET )
43
46
if ("${OPENGL_LIBRARIES} " STREQUAL "" )
44
47
set (OPENGL_LIBRARIES "GL" )
45
48
endif ()
46
49
47
- set (LIBS_PRIVATE m atomic pthread ${OPENGL_LIBRARIES} ${OSS_LIBRARY} )
50
+ set (LIBS_PRIVATE pthread ${OPENGL_LIBRARIES} ${OSS_LIBRARY} )
51
+ set (LIBS_PUBLIC m)
48
52
49
53
if ("${CMAKE_SYSTEM_NAME} " MATCHES "(Net|Open)BSD" )
50
54
find_library (OSS_LIBRARY ossaudio)
51
- set (LIBS_PRIVATE m pthread ${OPENGL_LIBRARIES} ${OSS_LIBRARY} )
55
+ else ()
56
+ set (LIBS_PRIVATE ${LIBS_PRIVATE} atomic)
52
57
endif ()
53
58
54
59
if (NOT "${CMAKE_SYSTEM_NAME} " MATCHES "(Net|Open)BSD" AND USE_AUDIO)
@@ -80,7 +85,8 @@ elseif (${PLATFORM} MATCHES "Android")
80
85
set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--exclude-libs,libatomic.a -Wl,--build-id -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -Wl,--warn-shared-textrel -Wl,--fatal-warnings -u ANativeActivity_onCreate -Wl,-undefined,dynamic_lookup" )
81
86
82
87
find_library (OPENGL_LIBRARY OpenGL)
83
- set (LIBS_PRIVATE m log android EGL GLESv2 OpenSLES atomic c)
88
+ set (LIBS_PRIVATE log android EGL GLESv2 OpenSLES atomic c)
89
+ set (LIBS_PUBLIC m)
84
90
85
91
elseif ("${PLATFORM} " MATCHES "DRM" )
86
92
set (PLATFORM_CPP "PLATFORM_DRM" )
@@ -98,7 +104,8 @@ elseif ("${PLATFORM}" MATCHES "DRM")
98
104
if (NOT CMAKE_CROSSCOMPILING OR NOT CMAKE_SYSROOT)
99
105
include_directories (/usr/include /libdrm)
100
106
endif ()
101
- set (LIBS_PRIVATE ${GLESV2} ${EGL} ${DRM} ${GBM} atomic pthread m dl)
107
+ set (LIBS_PRIVATE ${GLESV2} ${EGL} ${DRM} ${GBM} atomic pthread dl)
108
+ set (LIBS_PUBLIC m)
102
109
103
110
elseif ("${PLATFORM} " MATCHES "SDL" )
104
111
# First, check if SDL is included as a subdirectory
@@ -120,15 +127,17 @@ elseif ("${PLATFORM}" MATCHES "SDL")
120
127
find_package (SDL3 QUIET )
121
128
if (SDL3_FOUND)
122
129
message (STATUS "Found SDL3 via find_package()" )
130
+ set (LIBS_PUBLIC SDL3::SDL3)
131
+ set (RAYLIB_DEPENDENCIES "${RAYLIB_DEPENDENCIES} \n find_dependency(SDL3 REQUIRED)" )
123
132
set (PLATFORM_CPP "PLATFORM_DESKTOP_SDL" )
124
- set (LIBS_PRIVATE SDL3::SDL3)
125
133
add_compile_definitions (USING_SDL3_PACKAGE)
126
134
else ()
127
135
# Fallback to SDL2
128
136
find_package (SDL2 REQUIRED)
129
137
message (STATUS "Found SDL2 via find_package()" )
130
138
set (PLATFORM_CPP "PLATFORM_DESKTOP_SDL" )
131
- set (LIBS_PRIVATE SDL2::SDL2)
139
+ set (LIBS_PUBLIC SDL2::SDL2)
140
+ set (RAYLIB_DEPENDENCIES "${RAYLIB_DEPENDENCIES} \n find_dependency(SDL3 REQUIRED)" )
132
141
add_compile_definitions (USING_SDL2_PACKAGE)
133
142
endif ()
134
143
endif ()
0 commit comments