[arch-commits] Commit in chromium/trunk (PKGBUILD chromium-harfbuzz-r0.patch)

Evangelos Foutras foutrelis at archlinux.org
Tue Oct 23 01:12:11 UTC 2018


    Date: Tuesday, October 23, 2018 @ 01:12:10
  Author: foutrelis
Revision: 337129

Fix build with harfbuzz 2.0

Added:
  chromium/trunk/chromium-harfbuzz-r0.patch
Modified:
  chromium/trunk/PKGBUILD

----------------------------+
 PKGBUILD                   |    3 +
 chromium-harfbuzz-r0.patch |   80 +++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 83 insertions(+)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2018-10-22 23:57:22 UTC (rev 337128)
+++ PKGBUILD	2018-10-23 01:12:10 UTC (rev 337129)
@@ -24,6 +24,7 @@
 source=(https://commondatastorage.googleapis.com/chromium-browser-official/$pkgname-$pkgver.tar.xz
         chromium-launcher-$_launcher_ver.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver.tar.gz
         include-stdint.h-in-pdfium_mem_buffer_file_write.h.patch
+        chromium-harfbuzz-r0.patch
         chromium-widevine-r2.patch
         chromium-system-icu.patch
         chromium-skia-harmony.patch)
@@ -30,6 +31,7 @@
 sha256sums=('e956c2031f634300ada8c09e0777f0c560f4798963f144edaaec8d43e1e30e37'
             '04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1'
             'cd1e87bf3618b7897c5caf7b0f4213cfa5ce917acb0613ecd2ab3f830f0cbfbb'
+            '1b370d49c43e88acfe7c0b1f9517047e927f3407bd80b4a48bba32c001f80136'
             '02c69bb3954087db599def7f5b6d65cf8f7cf2ed81dfbdaa4bb7b51863b4df15'
             'c4f2d1bed9034c02b8806f00c2e8165df24de467803855904bff709ceaf11af5'
             'feca54ab09ac0fc9d0626770a6b899a6ac5a12173c7d0c1005bc3964ec83e7b3')
@@ -89,6 +91,7 @@
   patch -Np4 -i ../chromium-skia-harmony.patch
 
   # Fixes from Gentoo
+  patch -Np1 -i ../chromium-harfbuzz-r0.patch
   patch -Np1 -i ../chromium-widevine-r2.patch
 
   # https://bugs.gentoo.org/661880#c21

Added: chromium-harfbuzz-r0.patch
===================================================================
--- chromium-harfbuzz-r0.patch	                        (rev 0)
+++ chromium-harfbuzz-r0.patch	2018-10-23 01:12:10 UTC (rev 337129)
@@ -0,0 +1,80 @@
+From 7ae38170a117e909bb28e1470842b68de3501197 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppymaster at gmail.com>
+Date: Sun, 21 Oct 2018 10:06:53 -0400
+Subject: [PATCH] blink: add 'const' modifier for harfbuzz hb_codepoint_t
+ pointers
+
+This resolves a build failure against harfbuzz 2.0.
+
+Based on a patch by Alexandre Fierreira.
+
+Bug: https://bugs.gentoo.org/669034
+---
+ .../renderer/platform/fonts/shaping/harfbuzz_face.cc     | 2 +-
+ .../renderer/platform/fonts/skia/skia_text_metrics.cc    | 9 +++++++--
+ .../renderer/platform/fonts/skia/skia_text_metrics.h     | 2 +-
+ 3 files changed, 9 insertions(+), 4 deletions(-)
+
+diff --git a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc
+index 8e7d91ca371f..e279a5876cb3 100644
+--- a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc
++++ b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc
+@@ -139,7 +139,7 @@ static hb_position_t HarfBuzzGetGlyphHorizontalAdvance(hb_font_t* hb_font,
+ static void HarfBuzzGetGlyphHorizontalAdvances(hb_font_t* font,
+                                                void* font_data,
+                                                unsigned count,
+-                                               hb_codepoint_t* first_glyph,
++                                               const hb_codepoint_t* first_glyph,
+                                                unsigned int glyph_stride,
+                                                hb_position_t* first_advance,
+                                                unsigned int advance_stride,
+diff --git a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc
+index 77ec6209fab9..9f9070921448 100644
+--- a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc
++++ b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc
+@@ -18,6 +18,11 @@ T* advance_by_byte_size(T* p, unsigned byte_size) {
+   return reinterpret_cast<T*>(reinterpret_cast<uint8_t*>(p) + byte_size);
+ }
+ 
++template <class T>
++T* advance_by_byte_size_const(T* p, unsigned byte_size) {
++  return reinterpret_cast<T*>(reinterpret_cast<const uint8_t*>(p) + byte_size);
++}
++
+ }  // namespace
+ 
+ SkiaTextMetrics::SkiaTextMetrics(const SkPaint* paint) : paint_(paint) {
+@@ -39,7 +44,7 @@ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(hb_codepoint_t codepoint,
+ }
+ 
+ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(unsigned count,
+-                                               hb_codepoint_t* glyphs,
++                                               const hb_codepoint_t* glyphs,
+                                                unsigned glyph_stride,
+                                                hb_position_t* advances,
+                                                unsigned advance_stride) {
+@@ -48,7 +53,7 @@ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(unsigned count,
+   // array that copy them to a regular array.
+   Vector<Glyph, 256> glyph_array(count);
+   for (unsigned i = 0; i < count;
+-       i++, glyphs = advance_by_byte_size(glyphs, glyph_stride)) {
++       i++, glyphs = advance_by_byte_size_const(glyphs, glyph_stride)) {
+     glyph_array[i] = *glyphs;
+   }
+   Vector<SkScalar, 256> sk_width_array(count);
+diff --git a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h
+index 787d8af0375a..3bc4407c641b 100644
+--- a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h
++++ b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h
+@@ -19,7 +19,7 @@ class SkiaTextMetrics final {
+ 
+   void GetGlyphWidthForHarfBuzz(hb_codepoint_t, hb_position_t* width);
+   void GetGlyphWidthForHarfBuzz(unsigned count,
+-                                hb_codepoint_t* first_glyph,
++                                const hb_codepoint_t* first_glyph,
+                                 unsigned glyph_stride,
+                                 hb_position_t* first_advance,
+                                 unsigned advance_stride);
+-- 
+2.19.1
+



More information about the arch-commits mailing list