diff options
author | fuzzard <fuzzard@kodi.tv> | 2023-09-16 13:14:21 +1000 |
---|---|---|
committer | fuzzard <fuzzard@kodi.tv> | 2023-09-16 16:43:18 +1000 |
commit | 2481f3fb58d8ed4342bc7779b5eba7984f04c273 (patch) | |
tree | e47eb608f69da2c134514d43eb25388554b27494 | |
parent | 29755df826b063e2d51343dd9d0a1a62afa14394 (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.cmake | 6 | ||||
-rw-r--r-- | cmake/modules/FindDav1d.cmake | 4 | ||||
-rw-r--r-- | cmake/modules/FindFlatBuffers.cmake | 5 | ||||
-rw-r--r-- | cmake/modules/FindFmt.cmake | 16 | ||||
-rw-r--r-- | cmake/modules/FindLibZip.cmake | 12 | ||||
-rw-r--r-- | cmake/modules/FindNFS.cmake | 12 | ||||
-rw-r--r-- | cmake/modules/FindPCRE.cmake | 28 | ||||
-rw-r--r-- | cmake/modules/FindRapidJSON.cmake | 8 | ||||
-rw-r--r-- | cmake/modules/FindSpdlog.cmake | 19 | ||||
-rw-r--r-- | cmake/modules/FindTagLib.cmake | 13 | ||||
-rw-r--r-- | cmake/modules/FindTinyXML2.cmake | 25 |
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() |