mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-01 00:32:04 +08:00
4634989574
During the configuration of harfbuzz several Python scripts are invoked that are supposed to copy some files. For some reason however the scripts end up being instructed to copy files to themselves at which point a SameFileError is risen, causing the build to fail. This is a workaround for the underlaying issue that is deemed to be usptream. The upstream issues are - https://github.com/mesonbuild/meson/issues/8375 - https://github.com/harfbuzz/harfbuzz/issues/2870 The workaround is to add a patch that makes sure these scripts check whether source and target file are the same and only invoking the copy action if they are not. Fixes #16262
49 lines
1.6 KiB
CMake
49 lines
1.6 KiB
CMake
vcpkg_from_github(
|
|
OUT_SOURCE_PATH SOURCE_PATH
|
|
REPO harfbuzz/harfbuzz
|
|
REF 7236c7e29cef1c2d76c7a284c5081ff4d3aa1127 # 2.7.4
|
|
SHA512 d231a788ea4e52231d4c363c1eca76424cb82ed0952b5c24d0b082e88b3dddbda967e7fffe67fffdcb22c7ebfbf0ec923365eb4532be772f2e61fa7d29b51998
|
|
HEAD_REF master
|
|
PATCHES
|
|
# This patch is a workaround that is needed until the following issues are resolved upstream:
|
|
# - https://github.com/mesonbuild/meson/issues/8375
|
|
# - https://github.com/harfbuzz/harfbuzz/issues/2870
|
|
# Details: https://github.com/microsoft/vcpkg/issues/16262
|
|
0001-circumvent-samefile-error.patch
|
|
0002-fix-uwp-build.patch
|
|
)
|
|
|
|
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
|
icu icu
|
|
graphite2 graphite
|
|
glib glib
|
|
)
|
|
|
|
string(REPLACE "=ON" "=enabled" FEATURE_OPTIONS "${FEATURE_OPTIONS}")
|
|
string(REPLACE "=OFF" "=disabled" FEATURE_OPTIONS "${FEATURE_OPTIONS}")
|
|
|
|
vcpkg_configure_meson(
|
|
SOURCE_PATH ${SOURCE_PATH}
|
|
OPTIONS ${FEATURE_OPTIONS}
|
|
-Dfreetype=enabled
|
|
-Dgobject=disabled
|
|
-Dcairo=disabled
|
|
-Dfontconfig=disabled
|
|
-Dintrospection=disabled
|
|
-Ddocs=disabled
|
|
-Dtests=disabled
|
|
-Dbenchmark=disabled
|
|
)
|
|
|
|
vcpkg_install_meson()
|
|
vcpkg_copy_pdbs()
|
|
vcpkg_fixup_pkgconfig()
|
|
|
|
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/lib/cmake")
|
|
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/cmake")
|
|
configure_file("${CMAKE_CURRENT_LIST_DIR}/harfbuzzConfig.cmake.in"
|
|
"${CURRENT_PACKAGES_DIR}/share/${PORT}/harfbuzzConfig.cmake" @ONLY)
|
|
|
|
# Handle copyright
|
|
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
|