From 9e0ed1cd036795b4b01f6ecc6fc0db6d4fe8d416 Mon Sep 17 00:00:00 2001 From: Mojca Miklavec Date: Fri, 1 Feb 2019 10:03:15 +0000 Subject: Upstream patch for Harfbuzz (fix build on Solaris) https://github.com/harfbuzz/harfbuzz/issues/1535 git-svn-id: svn://tug.org/texlive/trunk@49897 c570f23f-e606-0410-a88d-b1316a301751 --- Build/source/libs/harfbuzz/TLpatches/ChangeLog | 4 +++ .../libs/harfbuzz/TLpatches/patch-01-solaris | 40 ++++++++++++++++++++++ .../libs/harfbuzz/harfbuzz-src/src/hb-dsalgs.hh | 27 +++++---------- 3 files changed, 53 insertions(+), 18 deletions(-) create mode 100644 Build/source/libs/harfbuzz/TLpatches/patch-01-solaris (limited to 'Build/source/libs/harfbuzz') diff --git a/Build/source/libs/harfbuzz/TLpatches/ChangeLog b/Build/source/libs/harfbuzz/TLpatches/ChangeLog index de7e3351a76..ef072d97fbe 100644 --- a/Build/source/libs/harfbuzz/TLpatches/ChangeLog +++ b/Build/source/libs/harfbuzz/TLpatches/ChangeLog @@ -1,3 +1,7 @@ +2019-02-01 Mojca Miklavec + + Upstream patch to fix build issue on Solaris + 2019-01-31 Akira Kakuto Imported harfbuzz-2.3.1 source tree from: diff --git a/Build/source/libs/harfbuzz/TLpatches/patch-01-solaris b/Build/source/libs/harfbuzz/TLpatches/patch-01-solaris new file mode 100644 index 00000000000..4f72fa64e9b --- /dev/null +++ b/Build/source/libs/harfbuzz/TLpatches/patch-01-solaris @@ -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 struct hb_is_signed; +-template <> struct hb_is_signed { enum { value = true }; }; +-template <> struct hb_is_signed { enum { value = true }; }; +-template <> struct hb_is_signed { enum { value = true }; }; +-template <> struct hb_is_signed { enum { value = true }; }; +-template <> struct hb_is_signed { enum { value = false }; }; +-template <> struct hb_is_signed { enum { value = false }; }; +-template <> struct hb_is_signed { enum { value = false }; }; +-template <> struct hb_is_signed { 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 { enum { value = true }; }; ++template <> struct hb_is_signed { enum { value = true }; }; ++template <> struct hb_is_signed { enum { value = true }; }; ++template <> struct hb_is_signed { enum { value = true }; }; ++template <> struct hb_is_signed { enum { value = false }; }; ++template <> struct hb_is_signed { enum { value = false }; }; ++template <> struct hb_is_signed { enum { value = false }; }; ++template <> struct hb_is_signed { enum { value = false }; }; + + template static inline bool + hb_in_range (T u, T lo, T hi) diff --git a/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-dsalgs.hh b/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-dsalgs.hh index cb3057c54cd..3dc4953abbb 100644 --- a/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-dsalgs.hh +++ b/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-dsalgs.hh @@ -299,24 +299,15 @@ hb_ceil_to_4 (unsigned int v) } template struct hb_is_signed; -template <> struct hb_is_signed { enum { value = true }; }; -template <> struct hb_is_signed { enum { value = true }; }; -template <> struct hb_is_signed { enum { value = true }; }; -template <> struct hb_is_signed { enum { value = true }; }; -template <> struct hb_is_signed { enum { value = false }; }; -template <> struct hb_is_signed { enum { value = false }; }; -template <> struct hb_is_signed { enum { value = false }; }; -template <> struct hb_is_signed { 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 { enum { value = true }; }; +template <> struct hb_is_signed { enum { value = true }; }; +template <> struct hb_is_signed { enum { value = true }; }; +template <> struct hb_is_signed { enum { value = true }; }; +template <> struct hb_is_signed { enum { value = false }; }; +template <> struct hb_is_signed { enum { value = false }; }; +template <> struct hb_is_signed { enum { value = false }; }; +template <> struct hb_is_signed { enum { value = false }; }; template static inline bool hb_in_range (T u, T lo, T hi) -- cgit v1.2.3