[mingw-pthreads: 2/23] Initial import.

Kalev Lember kalev at fedoraproject.org
Tue Mar 6 21:31:56 UTC 2012


commit 4168628ed2afd52da41f2d9c78383dbbb3e66349
Author: Richard W.M. Jones <rjones at fedoraproject.org>
Date:   Wed Jan 14 09:45:11 2009 +0000

    Initial import.

 .cvsignore                                      |    1 +
 import.log                                      |    1 +
 mingw32-pthreads-2.8.0-no-failing-tests.patch   |   24 +++++
 mingw32-pthreads-2.8.0-use-wine-for-tests.patch |   26 +++++
 mingw32-pthreads-flags.patch                    |   13 +++
 mingw32-pthreads.spec                           |  119 +++++++++++++++++++++++
 sources                                         |    1 +
 7 files changed, 185 insertions(+), 0 deletions(-)
---
diff --git a/.cvsignore b/.cvsignore
index e69de29..c1cbd75 100644
--- a/.cvsignore
+++ b/.cvsignore
@@ -0,0 +1 @@
+pthreads-w32-2-8-0-release.tar.gz
diff --git a/import.log b/import.log
new file mode 100644
index 0000000..0c3c575
--- /dev/null
+++ b/import.log
@@ -0,0 +1 @@
+mingw32-pthreads-2_8_0-4_fc10:HEAD:mingw32-pthreads-2.8.0-4.fc10.src.rpm:1231925723
diff --git a/mingw32-pthreads-2.8.0-no-failing-tests.patch b/mingw32-pthreads-2.8.0-no-failing-tests.patch
new file mode 100644
index 0000000..3c8decf
--- /dev/null
+++ b/mingw32-pthreads-2.8.0-no-failing-tests.patch
@@ -0,0 +1,24 @@
+--- pthreads-w32-2-8-0-release/tests/GNUmakefile.wine	2008-10-10 14:19:06.000000000 +0100
++++ pthreads-w32-2-8-0-release/tests/GNUmakefile	2008-10-10 14:19:40.000000000 +0100
+@@ -87,7 +87,7 @@
+ 	  mutex6s mutex6es mutex6rs \
+ 	  mutex7 mutex7n mutex7e mutex7r mutex8 mutex8n mutex8e mutex8r \
+ 	  count1 \
+-	  once1 once2 once3 once4 self2 \
++	  once1 self2 \
+ 	  cancel1 cancel2 \
+ 	  semaphore4 semaphore4t semaphore5 \
+ 	  barrier1 barrier2 barrier3 barrier4 barrier5 \
+@@ -274,9 +274,9 @@
+ mutex8e.pass: mutex7e.pass
+ mutex8r.pass: mutex7r.pass
+ once1.pass: create1.pass
+-once2.pass: once1.pass
+-once3.pass: once2.pass
+-once4.pass: once3.pass
++#once2.pass: once1.pass
++#once3.pass: once2.pass
++#once4.pass: once3.pass
+ priority1.pass: join1.pass
+ priority2.pass: priority1.pass barrier3.pass
+ reuse1.pass: create2.pass
diff --git a/mingw32-pthreads-2.8.0-use-wine-for-tests.patch b/mingw32-pthreads-2.8.0-use-wine-for-tests.patch
new file mode 100644
index 0000000..b5cf1f2
--- /dev/null
+++ b/mingw32-pthreads-2.8.0-use-wine-for-tests.patch
@@ -0,0 +1,26 @@
+--- pthreads-w32-2-8-0-release/tests/GNUmakefile.orig	2008-10-10 14:16:03.000000000 +0100
++++ pthreads-w32-2-8-0-release/tests/GNUmakefile	2008-10-10 14:19:06.000000000 +0100
+@@ -316,20 +316,20 @@
+ 
+ sizes.pass: sizes.exe
+ 	@ $(ECHO) Running $*
+-	$< > SIZES.$(TEST)
++	wine $< > SIZES.$(TEST)
+ 	@ $(CAT) SIZES.$(TEST)
+ 	@ $(ECHO) Passed
+ 	@ $(TOUCH) $@
+ 
+ %.pass: %.exe
+ 	@ $(ECHO) Running $*
+-	$*
++	wine $*
+ 	@ $(ECHO) Passed
+ 	@ $(TOUCH) $@
+ 
+ %.bench: $(LIB) $(DLL) $(HDR) $(QAPC) $(XXLIBS) %.exe
+ 	@ $(ECHO) Running $*
+-	$*
++	wine $*
+ 	@ $(ECHO) Done
+ 	@ $(TOUCH) $@
+ 
diff --git a/mingw32-pthreads-flags.patch b/mingw32-pthreads-flags.patch
new file mode 100644
index 0000000..6da6beb
--- /dev/null
+++ b/mingw32-pthreads-flags.patch
@@ -0,0 +1,13 @@
+--- ./GNUmakefile.lfarkas	2008-12-29 16:23:03.000000000 +0100
++++ ./GNUmakefile	2008-12-29 16:23:45.000000000 +0100
+@@ -58,8 +58,8 @@
+ RANLIB  = $(CROSS)ranlib
+ RC	= $(CROSS)windres
+ 
+-OPT	= $(CLEANUP) -O3 -finline-functions
+-DOPT	= $(CLEANUP) -g -O0
++OPT	= $(CLEANUP) -O3 -finline-functions -mms-bitfields
++DOPT	= $(CLEANUP) -g -O0 -mms-bitfields
+ XOPT	=
+ 
+ RCFLAGS		= --include-dir=.
diff --git a/mingw32-pthreads.spec b/mingw32-pthreads.spec
new file mode 100644
index 0000000..82a8c3f
--- /dev/null
+++ b/mingw32-pthreads.spec
@@ -0,0 +1,119 @@
+%define __strip %{_mingw32_strip}
+%define __objdump %{_mingw32_objdump}
+%define _use_internal_dependency_generator 0
+%define __find_requires %{_mingw32_findrequires}
+%define __find_provides %{_mingw32_findprovides}
+
+# The tests take ages to run and require Wine.
+%define run_tests 0
+
+Name:           mingw32-pthreads
+Version:        2.8.0
+Release:        4%{?dist}
+Summary:        MinGW pthread library
+
+%define crazy_version %(echo %{version}|tr . -)
+
+License:        LGPLv2+
+Group:          Development/Libraries
+URL:            http://sourceware.org/pthreads-win32/
+Source0:        ftp://sourceware.org/pub/pthreads-win32/pthreads-w32-%{crazy_version}-release.tar.gz
+BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+
+BuildArch:      noarch
+
+Patch0:         mingw32-pthreads-2.8.0-use-wine-for-tests.patch
+Patch1:         mingw32-pthreads-2.8.0-no-failing-tests.patch
+Patch2:		mingw32-pthreads-flags.patch
+
+BuildRequires:  mingw32-filesystem >= 40
+BuildRequires:  mingw32-gcc
+BuildRequires:  mingw32-gcc-c++
+BuildRequires:  mingw32-binutils
+
+%if %{run_tests}
+BuildRequires:  wine
+%endif
+
+
+%description
+The POSIX 1003.1-2001 standard defines an application programming
+interface (API) for writing multithreaded applications. This interface
+is known more commonly as pthreads. A good number of modern operating
+systems include a threading library of some kind: Solaris (UI)
+threads, Win32 threads, DCE threads, DECthreads, or any of the draft
+revisions of the pthreads standard. The trend is that most of these
+systems are slowly adopting the pthreads standard API, with
+application developers following suit to reduce porting woes.
+
+Win32 does not, and is unlikely to ever, support pthreads
+natively. This project seeks to provide a freely available and
+high-quality solution to this problem.
+
+
+%prep
+%setup -q -n pthreads-w32-%{crazy_version}-release
+
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+
+
+%build
+%{_mingw32_make} clean
+%{_mingw32_make} CROSS=%{_mingw32_host}- GC-inlined
+%{_mingw32_make} clean
+%{_mingw32_make} CROSS=%{_mingw32_host}- GCE-inlined
+
+
+%check
+%if %{run_tests}
+pushd tests
+%{_mingw32_make} clean
+%{_mingw32_make} QAPC= \
+  CC=%{_mingw32_cc} XXCFLAGS="-D__CLEANUP_C" TEST=GC all-pass
+%{_mingw32_make} clean
+%{_mingw32_make} QAPC= \
+  CC=%{_mingw32_cc} XXCFLAGS="-D__CLEANUP_C" TEST=GCE all-pass
+popd
+%endif
+
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+mkdir -p $RPM_BUILD_ROOT%{_mingw32_bindir}
+mkdir -p $RPM_BUILD_ROOT%{_mingw32_libdir}
+mkdir -p $RPM_BUILD_ROOT%{_mingw32_includedir}/pthread
+
+install -m 0755 *.dll $RPM_BUILD_ROOT%{_mingw32_bindir}
+install -m 0644 *.def $RPM_BUILD_ROOT%{_mingw32_bindir}
+install -m 0644 *.a $RPM_BUILD_ROOT%{_mingw32_libdir}
+install -m 0644 *.h $RPM_BUILD_ROOT%{_mingw32_includedir}/pthread
+
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+
+%files
+%defattr(-,root,root)
+%doc ANNOUNCE BUGS ChangeLog CONTRIBUTORS COPYING COPYING.LIB
+%doc FAQ MAINTAINERS NEWS PROGRESS README README.NONPORTABLE TODO
+%{_mingw32_bindir}/pthreadGC2.dll
+%{_mingw32_bindir}/pthreadGCE2.dll
+%{_mingw32_bindir}/pthread.def
+%{_mingw32_libdir}/libpthreadGC2.a
+%{_mingw32_libdir}/libpthreadGCE2.a
+%{_mingw32_includedir}/pthread
+
+
+%changelog
+* Tue Jan 13 2009 Richard W.M. Jones <rjones at redhat.com> - 2.8.0-4
+- Cleanup to the spec file, no functional changes.
+
+* Mon Dec 29 2008 Levente Farkas <lfarkas at lfarkas.org> - 2.8.0-3
+- minor cleanup
+
+* Fri Oct 10 2008 Richard W.M. Jones <rjones at redhat.com> - 2.8.0-2
+- Initial RPM release.
diff --git a/sources b/sources
index e69de29..b7472f6 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+6d30c693233b1464ef8983fedd8ccb22  pthreads-w32-2-8-0-release.tar.gz


More information about the mingw mailing list