%define major 20 %define libname %mklibname %{name} %{major} %define develname %mklibname %{name} -d # on arm, no getcontext/swapcontext & co so libpth # falls back to longjmp. Unfortunately, the tricks used here # are now making FORTIFY unhappy on newer glibc # Given that there was no new pth since 2006, until glibc on # arm has getcontext stuff, it's (kind of) better to disable # FORTIFY %ifarch %arm %define _fortify_cflags %{nil} %endif Summary: GNU Pth - GNU Portable Threads Name: pth Version: 2.0.7 Release: %mkrel 10 License: LGPLv2+ Group: System/Libraries URL: http://www.gnu.org/software/pth/ Source0: ftp://ftp.gnu.org/pub/gnu/pth/%{name}-%{version}.tar.gz Source1: ftp://ftp.gnu.org/pub/gnu/pth/%{name}-%{version}.tar.gz.sig Patch1: %{name}-2.0.0-pth-config.in.patch %description Pth is a very portable POSIX/ANSI-C based library for Unix platforms which provides non-preemptive priority-based scheduling for multiple threads of execution ("multithreading") inside server applications. All threads run in the same address space of the server application, but each thread has it's own individual program-counter, run-time stack, signal mask and errno variable. %package -n %{libname} Summary: GNU Pth - GNU Portable Threads Group: System/Libraries %description -n %{libname} Pth is a very portable POSIX/ANSI-C based library for Unix platforms which provides non-preemptive priority-based scheduling for multiple threads of execution ("multithreading") inside server applications. All threads run in the same address space of the server application, but each thread has it's own individual program-counter, run-time stack, signal mask and errno variable. This package provides the main %{name} library. %package -n %{develname} Summary: GNU Pth - GNU Portable Threads (Headers and Static Libs) Group: Development/C Requires: %{libname} = %{version} Provides: %{name}-devel = %{version}-%{release} Provides: lib%{name}-devel = %{version}-%{release} Obsoletes: %mklibname %{name} 20 -d Provides: %mklibname %{name} 20 -d %description -n %{develname} Pth is a very portable POSIX/ANSI-C based library for Unix platforms. This package provides all necessary files to develop or compile any applications or libraries that use %{name} library. %prep %setup -q %patch1 -p1 -b .cflags-ldflags %build %configure2_5x --disable-static \ --enable-optimize=yes \ --enable-pthread=no # (tpg) without this parallel make fails %make pth_p.h %make %check make test %install %makeinstall_std find %{buildroot} -name '*.la' -delete %multiarch_binaries %{buildroot}%{_bindir}/pth-config %files -n %{libname} %{_libdir}/lib*.so.%{major}* %files -n %{develname} %doc AUTHORS ChangeLog NEWS PORTING README THANKS %{_bindir}/pth-config %multiarch %{multiarch_bindir}/pth-config %{_datadir}/aclocal/*.m4 %{_includedir}/* %{_libdir}/lib*.so %{_mandir}/man?/* %changelog * Sun Jan 13 2013 umeabot <umeabot> 2.0.7-10.mga3 + Revision: 378288 - Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild * Thu Dec 15 2011 fwang <fwang> 2.0.7-9.mga2 + Revision: 181707 - drop .la files + rtp <rtp> - disable FORTIFY on arm because it now conflicts with the tricks used on arm for threading. It's arm specific as there's no getcontext in arm glibc (if getcontext() available pth doesn't use the longjmp tricks). * Sat Jan 08 2011 blino <blino> 2.0.7-8.mga1 + Revision: 470 - remove obsolete stuff - imported package pth