From b7ddc514bff9bdf682abae537f990aa01dc2c0fb Mon Sep 17 00:00:00 2001 From: Stephan Bergmann Date: Tue, 5 Mar 2019 08:37:47 +0100 Subject: Upgrade to latest HarfBuzz 2.3.1 As a side-effect, this gets rid of some Clang -fsanitize=implicit-signed-integer-truncation warnings. The various external/harfbuzz/*.patch no longer applied and appear not to be necessary any more. (But a new external/harfbuzz/msvc.patch became necessary.) was downloaded from , and HARFBUZZ_SHA256SUM in download.lst matches . Change-Id: Ic85acd14b4f488b3d88ce1bafc93be271928006e Reviewed-on: https://gerrit.libreoffice.org/68731 Tested-by: Jenkins Reviewed-by: Stephan Bergmann --- external/harfbuzz/UnpackedTarball_harfbuzz.mk | 13 +----------- external/harfbuzz/clang-cl.patch | 12 ----------- external/harfbuzz/harfbuzz-ios.patch | 29 --------------------------- external/harfbuzz/harfbuzz-rtti.patch | 11 ---------- external/harfbuzz/msvc.patch | 17 ++++++++++++++++ external/harfbuzz/ubsan.patch | 11 ---------- 6 files changed, 18 insertions(+), 75 deletions(-) delete mode 100644 external/harfbuzz/clang-cl.patch delete mode 100644 external/harfbuzz/harfbuzz-ios.patch delete mode 100644 external/harfbuzz/harfbuzz-rtti.patch create mode 100644 external/harfbuzz/msvc.patch delete mode 100644 external/harfbuzz/ubsan.patch (limited to 'external') diff --git a/external/harfbuzz/UnpackedTarball_harfbuzz.mk b/external/harfbuzz/UnpackedTarball_harfbuzz.mk index 3a20f31e101f..48d7b450bc3a 100644 --- a/external/harfbuzz/UnpackedTarball_harfbuzz.mk +++ b/external/harfbuzz/UnpackedTarball_harfbuzz.mk @@ -16,18 +16,7 @@ $(eval $(call gb_UnpackedTarball_update_autoconf_configs,harfbuzz)) $(eval $(call gb_UnpackedTarball_set_patchlevel,harfbuzz,0)) $(eval $(call gb_UnpackedTarball_add_patches,harfbuzz, \ - external/harfbuzz/clang-cl.patch \ - external/harfbuzz/ubsan.patch \ -)) - -ifneq ($(ENABLE_RUNTIME_OPTIMIZATIONS),TRUE) -$(eval $(call gb_UnpackedTarball_add_patches,harfbuzz, \ - external/harfbuzz/harfbuzz-rtti.patch \ -)) -endif - -$(eval $(call gb_UnpackedTarball_add_patches,harfbuzz, \ - external/harfbuzz/harfbuzz-ios.patch \ + external/harfbuzz/msvc.patch \ )) # vim: set noet sw=4 ts=4: diff --git a/external/harfbuzz/clang-cl.patch b/external/harfbuzz/clang-cl.patch deleted file mode 100644 index 9fbeee4114d8..000000000000 --- a/external/harfbuzz/clang-cl.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- src/hb-common.h -+++ src/hb-common.h -@@ -346,7 +346,9 @@ - * - * https://lists.freedesktop.org/archives/harfbuzz/2014-March/004150.html - */ -+#if !defined _MSC_VER /* avoid clang-cl -Wmicrosoft-enum-value */ - _HB_SCRIPT_MAX_VALUE = HB_TAG_MAX, /*< skip >*/ -+#endif - _HB_SCRIPT_MAX_VALUE_SIGNED = HB_TAG_MAX_SIGNED /*< skip >*/ - - } hb_script_t; diff --git a/external/harfbuzz/harfbuzz-ios.patch b/external/harfbuzz/harfbuzz-ios.patch deleted file mode 100644 index 215800e5ab57..000000000000 --- a/external/harfbuzz/harfbuzz-ios.patch +++ /dev/null @@ -1,29 +0,0 @@ ---- src/hb-coretext.cc -+++ src/hb-coretext.cc -@@ -167,7 +167,7 @@ - if (CFStringHasPrefix (cg_postscript_name, CFSTR (".SFNSText")) || - CFStringHasPrefix (cg_postscript_name, CFSTR (".SFNSDisplay"))) - { --#if MAC_OS_X_VERSION_MIN_REQUIRED < 1080 -+#if !defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && (MAC_OS_X_VERSION_MIN_REQUIRED < 1080) - # define kCTFontUIFontSystem kCTFontSystemFontType - # define kCTFontUIFontEmphasizedSystem kCTFontEmphasizedSystemFontType - #endif -@@ -217,7 +217,7 @@ - } - - CFURLRef original_url = nullptr; --#if MAC_OS_X_VERSION_MIN_REQUIRED < 1060 -+#if !defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && (MAC_OS_X_VERSION_MIN_REQUIRED < 1060) - ATSFontRef atsFont; - FSRef fsref; - OSStatus status; -@@ -240,7 +240,7 @@ - * process in Blink. This can be detected by the new file URL location - * that the newly found font points to. */ - CFURLRef new_url = nullptr; --#if MAC_OS_X_VERSION_MIN_REQUIRED < 1060 -+#if !defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && (MAC_OS_X_VERSION_MIN_REQUIRED < 1060) - atsFont = CTFontGetPlatformFont (new_ct_font, NULL); - status = ATSFontGetFileReference (atsFont, &fsref); - if (status == noErr) diff --git a/external/harfbuzz/harfbuzz-rtti.patch b/external/harfbuzz/harfbuzz-rtti.patch deleted file mode 100644 index 5d1cfb4959ae..000000000000 --- a/external/harfbuzz/harfbuzz-rtti.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- configure -+++ configure -@@ -19012,7 +19012,7 @@ - # even in the cases where we DO link to libstdc++. - # Put -fno-rtti before $CXXFLAGS such that users can re-enable it - # by overriding CXXFLAGS. -- CXXFLAGS="-fno-rtti $CXXFLAGS -fno-exceptions -fno-threadsafe-statics" -+ CXXFLAGS="$CXXFLAGS -fno-exceptions -fno-threadsafe-statics" - - # Assorted warnings - CXXFLAGS="$CXXFLAGS -Wcast-align" diff --git a/external/harfbuzz/msvc.patch b/external/harfbuzz/msvc.patch new file mode 100644 index 000000000000..f6796a99bf8e --- /dev/null +++ b/external/harfbuzz/msvc.patch @@ -0,0 +1,17 @@ +--- src/hb-atomic.hh ++++ src/hb-atomic.hh +@@ -85,11 +85,11 @@ + #define hb_atomic_int_impl_add(AI, V) (reinterpret_cast *> (AI)->fetch_add ((V), std::memory_order_acq_rel)) + #define hb_atomic_int_impl_set_relaxed(AI, V) (reinterpret_cast *> (AI)->store ((V), std::memory_order_relaxed)) + #define hb_atomic_int_impl_set(AI, V) (reinterpret_cast *> (AI)->store ((V), std::memory_order_release)) +-#define hb_atomic_int_impl_get_relaxed(AI) (reinterpret_cast *> (AI)->load (std::memory_order_relaxed)) +-#define hb_atomic_int_impl_get(AI) (reinterpret_cast *> (AI)->load (std::memory_order_acquire)) ++#define hb_atomic_int_impl_get_relaxed(AI) (reinterpret_cast const *> (AI)->load (std::memory_order_relaxed)) ++#define hb_atomic_int_impl_get(AI) (reinterpret_cast const *> (AI)->load (std::memory_order_acquire)) + + #define hb_atomic_ptr_impl_set_relaxed(P, V) (reinterpret_cast *> (P)->store ((V), std::memory_order_relaxed)) +-#define hb_atomic_ptr_impl_get_relaxed(P) (reinterpret_cast *> (P)->load (std::memory_order_relaxed)) ++#define hb_atomic_ptr_impl_get_relaxed(P) (reinterpret_cast const *> (P)->load (std::memory_order_relaxed)) + #define hb_atomic_ptr_impl_get(P) (reinterpret_cast *> (P)->load (std::memory_order_acquire)) + static inline bool + _hb_atomic_ptr_impl_cmplexch (const void **P, const void *O_, const void *N) diff --git a/external/harfbuzz/ubsan.patch b/external/harfbuzz/ubsan.patch deleted file mode 100644 index fb299316af9d..000000000000 --- a/external/harfbuzz/ubsan.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- src/hb-ot-hmtx-table.hh -+++ src/hb-ot-hmtx-table.hh -@@ -263,7 +263,7 @@ struct hmtxvmtx - return default_advance; - } - -- return table->longMetric[MIN (glyph, (uint32_t) num_advances - 1)].advance; -+ return static_cast(table->longMetric)[MIN (glyph, (uint32_t) num_advances - 1)].advance; - } - - inline unsigned int get_advance (hb_codepoint_t glyph, -- cgit