#
%global mydocs __tmp_docdir
# Build -python subpackage
%bcond_without python
%if %{with python}
%if 0%{?rhel} && 0%{?rhel} <= 6
%{!?__python2: %global __python2 /usr/bin/python2}
%{!?python2_sitelib: %global python2_sitelib %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
%{!?python2_sitearch: %global python2_sitearch %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
%endif
# See also http://fedoraproject.org/wiki/Packaging:AutoProvidesAndRequiresFiltering#Private_Libraries
%global _privatelibs libpy%{name}[.]so.*
%global __provides_exclude ^(%{_privatelibs})$
%global __requires_exclude ^(%{_privatelibs})$
%endif
#
Name: trademgen
Version: 1.00.2
Release: 1%{?dist}
Summary: C++ Simulated Travel Demand Generation Library
Group: System Environment/Libraries
License: LGPLv2+
URL: http://sourceforge.net/projects/%{name}/
Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.bz2
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
BuildRequires: cmake, python2-devel
BuildRequires: boost-devel, soci-mysql-devel, soci-sqlite3-devel
BuildRequires: readline-devel
BuildRequires: stdair-devel, sevmgr-devel
%description
%{name} aims at providing a clean API, and the corresponding C++
implementation, able to generate demand for travel solutions (e.g.,
from JFK to PEK on 25-05-2009) according to characteristics (e.g.,
Willingness-To-Pay, preferred airline, etc).
%{name} makes an extensive use of existing open-source libraries for
increased functionality, speed and accuracy. In particular the
Boost (C++ Standard Extensions: http://www.boost.org) library is used.
Install the %{name} package if you need a library of basic C++ objects
for travel-related demand generation, mainly for simulation purpose.
%package devel
Summary: Header files, libraries and development helper tools for %{name}
Group: Development/Libraries
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: pkgconfig
%description devel
This package contains the header files, shared libraries and
development helper tools for %{name}. If you would like to develop
programs using %{name}, you will need to install %{name}-devel.
%package doc
Summary: HTML documentation for the %{name} library
Group: Documentation
%if 0%{?fedora} || 0%{?rhel} > 5
BuildArch: noarch
%endif
BuildRequires: tex(latex)
BuildRequires: doxygen, ghostscript
%description doc
This package contains HTML pages, as well as a PDF reference manual,
for %{name}. All that documentation is generated thanks to Doxygen
(http://doxygen.org). The content is the same as what can be browsed
online (http://%{name}.org).
%if %{with python}
%package python
Summary: Python bindings for %{name}
Group: Development/Languages
Requires: %{name}%{?_isa} = %{version}-%{release}
BuildRequires: python-devel
BuildRequires: python-setuptools
%description python
This package contains Python libraries for %{name}
%endif
%prep
%setup -q
%build
%cmake .
make %{?_smp_mflags}
%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
# Remove extra libraries, which are generated only for the tests
rm -f $RPM_BUILD_ROOT%{_libdir}/libsequential_generation*.so*
#
mkdir -p %{mydocs}
mv $RPM_BUILD_ROOT%{_docdir}/%{name}/html %{mydocs}
rm -f %{mydocs}/html/installdox
# Remove additional documentation files (those files are already available
# in the project top directory)
rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}/{NEWS,README,AUTHORS}
%if %{with python}
# (Pure) Python TraDemGen executable
install -d $RPM_BUILD_ROOT%{python2_sitearch}/libpy%{name}
install -pm 0755 $RPM_BUILD_ROOT%{_bindir}/py%{name} $RPM_BUILD_ROOT%{python2_sitearch}/libpy%{name}/
install -pm 0755 $RPM_BUILD_ROOT%{_bindir}/%{name}_drawBookingArrivals $RPM_BUILD_ROOT%{python2_sitearch}/libpy%{name}/
rm -f $RPM_BUILD_ROOT%{_bindir}/py%{name} $RPM_BUILD_ROOT%{_bindir}/%{name}_drawBookingArrivals
%endif
%check
#ctest
%clean
rm -rf $RPM_BUILD_ROOT
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%defattr(-,root,root,-)
%doc AUTHORS ChangeLog COPYING NEWS README
%{_bindir}/%{name}
%{_bindir}/%{name}_with_db
%{_bindir}/%{name}_generateDemand
%{_bindir}/%{name}_extractBookingRequests
%{_libdir}/lib%{name}.so.*
%{_mandir}/man1/%{name}.1.*
%{_mandir}/man1/%{name}_with_db.1.*
%{_mandir}/man1/%{name}_generateDemand.1.*
%{_mandir}/man1/%{name}_extractBookingRequests.1.*
%files devel
%defattr(-,root,root,-)
%{_includedir}/%{name}
%{_bindir}/%{name}-config
%{_libdir}/lib%{name}.so
%{_libdir}/pkgconfig/%{name}.pc
%{_datadir}/aclocal/%{name}.m4
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/CMake
%{_mandir}/man1/%{name}-config.1.*
%{_mandir}/man3/%{name}-library.3.*
%files doc
%defattr(-,root,root,-)
%doc %{mydocs}/html
%doc COPYING
%if %{with python}
%files python
%{python2_sitearch}/libpy%{name}/
%{_mandir}/man1/py%{name}.1.*
%{_mandir}/man1/%{name}_drawBookingArrivals.1.*
%endif
%changelog
* Sat Jun 27 2015 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 1.00.2-1
- Upstream update
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.00.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Sun Jun 07 2015 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 1.00.1-1
- Removed the dependency on ZeroMQ (only AirInv is dependent on it, not StdAir)
* Sun May 03 2015 Kalev Lember <kalevlember@gmail.com> - 1.00.0-13
- Rebuilt for GCC 5 C++11 ABI change
* Tue Feb 10 2015 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 1.00.0-12
- For some reason, the tests now fail. De-activated them.
Will open a bug upstream.
* Thu Jan 29 2015 Petr Machata <pmachata@redhat.com> - 1.00.0-11
- Rebuild for boost 1.57.0
- Cmake should look for zmq.h, not zmq.hpp (stdair-1.00.1-cmake.patch)
* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.00.0-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.00.0-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Sun May 25 2014 Petr Machata <pmachata@redhat.com> - 1.00.0-8
- Rebuild for boost 1.55.0
* Fri May 23 2014 David Tardon <dtardon@redhat.com> - 1.00.0-7
- rebuild for boost 1.55.0
* Tue Jul 30 2013 Petr Machata <pmachata@redhat.com> - 1.00.0-6
- Rebuild for boost 1.54.0
* Mon Jul 29 2013 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 1.00.0-5
- Fixed the docdir issue, following the F20 System Wide Change
* Sat Jul 27 2013 Ville Skyttä <ville.skytta@iki.fi> - 1.00.0-4
- Fix build when %%doc dir is not versioned.
* Wed May 22 2013 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 1.00.0-3
- Rebuild for Soci-3.2.1
* Sat Feb 09 2013 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 1.00.0-2
- Rebuild for Boost-1.53.0
* Sun Dec 23 2012 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 1.00.0-1
- Upstream update
* Mon Aug 13 2012 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 0.2.2-5
- Rebuilt for new Boost 1.50.0.
* Sun Jul 22 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Tue Feb 28 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.2-3
- Rebuilt for c++ ABI breakage
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Mon Dec 12 2011 Denis Arnaud <denis.arnaud_fedora@m4x.org> 0.2.2-1
- Upstream update. Took into account feedback from #728815.
* Mon Dec 05 2011 Denis Arnaud <denis.arnaud_fedora@m4x.org> 0.2.1-1
- Upstream update
* Fri Aug 19 2011 Denis Arnaud <denis.arnaud_fedora@m4x.org> 0.1.0-2
- Added (BR) missing packages needed by a mock build
* Sun Aug 07 2011 Denis Arnaud <denis.arnaud_fedora@m4x.org> 0.1.0-1
- First package