Blame SPECS/mingw-winpthreads.spec

f95419
%{?mingw_package_header}
f95419
f95419
#%%global snapshot_date 20160204
f95419
#%%global snapshot_rev 38410ad06264949efcb331f7a63575c6be31c5e4
f95419
#%%global snapshot_rev_short %(echo %snapshot_rev | cut -c1-6)
f95419
#%%global branch trunk
f95419
f95419
#%%global pre rc2
f95419
f95419
# Run the testsuite
f95419
%global enable_tests 0
f95419
f95419
Name:           mingw-winpthreads
f95419
Version:        9.0.0
f95419
Release:        2%{?dist}
f95419
Summary:        MinGW pthread library
f95419
f95419
# The main license of winpthreads is MIT, but parts of this library
f95419
# are derived from the "Posix Threads library for Microsoft Windows"
f95419
# http://locklessinc.com/articles/pthreads_on_windows/
f95419
License:        MIT and BSD
f95419
URL:            http://mingw-w64.sourceforge.net/
f95419
%if 0%{?snapshot_date}
f95419
# To regenerate a snapshot:
f95419
# Use your regular webbrowser to open https://sourceforge.net/p/mingw-w64/mingw-w64/ci/%{snapshot_rev}/tarball
f95419
# This triggers the SourceForge instructure to generate a snapshot
f95419
# After that you can pull in the archive with:
f95419
# spectool -g mingw-headers.spec
f95419
Source0:        http://sourceforge.net/code-snapshots/git/m/mi/mingw-w64/mingw-w64.git/mingw-w64-mingw-w64-%{snapshot_rev}.zip
f95419
%else
f95419
Source0:        http://downloads.sourceforge.net/mingw-w64/mingw-w64-v%{version}%{?pre:-%{pre}}.tar.bz2
f95419
%endif
f95419
f95419
BuildArch:      noarch
f95419
f95419
BuildRequires: make
f95419
BuildRequires:  mingw32-filesystem >= 95
f95419
BuildRequires:  mingw64-filesystem >= 95
f95419
BuildRequires:  mingw32-gcc-c++
f95419
BuildRequires:  mingw64-gcc-c++
f95419
f95419
%if 0%{?enable_tests}
f95419
BuildRequires:  wine-wow
f95419
%endif
f95419
f95419
f95419
%description
f95419
The POSIX 1003.1-2001 standard defines an application programming
f95419
interface (API) for writing multithreaded applications. This interface
f95419
is known more commonly as pthreads. A good number of modern operating
f95419
systems include a threading library of some kind: Solaris (UI)
f95419
threads, Win32 threads, DCE threads, DECthreads, or any of the draft
f95419
revisions of the pthreads standard. The trend is that most of these
f95419
systems are slowly adopting the pthreads standard API, with
f95419
application developers following suit to reduce porting woes.
f95419
f95419
Win32 does not, and is unlikely to ever, support pthreads
f95419
natively. This project seeks to provide a freely available and
f95419
high-quality solution to this problem.
f95419
f95419
# Win32
f95419
%package -n mingw32-winpthreads
f95419
Summary:        MinGW pthread library for the win32 target
f95419
Obsoletes:      mingw32-pthreads < 2.8.0-25.20110511cvs
f95419
Provides:       mingw32-pthreads = 2.8.0-25.20110511cvs
f95419
Conflicts:      mingw32-headers < 2.0.999-0.22.trunk.20130428
f95419
f95419
%description -n mingw32-winpthreads
f95419
The POSIX 1003.1-2001 standard defines an application programming
f95419
interface (API) for writing multithreaded applications. This interface
f95419
is known more commonly as pthreads. A good number of modern operating
f95419
systems include a threading library of some kind: Solaris (UI)
f95419
threads, Win32 threads, DCE threads, DECthreads, or any of the draft
f95419
revisions of the pthreads standard. The trend is that most of these
f95419
systems are slowly adopting the pthreads standard API, with
f95419
application developers following suit to reduce porting woes.
f95419
f95419
Win32 does not, and is unlikely to ever, support pthreads
f95419
natively. This project seeks to provide a freely available and
f95419
high-quality solution to this problem.
f95419
f95419
%package -n mingw32-winpthreads-static
f95419
Summary:        Static version of the MinGW Windows pthreads library
f95419
Requires:       mingw32-winpthreads = %{version}-%{release}
f95419
Obsoletes:      mingw32-pthreads-static < 2.8.0-25.20110511cvs
f95419
Provides:       mingw32-pthreads-static = 2.8.0-25.20110511cvs
f95419
f95419
%description -n mingw32-winpthreads-static
f95419
Static version of the MinGW Windows pthreads library.
f95419
f95419
# Win64
f95419
%package -n mingw64-winpthreads
f95419
Summary:        MinGW pthread library for the win64 target
f95419
Obsoletes:      mingw64-pthreads < 2.8.0-25.20110511cvs
f95419
Provides:       mingw64-pthreads = 2.8.0-25.20110511cvs
f95419
Conflicts:      mingw64-headers < 2.0.999-0.22.trunk.20130428
f95419
f95419
%description -n mingw64-winpthreads
f95419
The POSIX 1003.1-2001 standard defines an application programming
f95419
interface (API) for writing multithreaded applications. This interface
f95419
is known more commonly as pthreads. A good number of modern operating
f95419
systems include a threading library of some kind: Solaris (UI)
f95419
threads, Win32 threads, DCE threads, DECthreads, or any of the draft
f95419
revisions of the pthreads standard. The trend is that most of these
f95419
systems are slowly adopting the pthreads standard API, with
f95419
application developers following suit to reduce porting woes.
f95419
f95419
Win32 does not, and is unlikely to ever, support pthreads
f95419
natively. This project seeks to provide a freely available and
f95419
high-quality solution to this problem.
f95419
f95419
%package -n mingw64-winpthreads-static
f95419
Summary:        Static version of the MinGW Windows pthreads library
f95419
Requires:       mingw64-winpthreads = %{version}-%{release}
f95419
Obsoletes:      mingw64-pthreads-static < 2.8.0-25.20110511cvs
f95419
Provides:       mingw64-pthreads-static = 2.8.0-25.20110511cvs
f95419
f95419
%description -n mingw64-winpthreads-static
f95419
Static version of the MinGW Windows pthreads library.
f95419
f95419
f95419
%?mingw_debug_package
f95419
f95419
f95419
%prep
f95419
%if 0%{?snapshot_date}
f95419
rm -rf mingw-w64-v%{version}
f95419
mkdir mingw-w64-v%{version}
f95419
cd mingw-w64-v%{version}
f95419
unzip %{S:0}
f95419
%autosetup -p1 -D -T -n mingw-w64-v%{version}/mingw-w64-mingw-w64-%{snapshot_rev}
f95419
%else
f95419
%autosetup -p1 -n mingw-w64-v%{version}%{?pre:-%{pre}}
f95419
%endif
f95419
f95419
f95419
%build
f95419
pushd mingw-w64-libraries/winpthreads
f95419
    %mingw_configure
