]>
Commit | Line | Data |
---|---|---|
c6874538 | 1 | # |
bde731a5 | 2 | # TODO: |
09e2803f PS |
3 | # - think about building MPI. |
4 | # - split shared libs from core package into -iostreams/-serialization. | |
bde731a5 | 5 | # |
c6874538 | 6 | # Conditional build: |
1b90837b JB |
7 | %bcond_without python2 # boost-python[2] support |
8 | %bcond_without python3 # boost-python3 support | |
9 | %bcond_without numpy # boost-numpy support | |
6d61ae01 | 10 | |
8b623265 | 11 | %define fver %(echo %{version} | tr . _) |
c6874538 | 12 | Summary: The Boost C++ Libraries |
aa63c3d9 | 13 | Summary(pl.UTF-8): Biblioteki C++ "Boost" |
49f48a3b | 14 | Name: boost |
1b90837b JB |
15 | Version: 1.63.0 |
16 | Release: 1 | |
db639b8e | 17 | License: Boost Software License and others |
c6874538 | 18 | Group: Libraries |
8b623265 | 19 | Source0: http://downloads.sourceforge.net/boost/%{name}_%{fver}.tar.bz2 |
1b90837b | 20 | # Source0-md5: 1c837ecd990bb022d07e7aab32b09847 |
8b623265 | 21 | Patch0: %{name}-link.patch |
bab7ef8c | 22 | Patch1: %{name}-x32-context.patch |
bfed7e70 | 23 | Patch2: %{name}-clean-gcc-flags.patch |
1b90837b | 24 | Patch3: %{name}-numpy3.patch |
647f39b2 | 25 | # FC Patches: |
1b90837b JB |
26 | Patch201: %{name}-python-abi_letters.patch |
27 | # https://github.com/boostorg/build/issues/163 | |
28 | Patch202: %{name}-dual-python-build.patch | |
647f39b2 | 29 | # https://svn.boost.org/trac/boost/ticket/5637 |
6d61ae01 | 30 | Patch203: %{name}-1.54.0-mpl-print.patch |
647f39b2 | 31 | # https://svn.boost.org/trac/boost/ticket/8881 |
6d61ae01 | 32 | Patch221: %{name}-1.54.0-mpi-unused_typedef.patch |
49f48a3b | 33 | URL: http://www.boost.org/ |
afbf1450 | 34 | BuildRequires: bzip2-devel |
09e2803f | 35 | BuildRequires: expat-devel |
7c12a8f9 | 36 | BuildRequires: libicu-devel |
49f48a3b | 37 | BuildRequires: libstdc++-devel |
30964b71 | 38 | BuildRequires: perl-base |
1b90837b JB |
39 | %if %{with python} |
40 | BuildRequires: python-devel >= 2.2 | |
41 | %{?with_numpy:BuildRequires: python-numpy-devel} | |
42 | %endif | |
43 | %if %{with python3} | |
44 | BuildRequires: python3-devel | |
45 | %{?with_numpy:BuildRequires: python3-numpy-devel} | |
46 | %endif | |
dbf04d57 | 47 | BuildRequires: rpm-pythonprov |
afbf1450 | 48 | BuildRequires: zlib-devel |
c6874538 | 49 | BuildConflicts: gcc = 5:3.3.1 |
49f48a3b | 50 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
c6874538 | 51 | |
647f39b2 AM |
52 | %define specflags -DBOOST_IOSTREAMS_USE_DEPRECATED=1 |
53 | ||
7b156c4b JR |
54 | # __once_call, __once_callable non-function symbols from libstdc++ |
55 | %define skip_post_check_so libboost_context.so.* | |
56 | ||
c6874538 | 57 | %description |
58 | The Boost web site provides free peer-reviewed portable C++ source | |
59 | libraries. The emphasis is on libraries which work well with the C++ | |
60 | Standard Library. One goal is to establish "existing practice" and | |
61 | provide reference implementations so that the Boost libraries are | |
62 | suitable for eventual standardization. Some of the libraries have | |
63 | already been proposed for inclusion in the C++ Standards Committee's | |
64 | upcoming C++ Standard Library Technical Report. | |
65 | ||
4c35df9e | 66 | %description -l pl.UTF-8 |
49f48a3b | 67 | Strona http://www.boost.org/ dostarcza darmowe biblioteki C++ wraz z |
4c35df9e JR |
68 | kodem źródłowym. Nacisk położono na biblioteki, które dobrze |
69 | współpracują ze standardową biblioteką C++. Celem jest ustanowienie | |
70 | "istniejącej praktyki" i dostarczenie implementacji, tak że biblioteki | |
71 | "Boost" nadają się do ewentualnej standaryzacji. Niektóre z bibliotek | |
72 | już zostały zgłoszone do komitetu standaryzacyjnego C++ w nadchodzącym | |
2b583775 | 73 | Raporcie Technicznym Biblioteki Standardowej C++. |
c6874538 | 74 | |
49f48a3b | 75 | %package devel |
000cd675 | 76 | Summary: Boost C++ development headers |
aa63c3d9 | 77 | Summary(pl.UTF-8): Pliki nagłówkowe bibliotek C++ Boost |
49f48a3b | 78 | Group: Development/Libraries |
000cd675 | 79 | Requires: %{name} = %{version}-%{release} |
e5cd13f8 JB |
80 | Requires: %{name}-chrono = %{version}-%{release} |
81 | Requires: %{name}-context = %{version}-%{release} | |
09e2803f PS |
82 | Requires: %{name}-date_time = %{version}-%{release} |
83 | Requires: %{name}-filesystem = %{version}-%{release} | |
84 | Requires: %{name}-graph = %{version}-%{release} | |
e5cd13f8 | 85 | Requires: %{name}-locale = %{version}-%{release} |
c054d21a | 86 | Requires: %{name}-log = %{version}-%{release} |
09e2803f PS |
87 | Requires: %{name}-program_options = %{version}-%{release} |
88 | Requires: %{name}-regex = %{version}-%{release} | |
89 | Requires: %{name}-signals = %{version}-%{release} | |
69912bfb | 90 | Requires: %{name}-system = %{version}-%{release} |
09e2803f PS |
91 | Requires: %{name}-test = %{version}-%{release} |
92 | Requires: %{name}-thread = %{version}-%{release} | |
e5cd13f8 | 93 | Requires: %{name}-timer = %{version}-%{release} |
09e2803f | 94 | Requires: %{name}-wave = %{version}-%{release} |
49f48a3b | 95 | Requires: libstdc++-devel |
09e2803f PS |
96 | Obsoletes: boost-any-devel |
97 | Obsoletes: boost-array-devel | |
875f51e3 | 98 | Obsoletes: boost-asio |
09e2803f | 99 | Obsoletes: boost-bind-devel |
05b0e240 | 100 | Obsoletes: boost-call_traits-devel |
09e2803f | 101 | Obsoletes: boost-compatibility-devel |
470f1aae | 102 | Obsoletes: boost-compose-devel |
09e2803f | 103 | Obsoletes: boost-compressed_pair-devel |
89fd45a2 JB |
104 | Obsoletes: boost-concept_check-devel |
105 | Obsoletes: boost-conversion-devel | |
09e2803f PS |
106 | Obsoletes: boost-crc-devel |
107 | Obsoletes: boost-date_time-devel | |
108 | Obsoletes: boost-filesystem-devel | |
109 | Obsoletes: boost-graph-devel | |
110 | Obsoletes: boost-mem_fn-devel | |
89fd45a2 JB |
111 | Obsoletes: boost-mpl-devel |
112 | Obsoletes: boost-preprocessor-devel | |
09e2803f | 113 | Obsoletes: boost-program_options-devel |
7c797e1a | 114 | Obsoletes: boost-ref-devel |
09e2803f PS |
115 | Obsoletes: boost-regex-devel |
116 | Obsoletes: boost-signals-devel | |
117 | Obsoletes: boost-spirit-devel | |
118 | Obsoletes: boost-statechart-devel | |
89fd45a2 | 119 | Obsoletes: boost-static_assert-devel |
09e2803f PS |
120 | Obsoletes: boost-test-devel |
121 | Obsoletes: boost-thread-devel | |
122 | Obsoletes: boost-tr1-devel | |
89fd45a2 | 123 | Obsoletes: boost-type_traits-devel |
09e2803f PS |
124 | Obsoletes: boost-typeof-devel |
125 | Obsoletes: boost-uBLAS-devel | |
89fd45a2 | 126 | Obsoletes: boost-utility-devel |
09e2803f PS |
127 | Obsoletes: boost-wave-devel |
128 | Obsoletes: boost-xpressive-devel | |
49f48a3b JB |
129 | |
130 | %description devel | |
000cd675 | 131 | Header files for the Boost C++ libraries. |
49f48a3b | 132 | |
4c35df9e JR |
133 | %description devel -l pl.UTF-8 |
134 | Pliki nagłówkowe bibliotek C++ Boost. | |
000cd675 JB |
135 | |
136 | %package static | |
137 | Summary: Static version of base Boost C++ libraries | |
aa63c3d9 | 138 | Summary(pl.UTF-8): Statyczne wersje podstawowych bibliotek C++ Boost |
000cd675 JB |
139 | Group: Development/Libraries |
140 | Requires: %{name}-devel = %{version}-%{release} | |
09e2803f | 141 | Obsoletes: boost-static < 1.33 |
000cd675 JB |
142 | |
143 | %description static | |
144 | Static version of base Boost C++ libraries. | |
145 | ||
4c35df9e | 146 | %description static -l pl.UTF-8 |
000cd675 | 147 | Statyczne wersje podstawowych bibliotek C++ Boost. |
49f48a3b | 148 | |
fe766442 JR |
149 | %package python-devel-common |
150 | Summary: Boost.Python development headers | |
c9463fef | 151 | Summary(pl.UTF-8): Pliki nagłówkowe biblioteki Boost.Python |
fe766442 JR |
152 | Group: Development/Libraries |
153 | Requires: %{name}-devel = %{version}-%{release} | |
154 | ||
155 | %description python-devel-common | |
156 | Headers for the Boost.Python library. | |
157 | ||
158 | %description python-devel-common -l pl.UTF-8 | |
c9463fef | 159 | Pliki nagłówkowe biblioteki Boost.Python. |
fe766442 | 160 | |
c6874538 | 161 | %package python |
c9463fef JB |
162 | Summary: Boost.Python library for Python 2 |
163 | Summary(pl.UTF-8): Biblioteka Boost.Python dla Pythona 2 | |
c6874538 | 164 | Group: Libraries |
c9463fef | 165 | Requires: python-libs |
c6874538 | 166 | |
167 | %description python | |
168 | Use the Boost Python Library to quickly and easily export a C++ | |
c9463fef JB |
169 | library to Python 2 such that the Python 2 interface is very similar |
170 | to the C++ interface. It is designed to be minimally intrusive on your | |
c6874538 | 171 | C++ design. In most cases, you should not have to alter your C++ |
172 | classes in any way in order to use them with Boost.Python. The system | |
c9463fef JB |
173 | should simply ``reflect'' your C++ classes and functions into Python |
174 | 3. | |
c6874538 | 175 | |
4c35df9e JR |
176 | %description python -l pl.UTF-8 |
177 | Biblioteka Boost Python służy do szybkiego i prostego eksportu | |
c9463fef | 178 | biblioteki C++ do Pythona 2, tak że interfejs Pythona 2 jest bardzo |
4c35df9e JR |
179 | podobny do interfejsu C++. Biblioteka jest zaprojektowana tak, żeby |
180 | narzucać jak najmniej wymagań dotyczących konstrukcjii C++. W | |
181 | większości przypadków nie trzeba w ogóle zmieniać własnych klas C++, | |
182 | żeby używać ich z Boost.Python. System powinien po prostu ,,odbić'' | |
c9463fef | 183 | klasy C++ i funkcje do Pythona 3. |
c6874538 | 184 | |
185 | %package python-devel | |
c9463fef JB |
186 | Summary: Boost.Python development files for Python 2 |
187 | Summary(pl.UTF-8): Pliki programistyczne biblioteki Boost.Python dla Pythona 2 | |
49f48a3b JB |
188 | Group: Development/Libraries |
189 | Requires: %{name}-devel = %{version}-%{release} | |
6725319f | 190 | Requires: %{name}-python = %{version}-%{release} |
fe766442 | 191 | Requires: %{name}-python-devel-common = %{version}-%{release} |
c6874538 | 192 | |
193 | %description python-devel | |
c9463fef | 194 | Boost.Python development files for Python 2. |
c6874538 | 195 | |
4c35df9e | 196 | %description python-devel -l pl.UTF-8 |
c9463fef | 197 | Pliki programistyczne biblioteki Boost.Python dla Pythona 2. |
c6874538 | 198 | |
6725319f | 199 | %package python-static |
c9463fef JB |
200 | Summary: Static version of Boost.Python library for Python 2 |
201 | Summary(pl.UTF-8): Statyczna wersja biblioteki Boost.Python dla Pythona 2 | |
6725319f JB |
202 | Group: Development/Libraries |
203 | Requires: %{name}-python-devel = %{version}-%{release} | |
204 | ||
205 | %description python-static | |
c9463fef | 206 | Static version of Boost.Python library for Python 2. |
6725319f | 207 | |
4c35df9e | 208 | %description python-static -l pl.UTF-8 |
c9463fef | 209 | Statyczna wersja biblioteki Boost.Python dla Pythona 2. |
6725319f | 210 | |
fe766442 | 211 | %package python3 |
c9463fef JB |
212 | Summary: Boost.Python library for Python 3 |
213 | Summary(pl.UTF-8): biblioteka Boost.Python dla Pythona 3 | |
fe766442 | 214 | Group: Libraries |
c9463fef | 215 | Requires: python3-libs |
fe766442 JR |
216 | |
217 | %description python3 | |
218 | Use the Boost Python Library to quickly and easily export a C++ | |
219 | library to Python 3 such that the Python 3 interface is very similar | |
220 | to the C++ interface. It is designed to be minimally intrusive on your | |
221 | C++ design. In most cases, you should not have to alter your C++ | |
222 | classes in any way in order to use them with Boost.Python. The system | |
c9463fef JB |
223 | should simply ``reflect'' your C++ classes and functions into Python |
224 | 3. | |
fe766442 JR |
225 | |
226 | %description python3 -l pl.UTF-8 | |
227 | Biblioteka Boost Python służy do szybkiego i prostego eksportu | |
228 | biblioteki C++ do Pythona 3, tak że interfejs Pythona 3 jest bardzo | |
229 | podobny do interfejsu C++. Biblioteka jest zaprojektowana tak, żeby | |
230 | narzucać jak najmniej wymagań dotyczących konstrukcjii C++. W | |
231 | większości przypadków nie trzeba w ogóle zmieniać własnych klas C++, | |
232 | żeby używać ich z Boost.Python. System powinien po prostu ,,odbić'' | |
233 | klasy C++ i funkcje do Pythona 3. | |
234 | ||
235 | %package python3-devel | |
c9463fef JB |
236 | Summary: Boost.Python development files for Python 3 |
237 | Summary(pl.UTF-8): Pliki programistyczne biblioteki Boost.Python dla Pythona 3 | |
fe766442 JR |
238 | Group: Development/Libraries |
239 | Requires: %{name}-devel = %{version}-%{release} | |
e6158199 | 240 | Requires: %{name}-python-devel-common = %{version}-%{release} |
aaeb56b0 | 241 | Requires: %{name}-python3 = %{version}-%{release} |
fe766442 JR |
242 | |
243 | %description python3-devel | |
c9463fef | 244 | Boost.Python development files for Python 3. |
fe766442 JR |
245 | |
246 | %description python3-devel -l pl.UTF-8 | |
c9463fef | 247 | Pliki programistyczne biblioteki Boost.Python dla Pythona 3. |
fe766442 JR |
248 | |
249 | %package python3-static | |
c9463fef JB |
250 | Summary: Static version of Boost.Python library for Python 3 |
251 | Summary(pl.UTF-8): Statyczna wersja biblioteki Boost.Python dla Pythona 3 | |
fe766442 JR |
252 | Group: Development/Libraries |
253 | Requires: %{name}-python3-devel = %{version}-%{release} | |
254 | ||
255 | %description python3-static | |
c9463fef | 256 | Static version of Boost.Python library for Python 3. |
fe766442 JR |
257 | |
258 | %description python3-static -l pl.UTF-8 | |
c9463fef | 259 | Statyczna wersja biblioteki Boost.Python dla Pythona 3. |
fe766442 | 260 | |
17e8d8c2 ŁK |
261 | %package chrono |
262 | Summary: Useful time utilities | |
d7f6b47a | 263 | Summary(pl.UTF-8): Przydatne funkcje związane z czasem |
17e8d8c2 ŁK |
264 | Group: Libraries |
265 | Obsoletes: boost < 1.33 | |
266 | ||
267 | %description chrono | |
268 | Useful time utilities. | |
269 | ||
d7f6b47a JB |
270 | %description chrono -l pl.UTF-8 |
271 | Przydatne funkcje związane z czasem. | |
272 | ||
e5cd13f8 JB |
273 | %package context |
274 | Summary: Boost.Context - context switching library | |
275 | Summary(pl.UTF-8): Boost.Context - biblioteka do zmiany kontekstu | |
276 | Group: Libraries | |
277 | ||
278 | %description context | |
279 | Boost.Context - context switching library, providing a sort of | |
280 | cooperative multitasking on a single thread. | |
281 | ||
282 | %description context -l pl.UTF-8 | |
283 | Boost.Context - biblioteka do zmiany kontekstu, zapewniająca pewną | |
284 | wielozadaniowość kooperatywnąw ramach pojedynczego wątku. | |
285 | ||
02c23151 | 286 | %package date_time |
d143171f | 287 | Summary: Date-Time library |
aa63c3d9 | 288 | Summary(pl.UTF-8): Biblioteka daty-czasu |
02c23151 | 289 | Group: Libraries |
000cd675 | 290 | Obsoletes: boost < 1.33 |
02c23151 | 291 | |
292 | %description date_time | |
293 | A set of date-time libraries. | |
294 | ||
4c35df9e JR |
295 | %description date_time -l pl.UTF-8 |
296 | Zbiór bibliotek daty-czasu. | |
02c23151 | 297 | |
31026e88 | 298 | %package filesystem |
299 | Summary: Portable paths, iteration over directories, and other useful filesystem operations | |
aa63c3d9 | 300 | Summary(pl.UTF-8): Przenośne ścieżki, iteracje katalogów i inne użyteczne operacje na systemie plików |
31026e88 | 301 | Group: Libraries |
69912bfb | 302 | Requires: %{name}-system = %{version}-%{release} |
000cd675 | 303 | Obsoletes: boost < 1.33 |
31026e88 | 304 | |
305 | %description filesystem | |
04846599 JB |
306 | The boost::filesystem library provides portable facilities to query |
307 | and manipulate paths, files, and directories. | |
31026e88 | 308 | |
4c35df9e JR |
309 | %description filesystem -l pl.UTF-8 |
310 | Przenośna biblioteka boost::filesystem dostarcza ułatwienia w | |
311 | operacjach na ścieżkach, plikach i katalogach. | |
31026e88 | 312 | |
06ed6468 AM |
313 | %package graph |
314 | Summary: General purpose, generic C++ library for graph data structures and graph algorithms | |
315 | Summary(pl.UTF-8): Biblioteka ogólnego przeznaczenia w C++ dla struktur danych typu grafy oraz algorytmów związanych z grafami | |
316 | Group: Libraries | |
317 | ||
318 | %description graph | |
319 | The boost::graph library provides portable facilities to operate on | |
320 | graph data structures using graph algorithms. | |
321 | ||
322 | %description graph -l pl.UTF-8 | |
323 | Przenośna biblioteka boost::graph dostarcza ułatwienia w operacjach na | |
324 | strukturach danych typu graf za pomocą algorytmów związanych z | |
325 | grafami. | |
326 | ||
17e8d8c2 ŁK |
327 | %package locale |
328 | Summary: Provide localization and Unicode handling tools for C++ | |
d7f6b47a | 329 | Summary(pl.UTF-8): Narzędzia do obsługi lokalizacji i Unikodu w C++ |
17e8d8c2 ŁK |
330 | Group: Libraries |
331 | ||
332 | %description locale | |
333 | Provide localization and Unicode handling tools for C++. | |
334 | ||
d7f6b47a JB |
335 | %description locale -l pl.UTF-8 |
336 | Narzędzia do obsługi lokalizacji i Unikodu w C++. | |
337 | ||
2ced8724 JR |
338 | %package log |
339 | Summary: Provide logging tools for C++ | |
340 | Summary(pl.UTF-8): Narzędzia do logowania w C++ | |
341 | Group: Libraries | |
342 | ||
343 | %description log | |
344 | Provide logging tools for C++. | |
345 | ||
346 | %description log -l pl.UTF-8 | |
347 | Narzędzia do logowania w C++. | |
348 | ||
99f4684a | 349 | %package program_options |
350 | Summary: Access to program options, via conventional methods such as command line and config file | |
aa63c3d9 | 351 | Summary(pl.UTF-8): Dostęp do opcji programu za pomocą typowych metod, jak linia poleceń i plik konfiguracyjny |
99f4684a | 352 | Group: Libraries |
353 | ||
354 | %description program_options | |
355 | The program_options library allows program developers to obtain | |
356 | program options, that is (name, value) pairs from the user, via | |
357 | conventional methods such as command line and config file. | |
358 | ||
4c35df9e JR |
359 | %description program_options -l pl.UTF-8 |
360 | Biblioteka program_options umożliwia uzyskanie od użytkownika opcji | |
361 | programu, czyli par (nazwa, wartość), za pomocą typowych metod, takich | |
362 | jak linia poleceń, czy plik konfiguracyjny. | |
99f4684a | 363 | |
09e2803f PS |
364 | %package regex |
365 | Summary: Boost C++ regular expressions library | |
366 | Summary(pl.UTF-8): Biblioteka wyrażeń regularnych Boost C++ | |
367 | Group: Libraries | |
99f4684a | 368 | |
09e2803f PS |
369 | %description regex |
370 | Shared library for Boost C++ regular expressions. | |
99f4684a | 371 | |
09e2803f | 372 | %description regex -l pl.UTF-8 |
d7f6b47a | 373 | Biblioteka współdzielona do obsługi wyrażeń regularnych w C++. |
99f4684a | 374 | |
db639b8e | 375 | %package signals |
75f9f612 | 376 | Summary: Signals & slots callback implementation |
aa63c3d9 | 377 | Summary(pl.UTF-8): Implementacja sygnałów i slotów |
db639b8e | 378 | Group: Libraries |
000cd675 | 379 | Obsoletes: boost < 1.33 |
db639b8e | 380 | |
381 | %description signals | |
382 | The boost::signals library is an implementation of a signals and slots | |
383 | system. | |
384 | ||
4c35df9e JR |
385 | %description signals -l pl.UTF-8 |
386 | Biblioteka boost::signals jest implementacją systemu sygnałów i | |
387 | slotów. | |
db639b8e | 388 | |
09e2803f PS |
389 | %package system |
390 | Summary: Support for getting system specific error codes | |
391 | Summary(pl.UTF-8): Wsparcie dla pobierania specyficznych dla systemu kodów błędów | |
392 | Group: Libraries | |
06ed6468 | 393 | |
09e2803f PS |
394 | %description system |
395 | The Boost System library provides simple, light-weight error_code | |
396 | objects that encapsulate system-specific error code values, yet also | |
397 | provide access to more abstract and portable error conditions objects. | |
0651a785 | 398 | |
2b583775 JB |
399 | %description system -l pl.UTF-8 |
400 | Biblioteka Boost System udostępnia proste, lekkie obiekty error_code | |
401 | obudowujące wartości kodów błędów specyficznych dla systemu, dając | |
402 | jednocześnie dostęp do bardziej abstrakcyjnych i przenośnych obiektów | |
403 | błędów. | |
404 | ||
c0536c7f | 405 | %package test |
09e2803f | 406 | Summary: Support for program testing and execution monitoring |
aa63c3d9 | 407 | Summary(pl.UTF-8): Wsparcie dla testowania i monitorowania programu |
c0536c7f | 408 | Group: Libraries |
000cd675 | 409 | Obsoletes: boost < 1.33 |
c0536c7f | 410 | |
411 | %description test | |
412 | Support for simple program testing, full unit testing, and for program | |
413 | execution monitoring. | |
414 | ||
4c35df9e JR |
415 | %description test -l pl.UTF-8 |
416 | Wsparcie dla prostego testowania programu, pełnego testowania i | |
c0536c7f | 417 | monitorowania wykonania programu. |
418 | ||
02c23151 | 419 | %package thread |
d143171f | 420 | Summary: Portable C++ threads library |
aa63c3d9 | 421 | Summary(pl.UTF-8): Przenośna biblioteka wątków C++ |
02c23151 | 422 | Group: Libraries |
000cd675 | 423 | Obsoletes: boost < 1.33 |
02c23151 | 424 | |
425 | %description thread | |
e4ddb7d1 | 426 | Portable C++ threads library - shared library. |
02c23151 | 427 | |
4c35df9e JR |
428 | %description thread -l pl.UTF-8 |
429 | Przenośna biblioteka wątków dla C++ - biblioteka dzielona. | |
02c23151 | 430 | |
e5cd13f8 JB |
431 | %package timer |
432 | Summary: Event timer, progress timer, and progress display classes | |
433 | Summary(pl.UTF-8): Klasy do obsługi pomiarów czasu, postępu i wyświetlania postępu | |
434 | Group: Libraries | |
435 | Obsoletes: boost < 1.33 | |
436 | ||
437 | %description timer | |
438 | Event timer, progress timer, and progress display classes. | |
439 | ||
440 | %description timer -l pl.UTF-8 | |
441 | Klasy do obsługi pomiarów czasu, postępu i wyświetlania postępu. | |
442 | ||
06ed6468 AM |
443 | %package wave |
444 | Summary: Boost.Wave - a standard compliant C++ preprocessor library | |
445 | Summary(pl.UTF-8): Boost.Wave - zgodna ze standardem biblioteka preprocesora C++ | |
446 | Group: Development/Libraries | |
06ed6468 AM |
447 | |
448 | %description wave | |
449 | Boost.Wave - a standard compliant C++ preprocessor library. | |
450 | ||
451 | %description wave -l pl.UTF-8 | |
452 | Boost.Wave - zgodna ze standardem biblioteka preprocesora C++. | |
453 | ||
c6874538 | 454 | %package doc |
455 | Summary: Boost C++ Library documentation | |
aa63c3d9 | 456 | Summary(pl.UTF-8): Dokumentacja dla biblioteki Boost C++ |
49f48a3b | 457 | Group: Documentation |
f6f44d5d ER |
458 | %if "%{_rpmversion}" >= "5" |
459 | BuildArch: noarch | |
460 | %endif | |
c6874538 | 461 | |
462 | %description doc | |
66ac0d93 | 463 | Documentation for the Boost C++ Library. |
c6874538 | 464 | |
4c35df9e | 465 | %description doc -l pl.UTF-8 |
66ac0d93 | 466 | Dokumentacja dla biblioteki Boost C++. |
c6874538 | 467 | |
468 | %prep | |
8b623265 | 469 | %setup -q -n %{name}_%{fver} |
09e2803f | 470 | %patch0 -p1 |
bfed7e70 JR |
471 | %patch1 -p1 |
472 | %patch2 -p1 | |
1b90837b | 473 | %patch3 -p1 |
647f39b2 | 474 | |
1b90837b JB |
475 | %patch201 -p1 |
476 | %patch202 -p1 | |
647f39b2 | 477 | %patch203 -p0 |
647f39b2 | 478 | %patch221 -p1 |
647f39b2 | 479 | |
d20b153a | 480 | cat << EOF > tools/build/src/user-config.jam |
bfed7e70 | 481 | using gcc : %{cxx_version} : %{__cxx} : <cflags>"%{rpmcflags} -fPIC" <cxxflags>"%{rpmcxxflags} -fPIC" <linkflags>"%{rpmldflags}" ; |
09e2803f PS |
482 | EOF |
483 | ||
6d61ae01 ER |
484 | # cleanup backups after patching |
485 | find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f | |
486 | ||
c6874538 | 487 | %build |
09e2803f PS |
488 | EXPAT_INCLUDE=%{_includedir} \ |
489 | EXPAT_LIBPATH=%{_libdir} \ | |
490 | ICU_PATH=%{_prefix} \ | |
bab7ef8c | 491 | ./bootstrap.sh \ |
fe766442 JR |
492 | --prefix=%{_prefix} \ |
493 | -without-libraries=python | |
bab7ef8c | 494 | |
17e8d8c2 | 495 | ./b2 \ |
9b1806d5 | 496 | -d2 --toolset=gcc \ |
bab7ef8c JR |
497 | variant=release \ |
498 | debug-symbols=on \ | |
499 | inlining=on \ | |
500 | link=static,shared \ | |
501 | threading=multi | |
9b1806d5 | 502 | |
6cb66fff | 503 | %if %{with python3} |
1b90837b | 504 | echo "using python : %{py3_ver} : %{py3_prefix} : %{py3_incdir} : : : : m ;" >> project-config.jam |
fe766442 | 505 | ./b2 \ |
1b90837b | 506 | --with-python python=%{py3_ver} \ |
e56ca5b5 | 507 | -a -d2 --toolset=gcc \ |
fe766442 JR |
508 | variant=release \ |
509 | debug-symbols=on \ | |
510 | inlining=on \ | |
511 | link=static,shared \ | |
512 | threading=multi | |
513 | %endif | |
514 | ||
6cb66fff | 515 | %if %{with python2} |
1b90837b | 516 | %{__sed} -i -e '/^using python : 3/d' project-config.jam |
6cb66fff | 517 | echo "using python : %{py_ver} : %{py_prefix} : %{py_incdir} ;" >> project-config.jam |
fe766442 | 518 | ./b2 \ |
6cb66fff | 519 | --with-python python=%{py_ver} \ |
e56ca5b5 | 520 | -a -d2 --toolset=gcc \ |
fe766442 JR |
521 | variant=release \ |
522 | debug-symbols=on \ | |
523 | inlining=on \ | |
524 | link=static,shared \ | |
525 | threading=multi | |
526 | %endif | |
527 | ||
c6874538 | 528 | %install |
529 | rm -rf $RPM_BUILD_ROOT | |
30964b71 | 530 | install -d $RPM_BUILD_ROOT{%{_libdir},%{_includedir}} |
c6874538 | 531 | |
30964b71 | 532 | cp -rf boost $RPM_BUILD_ROOT%{_includedir} |
c6874538 | 533 | |
8b623265 JB |
534 | install -p stage/lib/lib*.a $RPM_BUILD_ROOT%{_libdir} |
535 | install -p stage/lib/lib*.so.*.*.* $RPM_BUILD_ROOT%{_libdir} | |
536 | cp -a stage/lib/lib*.so $RPM_BUILD_ROOT%{_libdir} | |
fa767695 | 537 | |
c6874538 | 538 | # documentation |
539 | install -d $RPM_BUILD_ROOT%{_docdir}/boost-%{version} | |
c6874538 | 540 | |
541 | # as the documentation doesn't completely reside in a directory of its | |
542 | # own, we need to find out ourselves... this looks for HTML files and | |
543 | # then collects everything linked from those. this is certainly quite | |
544 | # unoptimized wrt mkdir calls, but does it really matter? | |
7c12a8f9 ER |
545 | installdocs() { |
546 | for i in $(find -type f -name '*.htm*'); do | |
c6874538 | 547 | # bjam docu is included in the boost-jam RPM |
548 | if test "`echo $i | sed 's,jam_src,,'`" = "$i"; then | |
7c12a8f9 | 549 | install -d $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/${i%/*} |
30964b71 | 550 | for LINKED in `%{__perl} - $i $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/$i <<'EOT' |
c6874538 | 551 | sub rewrite_link |
552 | { | |
553 | my $link = shift; | |
554 | # rewrite links from boost/* to %{_includedir}/boost/* and | |
555 | # ignore external links as well as document-internal ones. | |
556 | # HTML files are also ignored as they get installed anyway. | |
557 | if (!($link =~ s,^(?:../)*boost/,%{_includedir}/boost/,) && !($link =~ m,(?:^[^/]+:|^\#|\.html?(?:$|\#)),)) | |
558 | { | |
559 | (my $file = $link) =~ s/\#.*//; | |
560 | print "$file\n"; | |
561 | } | |
562 | $link; | |
563 | } | |
564 | open IN, @ARGV[0]; | |
565 | open OUT, ">@ARGV[1]"; | |
66ac0d93 | 566 | my $in_link; |
c6874538 | 567 | while (<IN>) |
568 | { | |
66ac0d93 | 569 | $in_link and s/^\s*"([^"> ]*)"/'"' . rewrite_link($1) . '"'/e; |
c6874538 | 570 | s/(href|src)="([^"> ]*)"/"$1=\"" . rewrite_link($2) . '"'/eig; |
571 | print OUT; | |
d143171f | 572 | $in_link = /href|src=\s*$/; |
c6874538 | 573 | } |
574 | EOT`; do | |
7c12a8f9 | 575 | TARGET=${i%/*}/$LINKED |
c6874538 | 576 | # ignore non-existant linked files |
577 | if test -f $TARGET; then | |
7c12a8f9 | 578 | install -D -m 644 $TARGET $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/$TARGET |
c6874538 | 579 | fi |
580 | done | |
581 | fi | |
582 | done | |
7c12a8f9 | 583 | }; installdocs |
c6874538 | 584 | |
585 | %clean | |
586 | rm -rf $RPM_BUILD_ROOT | |
587 | ||
000cd675 JB |
588 | %post -p /sbin/ldconfig |
589 | %postun -p /sbin/ldconfig | |
590 | ||
17e8d8c2 ŁK |
591 | %post chrono -p /sbin/ldconfig |
592 | %postun chrono -p /sbin/ldconfig | |
593 | ||
e5cd13f8 JB |
594 | %post context -p /sbin/ldconfig |
595 | %postun context -p /sbin/ldconfig | |
596 | ||
3d8dd501 JB |
597 | %post date_time -p /sbin/ldconfig |
598 | %postun date_time -p /sbin/ldconfig | |
599 | ||
04846599 JB |
600 | %post filesystem -p /sbin/ldconfig |
601 | %postun filesystem -p /sbin/ldconfig | |
602 | ||
06ed6468 AM |
603 | %post graph -p /sbin/ldconfig |
604 | %postun graph -p /sbin/ldconfig | |
605 | ||
17e8d8c2 ŁK |
606 | %post locale -p /sbin/ldconfig |
607 | %postun locale -p /sbin/ldconfig | |
608 | ||
09e2803f PS |
609 | %post python -p /sbin/ldconfig |
610 | %postun python -p /sbin/ldconfig | |
611 | ||
fe766442 JR |
612 | %post python3 -p /sbin/ldconfig |
613 | %postun python3 -p /sbin/ldconfig | |
614 | ||
09e2803f PS |
615 | %post program_options -p /sbin/ldconfig |
616 | %postun program_options -p /sbin/ldconfig | |
c6874538 | 617 | |
09e2803f PS |
618 | %post regex -p /sbin/ldconfig |
619 | %postun regex -p /sbin/ldconfig | |
290ca6f4 | 620 | |
09e2803f PS |
621 | %post signals -p /sbin/ldconfig |
622 | %postun signals -p /sbin/ldconfig | |
c6874538 | 623 | |
09e2803f PS |
624 | %post system -p /sbin/ldconfig |
625 | %postun system -p /sbin/ldconfig | |
3d8dd501 | 626 | |
09e2803f PS |
627 | %post test -p /sbin/ldconfig |
628 | %postun test -p /sbin/ldconfig | |
c0536c7f | 629 | |
09e2803f PS |
630 | %post thread -p /sbin/ldconfig |
631 | %postun thread -p /sbin/ldconfig | |
3d8dd501 | 632 | |
e5cd13f8 JB |
633 | %post timer -p /sbin/ldconfig |
634 | %postun timer -p /sbin/ldconfig | |
635 | ||
d7f6b47a JB |
636 | %post wave -p /sbin/ldconfig |
637 | %postun wave -p /sbin/ldconfig | |
638 | ||
000cd675 JB |
639 | %files |
640 | %defattr(644,root,root,755) | |
7bf3427b | 641 | %attr(755,root,root) %{_libdir}/libboost_atomic.so.*.*.* |
d20b153a | 642 | %attr(755,root,root) %{_libdir}/libboost_container.so.*.*.* |
f1235ec7 | 643 | %attr(755,root,root) %{_libdir}/libboost_coroutine.so.*.*.* |
8b623265 | 644 | %attr(755,root,root) %{_libdir}/libboost_iostreams.so.*.*.* |
e019306a | 645 | %attr(755,root,root) %{_libdir}/libboost_math_*.so.*.*.* |
8b623265 JB |
646 | %attr(755,root,root) %{_libdir}/libboost_random.so.*.*.* |
647 | %attr(755,root,root) %{_libdir}/libboost_serialization.so.*.*.* | |
5877771e | 648 | %attr(755,root,root) %{_libdir}/libboost_type_erasure.so.*.*.* |
8b623265 | 649 | %attr(755,root,root) %{_libdir}/libboost_wserialization.so.*.*.* |
000cd675 | 650 | |
30964b71 JB |
651 | %files devel |
652 | %defattr(644,root,root,755) | |
7bf3427b | 653 | %attr(755,root,root) %{_libdir}/libboost_atomic.so |
17e8d8c2 | 654 | %attr(755,root,root) %{_libdir}/libboost_chrono.so |
d20b153a | 655 | %attr(755,root,root) %{_libdir}/libboost_container.so |
e5cd13f8 | 656 | %attr(755,root,root) %{_libdir}/libboost_context.so |
f1235ec7 | 657 | %attr(755,root,root) %{_libdir}/libboost_coroutine.so |
8b623265 JB |
658 | %attr(755,root,root) %{_libdir}/libboost_date_time.so |
659 | %attr(755,root,root) %{_libdir}/libboost_filesystem.so | |
660 | %attr(755,root,root) %{_libdir}/libboost_graph.so | |
661 | %attr(755,root,root) %{_libdir}/libboost_iostreams.so | |
17e8d8c2 | 662 | %attr(755,root,root) %{_libdir}/libboost_locale.so |
2ced8724 JR |
663 | %attr(755,root,root) %{_libdir}/libboost_log.so |
664 | %attr(755,root,root) %{_libdir}/libboost_log_setup.so | |
e019306a | 665 | %attr(755,root,root) %{_libdir}/libboost_math_*.so |
8b623265 JB |
666 | %attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor.so |
667 | %attr(755,root,root) %{_libdir}/libboost_program_options.so | |
668 | %attr(755,root,root) %{_libdir}/libboost_regex.so | |
669 | %attr(755,root,root) %{_libdir}/libboost_random.so | |
670 | %attr(755,root,root) %{_libdir}/libboost_serialization.so | |
671 | %attr(755,root,root) %{_libdir}/libboost_signals.so | |
672 | %attr(755,root,root) %{_libdir}/libboost_system.so | |
673 | %attr(755,root,root) %{_libdir}/libboost_thread.so | |
17e8d8c2 | 674 | %attr(755,root,root) %{_libdir}/libboost_timer.so |
5877771e | 675 | %attr(755,root,root) %{_libdir}/libboost_type_erasure.so |
8b623265 JB |
676 | %attr(755,root,root) %{_libdir}/libboost_unit_test_framework.so |
677 | %attr(755,root,root) %{_libdir}/libboost_wave.so | |
678 | %attr(755,root,root) %{_libdir}/libboost_wserialization.so | |
679 | %{_includedir}/boost | |
680 | %exclude %{_includedir}/boost/python | |
681 | %exclude %{_includedir}/boost/python.hpp | |
99f4684a | 682 | |
000cd675 JB |
683 | %files static |
684 | %defattr(644,root,root,755) | |
7bf3427b | 685 | %{_libdir}/libboost_atomic.a |
17e8d8c2 | 686 | %{_libdir}/libboost_chrono.a |
d20b153a | 687 | %{_libdir}/libboost_container.a |
e5cd13f8 | 688 | %{_libdir}/libboost_context.a |
2ced8724 | 689 | %{_libdir}/libboost_coroutine.a |
8b623265 | 690 | %{_libdir}/libboost_date_time.a |
17e8d8c2 | 691 | %{_libdir}/libboost_exception.a |
8b623265 JB |
692 | %{_libdir}/libboost_filesystem.a |
693 | %{_libdir}/libboost_graph.a | |
694 | %{_libdir}/libboost_iostreams.a | |
17e8d8c2 | 695 | %{_libdir}/libboost_locale.a |
2ced8724 JR |
696 | %{_libdir}/libboost_log.a |
697 | %{_libdir}/libboost_log_setup.a | |
e019306a | 698 | %{_libdir}/libboost_math_*.a |
8b623265 JB |
699 | %{_libdir}/libboost_prg_exec_monitor.a |
700 | %{_libdir}/libboost_program_options.a | |
701 | %{_libdir}/libboost_random.a | |
702 | %{_libdir}/libboost_regex.a | |
703 | %{_libdir}/libboost_serialization.a | |
704 | %{_libdir}/libboost_signals.a | |
705 | %{_libdir}/libboost_system.a | |
706 | %{_libdir}/libboost_test_exec_monitor.a | |
17e8d8c2 | 707 | %{_libdir}/libboost_timer.a |
8b623265 | 708 | %{_libdir}/libboost_thread.a |
5877771e | 709 | %{_libdir}/libboost_type_erasure.a |
8b623265 JB |
710 | %{_libdir}/libboost_unit_test_framework.a |
711 | %{_libdir}/libboost_wave.a | |
712 | %{_libdir}/libboost_wserialization.a | |
db639b8e | 713 | |
fe766442 JR |
714 | %if %{with python2} || %{with python3} |
715 | %files python-devel-common | |
716 | %defattr(644,root,root,755) | |
717 | %{_includedir}/boost/python | |
718 | %{_includedir}/boost/python.hpp | |
719 | %endif | |
720 | ||
721 | %if %{with python2} | |
30964b71 | 722 | %files python |
49f48a3b | 723 | %defattr(644,root,root,755) |
1b90837b JB |
724 | %if %{with numpy} |
725 | %attr(755,root,root) %{_libdir}/libboost_numpy.so.*.*.* | |
726 | %endif | |
8b623265 | 727 | %attr(755,root,root) %{_libdir}/libboost_python.so.*.*.* |
49f48a3b | 728 | |
30964b71 | 729 | %files python-devel |
c6874538 | 730 | %defattr(644,root,root,755) |
1b90837b JB |
731 | %if %{with numpy} |
732 | %attr(755,root,root) %{_libdir}/libboost_numpy.so | |
733 | %endif | |
8b623265 | 734 | %attr(755,root,root) %{_libdir}/libboost_python.so |
30964b71 | 735 | |
6725319f JB |
736 | %files python-static |
737 | %defattr(644,root,root,755) | |
1b90837b JB |
738 | %if %{with numpy} |
739 | %{_libdir}/libboost_numpy.a | |
740 | %endif | |
8b623265 | 741 | %{_libdir}/libboost_python.a |
c6874538 | 742 | %endif |
743 | ||
fe766442 JR |
744 | %if %{with python3} |
745 | %files python3 | |
746 | %defattr(644,root,root,755) | |
1b90837b JB |
747 | %if %{with numpy} |
748 | %attr(755,root,root) %{_libdir}/libboost_numpy3.so.*.*.* | |
749 | %endif | |
fe766442 JR |
750 | %attr(755,root,root) %{_libdir}/libboost_python3.so.*.*.* |
751 | ||
752 | %files python3-devel | |
753 | %defattr(644,root,root,755) | |
1b90837b JB |
754 | %if %{with numpy} |
755 | %attr(755,root,root) %{_libdir}/libboost_numpy3.so | |
756 | %endif | |
fe766442 JR |
757 | %attr(755,root,root) %{_libdir}/libboost_python3.so |
758 | ||
759 | %files python3-static | |
760 | %defattr(644,root,root,755) | |
1b90837b JB |
761 | %if %{with numpy} |
762 | %{_libdir}/libboost_numpy3.a | |
763 | %endif | |
fe766442 JR |
764 | %{_libdir}/libboost_python3.a |
765 | %endif | |
766 | ||
17e8d8c2 ŁK |
767 | %files chrono |
768 | %defattr(644,root,root,755) | |
769 | %attr(755,root,root) %{_libdir}/libboost_chrono.so.*.*.* | |
770 | ||
e5cd13f8 JB |
771 | %files context |
772 | %defattr(644,root,root,755) | |
773 | %attr(755,root,root) %{_libdir}/libboost_context.so.*.*.* | |
774 | ||
02c23151 | 775 | %files date_time |
776 | %defattr(644,root,root,755) | |
8b623265 | 777 | %attr(755,root,root) %{_libdir}/libboost_date_time.so.*.*.* |
02c23151 | 778 | |
31026e88 | 779 | %files filesystem |
780 | %defattr(644,root,root,755) | |
8b623265 | 781 | %attr(755,root,root) %{_libdir}/libboost_filesystem.so.*.*.* |
31026e88 | 782 | |
06ed6468 AM |
783 | %files graph |
784 | %defattr(644,root,root,755) | |
8b623265 | 785 | %attr(755,root,root) %{_libdir}/libboost_graph.so.*.*.* |
06ed6468 | 786 | |
17e8d8c2 ŁK |
787 | %files locale |
788 | %defattr(644,root,root,755) | |
789 | %attr(755,root,root) %{_libdir}/libboost_locale.so.*.*.* | |
790 | ||
2ced8724 JR |
791 | %files log |
792 | %defattr(644,root,root,755) | |
793 | %attr(755,root,root) %{_libdir}/libboost_log.so.*.*.* | |
794 | %attr(755,root,root) %{_libdir}/libboost_log_setup.so.*.*.* | |
795 | ||
99f4684a | 796 | %files program_options |
797 | %defattr(644,root,root,755) | |
8b623265 | 798 | %attr(755,root,root) %{_libdir}/libboost_program_options.so.*.*.* |
99f4684a | 799 | |
09e2803f | 800 | %files regex |
99f4684a | 801 | %defattr(644,root,root,755) |
8b623265 | 802 | %attr(755,root,root) %{_libdir}/libboost_regex.so.*.*.* |
99f4684a | 803 | |
db639b8e | 804 | %files signals |
805 | %defattr(644,root,root,755) | |
8b623265 | 806 | %attr(755,root,root) %{_libdir}/libboost_signals.so.*.*.* |
db639b8e | 807 | |
09e2803f | 808 | %files system |
db639b8e | 809 | %defattr(644,root,root,755) |
8b623265 | 810 | %attr(755,root,root) %{_libdir}/libboost_system.so.*.*.* |
06ed6468 | 811 | |
c0536c7f | 812 | %files test |
813 | %defattr(644,root,root,755) | |
8b623265 JB |
814 | %attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor.so.*.*.* |
815 | %attr(755,root,root) %{_libdir}/libboost_unit_test_framework.so.*.*.* | |
c0536c7f | 816 | |
02c23151 | 817 | %files thread |
818 | %defattr(644,root,root,755) | |
8b623265 | 819 | %attr(755,root,root) %{_libdir}/libboost_thread.so.*.*.* |
02c23151 | 820 | |
e5cd13f8 JB |
821 | %files timer |
822 | %defattr(644,root,root,755) | |
823 | %attr(755,root,root) %{_libdir}/libboost_timer.so.*.*.* | |
824 | ||
06ed6468 AM |
825 | %files wave |
826 | %defattr(644,root,root,755) | |
8b623265 | 827 | %attr(755,root,root) %{_libdir}/libboost_wave.so.*.*.* |
06ed6468 | 828 | |
30964b71 | 829 | %files doc |
fe815c68 | 830 | %defattr(644,root,root,755) |
75f9f612 | 831 | %{_docdir}/%{name}-%{version} |