Skip to content

Commit

Permalink
[harfbuzz] Update to 2.7.0 and use meson
Browse files Browse the repository at this point in the history
  • Loading branch information
ebraminio committed Jul 25, 2020
1 parent c0d7b39 commit 681a100
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 43 deletions.
6 changes: 3 additions & 3 deletions ports/harfbuzz/CONTROL
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
Source: harfbuzz
Version: 2.6.6
Version: 2.7.0
Description: HarfBuzz OpenType text shaping engine
Homepage: https://github.com/behdad/harfbuzz
Build-Depends: freetype[core], ragel, gettext (osx)
Homepage: https://github.com/harfbuzz/harfbuzz
Build-Depends: freetype[core], gettext (osx)

Feature: graphite2
Build-Depends: graphite2
Expand Down
53 changes: 13 additions & 40 deletions ports/harfbuzz/portfile.cmake
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)

0 comments on commit 681a100

Please sign in to comment.