3 %bcond_without apidocs # do not build and package API docs
4 %bcond_with mpi # MPI support
5 %bcond_with skv # SKV (Scalable Key-Value Store) support
7 Summary: Lunchbox - C++ library for multi-threading programming
8 Summary(pl.UTF-8): Lunchbox - biblioteka C++ do programowania wielowątkowego
14 Source0: https://github.com/Eyescale/Lunchbox/archive/%{version}/%{name}-%{version}.tar.gz
15 # Source0-md5: 5d36a9eb706ab65572fd208574c187a2
17 URL: http://pogl.wordpress.com/category/lunchbox/
18 BuildRequires: Eyescale-CMake >= 2016.04
19 BuildRequires: Servus-devel >= 1.5.0
20 BuildRequires: avahi-devel
21 BuildRequires: boost-devel >= 1.41.0
22 BuildRequires: cmake >= 2.8
23 %{?with_apidocs:BuildRequires: doxygen}
24 BuildRequires: gcc-c++ >= 6:4.2
25 BuildRequires: hwloc-devel >= 1.3
26 BuildRequires: leveldb-devel
27 BuildRequires: libgomp-devel
28 BuildRequires: libjpeg-turbo-devel >= 1.2.1
29 BuildRequires: libstdc++-devel
30 %{?with_mpi:BuildRequires: mpi-devel}
31 BuildRequires: pkgconfig
32 %{?with_skv:BuildRequires: skv-devel}
33 Requires: hwloc-libs >= 1.3
34 Requires: libjpeg-turbo >= 1.2.1
35 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
38 Lunchbox is a C++ library for multi-threaded programming. Lunchbox was
39 formerly known as eq::base or co::base, the foundation for the
40 Equalizer parallel rendering framework and the Collage network
41 library. It is intended for all application developers creating
42 high-performance multi-threaded programs.
44 %description -l pl.UTF-8
45 Lunchbox to biblioteka C++ do programowania wielowątkowego. Wcześniej
46 była znana jako eq::base lub co::base - podstawa szkieletu do
47 renderowania wielowątkowego Equalizer lub biblioteki sieciowej
48 Collage. Biblioteka jest przeznaczona dla wszystkich programistów
49 tworzących wysoko wydajne, wielowątkowe aplikacje.
52 Summary: Header files for Lunchbox library
53 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki Lunchbox
54 Group: Development/Libraries
55 Requires: %{name} = %{version}-%{release}
56 Requires: boost-devel >= 1.41.0
57 Requires: libgomp-devel
58 Requires: libstdc++-devel
61 Header files for Lunchbox library.
63 %description devel -l pl.UTF-8
64 Pliki nagłówkowe biblioteki Lunchbox.
67 Summary: Lunchbox API documentation
68 Summary(pl.UTF-8): Dokumentacja API biblioteki Lunchbox
70 %if "%{_rpmversion}" >= "5"
75 API documentation for Lunchbox library.
77 %description apidocs -l pl.UTF-8
78 Dokumentacja API biblioteki Lunchbox.
83 ln -s %{_datadir}/Eyescale-CMake CMake/common
92 -DBUILDYARD_DISABLED=ON \
93 %{!?with_mpi:-DCMAKE_DISABLE_FIND_PACKAGE_MPI=ON} \
94 %{!?with_skv:-DCMAKE_DISABLE_FIND_PACKAGE_skv=ON}
102 rm -rf $RPM_BUILD_ROOT
104 %{__make} -C build install \
105 DESTDIR=$RPM_BUILD_ROOT
107 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/Lunchbox/{doc,tests}
110 rm -rf $RPM_BUILD_ROOT
112 %post -p /sbin/ldconfig
113 %postun -p /sbin/ldconfig
116 %defattr(644,root,root,755)
117 %doc ACKNOWLEDGEMENTS.txt AUTHORS.txt CHANGES.txt LICENSE.txt README.md doc/Changelog.md
118 %attr(755,root,root) %{_libdir}/libLunchbox.so.*.*.*
119 %attr(755,root,root) %ghost %{_libdir}/libLunchbox.so.8
122 %defattr(644,root,root,755)
123 %attr(755,root,root) %{_libdir}/libLunchbox.so
124 %{_includedir}/lunchbox
125 %dir %{_datadir}/Lunchbox
126 %{_datadir}/Lunchbox/CMake
130 %defattr(644,root,root,755)
131 %doc build/doc/html/*