[packages/scribus] upstream patches fixing build with recent harfbuzz versions
atler
atler at pld-linux.org
Thu Jan 20 10:31:02 CET 2022
commit 7a3a9ad6c78a80134e5ec18b370b23d190ae62bd
Author: Jan Palus <atler at pld-linux.org>
Date: Thu Jan 20 10:30:00 2022 +0100
upstream patches fixing build with recent harfbuzz versions
harfbuzz.patch | 67 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
scribus.spec | 2 ++
2 files changed, 69 insertions(+)
---
diff --git a/scribus.spec b/scribus.spec
index f159404..f263105 100644
--- a/scribus.spec
+++ b/scribus.spec
@@ -17,6 +17,7 @@ Group: X11/Applications/Publishing
Source0: https://downloads.sourceforge.net/scribus/%{name}-%{version}.tar.xz
# Source0-md5: 4d0c63cfdade8a9abf225a4415e43694
Patch0: %{name}-docs.patch
+Patch1: harfbuzz.patch
URL: https://www.scribus.net/
BuildRequires: GraphicsMagick-devel
BuildRequires: Qt5Core-devel >= %{qt_ver}
@@ -160,6 +161,7 @@ Domyślne szablony dokumentów dostarczane wraz ze Scribusem.
%prep
%setup -q
%patch0 -p1
+%patch1 -p1
%build
mkdir -p build
diff --git a/harfbuzz.patch b/harfbuzz.patch
new file mode 100644
index 0000000..4a82485
--- /dev/null
+++ b/harfbuzz.patch
@@ -0,0 +1,67 @@
+From 1b546978bc4ea0b2a73fbe4d7cf947887e865162 Mon Sep 17 00:00:00 2001
+From: Jean Ghali <jghali at libertysurf.fr>
+Date: Sat, 21 Aug 2021 20:05:43 +0000
+Subject: [PATCH] Use new hb-subset api with harfbuzz >= 2.9.0 in order to
+ prepeare for removal of legacy API in 3.0
+
+git-svn-id: svn://scribus.net/trunk/Scribus@24696 11d20701-8431-0410-a711-e3c959e3b870
+---
+ scribus/fonts/sfnt.cpp | 10 +++++++++-
+ 1 file changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/scribus/fonts/sfnt.cpp b/scribus/fonts/sfnt.cpp
+index 50777f66e3..fca8b39158 100644
+--- a/scribus/fonts/sfnt.cpp
++++ b/scribus/fonts/sfnt.cpp
+@@ -1256,11 +1256,19 @@ 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
+
+ QScopedPointer<hb_face_t, HbFaceDeleter> hbSubsetFace(hb_subset(hbFullFace.get(), hbSubsetInput.get()));
+From 68ec41169eaceea4a6e1d6f359762a191c7e61d5 Mon Sep 17 00:00:00 2001
+From: Jean Ghali <jghali at libertysurf.fr>
+Date: Sun, 19 Sep 2021 11:59:50 +0000
+Subject: [PATCH] #16635: Replace hb_subset, removed in harfbuzz 3.0, by
+ hb_subset_or_fail
+
+git-svn-id: svn://scribus.net/trunk/Scribus@24707 11d20701-8431-0410-a711-e3c959e3b870
+---
+ scribus/fonts/sfnt.cpp | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/scribus/fonts/sfnt.cpp b/scribus/fonts/sfnt.cpp
+index fca8b39158..b3dfa50dc6 100644
+--- a/scribus/fonts/sfnt.cpp
++++ b/scribus/fonts/sfnt.cpp
+@@ -1271,9 +1271,15 @@ namespace sfnt {
+ #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())
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/scribus.git/commitdiff/7a3a9ad6c78a80134e5ec18b370b23d190ae62bd
More information about the pld-cvs-commit
mailing list