3 %bcond_without python # without boost-python support
5 %define _fver %(echo %{version} | tr . _)
6 Summary: The Boost C++ Libraries
7 Summary(pl): Biblioteki C++ "Boost"
11 License: Boost Software License and others
13 Source0: http://dl.sourceforge.net/boost/%{name}_%{_fver}.tar.bz2
14 # Source0-md5: 2b999b2fb7798e1737d1fff8fac602ef
15 Patch0: %{name}-python.patch
16 Patch1: %{name}-archive_iterator_segv.patch
17 URL: http://www.boost.org/
18 BuildRequires: boost-jam >= 3.1.3
19 BuildRequires: bzip2-devel
20 BuildRequires: libicu-devel
21 BuildRequires: libstdc++-devel
22 BuildRequires: perl-base
23 %{?with_python:BuildRequires: python-devel >= 2.2}
24 BuildRequires: rpm-pythonprov
25 BuildRequires: zlib-devel
26 BuildConflicts: gcc = 5:3.3.1
27 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
30 The Boost web site provides free peer-reviewed portable C++ source
31 libraries. The emphasis is on libraries which work well with the C++
32 Standard Library. One goal is to establish "existing practice" and
33 provide reference implementations so that the Boost libraries are
34 suitable for eventual standardization. Some of the libraries have
35 already been proposed for inclusion in the C++ Standards Committee's
36 upcoming C++ Standard Library Technical Report.
39 Strona http://www.boost.org/ dostarcza darmowe biblioteki C++ wraz z
40 kodem ¼ród³owym. Nacisk po³o¿ono na biblioteki, które dobrze
41 wspó³pracuj± ze standardow± bibliotek± C++. Celem jest ustanowienie
42 "istniej±cej praktyki" i dostarczenie implementacji, tak ¿e biblioteki
43 "Boost" nadaj± siê do ewentualnej standaryzacji. Niektóre z bibliotek
44 ju¿ zosta³y zg³oszone do komitetu standaryzacyjnego C++ w nadchodz±cym
45 Raporcie Technicznym Biblioteki Standardowej C++
48 Summary: Boost C++ development headers
49 Summary(pl): Pliki nag³ówkowe bibliotek C++ Boost
50 Group: Development/Libraries
51 Requires: %{name} = %{version}-%{release}
52 Requires: %{name}-ref-devel = %{version}-%{release}
53 Requires: libstdc++-devel
54 # temporary Provides (until CVS HEAD stops using it)?
55 Provides: boost-concept_check-devel = %{version}-%{release}
56 Provides: boost-conversion-devel = %{version}-%{release}
57 Provides: boost-mpl-devel = %{version}-%{release}
58 Provides: boost-preprocessor-devel = %{version}-%{release}
59 Provides: boost-static_assert-devel = %{version}-%{release}
60 Provides: boost-type_traits-devel = %{version}-%{release}
61 Provides: boost-utility-devel = %{version}-%{release}
62 Obsoletes: boost-compose-devel
63 Obsoletes: boost-concept_check-devel
64 Obsoletes: boost-conversion-devel
65 Obsoletes: boost-mpl-devel
66 Obsoletes: boost-preprocessor-devel
67 Obsoletes: boost-static_assert-devel
68 Obsoletes: boost-type_traits-devel
69 Obsoletes: boost-utility-devel
72 Header files for the Boost C++ libraries.
74 %description devel -l pl
75 Pliki nag³ówkowe bibliotek C++ Boost.
78 Summary: Static version of base Boost C++ libraries
79 Summary(pl): Statyczne wersje podstawowych bibliotek C++ Boost
80 Group: Development/Libraries
81 Requires: %{name}-devel = %{version}-%{release}
84 Static version of base Boost C++ libraries.
86 %description static -l pl
87 Statyczne wersje podstawowych bibliotek C++ Boost.
90 Summary: Boost.Python library
91 Summary(pl): biblioteka Boost.Python
96 Use the Boost Python Library to quickly and easily export a C++
97 library to Python such that the Python interface is very similar to
98 the C++ interface. It is designed to be minimally intrusive on your
99 C++ design. In most cases, you should not have to alter your C++
100 classes in any way in order to use them with Boost.Python. The system
101 should simply ``reflect'' your C++ classes and functions into Python.
103 %description python -l pl
104 Biblioteka Boost Python s³u¿y do szybkiego i prostego eksportu
105 biblioteki C++ do Pythona, tak ¿e interfejs Pythona jest bardzo
106 podobny do interfejsu C++. Biblioteka jest zaprojektowana tak, ¿eby
107 narzucaæ jak najmniej wymagañ dotycz±cych konstrukcjii C++. W
108 wiêkszo¶ci przypadków nie trzeba w ogóle zmieniaæ w³asnych klas C++,
109 ¿eby u¿ywaæ ich z Boost.Python. System powinien po prostu ,,odbiæ''
110 klasy C++ i funkcje do Pythona.
112 %package python-devel
113 Summary: Boost.Python development headers
114 Summary(pl): Pliki nag³ówkowe dla Boost.Python
115 Group: Development/Libraries
116 Requires: %{name}-compressed_pair-devel = %{version}-%{release}
117 Requires: %{name}-devel = %{version}-%{release}
118 Requires: %{name}-python = %{version}-%{release}
120 %description python-devel
121 Headers for the Boost.Python library.
123 %description python-devel -l pl
124 Pliki nag³ówkowe dla biblioteki Boost.Python.
126 %package python-static
127 Summary: Static version of Boost.Python library
128 Summary(pl): Statyczna wersja biblioteki Boost.Python
129 Group: Development/Libraries
130 Requires: %{name}-python-devel = %{version}-%{release}
132 %description python-static
133 Static version of Boost.Python library.
135 %description python-static -l pl
136 Statyczna wersja biblioteki Boost.Python.
139 Summary: Boost C++ regular expressions library
140 Summary(pl): Biblioteka wyra¿eñ regularnych Boost C++
144 Shared library for Boost C++ regular expressions.
146 %description regex -l pl
147 Biblioteka wyra¿eñ regularnych dla C++, biblioteki dzielone.
150 Summary: Boost C++ Regex library headers
151 Summary(pl): Pliki nag³ówkowe Boost C++ Regex
152 Group: Development/Libraries
153 Requires: %{name}-devel = %{version}-%{release}
154 Requires: %{name}-regex = %{version}-%{release}
156 %description regex-devel
157 Boost C++ Regex headers.
159 %description regex-devel -l pl
160 Pliki nag³ówkowe dla Boost C++ Regex.
162 %package regex-static
163 Summary: Boost C++ Regex static libraries
164 Summary(pl): Biblioteki statyczne Boost C++ Regex
165 Group: Development/Libraries
166 Requires: %{name}-regex-devel = %{version}-%{release}
168 %description regex-static
169 Boost C++ Regex static libraries.
171 %description regex-static -l pl
172 Biblioteki statyczne dla Boost C++ Regex.
175 Summary: Header for Boost C++ "Any" Library
176 Summary(pl): Plik nag³ówkowy dla biblioteki Boost C++ "Any"
177 Group: Development/Libraries
178 Requires: %{name}-devel = %{version}-%{release}
180 %description any-devel
181 The boost::any class, is a variant value type, which supports copying
182 of any value type and safe checked extraction of that value strictly
185 I.e. 5 is held strictly as an int and is not implicitly convertible
186 either to "5" or to 5.0.
188 %description any-devel -l pl
189 Klasa boost::any jest typem, który umo¿liwia kopiowanie ze zmiennej
190 dowolnego typu i bezpieczne, sprawdzone wydobycie jej warto¶ci
191 dok³adnie tego samego typu.
193 Np. 5 jest trzymane jako int i nie jest niejawnie konwertowalne ani do
197 Summary: STL compliant container wrapper for arrays of constant size
198 Summary(pl): Wrapper na STLowe kontenery dla tablic o sta³ym rozmiarze
199 Group: Development/Libraries
200 Requires: %{name}-devel = %{version}-%{release}
202 %description array-devel
203 As replacement for ordinary arrays, the STL provides class vector<>.
204 However, vector<> provides the semantics of dynamic arrays. Thus, it
205 manages data to be able to change the number of elements. This results
206 in some overhead in case only arrays with static size are needed. This
207 library provides support for such static size arrays.
209 %description array-devel -l pl
210 STL dostarcza klasê vector<> jako zamiennik zwyk³ej tablicy. Jednak
211 vector<> dostarcza semantykê dynamicznych tablic. Zatem zarz±dza
212 danymi tak, by by³a mo¿liwa zmiana ilo¶ci elementów. To skutkuje
213 pewnym nadmiarem w przypadku kiedy tylko tablice o sta³ym rozmiarze s±
214 potrzebne. Ta biblioteka dostarcza wsparcie dla takich w³a¶nie tablic
218 Summary: Generalized binders for function/object/pointers and member functions
219 Summary(pl): Uogólnione bindery dla funkcji/obiektów/wska¼ników oraz metod
220 Group: Development/Libraries
221 Requires: %{name}-ref-devel = %{version}-%{release}
222 Provides: boost-mem_fn-devel = %{version}-%{release}
223 Obsoletes: boost-compose-devel
224 Obsoletes: boost-mem_fn-devel
226 %description bind-devel
227 boost::bind is a generalization of the standard functions std::bind1st
228 and std::bind2nd. This package contains also boost::mem_fn which is a
229 generalization of the standard functions std::mem_fun and
232 %description bind-devel -l pl
233 boost::bind jest uogólnieniem standardowych funkcji std::bind1st i
234 std::bind2nd. Ten pakiet zawiera tak¿e boost::mem_fn, który jest
235 uogólnieniem standardowych funkcji std::mem_fun i std::mem_fun_ref.
237 %package call_traits-devel
238 Summary: Defines types for passing parameters
239 Summary(pl): Definiowanie typów dla przekazywania parametrów
240 Group: Development/Libraries
241 Requires: %{name}-devel = %{version}-%{release}
243 %description call_traits-devel
244 boost::call_traits<T> encapsulates the "best" method to pass a
245 parameter of some type T to or from a function. The purpose of
246 call_traits is to ensure that problems like "references to references"
247 never occur, and that parameters are passed in the most efficient
250 %description call_traits-devel -l pl
251 boost::call_traits<T> zawiera "najlepsz±" metodê przekazywania
252 parametrów jakiego¶ typu T do lub z funkcji. Celem call_traits jest
253 zapewnienie ¿e problemy takie jak "referencja referencji" nigdy nie
254 wyst±pi± i ¿e parametry s± przekazywane w mo¿liwie najbardziej
257 %package compatibility-devel
258 Summary: Help for non-conforming standard libraries
259 Summary(pl): Pomoc dla nie trzymaj±cych standardu bibliotek
260 Group: Development/Libraries
261 Requires: %{name}-devel = %{version}-%{release}
263 %description compatibility-devel
264 This library provides workarounds which allow the other Boost
265 libraries to be used on otherwise non-conforming platforms.
267 %description compatibility-devel -l pl
268 Biblioteka dostarcza obej¶cie problemu platform nie trzymaj±cych
269 standardu C++, pozwalaj±ce na u¿ywanie bibliotek Boost na tych
272 %package compose-devel
273 Summary: Functional composition adapters for the STL
274 Summary(pl): Funkcjonalne adaptery kompozycji dla STL
275 Group: Development/Libraries
276 Requires: %{name}-devel = %{version}-%{release}
278 %description compose-devel
279 The boost::compose provides compose function object adapter extensions
280 for use with the Standard Template Library (STL) portion of the C++
281 Standard Library. If you aren't currently using the STL, this library
282 won't be of any interest, but hard-core STL users will appreciate its
285 %description compose-devel -l pl
286 boost::compose dostarcza rozszerzenie adaptera obiektu funkcji compose
287 do u¿ytku z STL-ow± czê¶ci± Standardu C++. Je¿eli nie u¿ywasz STL,
288 biblioteka bêdzie poza twoim zainteresowaniem, lecz hardkorowi
289 u¿ytkownicy STL-a doceni± jej u¿yteczno¶æ.
291 %package compressed_pair-devel
292 Summary: Empty member optimization
293 Summary(pl): Optymalizacja pustego elementu
294 Group: Development/Libraries
295 Requires: %{name}-call_traits-devel = %{version}-%{release}
296 Requires: %{name}-devel = %{version}-%{release}
298 %description compressed_pair-devel
299 The class boost::compressed_pair is very similar to std::pair, but if
300 either of the template arguments are empty classes, then the "empty
301 base-class optimisation" is applied to compress the size of the pair.
303 %description compressed_pair-devel -l pl
304 Klasa boost::compressed_pair jest bardzo podobna do std::pair, ale
305 je¿eli który¶ z argumentów wzorca jest pust± klas±, wtedy stosowana
306 jest "optymalizacja pustej klasy bazowej" do kompresji pary.
309 Summary: CRC computing library
310 Summary(pl): Biblioteka obliczaj±ca CRC
311 Group: Development/Libraries
312 Requires: %{name}-devel = %{version}-%{release}
314 %description crc-devel
315 The boost::crc library provides two implementations of CRC computation
316 objects and functions. The implementations are template-based.
318 %description crc-devel -l pl
319 Bibliteka boost::crc dostarcza dwie implementacje obiektów i funkcji
320 obliczaj±cych CRC. Implementacje s± oparte na wzorcach.
323 Summary: Date-Time library
324 Summary(pl): Biblioteka daty-czasu
326 Obsoletes: boost < 1.33
328 %description date_time
329 A set of date-time libraries.
331 %description date_time -l pl
332 Zbiór bibliotek daty-czasu.
334 %package date_time-devel
335 Summary: Header files for boost::date_time library
336 Summary(pl): Pliki nag³ówkowe dla biblioteki boost::date_time
337 Group: Development/Libraries
338 Requires: %{name}-date_time = %{version}-%{release}
339 Requires: %{name}-devel = %{version}-%{release}
340 #TODO: make decision if do separate packages include it to main devel package
341 #Requires: %{name}-integer-devel = %{version}-%{release}
342 #Requires: %{name}-operators-devel = %{version}-%{release}
343 #Requires: %{name}-tokenizer-devel = %{version}-%{release}
345 %description date_time-devel
346 Header files for boost::date_time library.
348 %description date_time-devel -l pl
349 Pliki nag³ówkowe dla biblioteki boost::date_time
351 %package date_time-static
352 Summary: Static boost::date_time library
353 Summary(pl): Statyczna biblioteka boost::date_time
354 Group: Development/Libraries
355 Requires: %{name}-date_time-devel = %{version}-%{release}
357 %description date_time-static
358 Static boost::date_time library.
360 %description date_time-devel -l pl
361 Statyczna biblioteka boost::date_time.
364 Summary: Portable paths, iteration over directories, and other useful filesystem operations
365 Summary(pl): Przeno¶ne ¶cie¿ki, iteracje katalogów i inne u¿yteczne operacje na systemie plików
367 Obsoletes: boost < 1.33
369 %description filesystem
370 The boost::filesystem library provides portable facilities to query
371 and manipulate paths, files, and directories.
373 %description filesystem -l pl
374 Przeno¶na biblioteka boost::filesystem dostarcza u³atwienia w
375 operacjach na ¶cie¿kach, plikach i katalogach.
377 %package filesystem-devel
378 Summary: Header files for boost::filesystem
379 Summary(pl): Pliki nag³ówkowe dla boost::filesystem
380 Group: Development/Libraries
381 Requires: %{name}-devel = %{version}-%{release}
382 Requires: %{name}-filesystem = %{version}-%{release}
384 #Requires: %{name}-smart_ptr = %{version}-%{release}
386 %description filesystem-devel
387 Header files for boost::filesystem library.
389 %description filesystem-devel -l pl
390 Pliki nag³ówkowe dla biblioteki boost::filesystem.
392 %package filesystem-static
393 Summary: Static boost::filesystem library
394 Summary(pl): Biblioteka statyczna boost::filesystem
395 Group: Development/Libraries
396 Requires: %{name}-filesystem-devel = %{version}-%{release}
397 Obsoletes: boost-static < 1.33
399 %description filesystem-static
400 Static boost::filesystem library.
402 %description filesystem-static -l pl
403 Biblioteka statyczna boost::filesystem.
405 %package program_options
406 Summary: Access to program options, via conventional methods such as command line and config file
407 Summary(pl): Dostêp do opcji programu za pomoc± typowych metod, jak linia poleceñ i plik konfiguracyjny
410 %description program_options
411 The program_options library allows program developers to obtain
412 program options, that is (name, value) pairs from the user, via
413 conventional methods such as command line and config file.
415 %description program_options -l pl
416 Biblioteka program_options umo¿liwia uzyskanie od u¿ytkownika opcji
417 programu, czyli par (nazwa, warto¶æ), za pomoc± typowych metod, takich
418 jak linia poleceñ, czy plik konfiguracyjny.
420 %package program_options-devel
421 Summary: Header files for boost::program_options
422 Summary(pl): Pliki nag³ówkowe dla boost::program_options
423 Group: Development/Libraries
424 Requires: %{name}-any-devel = %{version}-%{release}
425 Requires: %{name}-devel = %{version}-%{release}
426 Requires: %{name}-program_options = %{version}-%{release}
428 %description program_options-devel
429 Header files for boost::program_options library.
431 %description program_options-devel -l pl
432 Pliki nag³ówkowe dla biblioteki boost::program_options.
434 %package program_options-static
435 Summary: Static boost::program_options library
436 Summary(pl): Biblioteka statyczna boost::program_options
437 Group: Development/Libraries
438 Requires: %{name}-program_options-devel = %{version}-%{release}
439 Obsoletes: boost-static < 1.33
441 %description program_options-static
442 Static boost::program_options library.
444 %description program_options-static -l pl
445 Biblioteka statyczna boost::program_options.
448 Summary: Small library useful for passing references to function templates
449 Summary(pl): Ma³a biblioteka u¿yteczna przy przekazywaniu referencji do wzorców funkcji
450 Group: Development/Libraries
451 Requires: %{name}-devel = %{version}-%{release}
453 %description ref-devel
454 boost::ref library is a small library that is useful for passing
455 references to function templates (algorithms) that would usually take
456 copies of their arguments.
458 %description ref-devel -l pl
459 Biblioteka boost::ref jest ma³± bibliotek± która jest u¿yteczna w
460 przypadku przekazywania referencji do wzorców funkcji (algorytmów)
461 które zazwyczaj bior± kopiê swoich argumentów.
464 Summary: Signals & slots callback implementation
465 Summary(pl): Implementacja sygna³ów i slotów
467 Obsoletes: boost < 1.33
470 The boost::signals library is an implementation of a signals and slots
473 %description signals -l pl
474 Biblioteka boost::signals jest implementacj± systemu sygna³ów i
477 %package signals-devel
478 Summary: Header files for boost::signals library
479 Summary(pl): Pliki nag³ówkowe dla biblioteki boost::signals
480 Group: Development/Libraries
481 Requires: %{name}-any-devel = %{version}-%{release}
482 Requires: %{name}-devel = %{version}-%{release}
483 Requires: %{name}-signals = %{version}-%{release}
484 #TODO: separate smart_ptr or include to the main devel package
485 Requires: %{name}-bind-devel = %{version}-%{release}
486 #Requires: %{name}-iterator_adaptors-devel = %{version}-%{release}
487 #Requires: %{name}-operators-devel = %{version}-%{release}
488 Requires: %{name}-ref-devel = %{version}-%{release}
489 #Requires: %{name}-smart_ptr-devel = %{version}-%{release}
491 %description signals-devel
492 Header files for boost::signals library.
494 %description signals-devel -l pl
495 Pliki nag³ówkowe dla biblioteki boost::signals.
497 %package signals-static
498 Summary: Static library for boost::signals
499 Summary(pl): Biblioteka statyczna dla boost::signals
500 Group: Development/Libraries
501 Requires: %{name}-signals-devel = %{version}-%{release}
503 %description signals-static
504 Static library for boost::signals.
506 %description signals-static -l pl
507 Biblioteka statyczna dla boost::signals.
509 %package spirit-devel
510 Summary: LL parser framework
511 Summary(pl): Szkielet parsera LL
512 Group: Development/Libraries
513 Requires: %{name}-compressed_pair-devel = %{version}-%{release}
514 Requires: %{name}-ref-devel = %{version}-%{release}
515 Requires: %{name}-regex-devel = %{version}-%{release}
516 Requires: %{name}-thread-devel = %{version}-%{release}
518 #?Requires: %{name}-iterators-devel = %{version}-%{release}
519 #?Requires: %{name}-smart_ptr-devel = %{version}-%{release}
521 %description spirit-devel
522 LL parser framework represents parsers directly as EBNF grammars in
525 %description spirit-devel -l pl
526 Szkielet parsera LL reprezentuj±cy parsery jako gramatyki EBNF
527 bezpo¶rednio w kodzie C++.
530 Summary: Support for program testing and execution monitoring
531 Summary(pl): Wsparcie dla testowania i monitorowania programu
533 Obsoletes: boost < 1.33
536 Support for simple program testing, full unit testing, and for program
537 execution monitoring.
539 %description test -l pl
540 Wsparcie dla prostego testowania programu, pe³nego testowania i
541 monitorowania wykonania programu.
544 Summary: Header files for boost::test
545 Summary(pl): Pliki nag³ówkowe dla boost::test
546 Group: Development/Libraries
547 Requires: %{name}-call_traits-devel = %{version}-%{release}
548 Requires: %{name}-devel = %{version}-%{release}
549 Requires: %{name}-test = %{version}-%{release}
551 #?Requires?: %{name}-function-devel = %{version}-%{release}
552 #Requires: %{name}-smart_ptr = %{version}-%{release}
554 %description test-devel
555 Header files for boost::test.
557 %description test-devel -l pl
558 Pliki nag³ówkowe dla boost::test.
561 Summary: Static boost::test libraries
562 Summary(pl): Biblioteki statyczne boost::test
563 Group: Development/Libraries
564 Requires: %{name}-test-devel = %{version}-%{release}
565 Obsoletes: boost-static < 1.33
567 %description test-static
568 Static boost::test libraries.
570 %description test-static -l pl
571 Biblioteki statyczne boost::test.
574 Summary: Portable C++ threads library
575 Summary(pl): Przeno¶na biblioteka w±tków C++
577 Obsoletes: boost < 1.33
580 Portable C++ threads library - shared library.
582 %description thread -l pl
583 Przeno¶na biblioteka w±tków dla C++ - biblioteka dzielona.
585 %package thread-devel
586 Summary: Header files for boost::thread library
587 Summary(pl): Pliki nag³ówkowe dla biblioteki boost::thread
588 Group: Development/Libraries
589 Requires: %{name}-devel = %{version}-%{release}
590 Requires: %{name}-thread = %{version}-%{release}
591 #TODO:requires boost::function or boost::function to boost-devel
593 %description thread-devel
594 Header files for boost::thread library.
596 %description thread-devel -l pl
597 Pliki nag³ówkowe dla biblioteki boost::thread.
599 %package thread-static
600 Summary: Portable C++ threads library - static version
601 Summary(pl): Przeno¶na biblioteka w±tków C++ - wersja statyczna
603 Requires: %{name}-thread-devel = %{version}-%{release}
604 Obsoletes: boost < 1.33
606 %description thread-static
607 Portable C++ threads library - static library.
609 %description thread-static -l pl
610 Przeno¶na biblioteka w±tków dla C++ - biblioteka statyczna.
613 Summary: Basic linear algebra for dense, packed and sparse matrices
614 Summary(pl): Prosta liniowa algebra dla gêstych, upakowanych i rzadkich macierzy
615 Group: Development/Libraries
616 Requires: %{name}-devel = %{version}-%{release}
618 %description uBLAS-devel
619 uBLAS library provides templated C++ classes for dense, unit and
620 sparse vectors, dense, identity, triangular, banded, symmetric,
621 hermitian and sparse matrices.
623 %description uBLAS-devel -l pl
624 Biblioteka uBLAS dostarcza wzorce klas C++ dla gêstych, jednostkowych
625 i rzadkich wektorów oraz gêstych, jednostkowych, trójk±tnych,
626 diagonalnych, symetrycznych, hermitowskich i rzadkich macierzy.
629 Summary: Boost.Wave - a standard compliant C++ preprocessor library
630 Summary(pl): Boost.Wave - zgodna ze standardem biblioteka preprocesora C++
631 Group: Development/Libraries
632 Requires: %{name}-devel = %{version}-%{release}
634 %description wave-devel
635 Boost.Wave - a standard compliant C++ preprocessor library.
637 %description wave-devel -l pl
638 Boost.Wave - zgodna ze standardem biblioteka preprocesora C++.
641 Summary: Boost C++ Library documentation
642 Summary(pl): Dokumentacja dla biblioteki Boost C++
644 Requires: %{name}-devel = %{version}-%{release}
647 Documentation for the Boost C++ Library.
649 %description doc -l pl
650 Dokumentacja dla biblioteki Boost C++.
653 %setup -q -n %{name}_%{_fver}
657 # don't know how to pass it through (b)jam -s (no way?)
658 # due to oversophisticated build flags system
659 %{__perl} -pi -e 's/ -O3 / %{rpmcxxflags} /' tools/build/v1/gcc-tools.jam
662 # -pthread gcc parameter doesn't add _REENTRANT to cpp macros on alpha (only)
663 # don't know, is it gcc bug or intentional omission?
664 # anyway, boost check of -D_REENTRANT in its headers, so it's needed here
665 %{__perl} -pi -e 's/(CFLAGS.*-pthread)/$1 -D_REENTRANT/' tools/build/v1/gcc-tools.jam
670 PYTHON_VERSION=$(%{__python} -c 'import sys; print sys.version[0:3]')
671 PYTHON_ROOT=%{_prefix}
680 -sHAVE_ICU=1 -sICU_PATH=/usr \
681 -sBUILD="release <threading>multi <shared-linkable>true <inlining>on" \
682 -sPYTHON_ROOT=$PYTHON_ROOT \
683 -sPYTHON_VERSION=$PYTHON_VERSION
686 rm -rf $RPM_BUILD_ROOT
687 install -d $RPM_BUILD_ROOT{%{_libdir},%{_includedir}}
689 cp -rf boost $RPM_BUILD_ROOT%{_includedir}
691 install bin/boost/libs/*/build/*.a/*/release/inlining-on/shared-linkable-true/*/lib*.a $RPM_BUILD_ROOT%{_libdir}
692 install bin/boost/libs/*/build/*.so/*/release/inlining-on/shared-linkable-true/*/lib*.so.*.*.* $RPM_BUILD_ROOT%{_libdir}
693 # use cp -d, install follows symlinks instead of preserving them!
694 cp -df bin/boost/libs/*/build/*.so/*/release/inlining-on/shared-linkable-true/*/lib*.so $RPM_BUILD_ROOT%{_libdir}
696 # create symlinks without -gcc-mt-* things in names
697 for f in $RPM_BUILD_ROOT%{_libdir}/*.so.*; do
698 [ -f "$f" ] || continue
700 soname=$(basename "$f" | sed -e 's#-gcc-mt-.*#.so#g')
702 ln -s "$f" "$RPM_BUILD_ROOT%{_libdir}/${soname}"
704 for f in $RPM_BUILD_ROOT%{_libdir}/*.a; do
705 [ -f "$f" ] || continue
707 soname=$(basename "$f" | sed -e 's#-gcc-mt-.*#.a#g')
709 ln -s "$f" "$RPM_BUILD_ROOT%{_libdir}/${soname}"
713 install -d $RPM_BUILD_ROOT%{_docdir}/boost-%{version}
714 install README $RPM_BUILD_ROOT%{_docdir}/boost-%{version}
716 # as the documentation doesn't completely reside in a directory of its
717 # own, we need to find out ourselves... this looks for HTML files and
718 # then collects everything linked from those. this is certainly quite
719 # unoptimized wrt mkdir calls, but does it really matter?
721 for i in $(find -type f -name '*.htm*'); do
722 # bjam docu is included in the boost-jam RPM
723 if test "`echo $i | sed 's,jam_src,,'`" = "$i"; then
724 install -d $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/${i%/*}
725 for LINKED in `%{__perl} - $i $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/$i <<'EOT'
729 # rewrite links from boost/* to %{_includedir}/boost/* and
730 # ignore external links as well as document-internal ones.
731 # HTML files are also ignored as they get installed anyway.
732 if (!($link =~ s,^(?:../)*boost/,%{_includedir}/boost/,) && !($link =~ m,(?:^[^/]+:|^\#|\.html?(?:$|\#)),))
734 (my $file = $link) =~ s/\#.*//;
740 open OUT, ">@ARGV[1]";
744 $in_link and s/^\s*"([^"> ]*)"/'"' . rewrite_link($1) . '"'/e;
745 s/(href|src)="([^"> ]*)"/"$1=\"" . rewrite_link($2) . '"'/eig;
747 $in_link = /href|src=\s*$/;
750 TARGET=${i%/*}/$LINKED
751 # ignore non-existant linked files
752 if test -f $TARGET; then
753 install -D -m 644 $TARGET $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/$TARGET
761 rm -rf $RPM_BUILD_ROOT
763 %post -p /sbin/ldconfig
764 %postun -p /sbin/ldconfig
766 %post date_time -p /sbin/ldconfig
767 %postun date_time -p /sbin/ldconfig
769 %post filesystem -p /sbin/ldconfig
770 %postun filesystem -p /sbin/ldconfig
772 %post python -p /sbin/ldconfig
773 %postun python -p /sbin/ldconfig
775 %post program_options -p /sbin/ldconfig
776 %postun program_options -p /sbin/ldconfig
778 %post regex -p /sbin/ldconfig
779 %postun regex -p /sbin/ldconfig
781 %post signals -p /sbin/ldconfig
782 %postun signals -p /sbin/ldconfig
784 %post test -p /sbin/ldconfig
785 %postun test -p /sbin/ldconfig
787 %post thread -p /sbin/ldconfig
788 %postun thread -p /sbin/ldconfig
791 %defattr(644,root,root,755)
792 %attr(755,root,root) %{_libdir}/libboost_iostreams*.so.*.*.*
793 %attr(755,root,root) %{_libdir}/libboost_serialization*.so.*.*.*
794 %attr(755,root,root) %{_libdir}/libboost_wserialization*.so.*.*.*
797 %defattr(644,root,root,755)
798 %attr(755,root,root) %{_libdir}/libboost_iostreams*.so
799 %attr(755,root,root) %{_libdir}/libboost_serialization*.so
800 %attr(755,root,root) %{_libdir}/libboost_wserialization*.so
801 %dir %{_includedir}/boost
802 %{_includedir}/boost/algorithm
803 %{_includedir}/boost/archive
804 %{_includedir}/boost/assert.hpp
805 %{_includedir}/boost/assign
806 %{_includedir}/boost/assign.hpp
807 %{_includedir}/boost/blank_fwd.hpp
808 %{_includedir}/boost/cast.hpp
809 %{_includedir}/boost/checked_delete.hpp
810 %{_includedir}/boost/concept_archetype.hpp
811 %{_includedir}/boost/concept_check.hpp
812 %{_includedir}/boost/config
813 %{_includedir}/boost/config.hpp
814 %{_includedir}/boost/cstd*.hpp
815 %{_includedir}/boost/current_function.hpp
816 %dir %{_includedir}/boost/detail
817 %{_includedir}/boost/detail/algorithm.hpp
818 %{_includedir}/boost/detail/allocator_utilities.hpp
819 %{_includedir}/boost/detail/atomic_count*.hpp
820 %{_includedir}/boost/detail/bad_weak_ptr.hpp
821 %{_includedir}/boost/detail/binary_search.hpp
822 %{_includedir}/boost/detail/catch_exceptions.hpp
823 %{_includedir}/boost/detail/dynamic_bitset.hpp
824 %{_includedir}/boost/detail/endian.hpp
825 %{_includedir}/boost/detail/indirect_traits.hpp
826 %{_includedir}/boost/detail/interlocked.hpp
827 %{_includedir}/boost/detail/is_function_ref_tester.hpp
828 %{_includedir}/boost/detail/is_incrementable.hpp
829 %{_includedir}/boost/detail/is_xxx.hpp
830 %{_includedir}/boost/detail/iterator.hpp
831 %{_includedir}/boost/detail/lightweight_*.hpp
832 %{_includedir}/boost/detail/limits.hpp
833 %{_includedir}/boost/detail/lwm_*.hpp
834 %{_includedir}/boost/detail/named_template_params.hpp
835 %{_includedir}/boost/detail/no_exceptions_support.hpp
836 %{_includedir}/boost/detail/numeric_traits.hpp
837 %{_includedir}/boost/detail/quick_allocator.hpp
838 %{_includedir}/boost/detail/reference_content.hpp
839 %{_includedir}/boost/detail/select_type.hpp
840 %{_includedir}/boost/detail/shared_*.hpp
841 %{_includedir}/boost/detail/sp_counted_*.hpp
842 %{_includedir}/boost/detail/utf8_codecvt_facet.hpp
843 %{_includedir}/boost/detail/workaround.hpp
844 %{_includedir}/boost/dynamic_bitset
845 %{_includedir}/boost/dynamic_bitset.hpp
846 %{_includedir}/boost/dynamic_bitset_fwd.hpp
847 %{_includedir}/boost/dynamic_property_map.hpp
848 %{_includedir}/boost/enable_shared_from_this.hpp
849 %{_includedir}/boost/format
850 %{_includedir}/boost/format.hpp
851 %{_includedir}/boost/function
852 %{_includedir}/boost/function.hpp
853 %{_includedir}/boost/function_equal.hpp
854 %{_includedir}/boost/function_output_iterator.hpp
855 %{_includedir}/boost/functional
856 %{_includedir}/boost/functional.hpp
857 %{_includedir}/boost/generator_iterator.hpp
858 %{_includedir}/boost/graph
859 %{_includedir}/boost/implicit_cast.hpp
860 %{_includedir}/boost/indirect_reference.hpp
861 %{_includedir}/boost/integer
862 %{_includedir}/boost/integer*.hpp
863 %{_includedir}/boost/intrusive_ptr.hpp
864 %{_includedir}/boost/io
865 %{_includedir}/boost/iostreams
866 %{_includedir}/boost/io_fwd.hpp
867 %{_includedir}/boost/iterator*.hpp
868 %{_includedir}/boost/iterator
869 %{_includedir}/boost/lambda
870 %{_includedir}/boost/lexical_cast.hpp
871 %{_includedir}/boost/limits.hpp
872 %{_includedir}/boost/logic
873 %{_includedir}/boost/math
874 %{_includedir}/boost/math_fwd.hpp
875 %{_includedir}/boost/mpl
876 %{_includedir}/boost/multi_array
877 %{_includedir}/boost/multi_array.hpp
878 %{_includedir}/boost/multi_index
879 %{_includedir}/boost/multi_index_container.hpp
880 %{_includedir}/boost/multi_index_container_fwd.hpp
881 %{_includedir}/boost/next_prior.hpp
882 %{_includedir}/boost/noncopyable.hpp
883 %{_includedir}/boost/nondet_random.hpp
884 %{_includedir}/boost/none.hpp
885 %{_includedir}/boost/none_t.hpp
886 %{_includedir}/boost/non_type.hpp
887 %dir %{_includedir}/boost/numeric
888 %{_includedir}/boost/numeric/interval*
889 %{_includedir}/boost/numeric/conversion
890 %{_includedir}/boost/operators.hpp
891 %{_includedir}/boost/optional
892 %{_includedir}/boost/optional.hpp
893 %{_includedir}/boost/parameter
894 %{_includedir}/boost/parameter.hpp
895 %{_includedir}/boost/pending
896 %{_includedir}/boost/pfto.hpp
897 %{_includedir}/boost/pool
898 %{_includedir}/boost/pointee.hpp
899 %{_includedir}/boost/preprocessor
900 %{_includedir}/boost/preprocessor.hpp
901 %{_includedir}/boost/progress.hpp
902 %{_includedir}/boost/property_map*.hpp
903 %{_includedir}/boost/ptr_container
904 %{_includedir}/boost/random
905 %{_includedir}/boost/random.hpp
906 %{_includedir}/boost/range
907 %{_includedir}/boost/range.hpp
908 %{_includedir}/boost/rational.hpp
909 %{_includedir}/boost/scoped_*.hpp
910 %{_includedir}/boost/serialization
911 %{_includedir}/boost/shared_*.hpp
912 %{_includedir}/boost/smart_cast.hpp
913 %{_includedir}/boost/smart_ptr.hpp
914 %{_includedir}/boost/state_saver.hpp
915 %{_includedir}/boost/static_assert.hpp
916 %{_includedir}/boost/static_warning.hpp
917 %{_includedir}/boost/strong_typedef.hpp
918 %{_includedir}/boost/throw_exception.hpp
919 %{_includedir}/boost/timer.hpp
920 %{_includedir}/boost/token*.hpp
921 %{_includedir}/boost/tuple
922 %{_includedir}/boost/type.hpp
923 %{_includedir}/boost/type_traits.hpp
924 %{_includedir}/boost/type_traits
925 %{_includedir}/boost/utility*.hpp
926 %{_includedir}/boost/utility
927 %{_includedir}/boost/version.hpp
928 %{_includedir}/boost/vector_property_map.hpp
929 %{_includedir}/boost/weak_ptr.hpp
931 %{_includedir}/boost/variant.hpp
932 %{_includedir}/boost/variant
933 %{_includedir}/boost/blank.hpp
934 %{_includedir}/boost/detail/templated_streams.hpp
936 %{_includedir}/boost/aligned_storage.hpp
937 %{_includedir}/boost/detail/none_t.hpp
940 %defattr(644,root,root,755)
941 %{_libdir}/libboost_iostreams*.a
942 %{_libdir}/libboost_serialization*.a
943 %{_libdir}/libboost_wserialization*.a
947 %defattr(644,root,root,755)
948 %attr(755,root,root) %{_libdir}/libboost_python*.so.*.*.*
951 %defattr(644,root,root,755)
952 %attr(755,root,root) %{_libdir}/libboost_python*.so
953 %{_includedir}/boost/python
954 %{_includedir}/boost/python.hpp
957 %defattr(644,root,root,755)
958 %{_libdir}/libboost_python*.a
962 %defattr(644,root,root,755)
963 %attr(755,root,root) %{_libdir}/libboost_regex*.so.*.*.*
966 %defattr(644,root,root,755)
967 %attr(755,root,root) %{_libdir}/libboost_regex*.so
968 %{_includedir}/boost/cregex.hpp
969 %{_includedir}/boost/regex.h
970 %{_includedir}/boost/regex*.hpp
971 %{_includedir}/boost/regex
974 %defattr(644,root,root,755)
975 %{_libdir}/libboost_regex*.a
978 %defattr(644,root,root,755)
979 %{_includedir}/boost/any.hpp
982 %defattr(644,root,root,755)
983 %{_includedir}/boost/array.hpp
986 %defattr(644,root,root,755)
987 %{_includedir}/boost/bind
988 %{_includedir}/boost/bind.hpp
989 %{_includedir}/boost/get_pointer.hpp
990 %{_includedir}/boost/mem_fn.hpp
992 %files call_traits-devel
993 %defattr(644,root,root,755)
994 %{_includedir}/boost/call_traits.hpp
995 %{_includedir}/boost/detail/call_traits.hpp
996 %{_includedir}/boost/detail/ob_call_traits.hpp
998 %files compatibility-devel
999 %defattr(644,root,root,755)
1000 %{_includedir}/boost/compatibility
1002 %files compressed_pair-devel
1003 %defattr(644,root,root,755)
1004 %{_includedir}/boost/compressed_pair.hpp
1005 %{_includedir}/boost/detail/compressed_pair.hpp
1006 %{_includedir}/boost/detail/ob_compressed_pair.hpp
1009 %defattr(644,root,root,755)
1010 %{_includedir}/boost/crc.hpp
1013 %defattr(644,root,root,755)
1014 %attr(755,root,root) %{_libdir}/libboost_date_time*.so.*.*.*
1016 %files date_time-devel
1017 %defattr(644,root,root,755)
1018 %attr(755,root,root) %{_libdir}/libboost_date_time*.so
1019 %{_includedir}/boost/date_time
1021 %files date_time-static
1022 %defattr(644,root,root,755)
1023 %{_libdir}/libboost_date_time*.a
1026 %defattr(644,root,root,755)
1027 %attr(755,root,root) %{_libdir}/libboost_filesystem*.so.*.*.*
1029 %files filesystem-devel
1030 %defattr(644,root,root,755)
1031 %attr(755,root,root) %{_libdir}/libboost_filesystem*.so
1032 %{_includedir}/boost/filesystem
1034 %files filesystem-static
1035 %defattr(644,root,root,755)
1036 %{_libdir}/libboost_filesystem*.a
1038 %files program_options
1039 %defattr(644,root,root,755)
1040 %attr(755,root,root) %{_libdir}/libboost_program_options*.so.*.*.*
1042 %files program_options-devel
1043 %defattr(644,root,root,755)
1044 %attr(755,root,root) %{_libdir}/libboost_program_options*.so
1045 %{_includedir}/boost/program_options
1046 %{_includedir}/boost/program_options.hpp
1048 %files program_options-static
1049 %defattr(644,root,root,755)
1050 %{_libdir}/libboost_program_options*.a
1053 %defattr(644,root,root,755)
1054 %{_includedir}/boost/ref.hpp
1057 %defattr(644,root,root,755)
1058 %attr(755,root,root) %{_libdir}/libboost_signals*.so.*.*.*
1060 %files signals-devel
1061 %defattr(644,root,root,755)
1062 %attr(755,root,root) %{_libdir}/libboost_signals*.so
1063 %{_includedir}/boost/signal*.hpp
1064 %{_includedir}/boost/signals
1065 %{_includedir}/boost/last_value.hpp
1066 %{_includedir}/boost/visit_each.hpp
1068 %files signals-static
1069 %defattr(644,root,root,755)
1070 %{_libdir}/libboost_signals*.a
1073 %defattr(644,root,root,755)
1074 %{_includedir}/boost/spirit.hpp
1075 %{_includedir}/boost/spirit
1078 %defattr(644,root,root,755)
1079 %attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor*.so.*.*.*
1080 %attr(755,root,root) %{_libdir}/libboost_test_exec_monitor*.so.*.*.*
1081 %attr(755,root,root) %{_libdir}/libboost_unit_test_framework*.so.*.*.*
1084 %defattr(644,root,root,755)
1085 %attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor*.so
1086 %attr(755,root,root) %{_libdir}/libboost_test_exec_monitor*.so
1087 %attr(755,root,root) %{_libdir}/libboost_unit_test_framework*.so
1088 %{_includedir}/boost/test
1091 %defattr(644,root,root,755)
1092 %{_libdir}/libboost_prg_exec_monitor*.a
1093 %{_libdir}/libboost_test_exec_monitor*.a
1094 %{_libdir}/libboost_unit_test_framework*.a
1097 %defattr(644,root,root,755)
1098 %attr(755,root,root) %{_libdir}/libboost_thread*.so.*.*.*
1101 %defattr(644,root,root,755)
1102 %attr(755,root,root) %{_libdir}/libboost_thread*.so
1103 %{_includedir}/boost/thread
1104 %{_includedir}/boost/thread.hpp
1106 %files thread-static
1107 %defattr(644,root,root,755)
1108 %attr(755,root,root) %{_libdir}/libboost_thread*.a
1111 %defattr(644,root,root,755)
1112 %{_includedir}/boost/numeric/ublas
1115 %defattr(644,root,root,755)
1116 %{_libdir}/libboost_wave*.a
1117 %{_includedir}/boost/wave
1118 %{_includedir}/boost/wave.hpp
1121 %defattr(644,root,root,755)
1122 %{_docdir}/%{name}-%{version}