Skip to content
Snippets Groups Projects
Commit 479f9cc9 authored by Leo's avatar Leo
Browse files

community/scribus: fix build with harfbuzz-3

parent 0850d51e
No related branches found
No related tags found
1 merge request!26056community/scribus: fix build with harfbuzz-3
Pipeline #95460 passed
......@@ -2,7 +2,7 @@
# Maintainer: Milan P. Stanić <mps@arvanta.net>
pkgname=scribus
pkgver=1.5.7
pkgrel=5
pkgrel=6
pkgdesc="libre desktop publishing"
url="https://www.scribus.net/"
arch="all"
......@@ -16,6 +16,7 @@ makedepends="cmake boost-dev cairo-dev cups-dev harfbuzz-dev hunspell-dev
subpackages="$pkgname-doc $pkgname-lang"
source="https://downloads.sourceforge.net/scribus/scribus-$pkgver.tar.xz
fix-util_debug.cpp.patch
fix-harfbuzz-3.patch
"
langdir="/usr/share/scribus/translations"
......@@ -42,5 +43,8 @@ package() {
DESTDIR="$pkgdir" cmake --build build --target install
}
sha512sums="0c8cd42b9d3d26e24d4e0f6638b6c72bab2c2c3aa7e7195efb222391a0c0e671633e32afb08ec35b6ab5123793983de5d413aa7607b51adac3725dc8a83bfb01 scribus-1.5.7.tar.xz
b56359d5e7aa3001cef6a9d6330e5c32a4c7570880b9eeeb79f6ff0ea7a050a5f3964ad0fef653a437e200dfc5d714a8a9c6b30158bbb1abf5d4bc98445f5205 fix-util_debug.cpp.patch"
sha512sums="
0c8cd42b9d3d26e24d4e0f6638b6c72bab2c2c3aa7e7195efb222391a0c0e671633e32afb08ec35b6ab5123793983de5d413aa7607b51adac3725dc8a83bfb01 scribus-1.5.7.tar.xz
b56359d5e7aa3001cef6a9d6330e5c32a4c7570880b9eeeb79f6ff0ea7a050a5f3964ad0fef653a437e200dfc5d714a8a9c6b30158bbb1abf5d4bc98445f5205 fix-util_debug.cpp.patch
92e49bc5c0a529507636d12c61cccc1156a07b0de08d37a2edae81ff2709e2d16fa70c13bf41988444a1be4438a7a1d56c835dc7a052d2f40a491a23f48041eb fix-harfbuzz-3.patch
"
diff --git a/scribus/fonts/sfnt.cpp b/scribus/fonts/sfnt.cpp
index 50777f6..e6b26e1 100644
--- a/scribus/fonts/sfnt.cpp
+++ b/scribus/fonts/sfnt.cpp
@@ -1257,15 +1257,29 @@ namespace sfnt {
for (int i = 0; i < cids.count(); ++i)
hb_set_add(glyphSet, cids.at(i));
+#if HB_VERSION_ATLEAST(2, 9, 0)
+ uint32_t subsetFlags = (uint32_t) hb_subset_input_get_flags(hbSubsetInput.get());
+ subsetFlags |= HB_SUBSET_FLAGS_RETAIN_GIDS;
+ subsetFlags &= ~HB_SUBSET_FLAGS_NO_HINTING;
+ subsetFlags |= HB_SUBSET_FLAGS_NAME_LEGACY;
+ hb_subset_input_set_flags(hbSubsetInput.get(), subsetFlags);
+#else
hb_subset_input_set_retain_gids(hbSubsetInput.get(), true);
hb_subset_input_set_drop_hints(hbSubsetInput.get(), false);
#if HB_VERSION_ATLEAST(2, 6, 5)
hb_subset_input_set_name_legacy(hbSubsetInput.get(), true);
#endif
+#endif
+#if HB_VERSION_ATLEAST(2, 9, 0)
+ QScopedPointer<hb_face_t, HbFaceDeleter> hbSubsetFace(hb_subset_or_fail(hbFullFace.get(), hbSubsetInput.get()));
+ if (hbSubsetFace.isNull())
+ return QByteArray();
+#else
QScopedPointer<hb_face_t, HbFaceDeleter> hbSubsetFace(hb_subset(hbFullFace.get(), hbSubsetInput.get()));
if (hbSubsetFace.isNull())
return QByteArray();
+#endif
QScopedPointer<hb_blob_t, HbBlobDeleter> hbSubsetBlob(hb_face_reference_blob(hbSubsetFace.get()));
if (hbSubsetBlob.isNull())
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment