[build][cmake] when libs are added externally, consumer needs to import them too

This commit is contained in:
Bruno Cabral 2025-09-12 07:53:51 -07:00
parent 996baf680f
commit 49645b243c
3 changed files with 9 additions and 2 deletions

View File

@ -7,6 +7,8 @@ if(POLICY CMP0072)
cmake_policy(SET CMP0072 NEW)
endif()
set(RAYLIB_DEPENDENCIES "include(CMakeFindDependencyMacro)")
if (${PLATFORM} MATCHES "Desktop")
set(PLATFORM_CPP "PLATFORM_DESKTOP")
@ -120,7 +122,8 @@ elseif ("${PLATFORM}" MATCHES "SDL")
find_package(SDL3 QUIET)
if(SDL3_FOUND)
message(STATUS "Found SDL3 via find_package()")
set(LIBS_PRIVATE SDL3::SDL3)
set(LIBS_PUBLIC SDL3::SDL3)
set(RAYLIB_DEPENDENCIES "${RAYLIB_DEPENDENCIES}\nfind_dependency(SDL3 REQUIRED)")
set(PLATFORM_CPP "PLATFORM_DESKTOP_SDL")
add_compile_definitions(USING_SDL3_PACKAGE)
else()
@ -128,7 +131,8 @@ elseif ("${PLATFORM}" MATCHES "SDL")
find_package(SDL2 REQUIRED)
message(STATUS "Found SDL2 via find_package()")
set(PLATFORM_CPP "PLATFORM_DESKTOP_SDL")
set(LIBS_PRIVATE SDL2::SDL2)
set(LIBS_PUBLIC SDL2::SDL2)
set(RAYLIB_DEPENDENCIES "${RAYLIB_DEPENDENCIES}\nfind_dependency(SDL3 REQUIRED)")
add_compile_definitions(USING_SDL2_PACKAGE)
endif()
endif()

View File

@ -1,2 +1,4 @@
@PACKAGE_INIT@
@RAYLIB_DEPENDENCIES@
include("${CMAKE_CURRENT_LIST_DIR}/raylib-targets.cmake")

View File

@ -92,6 +92,7 @@ if (BUILD_SHARED_LIBS)
endif ()
target_link_libraries(raylib PRIVATE $<BUILD_INTERFACE:${LIBS_PRIVATE}>)
target_link_libraries(raylib PUBLIC ${LIBS_PUBLIC})
# Sets some compile time definitions for the pre-processor
# If CUSTOMIZE_BUILD option is on you will not use config.h by default