[vlc-devel] [PATCH] contrib: pthreads: update mingw-w64 to v7.0.0

Biswapriyo Nath nathbappai at gmail.com
Mon Jan 27 16:30:15 CET 2020


-------------- next part --------------
From 43208da9bfda60d7697d53399fe0567393f9e00e Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath <nathbappai at gmail.com>
Date: Mon, 27 Jan 2020 20:15:30 +0530
Subject: [PATCH] contrib: pthreads: update mingw-w64 to v7.0.0

* The deleted patch was added in mingw-w64 v7.0.0

Signed-off-by: Biswapriyo Nath <nathbappai at gmail.com>
---
 ...reads-Fix-building-for-ARM-and-ARM64.patch | 75 -------------------
 contrib/src/pthreads/SHA512SUMS               |  2 +-
 contrib/src/pthreads/rules.mak                |  3 +-
 3 files changed, 2 insertions(+), 78 deletions(-)
 delete mode 100644 contrib/src/pthreads/0001-winpthreads-Fix-building-for-ARM-and-ARM64.patch

diff --git a/contrib/src/pthreads/0001-winpthreads-Fix-building-for-ARM-and-ARM64.patch b/contrib/src/pthreads/0001-winpthreads-Fix-building-for-ARM-and-ARM64.patch
deleted file mode 100644
index e379099..0000000
--- a/contrib/src/pthreads/0001-winpthreads-Fix-building-for-ARM-and-ARM64.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From 43a3c0bdb1f9e31db1d096d67aed0d575b6e2093 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Martin=20Storsj=C3=B6?= <martin at martin.st>
-Date: Fri, 4 May 2018 12:05:20 +0300
-Subject: [PATCH] winpthreads: Fix building for ARM and ARM64
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The libgcc stubs aren't necessary if building this when using
-compiler-rt, after those stubs are available.
-
-Just make the fake libgcc assembly file a no-op if targeting another
-architecture.
-
-Signed-off-by: Martin Storsjö <martin at martin.st>
----
- mingw-w64-libraries/winpthreads/src/libgcc/dll_dependency.S | 2 ++
- mingw-w64-libraries/winpthreads/src/spinlock.c              | 6 ++++++
- mingw-w64-libraries/winpthreads/src/thread.c                | 6 +++++-
- 3 files changed, 13 insertions(+), 1 deletion(-)
-
-diff --git a/mingw-w64-libraries/winpthreads/src/libgcc/dll_dependency.S b/mingw-w64-libraries/winpthreads/src/libgcc/dll_dependency.S
-index 2262eb0..0496e94 100644
---- a/mingw-w64-libraries/winpthreads/src/libgcc/dll_dependency.S
-+++ b/mingw-w64-libraries/winpthreads/src/libgcc/dll_dependency.S
-@@ -1,4 +1,5 @@
- /* Implementation for gcc's internal stack-allocation routines.  */
-+#if defined(__i386__) || defined(__x86_64__)
- .global ___chkstk
- .global	__alloca
- 
-@@ -86,3 +87,4 @@ chkstk_end:
- 	pushl	4(%eax)
- 	ret
- #endif
-+#endif
-diff --git a/mingw-w64-libraries/winpthreads/src/spinlock.c b/mingw-w64-libraries/winpthreads/src/spinlock.c
-index e55e929..2032d60 100644
---- a/mingw-w64-libraries/winpthreads/src/spinlock.c
-+++ b/mingw-w64-libraries/winpthreads/src/spinlock.c
-@@ -53,7 +53,13 @@ pthread_spin_lock (pthread_spinlock_t *lock)
-   volatile spinlock_word_t *lk = (volatile spinlock_word_t *)lock;
-   while (unlikely(__sync_lock_test_and_set(lk, 0) == 0))
-     do {
-+#if defined(__i386__) || defined(__x86_64__)
-       asm("pause" ::: "memory");
-+#elif defined(__arm__) || defined(__aarch64__)
-+      asm("wfe" ::: "memory");
-+#else
-+#error Unsupported architecture
-+#endif
-     } while (*lk == 0);
-   return 0;
- }
-diff --git a/mingw-w64-libraries/winpthreads/src/thread.c b/mingw-w64-libraries/winpthreads/src/thread.c
-index fafd915..2b7c7be 100644
---- a/mingw-w64-libraries/winpthreads/src/thread.c
-+++ b/mingw-w64-libraries/winpthreads/src/thread.c
-@@ -1237,8 +1237,12 @@ pthread_cancel (pthread_t t)
- 	  GetThreadContext(tv->h, &ctxt);
- #ifdef _M_X64
- 	  ctxt.Rip = (uintptr_t) _pthread_invoke_cancel;
--#else
-+#elif defined(_M_IX86)
- 	  ctxt.Eip = (uintptr_t) _pthread_invoke_cancel;
-+#elif defined(_M_ARM) || defined(_M_ARM64)
-+	  ctxt.Pc = (uintptr_t) _pthread_invoke_cancel;
-+#else
-+#error Unsupported architecture
- #endif
- 	  SetThreadContext (tv->h, &ctxt);
- 
--- 
-2.7.4
-
diff --git a/contrib/src/pthreads/SHA512SUMS b/contrib/src/pthreads/SHA512SUMS
index 9902baf..82f5956 100644
--- a/contrib/src/pthreads/SHA512SUMS
+++ b/contrib/src/pthreads/SHA512SUMS
@@ -1 +1 @@
-85bc0244cd30ef38262792d61502a012348b8220ef249352b68ddfa40663ca1cae5f81bed70caa9579469fad6ad16a95f02387c280effeda7ce8287b549f3fc9  mingw-w64-v5.0.3.tar.bz2
+30e5b2824a24eeb99ab519e3fc134cc9a7f04ee8b853bc8d66a13d1ab74144bf78b93e162bfe6de2a5e61f63c0e620a933b260b02d019cd68cc4b78bd36c67fd  mingw-w64-v7.0.0.tar.bz2
diff --git a/contrib/src/pthreads/rules.mak b/contrib/src/pthreads/rules.mak
index b7d2b57..b91e916 100644
--- a/contrib/src/pthreads/rules.mak
+++ b/contrib/src/pthreads/rules.mak
@@ -1,6 +1,6 @@
 # winpthreads
 
-WINPTHREADS_VERSION := 5.0.3
+WINPTHREADS_VERSION := 7.0.0
 WINPTHREADS_URL := https://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/mingw-w64-v$(WINPTHREADS_VERSION).tar.bz2/download
 
 ifdef HAVE_WIN32
@@ -14,7 +14,6 @@ $(TARBALLS)/mingw-w64-v$(WINPTHREADS_VERSION).tar.bz2:
 
 pthreads: mingw-w64-v$(WINPTHREADS_VERSION).tar.bz2 .sum-pthreads
 	$(UNPACK)
-	$(APPLY) $(SRC)/pthreads/0001-winpthreads-Fix-building-for-ARM-and-ARM64.patch
 	$(MOVE)
 
 .pthreads: pthreads
-- 
2.25.0



More information about the vlc-devel mailing list