aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfuzzard <fuzzard@kodi.tv>2023-09-16 13:14:21 +1000
committerfuzzard <fuzzard@kodi.tv>2023-09-16 16:43:18 +1000
commit2481f3fb58d8ed4342bc7779b5eba7984f04c273 (patch)
treee47eb608f69da2c134514d43eb25388554b27494
parent29755df826b063e2d51343dd9d0a1a62afa14394 (diff)
[cmake] add support for ${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG in several find modules
Update HINTS paths as well to accommodate restricted search paths with the use of ${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG
-rw-r--r--cmake/modules/FindCrossGUID.cmake6
-rw-r--r--cmake/modules/FindDav1d.cmake4
-rw-r--r--cmake/modules/FindFlatBuffers.cmake5
-rw-r--r--cmake/modules/FindFmt.cmake16
-rw-r--r--cmake/modules/FindLibZip.cmake12
-rw-r--r--cmake/modules/FindNFS.cmake12
-rw-r--r--cmake/modules/FindPCRE.cmake28
-rw-r--r--cmake/modules/FindRapidJSON.cmake8
-rw-r--r--cmake/modules/FindSpdlog.cmake19
-rw-r--r--cmake/modules/FindTagLib.cmake13
-rw-r--r--cmake/modules/FindTinyXML2.cmake25
11 files changed, 98 insertions, 50 deletions
diff --git a/cmake/modules/FindCrossGUID.cmake b/cmake/modules/FindCrossGUID.cmake
index 59d0cebc6a..f7ae5aff1e 100644
--- a/cmake/modules/FindCrossGUID.cmake
+++ b/cmake/modules/FindCrossGUID.cmake
@@ -41,11 +41,11 @@ if(NOT TARGET CrossGUID::CrossGUID)
endif()
find_path(CROSSGUID_INCLUDE_DIR NAMES crossguid/guid.hpp guid.h
- PATHS ${PC_CROSSGUID_INCLUDEDIR})
+ HINTS ${DEPENDS_PATH}/include ${PC_CROSSGUID_INCLUDEDIR})
find_library(CROSSGUID_LIBRARY_RELEASE NAMES crossguid
- HINTS ${PC_CROSSGUID_LIBDIR})
+ HINTS ${DEPENDS_PATH}/lib ${PC_CROSSGUID_LIBDIR})
find_library(CROSSGUID_LIBRARY_DEBUG NAMES crossguidd crossguid-dgb
- HINTS ${PC_CROSSGUID_LIBDIR})
+ HINTS ${DEPENDS_PATH}/lib ${PC_CROSSGUID_LIBDIR})
# NEW_CROSSGUID >= 0.2.0 release
if(EXISTS "${CROSSGUID_INCLUDE_DIR}/crossguid/guid.hpp")
diff --git a/cmake/modules/FindDav1d.cmake b/cmake/modules/FindDav1d.cmake
index 160a53226b..f4312d27af 100644
--- a/cmake/modules/FindDav1d.cmake
+++ b/cmake/modules/FindDav1d.cmake
@@ -40,11 +40,11 @@ if(NOT TARGET dav1d::dav1d)
endif()
find_library(DAV1D_LIBRARY NAMES dav1d libdav1d
- PATHS ${PC_DAV1D_LIBDIR}
+ HINTS ${DEPENDS_PATH}/lib ${PC_DAV1D_LIBDIR}
NO_CACHE)
find_path(DAV1D_INCLUDE_DIR NAMES dav1d/dav1d.h
- PATHS ${PC_DAV1D_INCLUDEDIR}
+ HINTS ${DEPENDS_PATH}/include ${PC_DAV1D_INCLUDEDIR}
NO_CACHE)
set(DAV1D_VERSION ${PC_DAV1D_VERSION})
diff --git a/cmake/modules/FindFlatBuffers.cmake b/cmake/modules/FindFlatBuffers.cmake
index 924bcd28c1..6ddfa389c1 100644
--- a/cmake/modules/FindFlatBuffers.cmake
+++ b/cmake/modules/FindFlatBuffers.cmake
@@ -34,7 +34,10 @@ if(NOT TARGET flatbuffers::flatbuffers)
BUILD_DEP_TARGET()
else()
- find_path(FLATBUFFERS_INCLUDE_DIR NAMES flatbuffers/flatbuffers.h)
+ find_path(FLATBUFFERS_INCLUDE_DIR NAMES flatbuffers/flatbuffers.h
+ HINTS ${DEPENDS_PATH}/include
+ ${${CORE_PLATFORM_LC}_SEARCH_CONFIG}
+ NO_CACHE)
endif()
include(FindPackageHandleStandardArgs)
diff --git a/cmake/modules/FindFmt.cmake b/cmake/modules/FindFmt.cmake
index 223445c595..a403a03ce5 100644
--- a/cmake/modules/FindFmt.cmake
+++ b/cmake/modules/FindFmt.cmake
@@ -24,7 +24,9 @@ if(NOT TARGET fmt::fmt OR Fmt_FIND_REQUIRED)
SETUP_BUILD_VARS()
# Check for existing FMT. If version >= FMT-VERSION file version, dont build
- find_package(FMT CONFIG QUIET)
+ find_package(FMT CONFIG QUIET
+ HINTS ${DEPENDS_PATH}/lib
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG})
# Build if ENABLE_INTERNAL_FMT, or if required version in find_package call is greater
# than already found FMT_VERSION from a previous find_package call
@@ -83,12 +85,18 @@ if(NOT TARGET fmt::fmt OR Fmt_FIND_REQUIRED)
endif()
find_path(FMT_INCLUDE_DIR NAMES fmt/format.h
- PATHS ${PC_FMT_INCLUDEDIR})
+ HINTS ${DEPENDS_PATH}/include ${PC_FMT_INCLUDEDIR}
+ ${${CORE_PLATFORM_LC}_SEARCH_CONFIG}
+ NO_CACHE)
find_library(FMT_LIBRARY_RELEASE NAMES fmt
- PATHS ${PC_FMT_LIBDIR})
+ HINTS ${DEPENDS_PATH}/lib ${PC_FMT_LIBDIR}
+ ${${CORE_PLATFORM_LC}_SEARCH_CONFIG}
+ NO_CACHE)
find_library(FMT_LIBRARY_DEBUG NAMES fmtd
- PATHS ${PC_FMT_LIBDIR})
+ HINTS ${DEPENDS_PATH}/lib ${PC_FMT_LIBDIR}
+ ${${CORE_PLATFORM_LC}_SEARCH_CONFIG}
+ NO_CACHE)
endif()
add_library(fmt::fmt UNKNOWN IMPORTED)
diff --git a/cmake/modules/FindLibZip.cmake b/cmake/modules/FindLibZip.cmake
index 6423c29be1..ccbc4e38a6 100644
--- a/cmake/modules/FindLibZip.cmake
+++ b/cmake/modules/FindLibZip.cmake
@@ -19,7 +19,9 @@ set(MODULE_LC libzip)
SETUP_BUILD_VARS()
# Check for existing lib
-find_package(LIBZIP CONFIG QUIET)
+find_package(LIBZIP CONFIG QUIET
+ HINTS ${DEPENDS_PATH}/lib
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG})
if(NOT LIBZIP_FOUND OR LIBZIP_VERSION VERSION_LESS ${${MODULE}_VER})
# Check for dependencies
@@ -39,9 +41,13 @@ if(NOT LIBZIP_FOUND OR LIBZIP_VERSION VERSION_LESS ${${MODULE}_VER})
BUILD_DEP_TARGET()
else()
- find_path(LIBZIP_INCLUDE_DIR NAMES zip.h)
+ find_path(LIBZIP_INCLUDE_DIR NAMES zip.h
+ HINTS ${DEPENDS_PATH}/include
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG})
- find_library(LIBZIP_LIBRARY NAMES zip)
+ find_library(LIBZIP_LIBRARY NAMES zip
+ HINTS ${DEPENDS_PATH}/lib
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG})
endif()
include(FindPackageHandleStandardArgs)
diff --git a/cmake/modules/FindNFS.cmake b/cmake/modules/FindNFS.cmake
index 8608571d62..c81f2e02ae 100644
--- a/cmake/modules/FindNFS.cmake
+++ b/cmake/modules/FindNFS.cmake
@@ -16,7 +16,9 @@ if(NOT TARGET libnfs::nfs)
SETUP_BUILD_VARS()
# Search for cmake config. Suitable for all platforms including windows
- find_package(libnfs CONFIG QUIET)
+ find_package(libnfs CONFIG QUIET
+ HINTS ${DEPENDS_PATH}/lib
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG})
# Check for existing LIBNFS. If version >= LIBNFS-VERSION file version, dont build
# A corner case, but if a linux/freebsd user WANTS to build internal libnfs, build anyway
@@ -42,12 +44,16 @@ if(NOT TARGET libnfs::nfs)
find_library(LIBNFS_LIBRARY_RELEASE NAMES nfs libnfs
HINTS ${DEPENDS_PATH}/lib
- ${PC_LIBNFS_LIBDIR})
+ ${PC_LIBNFS_LIBDIR}
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG}
+ NO_CACHE)
set(LIBNFS_VERSION ${PC_LIBNFS_VERSION})
endif()
find_path(LIBNFS_INCLUDE_DIR nfsc/libnfs.h HINTS ${PC_LIBNFS_INCLUDEDIR}
- ${DEPENDS_PATH}/include)
+ ${DEPENDS_PATH}/include
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG}
+ NO_CACHE)
endif()
if(TARGET libnfs::nfs)
diff --git a/cmake/modules/FindPCRE.cmake b/cmake/modules/FindPCRE.cmake
index f4c54aea8a..0b7e0c3203 100644
--- a/cmake/modules/FindPCRE.cmake
+++ b/cmake/modules/FindPCRE.cmake
@@ -17,7 +17,9 @@ if(NOT PCRE::pcre)
SETUP_BUILD_VARS()
# Check for existing PCRE. If version >= PCRE-VERSION file version, dont build
- find_package(PCRE CONFIG QUIET)
+ find_package(PCRE CONFIG QUIET
+ HINTS ${DEPENDS_PATH}/lib
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG})
if((PCRE_VERSION VERSION_LESS ${${MODULE}_VER} AND ENABLE_INTERNAL_PCRE) OR
((CORE_SYSTEM_NAME STREQUAL linux OR CORE_SYSTEM_NAME STREQUAL freebsd) AND ENABLE_INTERNAL_PCRE))
@@ -76,15 +78,25 @@ if(NOT PCRE::pcre)
endif()
find_path(PCRE_INCLUDE_DIR pcrecpp.h
- PATHS ${PC_PCRE_INCLUDEDIR})
+ HINTS ${DEPENDS_PATH}/include ${PC_PCRE_INCLUDEDIR}
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG}
+ NO_CACHE)
find_library(PCRECPP_LIBRARY_RELEASE NAMES pcrecpp
- PATHS ${PC_PCRE_LIBDIR})
+ HINTS ${DEPENDS_PATH}/lib ${PC_PCRE_LIBDIR}
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG}
+ NO_CACHE)
find_library(PCRE_LIBRARY_RELEASE NAMES pcre
- PATHS ${PC_PCRE_LIBDIR})
+ HINTS ${DEPENDS_PATH}/lib ${PC_PCRE_LIBDIR}
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG}
+ NO_CACHE)
find_library(PCRECPP_LIBRARY_DEBUG NAMES pcrecppd
- PATHS ${PC_PCRE_LIBDIR})
+ HINTS ${DEPENDS_PATH}/lib ${PC_PCRE_LIBDIR}
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG}
+ NO_CACHE)
find_library(PCRE_LIBRARY_DEBUG NAMES pcred
- PATHS ${PC_PCRE_LIBDIR})
+ HINTS ${DEPENDS_PATH}/lib ${PC_PCRE_LIBDIR}
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG}
+ NO_CACHE)
set(PCRE_VERSION ${PC_PCRE_VERSION})
else()
@@ -113,7 +125,9 @@ if(NOT PCRE::pcre)
# ToDo: patch PCRE cmake to include includedir in config file
find_path(PCRE_INCLUDE_DIR pcrecpp.h
- PATHS ${PC_PCRE_INCLUDEDIR})
+ HINTS ${DEPENDS_PATH}/include ${PC_PCRE_INCLUDEDIR}
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG}
+ NO_CACHE)
set_target_properties(PCRE::pcre PROPERTIES
INTERFACE_INCLUDE_DIRECTORIES "${PCRE_INCLUDE_DIR}")
diff --git a/cmake/modules/FindRapidJSON.cmake b/cmake/modules/FindRapidJSON.cmake
index 44a25b6193..19405867bd 100644
--- a/cmake/modules/FindRapidJSON.cmake
+++ b/cmake/modules/FindRapidJSON.cmake
@@ -46,12 +46,16 @@ if(NOT TARGET RapidJSON::RapidJSON)
if(PC_RapidJSON_VERSION)
set(RapidJSON_VERSION ${PC_RapidJSON_VERSION})
else()
- find_package(RapidJSON 1.1.0 CONFIG REQUIRED QUIET)
+ find_package(RapidJSON 1.1.0 CONFIG REQUIRED
+ QUIET
+ HINTS ${DEPENDS_PATH}/lib
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG})
endif()
endif()
find_path(RAPIDJSON_INCLUDE_DIRS NAMES rapidjson/rapidjson.h
- PATHS ${PC_RapidJSON_INCLUDEDIR}
+ HINTS ${DEPENDS_PATH}/include ${PC_RapidJSON_INCLUDEDIR}
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG}
NO_CACHE)
endif()
diff --git a/cmake/modules/FindSpdlog.cmake b/cmake/modules/FindSpdlog.cmake
index b1beabea3b..f8e8e998b9 100644
--- a/cmake/modules/FindSpdlog.cmake
+++ b/cmake/modules/FindSpdlog.cmake
@@ -24,14 +24,10 @@ if(NOT TARGET spdlog::spdlog)
set(MODULE_LC spdlog)
SETUP_BUILD_VARS()
- # Darwin systems we want to avoid system packages. We are entirely self sufficient
- # Avoids homebrew populating rubbish we cant control
- if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
- set(_spdlog_find_option NO_SYSTEM_ENVIRONMENT_PATH)
- endif()
-
# Check for existing SPDLOG. If version >= SPDLOG-VERSION file version, dont build
- find_package(SPDLOG ${_spdlog_find_option} CONFIG QUIET)
+ find_package(SPDLOG CONFIG QUIET
+ HINTS ${DEPENDS_PATH}/lib
+ ${${CORE_PLATFORM_LC}_SEARCH_CONFIG})
if((SPDLOG_VERSION VERSION_LESS ${${MODULE}_VER} AND ENABLE_INTERNAL_SPDLOG) OR
((CORE_SYSTEM_NAME STREQUAL linux OR CORE_SYSTEM_NAME STREQUAL freebsd) AND ENABLE_INTERNAL_SPDLOG) OR
@@ -83,14 +79,17 @@ if(NOT TARGET spdlog::spdlog)
endif()
find_path(SPDLOG_INCLUDE_DIR NAMES spdlog/spdlog.h
- PATHS ${PC_SPDLOG_INCLUDEDIR}
+ HINTS ${DEPENDS_PATH}/include ${PC_SPDLOG_INCLUDEDIR}
+ ${${CORE_PLATFORM_LC}_SEARCH_CONFIG}
NO_CACHE)
find_library(SPDLOG_LIBRARY_RELEASE NAMES spdlog
- PATHS ${PC_SPDLOG_LIBDIR}
+ HINTS ${DEPENDS_PATH}/lib ${PC_SPDLOG_LIBDIR}
+ ${${CORE_PLATFORM_LC}_SEARCH_CONFIG}
NO_CACHE)
find_library(SPDLOG_LIBRARY_DEBUG NAMES spdlogd
- PATHS ${PC_SPDLOG_LIBDIR}
+ HINTS ${DEPENDS_PATH}/lib ${PC_SPDLOG_LIBDIR}
+ ${${CORE_PLATFORM_LC}_SEARCH_CONFIG}
NO_CACHE)
# Only add -D definitions. Skip -I include as we do a find_path for the header anyway
diff --git a/cmake/modules/FindTagLib.cmake b/cmake/modules/FindTagLib.cmake
index e1b8745e4a..e455a58cb5 100644
--- a/cmake/modules/FindTagLib.cmake
+++ b/cmake/modules/FindTagLib.cmake
@@ -61,11 +61,18 @@ if(NOT TARGET TagLib::TagLib)
pkg_check_modules(PC_TAGLIB taglib>=1.9.0 QUIET)
endif()
- find_path(TAGLIB_INCLUDE_DIR taglib/tag.h PATHS ${PC_TAGLIB_INCLUDEDIR})
+ find_path(TAGLIB_INCLUDE_DIR NAMES taglib/tag.h
+ HINTS ${DEPENDS_PATH}/include ${PC_TAGLIB_INCLUDEDIR}
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG}
+ NO_CACHE)
find_library(TAGLIB_LIBRARY_RELEASE NAMES tag
- PATHS ${PC_TAGLIB_LIBDIR})
+ HINTS ${DEPENDS_PATH}/lib ${PC_TAGLIB_LIBDIR}
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG}
+ NO_CACHE)
find_library(TAGLIB_LIBRARY_DEBUG NAMES tagd
- PATHS ${PC_TAGLIB_LIBDIR})
+ HINTS ${DEPENDS_PATH}/lib ${PC_TAGLIB_LIBDIR}
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG}
+ NO_CACHE)
set(TAGLIB_VERSION ${PC_TAGLIB_VERSION})
set(TAGLIB_LINK_LIBS ${PC_TAGLIB_LIBRARIES})
diff --git a/cmake/modules/FindTinyXML2.cmake b/cmake/modules/FindTinyXML2.cmake
index d95a7343b6..ba11a47a3f 100644
--- a/cmake/modules/FindTinyXML2.cmake
+++ b/cmake/modules/FindTinyXML2.cmake
@@ -14,14 +14,9 @@ if(NOT TARGET tinyxml2::tinyxml2)
SETUP_BUILD_VARS()
- # Darwin systems we want to avoid system packages. We are entirely self sufficient
- # Avoids homebrew populating rubbish we cant control
- # Do we want to set this for all except LINUX/FREEBSD possibly?
- if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
- set(_tinyxml2_find_option NO_SYSTEM_ENVIRONMENT_PATH)
- endif()
-
- find_package(TINYXML2 ${_tinyxml2_find_option} CONFIG QUIET)
+ find_package(TINYXML2 CONFIG QUIET
+ HINTS ${DEPENDS_PATH}/lib
+ ${${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG})
# Check for existing TINYXML2. If version >= TINYXML2-VERSION file version, dont build
# A corner case, but if a linux/freebsd user WANTS to build internal tinyxml2, build anyway
@@ -68,12 +63,18 @@ if(NOT TARGET tinyxml2::tinyxml2)
pkg_check_modules(PC_TINYXML2 tinyxml2 QUIET)
endif()
- find_path(TINYXML2_INCLUDE_DIR tinyxml2.h
- PATHS ${PC_TINYXML2_INCLUDEDIR})
+ find_path(TINYXML2_INCLUDE_DIR NAMES tinyxml2.h
+ HINTS ${DEPENDS_PATH}/include ${PC_TINYXML2_INCLUDEDIR}
+ ${${CORE_PLATFORM_LC}_SEARCH_CONFIG}
+ NO_CACHE)
find_library(TINYXML2_LIBRARY_RELEASE NAMES tinyxml2
- PATHS ${PC_TINYXML2_LIBDIR})
+ HINTS ${DEPENDS_PATH}/lib ${PC_TINYXML2_LIBDIR}
+ ${${CORE_PLATFORM_LC}_SEARCH_CONFIG}
+ NO_CACHE)
find_library(TINYXML2_LIBRARY_DEBUG NAMES tinyxml2d
- PATHS ${PC_TINYXML2_LIBDIR})
+ HINTS ${DEPENDS_PATH}/lib ${PC_TINYXML2_LIBDIR}
+ ${${CORE_PLATFORM_LC}_SEARCH_CONFIG}
+ NO_CACHE)
set(TINYXML2_VERSION ${PC_TINYXML2_VERSION})
endif()