%define build_compat32 %{?_with_compat32:1}%{!?_with_compat32:0}

Name: libtevent
Summary: The tevent library
Summary(ja): Tevent ライブラリ
Version: 0.9.37
Release: 1%{?_dist_release}
Group: System Environment/Libraries
License: LGPLv3+
URL: http://tevent.samba.org/
Source: http://samba.org/ftp/tevent/tevent-%{version}.tar.gz
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)

Patch1: tevent-098-add_abi_scripts_and_fix_exports.patch

BuildRequires: libtalloc-devel >= 2.0.0
BuildRequires: python-devel python-rpm-macros
BuildRequires: python3-devel python3-rpm-macros
BuildRequires: python-talloc-devel
BuildRequires: python3-talloc-devel

Vendor: Project Vine
Distribution: Vine Linux
Packager: tomop

%description
Tevent is an event system based on the talloc memory management library.
Tevent has support for many event types, including timers, signals, and
the classic file descriptor events.
Tevent also provide helpers to deal with asynchronous code providing the
tevent_req (Tevent Request) functions.

%package devel
Summary: Developer tools for the Tevent library
Summary(ja): Tevent ライブラリの開発用ファイル
Group: Development/Libraries
Requires: libtevent = %{version}-%{release}
Requires: libtalloc-devel >= 2.0.0
Requires: pkgconfig

%description devel
Header files needed to develop programs that link against the Tevent library.

%package -n python-tevent
Summary: Python bindings for the Tevent library
Summary(ja): Tevent ライブラリの python バインディング
Group: System Environment/Libraries
Requires: libtevent = %{version}-%{release}
Requires: python-talloc >= 2.0.0
Requires: pkgconfig

%description -n python-tevent
Python bindings for libtevent

%package -n python3-tevent
Summary: Python3 bindings for the Tevent library
Summary(ja): Tevent ライブラリの python3 バインディング
Group: System Environment/Libraries
Requires: libtevent = %{version}-%{release}
Requires: python3-talloc >= 2.0.0
Requires: pkgconfig

%description -n python3-tevent
Python3 bindings for libtevent

%if %{build_compat32}

%package -n compat32-%{name}
Summary: The tevent library
Summary(ja): Tevent ライブラリ
Group: System Environment/Libraries

%description -n compat32-%{name}
Tevent is an event system based on the talloc memory management library.
Tevent has support for many event types, including timers, signals, and
the classic file descriptor events.
Tevent also provide helpers to deal with asynchronous code providing the
tevent_req (Tevent Request) functions.

%endif

%prep
%setup -q -n tevent-%{version}

%build
%configure
%configure --disable-rpath \
	--bundled-libraries=NONE \
	--builtin-libraries=replace \
	--extra-python=%{__python3}

make %{?_smp_mflags} V=1

%check
make %{?_smp_mflags} check

%install
rm -rf $RPM_BUILD_ROOT

make install DESTDIR=$RPM_BUILD_ROOT

#ln -s libtevent.so.%{version} $RPM_BUILD_ROOT%{_libdir}/libtevent.so.0
#ln -s libtevent.so.%{version} $RPM_BUILD_ROOT%{_libdir}/libtevent.so

rm -f $RPM_BUILD_ROOT%{_libdir}/libtevent.a

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-,root,root,-)
%{_libdir}/libtevent.so.*

%files devel
%defattr(-,root,root,-)
%{_includedir}/tevent.h
%{_libdir}/libtevent.so
%{_libdir}/pkgconfig/tevent.pc

%files -n python-tevent
%{python_sitearch}/_tevent.so
%{python_sitearch}/tevent.py

%files -n python3-tevent
%{python3_sitearch}/tevent.py
%{python3_sitearch}/_tevent.cpython*.so

%if %{build_compat32}

%files -n compat32-%{name}
%defattr(-,root,root,-)
%{_libdir}/libtevent.so.*

%endif

%post
/sbin/ldconfig

%postun
/sbin/ldconfig

%if %build_compat32

%post -n compat32-%{name}
/sbin/ldconfig

%postun -n compat32-%{name}
/sbin/ldconfig

%endif

%changelog
* Fri Nov 30 2018 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.37-1
- new upstream release.

* Tue Feb 27 2018 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.36-1
- new upstream release.
- dropped Patch1.
- enabled python3 modules.

* Sat Jul 15 2017 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.32-1
- new upstream release.

* Sun Dec 11 2016 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.31-1
- new upstream release.

* Wed Feb 24 2016 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.28-1
- new upstream release.

* Wed Dec  2 2015 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.26-1
- new upstream release.

* Sat Jun 13 2015 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.25-1
- new upstream release.

* Thu Apr 16 2015 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.24-2
- added compat32 package.

* Fri Mar  6 2015 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.24-1
- new upstream release.

* Wed Dec  3 2014 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.22-1
- new upstream release.

* Mon Oct  6 2014 Ryoichi INAGAKI <ryo1@toki.waseda.jp> 0.9.21-2
- moved libtevent to System Environment/Libraries Group

* Tue Aug 19 2014 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.21-1
- new upstream release.

* Wed Jan 08 2014 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.20-1
- new upstream release.

* Tue Oct 08 2013 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.19-1
- new upstream release.

* Mon Dec 17 2012 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.17-1
- new upstream release.
- initial build for Vine Linux.

* Fri May 21 2010 Stephen Gallagher <sgallagh@redhat.com> - 0.9.8-8
- Run make check during RPM build
- Fix abi_check patch to guarantee script executability

* Wed Feb 24 2010 Stephen Gallagher <sgallagh@redhat.com> - 0.9.8-7.1
- Remove all references to ABI compatibility patch

* Wed Feb 24 2010 Stephen Gallagher <sgallagh@redhat.com> - 0.9.8-7
- Drop ABI compatibility patch (no longer needed)

* Wed Sep 23 2009 Simo Sorce <ssorce@redhat.com> - 0.9.8-5
- Add patch to fix a segfault case

* Wed Sep 16 2009 Simo Sorce <ssorce@redhat.com> - 0.9.8-2
- Fix abi compatibility with 0.9.3

* Tue Sep 8 2009 Simo Sorce <ssorce@redhat.com> - 0.9.8-1
- First independent release for tevent 0.9.8