1 %define __strip %{_mingw32_strip}
2 %define __objdump %{_mingw32_objdump}
3 %define _use_internal_dependency_generator 0
4 %define __find_requires %{_mingw32_findrequires}
5 %define __find_provides %{_mingw32_findprovides}
7 %define crazy_version 2-8-0
9 # The tests take ages to run and require Wine.
12 Name: mingw32-pthreads
15 Summary: MinGW pthread library
18 Group: Development/Libraries
19 URL: http://sourceware.org/pthreads-win32/
20 Source0: ftp://sourceware.org/pub/pthreads-win32/pthreads-w32-%{crazy_version}-release.tar.gz
21 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
25 Patch0: mingw32-pthreads-2.8.0-use-wine-for-tests.patch
26 Patch1: mingw32-pthreads-2.8.0-no-failing-tests.patch
28 BuildRequires: mingw32-filesystem >= 30
29 BuildRequires: mingw32-gcc
30 BuildRequires: mingw32-gcc-c++
31 BuildRequires: mingw32-binutils
39 The POSIX 1003.1-2001 standard defines an application programming
40 interface (API) for writing multithreaded applications. This interface
41 is known more commonly as pthreads. A good number of modern operating
42 systems include a threading library of some kind: Solaris (UI)
43 threads, Win32 threads, DCE threads, DECthreads, or any of the draft
44 revisions of the pthreads standard. The trend is that most of these
45 systems are slowly adopting the pthreads standard API, with
46 application developers following suit to reduce porting woes.
48 Win32 does not, and is unlikely to ever, support pthreads
49 natively. This project seeks to provide a freely available and
50 high-quality solution to this problem.
54 %setup -q -n pthreads-w32-%{crazy_version}-release
62 make CROSS=%{_mingw32_host}- GC-inlined
63 make CROSS=%{_mingw32_host}- GCE-inlined
70 make QAPC= CC=i686-pc-mingw32-gcc XXCFLAGS="-D__CLEANUP_C" TEST=GC all-pass
72 make QAPC= CC=i686-pc-mingw32-gcc XXCFLAGS="-D__CLEANUP_C" TEST=GCE all-pass
78 rm -rf $RPM_BUILD_ROOT
80 mkdir -p $RPM_BUILD_ROOT%{_mingw32_bindir}
81 mkdir -p $RPM_BUILD_ROOT%{_mingw32_libdir}
82 mkdir -p $RPM_BUILD_ROOT%{_mingw32_includedir}/pthread
84 install -m 0755 *.dll $RPM_BUILD_ROOT%{_mingw32_bindir}
85 install -m 0644 *.def $RPM_BUILD_ROOT%{_mingw32_bindir}
86 install -m 0644 *.a $RPM_BUILD_ROOT%{_mingw32_libdir}
87 install -m 0644 *.h $RPM_BUILD_ROOT%{_mingw32_includedir}/pthread
91 rm -rf $RPM_BUILD_ROOT
96 %{_mingw32_bindir}/pthreadGC2.dll
97 %{_mingw32_bindir}/pthreadGCE2.dll
98 %{_mingw32_bindir}/pthread.def
99 %{_mingw32_libdir}/libpthreadGC2.a
100 %{_mingw32_libdir}/libpthreadGCE2.a
101 %{_mingw32_includedir}/pthread
102 %doc ANNOUNCE BUGS ChangeLog CONTRIBUTORS COPYING COPYING.LIB
103 %doc FAQ MAINTAINERS NEWS PROGRESS README README.NONPORTABLE TODO
107 * Fri Oct 10 2008 Richard W.M. Jones <rjones@redhat.com> - 2.8.0-2
108 - Initial RPM release.