Merge branch 'upstream' into tizen
authorANZ1217 <chihun.jeong@samsung.com>
Wed, 17 Jan 2024 07:09:43 +0000 (16:09 +0900)
committerANZ1217 <chihun.jeong@samsung.com>
Wed, 17 Jan 2024 07:09:43 +0000 (16:09 +0900)
Change-Id: I4dfb3faebaadd3285b204b33b0dcecf83e51c2ba

packaging/baselibs.conf [new file with mode: 0644]
packaging/harfbuzz.changes [new file with mode: 0644]
packaging/harfbuzz.manifest [new file with mode: 0644]
packaging/harfbuzz.spec [new file with mode: 0644]
patch/remove-icu-header-dependencies-from-harfbuzz-header.patch [new file with mode: 0644]

diff --git a/packaging/baselibs.conf b/packaging/baselibs.conf
new file mode 100644 (file)
index 0000000..0f8119e
--- /dev/null
@@ -0,0 +1 @@
+libharfbuzz
diff --git a/packaging/harfbuzz.changes b/packaging/harfbuzz.changes
new file mode 100644 (file)
index 0000000..05ee083
--- /dev/null
@@ -0,0 +1,8 @@
+* Thu Nov 13 2014 Manuel Bachmann <manuel.bachmann@open.eurogiciel.org> upstream/0.9.35@4a63fee
+
+* Mon Mar 18 2013 Anas Nashif <anas.nashif@intel.com> submit/trunk/20130129.152715@5c3b7d6
+- Fixed package groups
+
+* Tue Jan 29 2013 Anas Nashif <anas.nashif@intel.com> submit/trunk/20130129.151939@7bdec5c
+- update to 0.9.12
+
diff --git a/packaging/harfbuzz.manifest b/packaging/harfbuzz.manifest
new file mode 100644 (file)
index 0000000..017d22d
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+ <request>
+    <domain name="_"/>
+ </request>
+</manifest>
diff --git a/packaging/harfbuzz.spec b/packaging/harfbuzz.spec
new file mode 100644 (file)
index 0000000..e0e4f8c
--- /dev/null
@@ -0,0 +1,83 @@
+Name:           harfbuzz
+Version:        3.4.0
+Release:        0
+License:        MIT and ISC
+Summary:        An OpenType text shaping engine
+Url:            http://www.freedesktop.org/wiki/Software/HarfBuzz
+Group:          Graphics/Font Management
+Source:         %{name}-%{version}.tar.xz
+Source99:       baselibs.conf
+Source1001:    harfbuzz.manifest
+BuildRequires:  gcc-c++
+#BuildRequires:  pkgconfig(cairo) >= 1.8.0
+#BuildRequires:  pkgconfig(cairo-ft)
+BuildRequires:  pkgconfig(freetype2) >= 2.3.8
+BuildRequires:  pkgconfig(glib-2.0) >= 2.16
+BuildRequires:  pkgconfig(gobject-2.0)
+BuildRequires:  pkgconfig(gthread-2.0)
+BuildRequires:  pkgconfig(icu-uc)
+
+%description
+HarfBuzz is an OpenType text shaping engine.
+
+%package -n libharfbuzz
+Summary:        An OpenType text shaping engine
+Group:          Graphics/Font Management
+
+%description -n libharfbuzz
+HarfBuzz is an OpenType text shaping engine.
+
+%package tools
+Summary:        An OpenType text shaping engine -- Tools
+Group:          Graphics/Font Management
+
+%description tools
+HarfBuzz is an OpenType text shaping engine.
+
+%package devel
+Summary:        An OpenType text shaping engine -- Development Files
+Group:          Development/Libraries
+Requires:       libharfbuzz = %{version}
+
+%description devel
+HarfBuzz is an OpenType text shaping engine.
+
+%prep
+%setup -q
+cp %{SOURCE1001} .
+patch -p1 < %{_builddir}/%{name}-%{version}/patch/remove-icu-header-dependencies-from-harfbuzz-header.patch
+
+%build
+%configure \
+        --disable-static
+make %{?_smp_mflags}
+
+%install
+%make_install
+rm -rf %{buildroot}/%{_datadir}/gtk-doc
+
+%post -n libharfbuzz -p /sbin/ldconfig
+
+%postun -n libharfbuzz -p /sbin/ldconfig
+
+%files -n libharfbuzz
+%manifest %{name}.manifest
+%defattr(-,root,root)
+%license COPYING
+%{_libdir}/*.so.0*
+
+%files tools
+%manifest %{name}.manifest
+%defattr(-,root,root)
+%{_bindir}/hb-ot-shape-closure
+%{_bindir}/hb-shape
+%{_bindir}/hb-subset
+#%{_bindir}/hb-view
+
+%files devel
+%manifest %{name}.manifest
+%defattr(-,root,root)
+%{_includedir}/harfbuzz/
+%{_libdir}/*.so
+%{_libdir}/pkgconfig/*.pc
+%{_libdir}/cmake/harfbuzz/harfbuzz-config.cmake
diff --git a/patch/remove-icu-header-dependencies-from-harfbuzz-header.patch b/patch/remove-icu-header-dependencies-from-harfbuzz-header.patch
new file mode 100644 (file)
index 0000000..8911866
--- /dev/null
@@ -0,0 +1,100 @@
+From c7cac7e0d3bbba4285354c90590a6e6d081fce61 Mon Sep 17 00:00:00 2001
+From: Bowon Ryu <bowon.ryu@samsung.com>
+Date: Thu, 24 Dec 2020 13:35:34 +0900
+Subject: [PATCH] remove icu header dependencies from harfbuzz header
+
+Harfbuzz header include icu header that is not Tizen public API.
+In order to remove icu header from rootstrap, icu header dependencies
+should be removed.
+
+@tizen_fix
+
+Change-Id: I94835684a7ddc193c42cc0e2565a200f13c62f8c
+Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
+---
+ src/hb-icu.cc | 17 ++++++++++-------
+ src/hb-icu.h  |  6 ++----
+ 2 files changed, 12 insertions(+), 11 deletions(-)
+
+diff --git a/src/hb-icu.cc b/src/hb-icu.cc
+index c1dcc24..98de45f 100644
+--- a/src/hb-icu.cc
++++ b/src/hb-icu.cc
+@@ -40,6 +40,7 @@
+ #include <unicode/ustring.h>
+ #include <unicode/utf16.h>
+ #include <unicode/uversion.h>
++#include <unicode/uscript.h>
+ /* ICU extra semicolon, fixed since 65, https://github.com/unicode-org/icu/commit/480bec3 */
+ #if U_ICU_VERSION_MAJOR_NUM < 65 && (defined(__GNUC__) || defined(__clang__))
+@@ -72,8 +73,10 @@
+  **/
+ hb_script_t
+-hb_icu_script_to_script (UScriptCode script)
++hb_icu_script_to_script (unsigned int numScript)
+ {
++  UScriptCode script = (UScriptCode) numScript;
++
+   if (unlikely (script == USCRIPT_INVALID_CODE))
+     return HB_SCRIPT_INVALID;
+@@ -90,18 +93,18 @@ hb_icu_script_to_script (UScriptCode script)
+  * Return value: the UScriptCode identifier found
+  *
+  **/
+-UScriptCode
++unsigned int
+ hb_icu_script_from_script (hb_script_t script)
+ {
+   if (unlikely (script == HB_SCRIPT_INVALID))
+-    return USCRIPT_INVALID_CODE;
++    return (unsigned int) USCRIPT_INVALID_CODE;
+   unsigned int numScriptCode = 1 + u_getIntPropertyMaxValue (UCHAR_SCRIPT);
+   for (unsigned int i = 0; i < numScriptCode; i++)
+-    if (unlikely (hb_icu_script_to_script ((UScriptCode) i) == script))
+-      return (UScriptCode) i;
++    if (unlikely (hb_icu_script_to_script (i) == script))
++      return i;
+-  return USCRIPT_UNKNOWN;
++  return (unsigned int) USCRIPT_UNKNOWN;
+ }
+@@ -184,7 +187,7 @@ hb_icu_unicode_script (hb_unicode_funcs_t *ufuncs HB_UNUSED,
+   if (unlikely (U_FAILURE (status)))
+     return HB_SCRIPT_UNKNOWN;
+-  return hb_icu_script_to_script (scriptCode);
++  return hb_icu_script_to_script ((unsigned int) scriptCode);
+ }
+ static hb_bool_t
+diff --git a/src/hb-icu.h b/src/hb-icu.h
+index 2db6a7b..47e718c 100644
+--- a/src/hb-icu.h
++++ b/src/hb-icu.h
+@@ -31,15 +31,13 @@
+ #include "hb.h"
+-#include <unicode/uscript.h>
+-
+ HB_BEGIN_DECLS
+ HB_EXTERN hb_script_t
+-hb_icu_script_to_script (UScriptCode script);
++hb_icu_script_to_script (unsigned int numScript);
+-HB_EXTERN UScriptCode
++HB_EXTERN unsigned int
+ hb_icu_script_from_script (hb_script_t script);
+-- 
+2.7.4
+