]> git.pld-linux.org Git - packages/Collage.git/blob - Collage.spec
boost rebuild
[packages/Collage.git] / Collage.spec
1 #
2 # Conditional build:
3 %bcond_without  apidocs         # do not build and package API docs
4
5 Summary:        Cross-platform C++ network library
6 Summary(pl.UTF-8):      Wieloplatformowa biblioteka sieciowa dla C++
7 Name:           Collage
8 Version:        1.7.0
9 Release:        7
10 License:        LGPL v2.1
11 Group:          Libraries
12 #Source0Download: https://github.com/Eyescale/Collage/releases
13 Source0:        https://github.com/Eyescale/Collage/archive/%{version}/%{name}-%{version}.tar.gz
14 # Source0-md5:  f0e57c1a2f6196c11ad8ac6029483e56
15 Patch0:         boost-1.61.patch
16 Patch1:         %{name}-boost.patch
17 URL:            http://libcollage.net/
18 BuildRequires:  Lunchbox-devel >= 1.16.0
19 BuildRequires:  Eyescale-CMake >= 2017.05
20 BuildRequires:  Pression-devel >= 2.0.0
21 BuildRequires:  Servus-devel >= 1.5.1
22 BuildRequires:  boost-devel >= 1.41.0
23 BuildRequires:  cmake >= 3.1
24 %{?with_apidocs:BuildRequires:  doxygen}
25 BuildRequires:  libibverbs-devel
26 BuildRequires:  librdmacm-devel
27 BuildRequires:  libstdc++-devel
28 BuildRequires:  pkgconfig
29 BuildRequires:  rpm-build >= 4.6
30 BuildRequires:  rpmbuild(macros) >= 1.605
31 BuildRequires:  udt-devel
32 Requires:       Lunchbox >= 1.16.0
33 Requires:       Pression >= 2.0.0
34 Requires:       Servus >= 1.5.1
35 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
36
37 %description
38 Collage is a cross-platform C++ library for building heterogenous,
39 distributed applications. Among other things, it is the cluster
40 backend for the Equalizer parallel rendering framework. Collage
41 provides an abstraction of different network connections, peer-to-peer
42 messaging, node discovery, synchronization and high-performance,
43 object-oriented, versioned data distribution. Collage is designed for
44 low-overhead multi-threaded execution which allows applications to
45 easily exploit multi-core architectures.
46
47 %description -l pl.UTF-8
48 Collage to wieloplatformowa biblioteka C++ do tworzenia
49 heterogenicznych, rozproszonych aplikacji. Jest to między innymi
50 backend klastrowy dla szkieletu równoległego renderowania Equalizer.
51 Zapewnia abstrakcję różnych połączeń sieciowych, przesyłania
52 komunikatów między węzłami, wykrywanie węzłów, synchronizację oraz
53 wydajne, zorientowane obiektowo i wersjonowane rozproszenie danych.
54 Collage został zaprojektowany pod kątem lekkiej wielowątkowości, co
55 pozwala aplikacjom łatwo wykorzystywać architektury wielordzeniowe.
56
57 %package devel
58 Summary:        Header files for Collage library
59 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki Collage
60 Group:          Development/Libraries
61 Requires:       %{name} = %{version}-%{release}
62 Requires:       Lunchbox-devel >= 1.16.0
63 Requires:       Pression-devel >= 2.0.0
64 Requires:       Servus-devel >= 1.5.1
65 Requires:       boost-devel >= 1.41.0
66
67 %description devel
68 Header files for Collage library.
69
70 %description devel -l pl.UTF-8
71 Pliki nagłówkowe biblioteki Collage.
72
73 %package apidocs
74 Summary:        Collage API documentation
75 Summary(pl.UTF-8):      Dokumentacja API biblioteki Collage
76 Group:          Documentation
77 BuildArch:      noarch
78
79 %description apidocs
80 API documentation for Collage library.
81
82 %description apidocs -l pl.UTF-8
83 Dokumentacja API biblioteki Collage.
84
85 %prep
86 %setup -q
87 %patch0 -p1
88 %patch1 -p1
89
90 rmdir CMake/common
91 ln -s %{_datadir}/Eyescale-CMake CMake/common
92
93 %build
94 install -d build
95 cd build
96 %cmake .. \
97         -DBUILDYARD_DISABLED=ON \
98         -DCOMMON_DISABLE_WERROR=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}/Collage/{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 LICENSE.txt README.md doc/{README.IB,README.udt} doc/Changelog.md
122 %attr(755,root,root) %{_bindir}/coNetperf
123 %attr(755,root,root) %{_bindir}/coNodeperf
124 %attr(755,root,root) %{_bindir}/coObjectperf
125 %attr(755,root,root) %{_libdir}/libCollage.so.*.*.*
126 %attr(755,root,root) %ghost %{_libdir}/libCollage.so.7
127
128 %files devel
129 %defattr(644,root,root,755)
130 %attr(755,root,root) %{_libdir}/libCollage.so
131 %{_includedir}/co
132 %dir %{_datadir}/Collage
133 %{_datadir}/Collage/CMake
134
135 %if %{with apidocs}
136 %files apidocs
137 %defattr(644,root,root,755)
138 %doc build/doc/html/*
139 %endif
This page took 0.072603 seconds and 4 git commands to generate.