4 # Finds the HarfBuzz library
6 # This will define the following variables::
8 # HARFBUZZ_FOUND - system has HarfBuzz
9 # HARFBUZZ_INCLUDE_DIRS - the HarfBuzz include directory
10 # HARFBUZZ_LIBRARIES - the HarfBuzz libraries
12 # and the following imported targets::
14 # HarfBuzz::HarfBuzz - The HarfBuzz library
17 pkg_check_modules(PC_HARFBUZZ harfbuzz QUIET)
20 find_path(HARFBUZZ_INCLUDE_DIR NAMES harfbuzz/hb-ft.h hb-ft.h
21 PATHS ${PC_HARFBUZZ_INCLUDEDIR}
22 ${PC_HARFBUZZ_INCLUDE_DIRS}
23 PATH_SUFFIXES harfbuzz)
24 find_library(HARFBUZZ_LIBRARY NAMES harfbuzz harfbuzz
25 PATHS ${PC_HARFBUZZ_LIBDIR})
27 set(HARFBUZZ_VERSION ${PC_HARFBUZZ_VERSION})
29 include(FindPackageHandleStandardArgs)
30 find_package_handle_standard_args(HarfBuzz
31 REQUIRED_VARS HARFBUZZ_LIBRARY HARFBUZZ_INCLUDE_DIR
32 VERSION_VAR HARFBUZZ_VERSION)
35 set(HARFBUZZ_LIBRARIES ${HARFBUZZ_LIBRARY})
36 set(HARFBUZZ_INCLUDE_DIRS ${HARFBUZZ_INCLUDE_DIR})
38 if(NOT TARGET HarfBuzz::HarfBuzz)
39 add_library(HarfBuzz::HarfBuzz UNKNOWN IMPORTED)
40 set_target_properties(HarfBuzz::HarfBuzz PROPERTIES
41 IMPORTED_LOCATION "${HARFBUZZ_LIBRARY}"
42 INTERFACE_INCLUDE_DIRECTORIES "${HARFBUZZ_INCLUDE_DIR}")
46 mark_as_advanced(HARFBUZZ_INCLUDE_DIR HARFBUZZ_LIBRARY)