diff options
author | fuzzard <fuzzard@kodi.tv> | 2023-09-05 17:58:05 +1000 |
---|---|---|
committer | fuzzard <fuzzard@kodi.tv> | 2023-09-11 09:52:57 +1000 |
commit | 4f532d3fb9fbff83f655634612e15297fbd1cbf6 (patch) | |
tree | 9158c956ac90fd76b2957661937ba00dd1d75c44 | |
parent | 327fd819622980f578ebe1a40b9f0520d933712f (diff) |
[cmake] FindHarfBuzz migrate to full TARGET usage
-rw-r--r-- | cmake/modules/FindHarfBuzz.cmake | 49 |
1 files changed, 21 insertions, 28 deletions
diff --git a/cmake/modules/FindHarfBuzz.cmake b/cmake/modules/FindHarfBuzz.cmake index 6691136bbb..44b291c9b8 100644 --- a/cmake/modules/FindHarfBuzz.cmake +++ b/cmake/modules/FindHarfBuzz.cmake @@ -3,44 +3,37 @@ # ------------ # Finds the HarfBuzz library # -# This will define the following variables:: -# -# HARFBUZZ_FOUND - system has HarfBuzz -# HARFBUZZ_INCLUDE_DIRS - the HarfBuzz include directory -# HARFBUZZ_LIBRARIES - the HarfBuzz libraries -# -# and the following imported targets:: +# This will define the following target: # # HarfBuzz::HarfBuzz - The HarfBuzz library -if(PKG_CONFIG_FOUND) - pkg_check_modules(PC_HARFBUZZ harfbuzz QUIET) -endif() - -find_path(HARFBUZZ_INCLUDE_DIR NAMES harfbuzz/hb-ft.h hb-ft.h - PATHS ${PC_HARFBUZZ_INCLUDEDIR} - ${PC_HARFBUZZ_INCLUDE_DIRS} - PATH_SUFFIXES harfbuzz) -find_library(HARFBUZZ_LIBRARY NAMES harfbuzz harfbuzz - PATHS ${PC_HARFBUZZ_LIBDIR}) +if(NOT TARGET HarfBuzz::HarfBuzz) + find_package(PkgConfig) + if(PKG_CONFIG_FOUND) + pkg_check_modules(PC_HARFBUZZ harfbuzz QUIET) + endif() -set(HARFBUZZ_VERSION ${PC_HARFBUZZ_VERSION}) + find_path(HARFBUZZ_INCLUDE_DIR NAMES harfbuzz/hb-ft.h hb-ft.h + HINTS ${PC_HARFBUZZ_INCLUDEDIR} + ${PC_HARFBUZZ_INCLUDE_DIRS} + PATH_SUFFIXES harfbuzz + NO_CACHE) + find_library(HARFBUZZ_LIBRARY NAMES harfbuzz + HINTS ${PC_HARFBUZZ_LIBDIR} + NO_CACHE) -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(HarfBuzz - REQUIRED_VARS HARFBUZZ_LIBRARY HARFBUZZ_INCLUDE_DIR - VERSION_VAR HARFBUZZ_VERSION) + set(HARFBUZZ_VERSION ${PC_HARFBUZZ_VERSION}) -if(HARFBUZZ_FOUND) - set(HARFBUZZ_LIBRARIES ${HARFBUZZ_LIBRARY}) - set(HARFBUZZ_INCLUDE_DIRS ${HARFBUZZ_INCLUDE_DIR}) + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(HarfBuzz + REQUIRED_VARS HARFBUZZ_LIBRARY HARFBUZZ_INCLUDE_DIR + VERSION_VAR HARFBUZZ_VERSION) - if(NOT TARGET HarfBuzz::HarfBuzz) + if(HARFBUZZ_FOUND) add_library(HarfBuzz::HarfBuzz UNKNOWN IMPORTED) set_target_properties(HarfBuzz::HarfBuzz PROPERTIES IMPORTED_LOCATION "${HARFBUZZ_LIBRARY}" INTERFACE_INCLUDE_DIRECTORIES "${HARFBUZZ_INCLUDE_DIR}") + set_property(GLOBAL APPEND PROPERTY INTERNAL_DEPS_PROP HarfBuzz::HarfBuzz) endif() endif() - -mark_as_advanced(HARFBUZZ_INCLUDE_DIR HARFBUZZ_LIBRARY) |