f95419
    %mingw_make_build
f95419
popd
f95419
f95419
f95419
%if 0%{?enable_tests}
f95419
f95419
%check
f95419
# Prepare a wine prefix
f95419
export WINEPREFIX=/tmp/wine-winpthreads
f95419
mkdir $WINEPREFIX
f95419
winecfg || :
f95419
f95419
# Run the tests
f95419
pushd mingw-w64-libraries/winpthreads
f95419
    %mingw_make check -k || :
f95419
popd
f95419
f95419
# Clean up the wine prefix
f95419
wineserver --kill || :
f95419
rm -rf /tmp/wine-winpthreads
f95419
f95419
%endif
f95419
f95419
f95419
%install
f95419
pushd mingw-w64-libraries/winpthreads
f95419
    %mingw_make_install
f95419
popd
f95419
f95419
# Drop all .la files
f95419
find $RPM_BUILD_ROOT -name "*.la" -delete
f95419
f95419
f95419
# Win32
f95419
%files -n mingw32-winpthreads
f95419
%license COPYING
f95419
%{mingw32_bindir}/libwinpthread-1.dll
f95419
%{mingw32_libdir}/libwinpthread.dll.a
f95419
%{mingw32_libdir}/libpthread.dll.a
f95419
%{mingw32_includedir}/pthread.h
f95419
%{mingw32_includedir}/pthread_compat.h
f95419
%{mingw32_includedir}/pthread_signal.h
f95419
%{mingw32_includedir}/pthread_time.h
f95419
%{mingw32_includedir}/pthread_unistd.h
f95419
%{mingw32_includedir}/sched.h
f95419
%{mingw32_includedir}/semaphore.h
f95419
f95419
%files -n mingw32-winpthreads-static
f95419
%{mingw32_libdir}/libwinpthread.a
f95419
%{mingw32_libdir}/libpthread.a
f95419
f95419
# Win64
f95419
%files -n mingw64-winpthreads
f95419
%license COPYING
f95419
%{mingw64_bindir}/libwinpthread-1.dll
f95419
%{mingw64_libdir}/libwinpthread.dll.a
f95419
%{mingw64_libdir}/libpthread.dll.a
f95419
%{mingw64_includedir}/pthread.h
f95419
%{mingw64_includedir}/pthread_compat.h
f95419
%{mingw64_includedir}/pthread_signal.h
f95419
%{mingw64_includedir}/pthread_time.h
f95419
%{mingw64_includedir}/pthread_unistd.h
f95419
%{mingw64_includedir}/sched.h
f95419
%{mingw64_includedir}/semaphore.h
f95419
f95419
%files -n mingw64-winpthreads-static
f95419
%{mingw64_libdir}/libwinpthread.a
f95419
%{mingw64_libdir}/libpthread.a
f95419
f95419
f95419
%changelog
f95419
* Mon Aug 23 2021 Richard W.M. Jones <rjones@redhat.com> - 9.0.0-2
f95419
- Update to 9.0.0
f95419
- Manually merge with fedora/rawhide
f95419
  resolves: rhbz#1996703
