summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Brand <mabrand@mabrand.nl>2012-05-27 20:12:14 (GMT)
committerMark Brand <mabrand@mabrand.nl>2012-05-27 20:13:33 (GMT)
commit6b591047634324065e17d4d60d11cf05a10eb04a (patch)
treeed569b408469a2c2b1e90d2da9e4952fd9412c86
parent2613e25a915baf2f62a2341790383b22c94090dd (diff)
downloadmxe-6b591047634324065e17d4d60d11cf05a10eb04a.zip
mxe-6b591047634324065e17d4d60d11cf05a10eb04a.tar.gz
mxe-6b591047634324065e17d4d60d11cf05a10eb04a.tar.bz2
update package pthreads
-rw-r--r--index.html2
-rw-r--r--src/pthreads-1-autostatic.patch150
-rw-r--r--src/pthreads-1-fixes.patch31
-rw-r--r--src/pthreads.mk6
4 files changed, 33 insertions, 156 deletions
diff --git a/index.html b/index.html
index d2a9c2c..759b50c 100644
--- a/index.html
+++ b/index.html
@@ -1745,7 +1745,7 @@ USE_OSGPLUGIN(&lt;plugin2&gt;)
</tr>
<tr>
<td id="pthreads-package">pthreads</td>
- <td id="pthreads-version">2-8-0</td>
+ <td id="pthreads-version">2-9-1</td>
<td id="pthreads-website"><a href="http://sourceware.org/pthreads-win32/">Pthreads-w32</a></td>
</tr>
<tr>
diff --git a/src/pthreads-1-autostatic.patch b/src/pthreads-1-autostatic.patch
deleted file mode 100644
index 94a82b7..0000000
--- a/src/pthreads-1-autostatic.patch
+++ /dev/null
@@ -1,150 +0,0 @@
-This file is part of MXE.
-See index.html for further information.
-
-This patch has been taken from:
-http://sourceware.org/ml/pthreads-win32/2010/msg00006.html
-
-diff -ur pthreads-win32-20091019.orig/GNUmakefile pthreads-win32-20091019/GNUmakefile
---- pthreads-win32-20091019.orig/GNUmakefile 2009-10-19 08:07:32.000000000 -0200
-+++ pthreads-win32-20091019/GNUmakefile 2010-02-01 14:45:28.471432337 -0200
-@@ -63,7 +63,6 @@
- XOPT =
-
- RCFLAGS = --include-dir=.
--LFLAGS = -lwsock32
-
- # ----------------------------------------------------------------------
- # The library can be built with some alternative behaviour to
-diff -ur pthreads-win32-20091019.orig/pthread.c pthreads-win32-20091019/pthread.c
---- pthreads-win32-20091019.orig/pthread.c 2009-10-19 08:07:32.000000000 -0200
-+++ pthreads-win32-20091019/pthread.c 2010-02-01 14:26:48.601487556 -0200
-@@ -49,6 +49,7 @@
- #include "condvar.c"
- #include "create.c"
- #include "dll.c"
-+#include "autostatic.c"
- #include "errno.c"
- #include "exit.c"
- #include "fork.c"
-diff -ur pthreads-win32-20091019.orig/pthread_getspecific.c pthreads-win32-20091019/pthread_getspecific.c
---- pthreads-win32-20091019.orig/pthread_getspecific.c 2009-10-19 08:07:32.000000000 -0200
-+++ pthreads-win32-20091019/pthread_getspecific.c 2010-02-01 14:28:36.603981857 -0200
-@@ -72,12 +72,10 @@
- else
- {
- int lasterror = GetLastError ();
-- int lastWSAerror = WSAGetLastError ();
-
- ptr = TlsGetValue (key->key);
-
- SetLastError (lasterror);
-- WSASetLastError (lastWSAerror);
- }
-
- return ptr;
-diff -ur pthreads-win32-20091019.orig/pthread.h pthreads-win32-20091019/pthread.h
---- pthreads-win32-20091019.orig/pthread.h 2009-10-19 08:07:32.000000000 -0200
-+++ pthreads-win32-20091019/pthread.h 2010-02-02 16:51:05.047931915 -0200
-@@ -533,7 +533,7 @@
- * do NOT define PTW32_BUILD, and then the variables/functions will
- * be imported correctly.
- */
--#ifndef PTW32_STATIC_LIB
-+#if !defined(PTW32_STATIC_LIB) && !defined(__MINGW32__)
- # ifdef PTW32_BUILD
- # define PTW32_DLLPORT __declspec (dllexport)
- # else
-diff -ur pthreads-win32-20091019.orig/sched.h pthreads-win32-20091019/sched.h
---- pthreads-win32-20091019.orig/sched.h 2009-10-19 08:07:32.000000000 -0200
-+++ pthreads-win32-20091019/sched.h 2010-02-02 16:51:00.665887720 -0200
-@@ -76,7 +76,7 @@
- * do NOT define PTW32_BUILD, and then the variables/functions will
- * be imported correctly.
- */
--#ifndef PTW32_STATIC_LIB
-+#if !defined(PTW32_STATIC_LIB) && !defined(__MINGW32__)
- # ifdef PTW32_BUILD
- # define PTW32_DLLPORT __declspec (dllexport)
- # else
-diff -ur pthreads-win32-20091019.orig/semaphore.h pthreads-win32-20091019/semaphore.h
---- pthreads-win32-20091019.orig/semaphore.h 2009-10-19 08:07:32.000000000 -0200
-+++ pthreads-win32-20091019/semaphore.h 2010-02-02 16:50:45.916576916 -0200
-@@ -75,7 +75,7 @@
- * do NOT define PTW32_BUILD, and then the variables/functions will
- * be imported correctly.
- */
--#ifndef PTW32_STATIC_LIB
-+#if !defined(PTW32_STATIC_LIB) && !defined(__MINGW32__)
- # ifdef PTW32_BUILD
- # define PTW32_DLLPORT __declspec (dllexport)
- # else
---- /dev/null 2010-01-29 12:57:37.677072272 -0200
-+++ pthreads-win32-20091019/autostatic.c 2010-02-01 14:26:48.601487556 -0200
-@@ -0,0 +1,67 @@
-+/*
-+ * autostatic.c
-+ *
-+ * Description:
-+ * This translation unit implements static library initialisation.
-+ *
-+ * --------------------------------------------------------------------------
-+ *
-+ * Pthreads-win32 - POSIX Threads Library for Win32
-+ * Copyright(C) 1998 John E. Bossom
-+ * Copyright(C) 1999,2005 Pthreads-win32 contributors
-+ *
-+ * Contact Email: rpj@callisto.canberra.edu.au
-+ *
-+ * The current list of contributors is contained
-+ * in the file CONTRIBUTORS included with the source
-+ * code distribution. The list can also be seen at the
-+ * following World Wide Web location:
-+ * http://sources.redhat.com/pthreads-win32/contributors.html
-+ *
-+ * This library is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2 of the License, or (at your option) any later version.
-+ *
-+ * This library is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with this library in the file COPYING.LIB;
-+ * if not, write to the Free Software Foundation, Inc.,
-+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
-+ */
-+
-+#ifdef PTW32_STATIC_LIB
-+
-+#include "pthread.h"
-+#include "implement.h"
-+
-+static void on_process_init(void)
-+{
-+ pthread_win32_process_attach_np ();
-+}
-+
-+static void on_process_exit(void)
-+{
-+ pthread_win32_thread_detach_np ();
-+ pthread_win32_process_detach_np ();
-+}
-+
-+#ifdef __MINGW32__
-+# define attribute_section(a) __attribute__((section(a)))
-+#elif defined(_MSC_VER)
-+# define attribute_section(a) __pragma(section(a,long,read)); __declspec(allocate(a))
-+#else
-+#error compiler not supported!
-+#endif
-+
-+attribute_section(".CRT$XCU") void *msc_ctor = on_process_init;
-+attribute_section(".CRT$XPU") void *msc_dtor = on_process_exit;
-+
-+attribute_section(".ctors" ) void *gcc_ctor = on_process_init;
-+attribute_section(".dtors" ) void *gcc_dtor = on_process_exit;
-+
-+#endif /* PTW32_STATIC_LIB */
diff --git a/src/pthreads-1-fixes.patch b/src/pthreads-1-fixes.patch
new file mode 100644
index 0000000..b839f5d
--- /dev/null
+++ b/src/pthreads-1-fixes.patch
@@ -0,0 +1,31 @@
+This file is part of MXE.
+See index.html for further information.
+
+Commits backported (cherry-picked) from upstream.
+From 9348978f78c6feae6e9bab4499ab035c6e5e25ea Mon Sep 17 00:00:00 2001
+From: Mark Brand <mabrand@mabrand.nl>
+Date: Sun, 27 May 2012 22:00:19 +0200
+Subject: [PATCH] force static for convenience
+
+---
+ pthread.h | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/pthread.h b/pthread.h
+index b4072f7..c88c886 100755
+--- a/pthread.h
++++ b/pthread.h
+@@ -547,6 +547,10 @@ extern "C"
+ * do NOT define PTW32_BUILD, and then the variables/functions will
+ * be imported correctly.
+ */
++
++// MXE: Set this for convenience here since MXE only does static.
++#define PTW32_STATIC_LIB
++
+ #if !defined(PTW32_STATIC_LIB)
+ # if defined(PTW32_BUILD)
+ # define PTW32_DLLPORT __declspec (dllexport)
+--
+1.7.9.2
+
diff --git a/src/pthreads.mk b/src/pthreads.mk
index aa17ec0..375fb24 100644
--- a/src/pthreads.mk
+++ b/src/pthreads.mk
@@ -3,7 +3,7 @@
PKG := pthreads
$(PKG)_IGNORE :=
-$(PKG)_CHECKSUM := da8371cb20e8e238f96a1d0651212f154d84a9ac
+$(PKG)_CHECKSUM := 24d40e89c2e66a765733e8c98d6f94500343da86
$(PKG)_SUBDIR := pthreads-w32-$($(PKG)_VERSION)-release
$(PKG)_FILE := pthreads-w32-$($(PKG)_VERSION)-release.tar.gz
$(PKG)_URL := ftp://sourceware.org/pub/pthreads-win32/$($(PKG)_FILE)
@@ -17,10 +17,6 @@ define $(PKG)_UPDATE
endef
define $(PKG)_BUILD
- $(SED) -i '35i\#define PTW32_STATIC_LIB' '$(1)/pthread.h'
- $(SED) -i '41i\#define PTW32_STATIC_LIB' '$(1)/sched.h'
- $(SED) -i '41i\#define PTW32_STATIC_LIB' '$(1)/semaphore.h'
- $(SED) -i 's,#include "config.h",,' '$(1)/pthread.h'
$(MAKE) -C '$(1)' -j 1 GC-static CROSS='$(TARGET)-'
$(INSTALL) -d '$(PREFIX)/$(TARGET)/lib'
$(INSTALL) -m644 '$(1)/libpthreadGC2.a' '$(PREFIX)/$(TARGET)/lib/libpthread.a'