aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfuzzard <fuzzard@kodi.tv>2024-05-11 21:16:34 +1000
committerfuzzard <fuzzard@kodi.tv>2024-05-18 10:57:13 +1000
commit20e359479dee17bc71e4c8f4b53dbf1dd0799351 (patch)
treec49319878e00930368c2961a187668995f42d9f9
parentdaf2e7609dc021645a19c5dc840bff89df25d72d (diff)
downloadxbmc-20e359479dee17bc71e4c8f4b53dbf1dd0799351.tar.xz
[cmake][modules] FindCEC cleanup and use core_target_link_libraries
-rw-r--r--cmake/modules/FindCEC.cmake38
-rw-r--r--xbmc/peripherals/bus/virtual/CMakeLists.txt2
-rw-r--r--xbmc/peripherals/devices/CMakeLists.txt2
3 files changed, 18 insertions, 24 deletions
diff --git a/cmake/modules/FindCEC.cmake b/cmake/modules/FindCEC.cmake
index 51b6cbb972..b15c8e4b14 100644
--- a/cmake/modules/FindCEC.cmake
+++ b/cmake/modules/FindCEC.cmake
@@ -5,9 +5,9 @@
#
# This will define the following target:
#
-# CEC::CEC - The libCEC library
+# ${APP_NAME_LC}::CEC - The libCEC library
-if(NOT TARGET CEC::CEC)
+if(NOT TARGET ${APP_NAME_LC}::${CMAKE_FIND_PACKAGE_NAME})
include(cmake/scripts/common/ModuleHelpers.cmake)
macro(buildCEC)
@@ -85,9 +85,8 @@ if(NOT TARGET CEC::CEC)
# CEC cmake config doesnt include INTERFACE_INCLUDE_DIRECTORIES
find_path(CEC_INCLUDE_DIR NAMES libcec/cec.h libCEC/CEC.h
- HINTS ${DEPENDS_PATH}/include ${PC_CEC_INCLUDEDIR}
- ${${CORE_PLATFORM_LC}_SEARCH_CONFIG}
- NO_CACHE)
+ HINTS ${DEPENDS_PATH}/include
+ ${${CORE_PLATFORM_LC}_SEARCH_CONFIG})
set(CEC_VERSION ${libcec_VERSION})
else()
find_package(PkgConfig)
@@ -97,13 +96,11 @@ if(NOT TARGET CEC::CEC)
endif()
find_library(CEC_LIBRARY_RELEASE NAMES cec
HINTS ${DEPENDS_PATH}/lib ${PC_CEC_LIBDIR}
- ${${CORE_PLATFORM_LC}_SEARCH_CONFIG}
- NO_CACHE)
+ ${${CORE_PLATFORM_LC}_SEARCH_CONFIG})
find_path(CEC_INCLUDE_DIR NAMES libcec/cec.h libCEC/CEC.h
HINTS ${DEPENDS_PATH}/include ${PC_CEC_INCLUDEDIR}
- ${${CORE_PLATFORM_LC}_SEARCH_CONFIG}
- NO_CACHE)
+ ${${CORE_PLATFORM_LC}_SEARCH_CONFIG})
if(PC_CEC_VERSION)
set(CEC_VERSION ${PC_CEC_VERSION})
@@ -127,26 +124,26 @@ if(NOT TARGET CEC::CEC)
if(CEC_FOUND)
# cmake target and not building internal
if(TARGET libcec::cec AND NOT TARGET cec)
- add_library(CEC::CEC ALIAS libcec::cec)
+ add_library(${APP_NAME_LC}::${CMAKE_FIND_PACKAGE_NAME} ALIAS libcec::cec)
# We need to append in case the cmake config already has definitions
set_property(TARGET libcec::cec APPEND PROPERTY
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBCEC=1)
+ INTERFACE_COMPILE_DEFINITIONS HAVE_LIBCEC)
# pkgconfig target found
elseif(TARGET PkgConfig::PC_CEC)
- add_library(CEC::CEC ALIAS PkgConfig::PC_CEC)
+ add_library(${APP_NAME_LC}::${CMAKE_FIND_PACKAGE_NAME} ALIAS PkgConfig::PC_CEC)
set_property(TARGET PkgConfig::PC_CEC APPEND PROPERTY
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBCEC=1)
+ INTERFACE_COMPILE_DEFINITIONS HAVE_LIBCEC)
# building internal or no cmake config or pkgconfig
else()
- add_library(CEC::CEC UNKNOWN IMPORTED)
- set_target_properties(CEC::CEC PROPERTIES
- IMPORTED_LOCATION "${CEC_LIBRARY}"
- INTERFACE_INCLUDE_DIRECTORIES "${CEC_INCLUDE_DIR}"
- INTERFACE_COMPILE_DEFINITIONS HAVE_LIBCEC=1)
+ add_library(${APP_NAME_LC}::${CMAKE_FIND_PACKAGE_NAME} UNKNOWN IMPORTED)
+ set_target_properties(${APP_NAME_LC}::${CMAKE_FIND_PACKAGE_NAME} PROPERTIES
+ IMPORTED_LOCATION "${CEC_LIBRARY}"
+ INTERFACE_INCLUDE_DIRECTORIES "${CEC_INCLUDE_DIR}"
+ INTERFACE_COMPILE_DEFINITIONS HAVE_LIBCEC)
endif()
if(TARGET cec)
- add_dependencies(CEC::CEC cec)
+ add_dependencies(${APP_NAME_LC}::${CMAKE_FIND_PACKAGE_NAME} cec)
endif()
# Add internal build target when a Multi Config Generator is used
@@ -164,8 +161,5 @@ if(NOT TARGET CEC::CEC)
endif()
add_dependencies(build_internal_depends cec)
endif()
-
- set_property(GLOBAL APPEND PROPERTY INTERNAL_DEPS_PROP CEC::CEC)
-
endif()
endif()
diff --git a/xbmc/peripherals/bus/virtual/CMakeLists.txt b/xbmc/peripherals/bus/virtual/CMakeLists.txt
index 0a70d59c84..b94d241194 100644
--- a/xbmc/peripherals/bus/virtual/CMakeLists.txt
+++ b/xbmc/peripherals/bus/virtual/CMakeLists.txt
@@ -4,7 +4,7 @@ set(SOURCES PeripheralBusAddon.cpp
set(HEADERS PeripheralBusAddon.h
PeripheralBusApplication.h)
-if(TARGET CEC::CEC)
+if(TARGET ${APP_NAME_LC}::CEC)
list(APPEND SOURCES PeripheralBusCEC.cpp)
list(APPEND HEADERS PeripheralBusCEC.h)
endif()
diff --git a/xbmc/peripherals/devices/CMakeLists.txt b/xbmc/peripherals/devices/CMakeLists.txt
index 873acc4431..059ae173c7 100644
--- a/xbmc/peripherals/devices/CMakeLists.txt
+++ b/xbmc/peripherals/devices/CMakeLists.txt
@@ -22,7 +22,7 @@ set(HEADERS Peripheral.h
PeripheralNyxboard.h
PeripheralTuner.h)
-if(TARGET CEC::CEC)
+if(TARGET ${APP_NAME_LC}::CEC)
list(APPEND SOURCES PeripheralCecAdapter.cpp)
list(APPEND HEADERS PeripheralCecAdapter.h)
endif()