-
Notifications
You must be signed in to change notification settings - Fork 6.6k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[harfbuzz] Update to 2.7.0 and use meson
- Loading branch information
Showing
2 changed files
with
16 additions
and
43 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,60 +1,33 @@ | ||
vcpkg_from_github( | ||
OUT_SOURCE_PATH SOURCE_PATH | ||
REPO harfbuzz/harfbuzz | ||
REF 2.6.6 | ||
SHA512 3ddf3e6eccf28ca1441544f0b67e243c6a85a32122bfc0f8092b3cc465b20a25aa3cb72404070d2627b9e204f86412c3bfb9aaca272c5492d8448facc1971a7d | ||
REF a01c7a380b9a3351bc7056c816e1340b5374a6f8 # 2.7.0 | ||
SHA512 7e038aa640194d532c6eb22a7f47c8ee1bd7a6e22f80f025e8cd8a8886cd2170f10a812e4d03018a915ff2ec7e13c89c1381b269be057b5d9b1c52d3a14db3b8 | ||
HEAD_REF master | ||
PATCHES | ||
0001-fix-cmake-export.patch | ||
0002-fix-uwp-build.patch | ||
0003-remove-broken-test.patch | ||
# This patch is required for propagating the full list of static dependencies from freetype | ||
find-package-freetype-2.patch | ||
# This patch is required for propagating the full list of dependencies from glib | ||
glib-cmake.patch | ||
) | ||
|
||
file(READ ${SOURCE_PATH}/CMakeLists.txt _contents) | ||
|
||
if("${_contents}" MATCHES "include \\(FindFreetype\\)") | ||
message(FATAL_ERROR "Harfbuzz's cmake must not directly include() FindFreetype.") | ||
endif() | ||
|
||
if("${_contents}" MATCHES "find_library\\(GLIB_LIBRARIES") | ||
message(FATAL_ERROR "Harfbuzz's cmake must not directly find_library() glib.") | ||
endif() | ||
|
||
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS | ||
icu HB_HAVE_ICU | ||
graphite2 HB_HAVE_GRAPHITE2 | ||
glib HB_HAVE_GLIB | ||
icu icu | ||
graphite2 graphite | ||
glib glib | ||
) | ||
|
||
vcpkg_configure_cmake( | ||
vcpkg_configure_meson( | ||
SOURCE_PATH ${SOURCE_PATH} | ||
PREFER_NINJA | ||
OPTIONS ${FEATURE_OPTIONS} | ||
-DHB_HAVE_FREETYPE=ON | ||
-DHB_BUILD_TESTS=OFF | ||
OPTIONS_DEBUG | ||
-DSKIP_INSTALL_HEADERS=ON | ||
OPTIONS # ${FEATURE_OPTIONS} | ||
-Dglib=disabled | ||
-Dgobject=disabled | ||
-Ddocs=disabled | ||
-Dtests=disabled | ||
--backend=ninja | ||
) | ||
|
||
vcpkg_install_cmake() | ||
vcpkg_fixup_cmake_targets() | ||
|
||
vcpkg_install_meson() | ||
vcpkg_copy_pdbs() | ||
|
||
if ("glib" IN_LIST FEATURES) | ||
# Propagate dependency on glib downstream | ||
file(READ "${CURRENT_PACKAGES_DIR}/share/harfbuzz/harfbuzzConfig.cmake" _contents) | ||
file(WRITE "${CURRENT_PACKAGES_DIR}/share/harfbuzz/harfbuzzConfig.cmake" " | ||
include(CMakeFindDependencyMacro) | ||
find_dependency(unofficial-glib CONFIG) | ||
${_contents} | ||
") | ||
endif() | ||
|
||
# Handle copyright | ||
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) |