libsigsegv/libsigsegv.spec
2009-09-23 00:24:21 +00:00

197 lines
4.8 KiB
RPMSpec

%define multilib_arches i386 x86_64 ppc ppc64 s390 s390x sparcv9 sparc64
Summary: Library for handling page faults in user mode
Name: libsigsegv
Version: 2.6
Release: 6%{?dist}
License: GPLv2+
URL: http://libsigsegv.sourceforge.net/
Source0: http://ftp.gnu.org/gnu/libsigsegv/libsigsegv-%{version}.tar.gz
Group: System Environment/Libraries
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
#Patch1: libsigsegv-2.6-confdefs_debug.patch
## upstream patches
# based on:
# http://git.savannah.gnu.org/cgit/libsigsegv.git/patch/?id=4f14ef87b2fba9718c1a88b9ed9ca7ba111d60da
# http://git.savannah.gnu.org/cgit/libsigsegv.git/patch/?id=54b612e978e26a52b5706272dabf84ed9d895fa7
Patch100: libsigsegv-2.6-mystack.patch
Source1: sigsegv-wrapper.h
BuildRequires: automake libtool
%description
This is a library for handling page faults in user mode. A page fault
occurs when a program tries to access to a region of memory that is
currently not available. Catching and handling a page fault is a useful
technique for implementing:
- pageable virtual memory
- memory-mapped access to persistent databases
- generational garbage collectors
- stack overflow handlers
- distributed shared memory
%package devel
Summary: Development libraries and header files for %{name}
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
%description devel
%{summary}.
%package static
Summary: Static libraries for %{name}
Group: Development/Libraries
Requires: %{name}-devel = %{version}-%{release}
%description static
%{summary}.
%prep
%setup -q
%patch100 -p1 -b .mystack
autoreconf
%build
%configure \
--enable-shared \
--enable-static
make %{?_smp_mflags}
%install
rm -rf %{buildroot}
make install DESTDIR=%{buildroot}
%ifarch %{multilib_arches}
# hack to allow parallel installation on 32-bit and 64-bit
mv %{buildroot}%{_includedir}/sigsegv.h \
%{buildroot}%{_includedir}/sigsegv-%{_arch}.h
install -p -m644 %{SOURCE1} %{buildroot}%{_includedir}/sigsegv.h
%endif
rm -f %{buildroot}%{_libdir}/lib*.la
%if 0%{?fedora} > 11
pushd %{buildroot}%{_libdir}
mkdir ../../%{_lib}
mv libsigsegv.so.0* ../../%{_lib}/
ln -sf ../../%{_lib}/libsigsegv.so.0 %{buildroot}%{_libdir}/libsigsegv.so
popd
%endif
%check
make check
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%clean
rm -rf %{buildroot}
%files
%defattr(-,root,root,-)
%doc AUTHORS COPYING NEWS README
%if 0%{?fedora} > 11
/%{_lib}/libsigsegv.so.0*
%else
%{_libdir}/libsigsegv.so.0*
%endif
%files devel
%defattr(-,root,root,-)
%{_libdir}/libsigsegv.so
%{_includedir}/sigsegv.h
%ifarch %{multilib_arches}
%{_includedir}/sigsegv-%{_arch}.h
%endif
%files static
%defattr(-,root,root,-)
%{_libdir}/libsigsegv.a
%changelog
* Tue Sep 22 2009 Rex Dieter <rdieter@fedoraproject.org> - 2.6-6
- respin mystack patch
* Tue Sep 22 2009 Rex Dieter <rdieter@fedoraproject.org> - 2.6-5
- libsigsegv allocates alternate stack on the main stack (#524796)
* Sat Jul 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.6-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Thu Jul 16 2009 Rex Dieter <rdieter@fedoraproject.org> - 2.6-3
- move libsigsegv.so.* to /lib (#512219, F-12+)
- %%doc: -ChangeLog, +COPYING
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Wed Feb 18 2009 Rex Dieter <rdieter@fedoraproject.org> 2.6-1
- libsigsegv-2.6 (#486090)
* Mon Sep 29 2008 Rex Dieter <rdieter@fedoraproject.org> 2.4-7
- multilib (sparc) fixes
* Fri Feb 22 2008 Rex Dieter <rdieter@fedoraproject.org> 2.4-6
- multiarch conflicts (#342391)
- -static subpkg
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 2.4-5
- Autorebuild for GCC 4.3
* Wed Aug 22 2007 Rex Dieter <rdieter[AT]fedoraproject.org> 2.4-4
- respin (ppc32)
* Sat Aug 11 2007 Rex Dieter <rdieter[AT]fedoraproject.org> 2.4-3
- License: GPLv2+
* Tue Aug 29 2006 Rex Dieter <rexdieter[AT]users.sf.net> 2.4-2
- fc6 respin
* Thu Jul 20 2006 Rex Dieter <rexdieter[AT]users.sf.net> 2.4-1
- 2.4
* Fri Apr 28 2006 Rex Dieter <rexdieter[AT]users.sf.net> 2.3-1
- 2.3
* Wed Mar 1 2006 Rex Dieter <rexdieter[AT]users.sf.net>
- fc5: gcc/glibc respin
* Thu Oct 06 2005 Rex Dieter <rexdieter[AT]users.sf.net> - 2.2-1
- 2.2
- omit .la file(s)
- include (tiny) static lib
* Sun May 22 2005 Jeremy Katz <katzj@redhat.com> - 2.1
- rebuild on all arches
* Fri Apr 7 2005 Michael Schwendt <mschwendt[AT]users.sf.net>
- rebuilt
* Thu Jul 22 2004 Rex Dieter <rexdieter at sf.net> 0:2.1-0.fdr.2
- add URL: tag
- make check
* Mon Apr 12 2004 Rex Dieter <rexdieter at sf.net> 0:2.1-0.fdr.1
- 2.1
- cleanup macro usage
- -devel: Requires: %%name
* Thu Oct 02 2003 Rex Dieter <rexdieter at sf.net> 0:2.0-0.fdr.1
- first try.