libev/libev.spec
Mathieu Bridon 160ea6a793 Get the package closer to what upstream intended
We used to move the header files in /usr/include/libev, whereas upstream
(and other distributions) put them in /usr/include.

This was confusing users of the library, who had to either come up with
clever tricks to build on Fedora (often as downstream changes to the
packages in Fedora) or worse, depend on the Fedora-only changes, so that
the software would not build anywhere else.

However, this means that the /usr/include/event.h file (which we used to
put in /usr/include/libev/event.h) now conflicts with the one from
libevent-devel.

To avoid making libev-devel conflict with libevent-devel (which would be
pretty terrible for users of both libraries, like the libverto
developers for example), this commit introduces a new
libev-libevent-devel subpackage just to contain this one header file, so
that only this subpackage conflicts with libevent-devel.

Given that the point of libev's event.h was to be a compatibility header
with libevent, this actually makes it easier for users to rely on it.

Finally, the pkgconfig file becomes completely unnecessary. As it was a
Fedora-specific change that libev upstream rejected several times when
it was proposed to them, this commit also drops it.

All in all, this should remove user confusion over the Fedora libev
package, and stop various upstreams from depending on Fedora-specific
changes.

Note that this should really not be pushed in Fedora <= 20 at this time,
but only to Rawhide.
2013-11-26 13:24:30 +08:00

215 lines
6.1 KiB
RPMSpec