f95419
f95419
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 8.0.0-4
f95419
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
f95419
  Related: rhbz#1991688
f95419
f95419
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 8.0.0-3
f95419
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
f95419
f95419
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 8.0.0-2
f95419
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
f95419
f95419
* Tue Jan 19 2021 Sandro Mani <manisandro@gmail.com> - 8.0.0-1
f95419
- Update to 8.0.0
f95419
f95419
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 7.0.0-2
f95419
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
f95419
f95419
* Sat Jun 20 2020 Sandro Mani <manisandro@gmail.com> - 7.0.0-1
f95419
- Update to 7.0.0
f95419
f95419
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 6.0.0-3
f95419
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
f95419
f95419
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 6.0.0-2
f95419
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
f95419
f95419
* Tue May 07 2019 Sandro Mani <manisandro@gmail.com> - 6.0.0-1
f95419
- Update to 6.0.0
f95419
f95419
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 5.0.4-3
f95419
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
f95419
f95419
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 5.0.4-2
f95419
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
f95419
f95419
* Mon Jul 09 2018 Kalev Lember <klember@redhat.com> - 5.0.4-1
f95419
- Update to 5.0.4
f95419
f95419
* Thu Jun 14 2018 Sandro Mani <manisandro@gmail.com> - 5.0.3-1
f95419
- Update to 5.0.3
f95419
f95419
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 5.0.2-3
f95419
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
f95419
f95419
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 5.0.2-2
f95419
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
f95419
f95419
* Wed May 17 2017 Kalev Lember <klember@redhat.com> - 5.0.2-1
f95419
- Update to 5.0.2
f95419
f95419
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 5.0.1-2
f95419
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
f95419
f95419
* Thu Jan 26 2017 Kalev Lember <klember@redhat.com> - 5.0.1-1
f95419
- Update to 5.0.1
f95419
f95419
* Wed Oct 26 2016 Kalev Lember <klember@redhat.com> - 5.0.0-1
f95419
- Update to 5.0.0
f95419
- Don't set group tags
f95419
- Use license macro
f95419
f95419
* Sun Mar 27 2016 Erik van Pienbroek <epienbro@fedoraproject.org> - 5.0-0.1.rc2
f95419
- Update to 5.0-rc2
f95419
f95419
* Thu Feb  4 2016 Erik van Pienbroek <epienbro@fedoraproject.org> - 4.9.999-0.3.trunk.git38410a.20160204
f95419
- Update to 20160204 snapshot (git rev 38410a)
f95419
f95419
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 4.9.999-0.2.trunk.git5e2e73.20151224
f95419
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
f95419
f95419
* Thu Dec 24 2015 Erik van Pienbroek <epienbro@fedoraproject.org> - 4.9.999-0.1.trunk.git.5e2e73.20151224
f95419
- Update to 20151224 snapshot (git rev 5e2e73)
f95419
f95419
* Wed Aug  5 2015 Erik van Pienbroek <epienbro@fedoraproject.org> - 4.0.4-1
f95419
- Update to 4.0.4
f95419
f95419
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.0.2-2
f95419
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
f95419
f95419
* Fri Apr 24 2015 Erik van Pienbroek <epienbro@fedoraproject.org> - 4.0.2-1
f95419
- Update to 4.0.2
f95419
f95419
* Sun Mar 29 2015 Erik van Pienbroek <epienbro@fedoraproject.org> - 4.0.1-1
f95419
- Update to 4.0.1
f95419
f95419
* Sat Mar 21 2015 Erik van Pienbroek <epienbro@fedoraproject.org> - 4.0.0-1
f95419
- Update to 4.0.0
f95419
f95419
* Sat Mar  7 2015 Erik van Pienbroek <epienbro@fedoraproject.org> - 4.0-0.2.rc3
f95419
- Update to 4.0rc3
f95419
f95419
* Mon Jan 26 2015 Erik van Pienbroek <epienbro@fedoraproject.org> - 4.0-0.1.rc1
f95419
- Update to 4.0rc1
f95419
f95419
* Mon Dec 22 2014 Erik van Pienbroek <epienbro@fedoraproject.org> - 3.9.999-0.5.trunk.git.f7337b.20141222
f95419
- Update to 20141222 snapshot (git rev f7337b)
f95419
f95419
* Tue Dec  9 2014 Erik van Pienbroek <epienbro@fedoraproject.org> - 3.9.999-0.4.trunk.git.dadc8f.20141209
f95419
- Update to 20141209 snapshot (git rev dadc8f)
f95419
f95419
* Wed Dec  3 2014 Erik van Pienbroek <epienbro@fedoraproject.org> - 3.9.999-0.2.trunk.git.a5c151.20141203
f95419
- Update to 20141203 snapshot (git rev a5c151)
f95419
f95419
* Fri Sep 12 2014 Erik van Pienbroek <epienbro@fedoraproject.org> - 3.9.999-0.1.trunk.git.b08afb.20140912
f95419
- Update to 20140912 snapshot (git rev b08afb)
f95419
- Bump version as upstream released mingw-w64 v3.2.0 recently (which is not based on the trunk branch)
f95419
f95419
* Wed Jul 30 2014 Erik van Pienbroek <epienbro@fedoraproject.org> - 3.1.999-0.7.trunk.gitec1ff7.20140730
f95419
- Update to 20140730 snapshot (git rev ec1ff7)
f95419
f95419
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.999-0.6.trunk.git502c72.20140524
f95419
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
f95419
f95419
* Wed May 28 2014 Erik van Pienbroek <epienbro@fedoraproject.org> - 3.1.999-0.5.trunk.git502c72.20140524
f95419
- Update to 20140524 snapshot (git rev 502c72)
f95419
- Upstream has switched from SVN to Git
f95419
f95419
* Mon Apr  7 2014 Erik van Pienbroek <epienbro@fedoraproject.org> - 3.1.999-0.4.trunk.r6560.20140407
f95419
- Update to r6560 (20140407 snapshot)
f95419
- Fixes potential deadlock
f95419
f95419
* Mon Feb 24 2014 Erik van Pienbroek <epienbro@fedoraproject.org> - 3.1.999-0.3.trunk.r6497.20140224
f95419
- Update to r6497 (20140224 snapshot)
f95419
f95419
* Fri Jan 24 2014 Erik van Pienbroek <epienbro@fedoraproject.org> - 3.1.999-0.2.trunk.r6460.20140124
f95419
- Update to r6460 (20140124 snapshot)
f95419
f95419
* Thu Jan  9 2014 Erik van Pienbroek <epienbro@fedoraproject.org> - 3.1.999-0.1.trunk.r6432.20140104
f95419
- Bump version to keep working upgrade path
f95419
f95419
* Mon Jan  6 2014 Erik van Pienbroek <epienbro@fedoraproject.org> - 3.0.999-0.2.trunk.r6432.20140104
f95419
- Update to r6432 (20140104 snapshot)
f95419
f95419
* Wed Nov 20 2013 Erik van Pienbroek <epienbro@fedoraproject.org> - 3.0.999-0.1.trunk.r6379.20131120
f95419
- Update to r6379 (20131120 snapshot)
f95419
f95419
* Fri Sep 20 2013 Erik van Pienbroek <epienbro@fedoraproject.org> - 3.0.0-1
f95419
- Update to 3.0.0
f95419
f95419
* Sat Sep  7 2013 Erik van Pienbroek <epienbro@fedoraproject.org> - 2.0.999-0.7.trunk.r6233.20130907
f95419
- Update to r6233 (20130907)
f95419
- Fixes mingw-libvirt build failure
f95419
f95419
* Fri Aug 16 2013 Erik van Pienbroek <epienbro@fedoraproject.org> - 2.0.999-0.6.trunk.r6069.20130810
f95419
- Update to r6069 (20130810 snapshot)
f95419
f95419
* Fri Jun 28 2013 Erik van Pienbroek <epienbro@fedoraproject.org> - 2.0.999-0.5.trunk.r5915.20130628
f95419
- Update to r5915 (20130628 snapshot)
f95419
f95419
* Sat May 11 2013 Erik van Pienbroek <epienbro@fedoraproject.org> - 2.0.999-0.4.trunk.20130509
f95419
- Simplified the BuildRequires
f95419
- Added a clarification for the combined license
f95419
- Added conflicts for mingw{32,64}-headers versions which also provide pthread headers
f95419
f95419
* Thu May  9 2013 Erik van Pienbroek <epienbro@fedoraproject.org> - 2.0.999-0.3.trunk.20130509
f95419
- Added -static subpackages
f95419
- Changed license to MIT and BSD
f95419
f95419
* Thu May  9 2013 Erik van Pienbroek <epienbro@fedoraproject.org> - 2.0.999-0.2.trunk.20130509
f95419
- Update to 20130509 snapshot
f95419
- Make the testsuite optional
f95419
f95419
* Mon Apr 29 2013 Erik van Pienbroek <epienbro@fedoraproject.org> - 2.0.999-0.1.trunk.20130429
f95419
- Update to 20130429 snapshot
f95419
f95419
* Fri Feb 24 2012 Erik van Pienbroek <epienbro@fedoraproject.org> - 0-0.1.20120224
f95419
- Initial package
f95419