]> git.pld-linux.org Git - packages/Lunchbox.git/blob - Lunchbox.spec
- fix building with modern g++
[packages/Lunchbox.git] / Lunchbox.spec
1 #
2 # Conditional build:
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
6
7 Summary:        Lunchbox - C++ library for multi-threading programming
8 Summary(pl.UTF-8):      Lunchbox - biblioteka C++ do programowania wielowątkowego
9 Name:           Lunchbox
10 Version:        1.10.0
11 Release:        7
12 License:        LGPL v2.1
13 Group:          Libraries
14 Source0:        https://github.com/Eyescale/Lunchbox/archive/%{version}/%{name}-%{version}.tar.gz
15 # Source0-md5:  3e01c3a2ddeeb7b3682e88092831d5a5
16 Source1:        https://github.com/Eyescale/CMake/archive/139ce7d/Eyescale-CMake-139ce7d.tar.gz
17 # Source1-md5:  4a6abcd9e0fc417528a8ca68a97e65eb
18 Patch0:         disable-broken-cmakefiles.patch
19 Patch1:         boost-1.57.0.patch
20 Patch2:         cxx.patch
21 URL:            http://pogl.wordpress.com/category/lunchbox/
22 BuildRequires:  avahi-devel
23 BuildRequires:  boost-devel >= 1.41.0
24 BuildRequires:  cmake >= 2.8
25 %{?with_apidocs:BuildRequires:  doxygen}
26 BuildRequires:  gcc-c++ >= 6:4.2
27 BuildRequires:  hwloc-devel >= 1.3
28 BuildRequires:  leveldb-devel
29 BuildRequires:  libgomp-devel
30 BuildRequires:  libjpeg-turbo-devel >= 1.2.1
31 BuildRequires:  libstdc++-devel
32 %{?with_mpi:BuildRequires:      mpi-devel}
33 BuildRequires:  pkgconfig
34 %{?with_skv:BuildRequires:      skv-devel}
35 Requires:       hwloc-libs >= 1.3
36 Requires:       libjpeg-turbo >= 1.2.1
37 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
38
39 %description
40 Lunchbox is a C++ library for multi-threaded programming. Lunchbox was
41 formerly known as eq::base or co::base, the foundation for the
42 Equalizer parallel rendering framework and the Collage network
43 library. It is intended for all application developers creating
44 high-performance multi-threaded programs.
45
46 %description -l pl.UTF-8
47 Lunchbox to biblioteka C++ do programowania wielowątkowego. Wcześniej
48 była znana jako eq::base lub co::base - podstawa szkieletu do
49 renderowania wielowątkowego Equalizer lub biblioteki sieciowej
50 Collage. Biblioteka jest przeznaczona dla wszystkich programistów
51 tworzących wysoko wydajne, wielowątkowe aplikacje.
52
53 %package devel
54 Summary:        Header files for Lunchbox library
55 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki Lunchbox
56 Group:          Development/Libraries
57 Requires:       %{name} = %{version}-%{release}
58 Requires:       boost-devel >= 1.41.0
59 Requires:       libgomp-devel
60 Requires:       libstdc++-devel
61
62 %description devel
63 Header files for Lunchbox library.
64
65 %description devel -l pl.UTF-8
66 Pliki nagłówkowe biblioteki Lunchbox.
67
68 %package apidocs
69 Summary:        Lunchbox API documentation
70 Summary(pl.UTF-8):      Dokumentacja API biblioteki Lunchbox
71 Group:          Documentation
72 %if "%{_rpmversion}" >= "5"
73 BuildArch:      noarch
74 %endif
75
76 %description apidocs
77 API documentation for Lunchbox library.
78
79 %description apidocs -l pl.UTF-8
80 Dokumentacja API biblioteki Lunchbox.
81
82 %prep
83 %setup -q -a1
84
85 %{__mv} CMake-* CMake/common
86 %{__rm} .gitexternals
87
88 %patch0 -p1
89 %patch1 -p1
90 %patch2 -p1
91
92 %build
93 install -d build
94 cd build
95 %cmake .. \
96         -DBUILDYARD_DISABLED=ON \
97         %{!?with_mpi:-DCMAKE_DISABLE_FIND_PACKAGE_MPI=ON} \
98         %{!?with_skv:-DCMAKE_DISABLE_FIND_PACKAGE_skv=ON}
99 %{__make}
100
101 %if %{with apidocs}
102 doxygen doc/Doxyfile
103 %endif
104
105 %install
106 rm -rf $RPM_BUILD_ROOT
107
108 %{__make} -C build install \
109         DESTDIR=$RPM_BUILD_ROOT
110
111 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/Lunchbox/{doc,tests}
112
113 %clean
114 rm -rf $RPM_BUILD_ROOT
115
116 %post   -p /sbin/ldconfig
117 %postun -p /sbin/ldconfig
118
119 %files
120 %defattr(644,root,root,755)
121 %doc ACKNOWLEDGEMENTS.txt AUTHORS.txt CHANGES.txt LICENSE.txt README.md doc/RelNotes.md
122 %attr(755,root,root) %{_libdir}/libLunchbox.so.*.*.*
123 %attr(755,root,root) %ghost %{_libdir}/libLunchbox.so.3
124
125 %files devel
126 %defattr(644,root,root,755)
127 %attr(755,root,root) %{_libdir}/libLunchbox.so
128 %{_includedir}/lunchbox
129 %{_pkgconfigdir}/Lunchbox.pc
130 %dir %{_datadir}/Lunchbox
131 %{_datadir}/Lunchbox/CMake
132
133 %if %{with apidocs}
134 %files apidocs
135 %defattr(644,root,root,755)
136 %doc build/doc/html/*
137 %endif
This page took 0.0309 seconds and 3 git commands to generate.