%global source_dir %{_datadir}/%{name}-source
%global inst_srcdir %{buildroot}/%{source_dir}
Name: libev
Summary: High-performance event loop/event model with lots of features
Version: 4.15
Release: 3%{?dist}
License: BSD or GPLv2+
URL: http://software.schmorp.de/pkg/libev.html
Source0: http://dist.schmorp.de/libev/Attic/%{name}-%{version}.tar.gz
BuildRequires: autoconf automake libtool
Patch0: libev-4.15-Modernize-the-configure.ac.patch
Patch1: libev-4.15-Respect-the-CFLAGS-if-defined.patch
%description
Libev is modeled (very loosely) after libevent and the Event Perl
module, but is faster, scales better and is more correct, and also more
featureful. And also smaller.
%package devel
Summary: Development headers for libev
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
This package contains the development headers and libraries for libev.
%package libevent-devel
Summary: Compatibility development header with libevent for %{name}.
Requires: %{name}-devel%{?_isa} = %{version}-%{release}
# The event.h file actually conflicts with the one from libevent-devel
Conflicts: libevent-devel
%description libevent-devel
This package contains a development header to make libev compatible with
libevent.
%package source
Summary: High-performance event loop/event model with lots of features
%if 0%{?fedora} >= 12 || 0%{?rhel} > 5
BuildArch: noarch
%endif
%description source
This package contains the source code for libev.
%prep
%setup -q
%patch0 -p1
%patch1 -p1
autoreconf -i
%build
%configure --disable-static --with-pic
make %{?_smp_mflags}
%check
make check
%install
make install DESTDIR=%{buildroot} INSTALL="install -p"
rm -rf %{buildroot}%{_libdir}/%{name}.la
# Make the source package
mkdir -p %{inst_srcdir}
find . -type f | grep -E '.*\.(c|h|am|ac|inc|m4|h.in|man.pre|pl|txt)$' | xargs tar cf - | (cd %{inst_srcdir} && tar xf -)
install -p -m 0644 Changes ev.pod LICENSE README %{inst_srcdir}
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%doc Changes LICENSE README
%{_libdir}/%{name}.so.4
%{_libdir}/%{name}.so.4.0.0
%files devel
%{_includedir}/ev++.h
%{_includedir}/ev.h
%{_libdir}/%{name}.so
%{_mandir}/man?/*
%files libevent-devel
%{_includedir}/event.h
%files source
%{source_dir}
%changelog
* Tue Nov 26 2013 Mathieu Bridon <bochecha@fedoraproject.org> - 4.15-3
- Get the package closer to what upstream intended:
- Do not move the headers into a subfolder of /usr/include
- Make a libev-libevent-devel subpackage to contain the libevent
compatibility header, so that only this subpackage conflicts with
libevent-devel, not all of libev-devel
- Drop the pkgconfig file, as upstream rejected it several times already.
* Sun Sep 8 2013 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 4.15-2
- Bump (koji was broken)
* Sun Sep 8 2013 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 4.15-1
- Update to 4.15 (rhbz 987489)
- Fix dates in spec
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.11-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Fri Feb 08 2013 Mathieu Bridon <bochecha@fedoraproject.org> - 4.11-2
- Make a patch out of Michal's pkgconfig support.
- Modernize the configure.ac file for Automake >= 1.13.
- Respect the Fedora CFLAGS
https://bugzilla.redhat.com/show_bug.cgi?id=908096
* Fri Sep 28 2012 Mathieu Bridon <bochecha@fedoraproject.org> - 4.11-1
- Update to 4.11
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.04-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.04-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Tue Aug 9 2011 Tom Callaway <spot@fedoraproject.org> - 4.04-1
- move man page
- cleanup spec
- update to 4.04
* Mon Jun 13 2011 Matěj Cepl <mcepl@redhat.com> - 4.03-2
- EL5 cannot have noarch subpackages.
* Sat Feb 5 2011 Michal Nowak <mnowak@redhat.com> - 4.03-1
- 4.03; RHBZ#674022
- add a -source subpackage (Mathieu Bridon); RHBZ#672153
* Mon Jan 10 2011 Michal Nowak <mnowak@redhat.com> - 4.01-1
- 4.01
- fix grammar in %%description
* Sat Jan 2 2010 Michal Nowak <mnowak@redhat.com> - 3.90-1
- 3.9
* Mon Aug 10 2009 Michal Nowak <mnowak@redhat.com> - 3.80-1
- 3.8
- always use the most recent automake
- BuildRequires now libtool
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.70-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Fri Jul 17 2009 Michal Nowak <mnowak@redhat.com> - 3.70-2
- spec file change, which prevented uploading most recent tarball
so the RPM was "3.70" but tarball was from 3.60
* Fri Jul 17 2009 Michal Nowak <mnowak@redhat.com> - 3.70-1
- v3.7
- list libev soname explicitly
* Mon Jun 29 2009 Michal Nowak <mnowak@redhat.com> - 3.60-1
- previous version was called "3.6" but this is broken update
path wrt version "3.53" -- thus bumping to "3.60"
* Thu Apr 30 2009 Michal Nowak <mnowak@redhat.com> - 3.6-1
- 3.60
- fixed few mixed-use-of-spaces-and-tabs warnings in spec file
* Thu Mar 19 2009 Michal Nowak <mnowak@redhat.com> - 3.53-1
- 3.53
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.52-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Wed Jan 07 2009 Michal Nowak <mnowak@redhat.com> - 3.52-1
- 3.52
* Wed Dec 24 2008 Michal Nowak <mnowak@redhat.com> - 3.51-1
- 3.51
* Thu Nov 20 2008 Michal Nowak <mnowak@redhat.com> - 3.49-1
- version bump: 3.49
* Sun Nov 9 2008 Michal Nowak <mnowak@redhat.com> - 3.48-1
- version bump: 3.48
* Mon Oct 6 2008 kwizart <kwizart at gmail.com> - 3.44-1
- bump to 3.44
* Tue Sep 2 2008 kwizart <kwizart at gmail.com> - 3.43-4
- Fix pkgconfig support
* Tue Aug 12 2008 Michal Nowak <mnowak@redhat.com> - 3.43-2
- removed libev.a
- installing with "-p"
- event.h is removed intentionaly, because is there only for
backward compatibility with libevent
* Mon Aug 04 2008 Michal Nowak <mnowak@redhat.com> - 3.43-1
- initial package