1 # Set these variables so that the `${prefix}/lib` expands to something we can
3 set(_harfbuzz_remove_string "REMOVE_ME")
4 set(exec_prefix "${_harfbuzz_remove_string}")
5 set(prefix "${_harfbuzz_remove_string}")
7 # Compute the installation prefix by stripping components from our current
9 get_filename_component(_harfbuzz_prefix "${CMAKE_CURRENT_LIST_DIR}" DIRECTORY)
10 get_filename_component(_harfbuzz_prefix "${_harfbuzz_prefix}" DIRECTORY)
11 set(_harfbuzz_libdir "@libdir@")
12 string(REPLACE "${_harfbuzz_remove_string}/" "" _harfbuzz_libdir "${_harfbuzz_libdir}")
13 set(_harfbuzz_libdir_iter "${_harfbuzz_libdir}")
14 while (_harfbuzz_libdir_iter)
15 set(_harfbuzz_libdir_prev_iter "${_harfbuzz_libdir_iter}")
16 get_filename_component(_harfbuzz_libdir_iter "${_harfbuzz_libdir_iter}" DIRECTORY)
17 if (_harfbuzz_libdir_prev_iter STREQUAL _harfbuzz_libdir_iter)
20 get_filename_component(_harfbuzz_prefix "${_harfbuzz_prefix}" DIRECTORY)
22 unset(_harfbuzz_libdir_iter)
24 # Get the include subdir.
25 set(_harfbuzz_includedir "@includedir@")
26 string(REPLACE "${_harfbuzz_remove_string}/" "" _harfbuzz_includedir "${_harfbuzz_includedir}")
28 # Extract version information from libtool.
29 set(_harfbuzz_version_info "@HB_LIBTOOL_VERSION_INFO@")
30 string(REPLACE ":" ";" _harfbuzz_version_info "${_harfbuzz_version_info}")
31 list(GET _harfbuzz_version_info 0
33 list(GET _harfbuzz_version_info 1
35 list(GET _harfbuzz_version_info 2
37 unset(_harfbuzz_version_info)
40 set(_harfbuzz_lib_suffix ".0${CMAKE_SHARED_LIBRARY_SUFFIX}")
42 set(_harfbuzz_lib_suffix "${CMAKE_SHARED_LIBRARY_SUFFIX}.0.${_harfbuzz_current}.${_harfbuzz_revision}")
49 add_library(harfbuzz::harfbuzz SHARED IMPORTED)
50 set_target_properties(harfbuzz::harfbuzz PROPERTIES
51 INTERFACE_INCLUDE_DIRECTORIES "${_harfbuzz_prefix}/${_harfbuzz_includedir}/harfbuzz"
52 IMPORTED_LOCATION "${_harfbuzz_prefix}/${_harfbuzz_libdir}/libharfbuzz${_harfbuzz_lib_suffix}")
54 add_library(harfbuzz::icu SHARED IMPORTED)
55 set_target_properties(harfbuzz::icu PROPERTIES
56 INTERFACE_INCLUDE_DIRECTORIES "${_harfbuzz_prefix}/${_harfbuzz_includedir}/harfbuzz"
57 INTERFACE_LINK_LIBRARIES "harfbuzz::harfbuzz"
58 IMPORTED_LOCATION "${_harfbuzz_prefix}/${_harfbuzz_libdir}/libharfbuzz-icu${_harfbuzz_lib_suffix}")
60 add_library(harfbuzz::subset SHARED IMPORTED)
61 set_target_properties(harfbuzz::subset PROPERTIES
62 INTERFACE_INCLUDE_DIRECTORIES "${_harfbuzz_prefix}/${_harfbuzz_includedir}/harfbuzz"
63 INTERFACE_LINK_LIBRARIES "harfbuzz::harfbuzz"
64 IMPORTED_LOCATION "${_harfbuzz_prefix}/${_harfbuzz_libdir}/libharfbuzz-subset${_harfbuzz_lib_suffix}")
66 # Only add the gobject library if it was built.
67 set(_harfbuzz_have_gobject "@have_gobject@")
68 if (_harfbuzz_have_gobject)
69 add_library(harfbuzz::gobject SHARED IMPORTED)
70 set_target_properties(harfbuzz::gobject PROPERTIES
71 INTERFACE_INCLUDE_DIRECTORIES "${_harfbuzz_prefix}/${_harfbuzz_includedir}/harfbuzz"
72 INTERFACE_LINK_LIBRARIES "harfbuzz::harfbuzz"
73 IMPORTED_LOCATION "${_harfbuzz_prefix}/${_harfbuzz_libdir}/libharfbuzz-gobject${_harfbuzz_lib_suffix}")
76 # Clean out variables we used in our scope.
77 unset(_harfbuzz_lib_suffix)
78 unset(_harfbuzz_current)
79 unset(_harfbuzz_revision)
81 unset(_harfbuzz_includedir)
82 unset(_harfbuzz_libdir)
83 unset(_harfbuzz_prefix)
86 unset(_harfbuzz_remove_string)