diff --git a/mingw-w64-v6.0.0.tar.bz2 b/mingw-w64-v9.0.0.tar.bz2 similarity index 52% rename from mingw-w64-v6.0.0.tar.bz2 rename to mingw-w64-v9.0.0.tar.bz2 index b6a7f76..a14bf4e 100644 Binary files a/mingw-w64-v6.0.0.tar.bz2 and b/mingw-w64-v9.0.0.tar.bz2 differ diff --git a/mingw-winpthreads.spec b/mingw-winpthreads.spec index aa03283..62c042a 100644 --- a/mingw-winpthreads.spec +++ b/mingw-winpthreads.spec @@ -1,18 +1,45 @@ -%?mingw_package_header +%{?mingw_package_header} +#%%global snapshot_date 20160204 +#%%global snapshot_rev 38410ad06264949efcb331f7a63575c6be31c5e4 +#%%global snapshot_rev_short %(echo %snapshot_rev | cut -c1-6) +#%%global branch trunk + +#%%global pre rc2 + +# Run the testsuite %global enable_tests 0 +%global enable_pthread_shared 0 + Name: mingw-winpthreads -Version: 6.0.0 -Release: 4 +Version: 9.0.0 +Release: 3 Summary: MinGW pthread library + +# The main license of winpthreads is MIT, but parts of this library +# are derived from the "Posix Threads library for Microsoft Windows" +# http://locklessinc.com/articles/pthreads_on_windows/ License: MIT and BSD URL: http://mingw-w64.sourceforge.net/ -Source0: http://downloads.sourceforge.net/mingw-w64/mingw-w64-v%{version}.tar.bz2 +%if 0%{?snapshot_date} +# To regenerate a snapshot: +# Use your regular webbrowser to open https://sourceforge.net/p/mingw-w64/mingw-w64/ci/%{snapshot_rev}/tarball +# This triggers the SourceForge instructure to generate a snapshot +# After that you can pull in the archive with: +# spectool -g mingw-headers.spec +Source0: http://sourceforge.net/code-snapshots/git/m/mi/mingw-w64/mingw-w64.git/mingw-w64-mingw-w64-%{snapshot_rev}.zip +%else +Source0: http://downloads.sourceforge.net/mingw-w64/mingw-w64-v%{version}%{?pre:-%{pre}}.tar.bz2 +%endif + BuildArch: noarch -BuildRequires: mingw32-filesystem >= 95 mingw64-filesystem >= 95 -BuildRequires: mingw32-gcc-c++ mingw64-gcc-c++ -BuildRequires: mingw32-crt mingw64-crt + +BuildRequires: make +BuildRequires: mingw32-filesystem >= 95 +BuildRequires: mingw64-filesystem >= 95 +BuildRequires: mingw32-gcc-c++ +BuildRequires: mingw64-gcc-c++ %if 0%{?enable_tests} BuildRequires: wine-wow @@ -33,6 +60,7 @@ 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. +# Win32 %package -n mingw32-winpthreads Summary: MinGW pthread library for the win32 target Obsoletes: mingw32-pthreads < 2.8.0-25.20110511cvs @@ -62,6 +90,7 @@ Provides: mingw32-pthreads-static = 2.8.0-25.20110511cvs %description -n mingw32-winpthreads-static Static version of the MinGW Windows pthreads library. +# Win64 %package -n mingw64-winpthreads Summary: MinGW pthread library for the win64 target Obsoletes: mingw64-pthreads < 2.8.0-25.20110511cvs @@ -91,32 +120,46 @@ Provides: mingw64-pthreads-static = 2.8.0-25.20110511cvs %description -n mingw64-winpthreads-static Static version of the MinGW Windows pthreads library. - +%if 0%{enable_pthread_shared} == 1 %?mingw_debug_package - +%endif %prep -%autosetup -p1 -n mingw-w64-v%{version} +%if 0%{?snapshot_date} +rm -rf mingw-w64-v%{version} +mkdir mingw-w64-v%{version} +cd mingw-w64-v%{version} +unzip %{S:0} +%autosetup -p1 -D -T -n mingw-w64-v%{version}/mingw-w64-mingw-w64-%{snapshot_rev} +%else +%autosetup -p1 -n mingw-w64-v%{version}%{?pre:-%{pre}} +%endif %build pushd mingw-w64-libraries/winpthreads - %mingw_configure - %mingw_make %{?smp_mflags} + %mingw_configure \ +%if 0%{enable_pthread_shared} == 0 + --enable-shared=no +%endif + %mingw_make_build popd %if 0%{?enable_tests} %check +# Prepare a wine prefix export WINEPREFIX=/tmp/wine-winpthreads mkdir $WINEPREFIX winecfg || : +# Run the tests pushd mingw-w64-libraries/winpthreads %mingw_make check -k || : popd +# Clean up the wine prefix wineserver --kill || : rm -rf /tmp/wine-winpthreads @@ -125,17 +168,21 @@ rm -rf /tmp/wine-winpthreads %install pushd mingw-w64-libraries/winpthreads - %mingw_make install DESTDIR=$RPM_BUILD_ROOT + %mingw_make_install DESTDIR=%{buildroot} popd +# Drop all .la files find $RPM_BUILD_ROOT -name "*.la" -delete +# Win32 %files -n mingw32-winpthreads %license COPYING +%if 0%{enable_pthread_shared} == 1 %{mingw32_bindir}/libwinpthread-1.dll %{mingw32_libdir}/libwinpthread.dll.a %{mingw32_libdir}/libpthread.dll.a +%endif %{mingw32_includedir}/pthread.h %{mingw32_includedir}/pthread_compat.h %{mingw32_includedir}/pthread_signal.h @@ -148,11 +195,14 @@ find $RPM_BUILD_ROOT -name "*.la" -delete %{mingw32_libdir}/libwinpthread.a %{mingw32_libdir}/libpthread.a +# Win64 %files -n mingw64-winpthreads %license COPYING +%if 0%{enable_pthread_shared} == 1 %{mingw64_bindir}/libwinpthread-1.dll %{mingw64_libdir}/libwinpthread.dll.a %{mingw64_libdir}/libpthread.dll.a +%endif %{mingw64_includedir}/pthread.h %{mingw64_includedir}/pthread_compat.h %{mingw64_includedir}/pthread_signal.h @@ -167,6 +217,9 @@ find $RPM_BUILD_ROOT -name "*.la" -delete %changelog +* Wed Feb 21 2024 yinhongchang - 9.0.0-3 +- update version to 9.0.0 + * Wed Nov 04 2020 Zhiyi Weng - 6.0.0-4 - Add build require mingw-crt for bootstrap.