cmake: use pkg-config + test compile instead of Find module for detecting rpi
This commit is contained in:
committed by
Anonymous Maarten
parent
deec574ff6
commit
da5016d336
@@ -1079,17 +1079,22 @@ endmacro()
|
||||
# - n/a
|
||||
macro(CheckRPI)
|
||||
if(SDL_RPI)
|
||||
# presence of bcm_host means raspberry pi
|
||||
find_package(RPi_BcmHost)
|
||||
if(RPi_BcmHost_FOUND)
|
||||
set(BCM_HOST_PKG_CONFIG_SPEC bcm_host)
|
||||
set(BRCMEGL_PKG_CONFIG_SPEC brcmegl)
|
||||
|
||||
set(original_PKG_CONFIG_PATH $ENV{PKG_CONFIG_PATH})
|
||||
set(ENV{PKG_CONFIG_PATH} "${original_PKG_CONFIG_PATH}:/opt/vc/lib/pkgconfig")
|
||||
pkg_check_modules(PC_BCM_HOST IMPORTED_TARGET QUIET ${BCM_HOST_PKG_CONFIG_SPEC})
|
||||
pkg_check_modules(PC_BRCMEGL IMPORTED_TARGET QUIET ${BRCMEGL_PKG_CONFIG_SPEC})
|
||||
set(ENV{PKG_CONFIG_PATH} "${original_PKG_CONFIG_PATH}")
|
||||
|
||||
if(TARGET PkgConfig::PC_BCM_HOST AND TARGET PkgConfig::PC_BRCMEGL)
|
||||
set(HAVE_RPI TRUE)
|
||||
sdl_link_dependency(rpi LIBS RPi_BcmHost::RPi_BcmHost CMAKE_MODULE RPi_BcmHost PKG_CONFIG_SPECS ${RPi_BcmHost_PKG_CONFIG_SPEC})
|
||||
find_package(RPi_BrcmEGL)
|
||||
if(SDL_VIDEO AND RPi_BrcmEGL_FOUND)
|
||||
if(SDL_VIDEO)
|
||||
set(HAVE_SDL_VIDEO TRUE)
|
||||
set(SDL_VIDEO_DRIVER_RPI 1)
|
||||
sdl_glob_sources("${SDL3_SOURCE_DIR}/src/video/raspberry/*.c")
|
||||
sdl_link_dependency(rpi-video LIBS RPi_BrcmEGL::RPi_BrcmEGL CMAKE_MODULE RPi_BrcmEGL PKG_CONFIG_SPECS ${RPi_BrcmEGL_PKG_CONFIG_SPEC})
|
||||
sdl_link_dependency(rpi-video LIBS PkgConfig::PC_BCM_HOST PKG_CONFIG_PREFIX PC_BCM_HOST PKG_CONFIG_SPECS ${BCM_HOST_PKG_CONFIG_SPEC})
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
Reference in New Issue
Block a user