texlive[49897] Build/source/libs/harfbuzz: Upstream patch for

commits+mojca at tug.org commits+mojca at tug.org
Fri Feb 1 11:03:16 CET 2019


Revision: 49897
          http://tug.org/svn/texlive?view=revision&revision=49897
Author:   mojca
Date:     2019-02-01 11:03:15 +0100 (Fri, 01 Feb 2019)
Log Message:
-----------
Upstream patch for Harfbuzz (fix build on Solaris)

https://github.com/harfbuzz/harfbuzz/issues/1535

Modified Paths:
--------------
    trunk/Build/source/libs/harfbuzz/TLpatches/ChangeLog
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-dsalgs.hh

Added Paths:
-----------
    trunk/Build/source/libs/harfbuzz/TLpatches/patch-01-solaris

Modified: trunk/Build/source/libs/harfbuzz/TLpatches/ChangeLog
===================================================================
--- trunk/Build/source/libs/harfbuzz/TLpatches/ChangeLog	2019-02-01 05:51:10 UTC (rev 49896)
+++ trunk/Build/source/libs/harfbuzz/TLpatches/ChangeLog	2019-02-01 10:03:15 UTC (rev 49897)
@@ -1,3 +1,7 @@
+2019-02-01  Mojca Miklavec <mojca.miklavec.lists at gmail.com>
+
+	Upstream patch to fix build issue on Solaris
+
 2019-01-31  Akira Kakuto  <kakuto at w32tex.org>
 
 	Imported harfbuzz-2.3.1 source tree from:

Added: trunk/Build/source/libs/harfbuzz/TLpatches/patch-01-solaris
===================================================================
--- trunk/Build/source/libs/harfbuzz/TLpatches/patch-01-solaris	                        (rev 0)
+++ trunk/Build/source/libs/harfbuzz/TLpatches/patch-01-solaris	2019-02-01 10:03:15 UTC (rev 49897)
@@ -0,0 +1,40 @@
+https://github.com/harfbuzz/harfbuzz/commit/1e06282105a2d579aab32094cc7abc10ed231978
+
+diff --git a/src/hb-dsalgs.hh b/src/hb-dsalgs.hh
+index 6ccba158c..0da244f0a 100644
+--- a/src/hb-dsalgs.hh
++++ b/src/hb-dsalgs.hh
+@@ -299,24 +299,15 @@ hb_ceil_to_4 (unsigned int v)
+ }
+ 
+ template <typename T> struct hb_is_signed;
+-template <> struct hb_is_signed<signed char> { enum { value = true }; };
+-template <> struct hb_is_signed<signed short> { enum { value = true }; };
+-template <> struct hb_is_signed<signed int> { enum { value = true }; };
+-template <> struct hb_is_signed<signed long> { enum { value = true }; };
+-template <> struct hb_is_signed<unsigned char> { enum { value = false }; };
+-template <> struct hb_is_signed<unsigned short> { enum { value = false }; };
+-template <> struct hb_is_signed<unsigned int> { enum { value = false }; };
+-template <> struct hb_is_signed<unsigned long> { enum { value = false }; };
+-/* We need to define hb_is_signed for the typedefs we use on pre-Visual
+- * Studio 2010 for the int8_t type, since __int8/__int64 is not considered
+- * the same as char/long.  The previous lines will suffice for the other
+- * types, though.  Note that somehow, unsigned __int8 is considered same
+- * as unsigned char.
+- * https://github.com/harfbuzz/harfbuzz/pull/1499
+- */
+-#if defined(_MSC_VER) && (_MSC_VER < 1600)
+-template <> struct hb_is_signed<__int8> { enum { value = true }; };
+-#endif
++/* https://github.com/harfbuzz/harfbuzz/issues/1535 */
++template <> struct hb_is_signed<int8_t> { enum { value = true }; };
++template <> struct hb_is_signed<int16_t> { enum { value = true }; };
++template <> struct hb_is_signed<int32_t> { enum { value = true }; };
++template <> struct hb_is_signed<int64_t> { enum { value = true }; };
++template <> struct hb_is_signed<uint8_t> { enum { value = false }; };
++template <> struct hb_is_signed<uint16_t> { enum { value = false }; };
++template <> struct hb_is_signed<uint32_t> { enum { value = false }; };
++template <> struct hb_is_signed<uint64_t> { enum { value = false }; };
+ 
+ template <typename T> static inline bool
+ hb_in_range (T u, T lo, T hi)

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-dsalgs.hh
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-dsalgs.hh	2019-02-01 05:51:10 UTC (rev 49896)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-dsalgs.hh	2019-02-01 10:03:15 UTC (rev 49897)
@@ -299,24 +299,15 @@
 }
 
 template <typename T> struct hb_is_signed;
-template <> struct hb_is_signed<signed char> { enum { value = true }; };
-template <> struct hb_is_signed<signed short> { enum { value = true }; };
-template <> struct hb_is_signed<signed int> { enum { value = true }; };
-template <> struct hb_is_signed<signed long> { enum { value = true }; };
-template <> struct hb_is_signed<unsigned char> { enum { value = false }; };
-template <> struct hb_is_signed<unsigned short> { enum { value = false }; };
-template <> struct hb_is_signed<unsigned int> { enum { value = false }; };
-template <> struct hb_is_signed<unsigned long> { enum { value = false }; };
-/* We need to define hb_is_signed for the typedefs we use on pre-Visual
- * Studio 2010 for the int8_t type, since __int8/__int64 is not considered
- * the same as char/long.  The previous lines will suffice for the other
- * types, though.  Note that somehow, unsigned __int8 is considered same
- * as unsigned char.
- * https://github.com/harfbuzz/harfbuzz/pull/1499
- */
-#if defined(_MSC_VER) && (_MSC_VER < 1600)
-template <> struct hb_is_signed<__int8> { enum { value = true }; };
-#endif
+/* https://github.com/harfbuzz/harfbuzz/issues/1535 */
+template <> struct hb_is_signed<int8_t> { enum { value = true }; };
+template <> struct hb_is_signed<int16_t> { enum { value = true }; };
+template <> struct hb_is_signed<int32_t> { enum { value = true }; };
+template <> struct hb_is_signed<int64_t> { enum { value = true }; };
+template <> struct hb_is_signed<uint8_t> { enum { value = false }; };
+template <> struct hb_is_signed<uint16_t> { enum { value = false }; };
+template <> struct hb_is_signed<uint32_t> { enum { value = false }; };
+template <> struct hb_is_signed<uint64_t> { enum { value = false }; };
 
 template <typename T> static inline bool
 hb_in_range (T u, T lo, T hi)



More information about the tex-live-commits mailing list