[vlc-commits] contrib: harfbuzz: turn local patches into patches against the harfbuzz git
Steve Lhomme
git at videolan.org
Mon May 18 16:19:02 CEST 2020
vlc | branch: master | Steve Lhomme <robux4 at ycbcr.xyz> | Mon May 18 14:19:24 2020 +0200| [d7c824529ceab78909e8239cc422b756ceb87710] | committer: Steve Lhomme
contrib: harfbuzz: turn local patches into patches against the harfbuzz git
It's easier to apply & rebase patches when updating to a newer version.
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d7c824529ceab78909e8239cc422b756ceb87710
---
...h => 0001-fix-OSAtomic-calls-for-AArch64.patch} | 22 +++++++++++---
...=> 0002-Update-the-bundled-ax_pthread.m4.patch} | 34 +++++++++++++++++-----
contrib/src/harfbuzz/rules.mak | 4 +--
3 files changed, 46 insertions(+), 14 deletions(-)
diff --git a/contrib/src/harfbuzz/harfbuzz-aarch64.patch b/contrib/src/harfbuzz/0001-fix-OSAtomic-calls-for-AArch64.patch
similarity index 58%
rename from contrib/src/harfbuzz/harfbuzz-aarch64.patch
rename to contrib/src/harfbuzz/0001-fix-OSAtomic-calls-for-AArch64.patch
index 21825299af..275f012946 100644
--- a/contrib/src/harfbuzz/harfbuzz-aarch64.patch
+++ b/contrib/src/harfbuzz/0001-fix-OSAtomic-calls-for-AArch64.patch
@@ -1,6 +1,17 @@
---- harfbuzz-2.0.0/src/hb-atomic.hh.orig 2018-10-01 19:49:23.000000000 +0200
-+++ harfbuzz-2.0.0/src/hb-atomic.hh 2020-03-29 16:44:27.520441550 +0200
-@@ -163,10 +163,8 @@
+From f110dc32b2a0f3fccfc80007916efcc9f62c56fa Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Felix=20Paul=20K=C3=BChne?= <felix at feepk.net>
+Date: Fri, 15 May 2020 09:14:15 +0200
+Subject: [PATCH 1/3] fix OSAtomic calls for AArch64
+
+---
+ src/hb-atomic.hh | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/src/hb-atomic.hh b/src/hb-atomic.hh
+index b3fb296b..20dae7e3 100644
+--- a/src/hb-atomic.hh
++++ b/src/hb-atomic.hh
+@@ -164,10 +164,8 @@ static inline bool _hb_compare_and_swap_ptr (void **P, void *O, void *N)
#elif !defined(HB_NO_MT) && defined(__APPLE__)
#include <libkern/OSAtomic.h>
@@ -12,7 +23,7 @@
#endif
#define _hb_memory_barrier() OSMemoryBarrier ()
-@@ -174,7 +172,11 @@
+@@ -175,7 +173,11 @@ static inline bool _hb_compare_and_swap_ptr (void **P, void *O, void *N)
#define hb_atomic_int_impl_add(AI, V) (OSAtomicAdd32Barrier ((V), (AI)) - (V))
#if (MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_4 || __IPHONE_VERSION_MIN_REQUIRED >= 20100)
@@ -24,3 +35,6 @@
#else
#if __ppc64__ || __x86_64__ || __aarch64__
#define hb_atomic_ptr_impl_cmpexch(P,O,N) OSAtomicCompareAndSwap64Barrier ((int64_t) (O), (int64_t) (N), (int64_t*) (P))
+--
+2.26.0.windows.1
+
diff --git a/contrib/src/harfbuzz/update-ax_pthread.m4.patch b/contrib/src/harfbuzz/0002-Update-the-bundled-ax_pthread.m4.patch
similarity index 91%
rename from contrib/src/harfbuzz/update-ax_pthread.m4.patch
rename to contrib/src/harfbuzz/0002-Update-the-bundled-ax_pthread.m4.patch
index 920e068b9d..3a8258fd89 100644
--- a/contrib/src/harfbuzz/update-ax_pthread.m4.patch
+++ b/contrib/src/harfbuzz/0002-Update-the-bundled-ax_pthread.m4.patch
@@ -1,5 +1,20 @@
---- harfbuzz/m4/ax_pthread.m4.orig 2020-04-08 14:31:17.385627420 +0300
-+++ harfbuzz/m4/ax_pthread.m4 2020-04-08 14:31:42.361091349 +0300
+From dc5815a2cc756a29c01a85081e16e43131f18411 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Martin=20Storsj=C3=B6?= <martin at martin.st>
+Date: Fri, 15 May 2020 09:16:42 +0200
+Subject: [PATCH 2/3] Update the bundled ax_pthread.m4
+
+This fixes building for Windows with clang, where the bundled
+version of ax_pthread.m4 assumes that Clang doesn't need the
+pthread option in LDFLAGS (assuming that a system that Clang
+supports doesn't need an external library for pthreads).
+---
+ m4/ax_pthread.m4 | 224 ++++++++++++++++++++++++++---------------------
+ 1 file changed, 123 insertions(+), 101 deletions(-)
+
+diff --git a/m4/ax_pthread.m4 b/m4/ax_pthread.m4
+index 5fbf9fe0..1598d077 100644
+--- a/m4/ax_pthread.m4
++++ b/m4/ax_pthread.m4
@@ -55,6 +55,7 @@
#
# Copyright (c) 2008 Steven G. Johnson <stevenj at alum.mit.edu>
@@ -17,7 +32,7 @@
AU_ALIAS([ACX_PTHREAD], [AX_PTHREAD])
AC_DEFUN([AX_PTHREAD], [
-@@ -123,10 +124,12 @@
+@@ -123,10 +124,12 @@ fi
# (e.g. DEC) have both -lpthread and -lpthreads, where one of the
# libraries is broken (non-POSIX).
@@ -34,7 +49,7 @@
ax_pthread_flags="pthreads none -Kthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config"
-@@ -194,14 +197,47 @@
+@@ -194,14 +197,47 @@ case $host_os in
# that too in a future libc.) So we'll check first for the
# standard Solaris way of linking pthreads (-mt -lpthread).
@@ -84,7 +99,7 @@
# The presence of a feature test macro requesting re-entrant function
# definitions is, on some systems, a strong hint that pthreads support is
-@@ -224,25 +260,86 @@
+@@ -224,25 +260,86 @@ AS_IF([test "x$ax_pthread_check_macro" = "x--"],
[ax_pthread_check_cond=0],
[ax_pthread_check_cond="!defined($ax_pthread_check_macro)"])
@@ -188,7 +203,7 @@
# Clang needs special handling, because older versions handle the -pthread
# option in a rather... idiosyncratic way
-@@ -261,11 +358,6 @@
+@@ -261,11 +358,6 @@ if test "x$ax_pthread_clang" = "xyes"; then
# -pthread does define _REENTRANT, and while the Darwin headers
# ignore this macro, third-party headers might not.)
@@ -200,7 +215,7 @@
# However, older versions of Clang make a point of warning the user
# that, in an invocation where only linking and no compilation is
# taking place, the -pthread option has no effect ("argument unused
-@@ -320,78 +412,7 @@
+@@ -320,78 +412,7 @@ if test "x$ax_pthread_clang" = "xyes"; then
fi # $ax_pthread_clang = yes
@@ -279,7 +294,7 @@
# Various other checks:
if test "x$ax_pthread_ok" = "xyes"; then
-@@ -438,7 +459,8 @@
+@@ -438,7 +459,8 @@ if test "x$ax_pthread_ok" = "xyes"; then
AC_CACHE_CHECK([for PTHREAD_PRIO_INHERIT],
[ax_cv_PTHREAD_PRIO_INHERIT],
[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <pthread.h>]],
@@ -289,3 +304,6 @@
[ax_cv_PTHREAD_PRIO_INHERIT=yes],
[ax_cv_PTHREAD_PRIO_INHERIT=no])
])
+--
+2.26.0.windows.1
+
diff --git a/contrib/src/harfbuzz/rules.mak b/contrib/src/harfbuzz/rules.mak
index 2d4352860c..9f8b01f837 100644
--- a/contrib/src/harfbuzz/rules.mak
+++ b/contrib/src/harfbuzz/rules.mak
@@ -14,8 +14,8 @@ $(TARBALLS)/harfbuzz-$(HARFBUZZ_VERSION).tar.xz:
harfbuzz: harfbuzz-$(HARFBUZZ_VERSION).tar.xz .sum-harfbuzz
$(UNPACK)
- $(APPLY) $(SRC)/harfbuzz/harfbuzz-aarch64.patch
- $(APPLY) $(SRC)/harfbuzz/update-ax_pthread.m4.patch
+ $(APPLY) $(SRC)/harfbuzz/0001-fix-OSAtomic-calls-for-AArch64.patch
+ $(APPLY) $(SRC)/harfbuzz/0002-Update-the-bundled-ax_pthread.m4.patch
$(MOVE)
DEPS_harfbuzz = freetype2 $(DEPS_freetype2)
More information about the vlc-commits
mailing list