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 URL: http://www.boost.org/
17 BuildRequires: boost-jam >= 3.1.3
18 BuildRequires: libstdc++-devel
19 BuildRequires: perl-base
20 %{?with_python:BuildRequires: python-devel >= 2.2}
21 BuildRequires: rpm-pythonprov
22 BuildConflicts: gcc = 5:3.3.1
23 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
26 The Boost web site provides free peer-reviewed portable C++ source
27 libraries. The emphasis is on libraries which work well with the C++
28 Standard Library. One goal is to establish "existing practice" and
29 provide reference implementations so that the Boost libraries are
30 suitable for eventual standardization. Some of the libraries have
31 already been proposed for inclusion in the C++ Standards Committee's
32 upcoming C++ Standard Library Technical Report.
35 Strona http://www.boost.org/ dostarcza darmowe biblioteki C++ wraz z
36 kodem ¼ród³owym. Nacisk po³o¿ono na biblioteki, które dobrze
37 wspó³pracuj± ze standardow± bibliotek± C++. Celem jest ustanowienie
38 "istniej±cej praktyki" i dostarczenie implementacji, tak ¿e biblioteki
39 "Boost" nadaj± siê do ewentualnej standaryzacji. Niektóre z bibliotek
40 ju¿ zosta³y zg³oszone do komitetu standaryzacyjnego C++ w nadchodz±cym
41 Raporcie Technicznym Biblioteki Standardowej C++
44 Summary: Boost C++ development headers
45 Summary(pl): Pliki nag³ówkowe bibliotek C++ Boost
46 Group: Development/Libraries
47 Requires: %{name} = %{version}-%{release}
48 Requires: libstdc++-devel
49 # temporary Provides (until CVS HEAD stops using it)?
50 Provides: boost-concept_check-devel = %{version}-%{release}
51 Provides: boost-conversion-devel = %{version}-%{release}
52 Provides: boost-mpl-devel = %{version}-%{release}
53 Provides: boost-preprocessor-devel = %{version}-%{release}
54 Provides: boost-static_assert-devel = %{version}-%{release}
55 Provides: boost-type_traits-devel = %{version}-%{release}
56 Provides: boost-utility-devel = %{version}-%{release}
57 Obsoletes: boost-concept_check-devel
58 Obsoletes: boost-conversion-devel
59 Obsoletes: boost-mpl-devel
60 Obsoletes: boost-preprocessor-devel
61 Obsoletes: boost-static_assert-devel
62 Obsoletes: boost-type_traits-devel
63 Obsoletes: boost-utility-devel
66 Header files for the Boost C++ libraries.
68 %description devel -l pl
69 Pliki nag³ówkowe bibliotek C++ Boost.
72 Summary: Static version of base Boost C++ libraries
73 Summary(pl): Statyczne wersje podstawowych bibliotek C++ Boost
74 Group: Development/Libraries
75 Requires: %{name}-devel = %{version}-%{release}
78 Static version of base Boost C++ libraries.
80 %description static -l pl
81 Statyczne wersje podstawowych bibliotek C++ Boost.
84 Summary: Boost.Python library
85 Summary(pl): biblioteka Boost.Python
90 Use the Boost Python Library to quickly and easily export a C++
91 library to Python such that the Python interface is very similar to
92 the C++ interface. It is designed to be minimally intrusive on your
93 C++ design. In most cases, you should not have to alter your C++
94 classes in any way in order to use them with Boost.Python. The system
95 should simply ``reflect'' your C++ classes and functions into Python.
97 %description python -l pl
98 Biblioteka Boost Python s³u¿y do szybkiego i prostego eksportu
99 biblioteki C++ do Pythona, tak ¿e interfejs Pythona jest bardzo
100 podobny do interfejsu C++. Biblioteka jest zaprojektowana tak, ¿eby
101 narzucaæ jak najmniej wymagañ dotycz±cych konstrukcjii C++. W
102 wiêkszo¶ci przypadków nie trzeba w ogóle zmieniaæ w³asnych klas C++,
103 ¿eby u¿ywaæ ich z Boost.Python. System powinien po prostu ,,odbiæ''
104 klasy C++ i funkcje do Pythona.
106 %package python-devel
107 Summary: Boost.Python development headers
108 Summary(pl): Pliki nag³ówkowe dla Boost.Python
109 Group: Development/Libraries
110 Requires: %{name}-compressed_pair-devel = %{version}-%{release}
111 Requires: %{name}-devel = %{version}-%{release}
112 Requires: %{name}-python = %{version}-%{release}
114 %description python-devel
115 Headers for the Boost.Python library.
117 %description python-devel -l pl
118 Pliki nag³ówkowe dla biblioteki Boost.Python.
120 %package python-static
121 Summary: Static version of Boost.Python library
122 Summary(pl): Statyczna wersja biblioteki Boost.Python
123 Group: Development/Libraries
124 Requires: %{name}-python-devel = %{version}-%{release}
126 %description python-static
127 Static version of Boost.Python library.
129 %description python-static -l pl
130 Statyczna wersja biblioteki Boost.Python.
133 Summary: Boost C++ regular expressions library
134 Summary(pl): Biblioteka wyra¿eñ regularnych Boost C++
138 Shared library for Boost C++ regular expressions.
140 %description regex -l pl
141 Biblioteka wyra¿eñ regularnych dla C++, biblioteki dzielone.
144 Summary: Boost C++ Regex library headers
145 Summary(pl): Pliki nag³ówkowe Boost C++ Regex
146 Group: Development/Libraries
147 Requires: %{name}-devel = %{version}-%{release}
148 Requires: %{name}-regex = %{version}-%{release}
150 %description regex-devel
151 Boost C++ Regex headers.
153 %description regex-devel -l pl
154 Pliki nag³ówkowe dla Boost C++ Regex.
156 %package regex-static
157 Summary: Boost C++ Regex static libraries
158 Summary(pl): Biblioteki statyczne Boost C++ Regex
159 Group: Development/Libraries
160 Requires: %{name}-regex-devel = %{version}-%{release}
162 %description regex-static
163 Boost C++ Regex static libraries.
165 %description regex-static -l pl
166 Biblioteki statyczne dla Boost C++ Regex.
169 Summary: Header for Boost C++ "Any" Library
170 Summary(pl): Plik nag³ówkowy dla biblioteki Boost C++ "Any"
171 Group: Development/Libraries
172 Requires: %{name}-devel = %{version}-%{release}
174 %description any-devel
175 The boost::any class, is a variant value type, which supports copying
176 of any value type and safe checked extraction of that value strictly
179 I.e. 5 is held strictly as an int and is not implicitly convertible
180 either to "5" or to 5.0.
182 %description any-devel -l pl
183 Klasa boost::any jest typem, który umo¿liwia kopiowanie ze zmiennej
184 dowolnego typu i bezpieczne, sprawdzone wydobycie jej warto¶ci
185 dok³adnie tego samego typu.
187 Np. 5 jest trzymane jako int i nie jest niejawnie konwertowalne ani do
191 Summary: STL compliant container wrapper for arrays of constant size
192 Summary(pl): Wrapper na STLowe kontenery dla tablic o sta³ym rozmiarze
193 Group: Development/Libraries
194 Requires: %{name}-devel = %{version}-%{release}
196 %description array-devel
197 As replacement for ordinary arrays, the STL provides class vector<>.
198 However, vector<> provides the semantics of dynamic arrays. Thus, it
199 manages data to be able to change the number of elements. This results
200 in some overhead in case only arrays with static size are needed. This
201 library provides support for such static size arrays.
203 %description array-devel -l pl
204 STL dostarcza klasê vector<> jako zamiennik zwyk³ej tablicy. Jednak
205 vector<> dostarcza semantykê dynamicznych tablic. Zatem zarz±dza
206 danymi tak, by by³a mo¿liwa zmiana ilo¶ci elementów. To skutkuje
207 pewnym nadmiarem w przypadku kiedy tylko tablice o sta³ym rozmiarze s±
208 potrzebne. Ta biblioteka dostarcza wsparcie dla takich w³a¶nie tablic
212 Summary: Generalized binders for function/object/pointers and member functions
213 Summary(pl): Uogólnione bindery dla funkcji/obiektów/wska¼ników oraz metod
214 Group: Development/Libraries
215 Requires: %{name}-ref-devel = %{version}-%{release}
216 Provides: boost-mem_fn-devel = %{version}-%{release}
217 Obsoletes: boost-mem_fn-devel
219 %description bind-devel
220 boost::bind is a generalization of the standard functions std::bind1st
221 and std::bind2nd. This package contains also boost::mem_fn which is a
222 generalization of the standard functions std::mem_fun and
225 %description bind-devel -l pl
226 boost::bind jest uogólnieniem standardowych funkcji std::bind1st i
227 std::bind2nd. Ten pakiet zawiera tak¿e boost::mem_fn, który jest
228 uogólnieniem standardowych funkcji std::mem_fun i std::mem_fun_ref.
230 %package call_traits-devel
231 Summary: Defines types for passing parameters
232 Summary(pl): Definiowanie typów dla przekazywania parametrów
233 Group: Development/Libraries
234 Requires: %{name}-devel = %{version}-%{release}
236 %description call_traits-devel
237 boost::call_traits<T> encapsulates the "best" method to pass a
238 parameter of some type T to or from a function. The purpose of
239 call_traits is to ensure that problems like "references to references"
240 never occur, and that parameters are passed in the most efficient
243 %description call_traits-devel -l pl
244 boost::call_traits<T> zawiera "najlepsz±" metodê przekazywania
245 parametrów jakiego¶ typu T do lub z funkcji. Celem call_traits jest
246 zapewnienie ¿e problemy takie jak "referencja referencji" nigdy nie
247 wyst±pi± i ¿e parametry s± przekazywane w mo¿liwie najbardziej
250 %package compatibility-devel
251 Summary: Help for non-conforming standard libraries
252 Summary(pl): Pomoc dla nie trzymaj±cych standardu bibliotek
253 Group: Development/Libraries
254 Requires: %{name}-devel = %{version}-%{release}
256 %description compatibility-devel
257 This library provides workarounds which allow the other Boost
258 libraries to be used on otherwise non-conforming platforms.
260 %description compatibility-devel -l pl
261 Biblioteka dostarcza obej¶cie problemu platform nie trzymaj±cych
262 standardu C++, pozwalaj±ce na u¿ywanie bibliotek Boost na tych
265 %package compose-devel
266 Summary: Functional composition adapters for the STL
267 Summary(pl): Funkcjonalne adaptery kompozycji dla STL
268 Group: Development/Libraries
269 Requires: %{name}-devel = %{version}-%{release}
271 %description compose-devel
272 The boost::compose provides compose function object adapter extensions
273 for use with the Standard Template Library (STL) portion of the C++
274 Standard Library. If you aren't currently using the STL, this library
275 won't be of any interest, but hard-core STL users will appreciate its
278 %description compose-devel -l pl
279 boost::compose dostarcza rozszerzenie adaptera obiektu funkcji compose
280 do u¿ytku z STL-ow± czê¶ci± Standardu C++. Je¿eli nie u¿ywasz STL,
281 biblioteka bêdzie poza twoim zainteresowaniem, lecz hardkorowi
282 u¿ytkownicy STL-a doceni± jej u¿yteczno¶æ.
284 %package compressed_pair-devel
285 Summary: Empty member optimization
286 Summary(pl): Optymalizacja pustego elementu
287 Group: Development/Libraries
288 Requires: %{name}-call_traits-devel = %{version}-%{release}
289 Requires: %{name}-devel = %{version}-%{release}
291 %description compressed_pair-devel
292 The class boost::compressed_pair is very similar to std::pair, but if
293 either of the template arguments are empty classes, then the "empty
294 base-class optimisation" is applied to compress the size of the pair.
296 %description compressed_pair-devel -l pl
297 Klasa boost::compressed_pair jest bardzo podobna do std::pair, ale
298 je¿eli który¶ z argumentów wzorca jest pust± klas±, wtedy stosowana
299 jest "optymalizacja pustej klasy bazowej" do kompresji pary.
302 Summary: CRC computing library
303 Summary(pl): Biblioteka obliczaj±ca CRC
304 Group: Development/Libraries
305 Requires: %{name}-devel = %{version}-%{release}
307 %description crc-devel
308 The boost::crc library provides two implementations of CRC computation
309 objects and functions. The implementations are template-based.
311 %description crc-devel -l pl
312 Bibliteka boost::crc dostarcza dwie implementacje obiektów i funkcji
313 obliczaj±cych CRC. Implementacje s± oparte na wzorcach.
316 Summary: Date-Time library
317 Summary(pl): Biblioteka daty-czasu
319 Obsoletes: boost < 1.33
321 %description date_time
322 A set of date-time libraries.
324 %description date_time -l pl
325 Zbiór bibliotek daty-czasu.
327 %package date_time-devel
328 Summary: Header files for boost::date_time library
329 Summary(pl): Pliki nag³ówkowe dla biblioteki boost::date_time
330 Group: Development/Libraries
331 Requires: %{name}-date_time = %{version}-%{release}
332 Requires: %{name}-devel = %{version}-%{release}
333 #TODO: make decision if do separate packages include it to main devel package
334 #Requires: %{name}-integer-devel = %{version}-%{release}
335 #Requires: %{name}-operators-devel = %{version}-%{release}
336 #Requires: %{name}-tokenizer-devel = %{version}-%{release}
338 %description date_time-devel
339 Header files for boost::date_time library.
341 %description date_time-devel -l pl
342 Pliki nag³ówkowe dla biblioteki boost::date_time
344 %package date_time-static
345 Summary: Static boost::date_time library
346 Summary(pl): Statyczna biblioteka boost::date_time
347 Group: Development/Libraries
348 Requires: %{name}-date_time-devel = %{version}-%{release}
350 %description date_time-static
351 Static boost::date_time library.
353 %description date_time-devel -l pl
354 Statyczna biblioteka boost::date_time.
357 Summary: Portable paths, iteration over directories, and other useful filesystem operations
358 Summary(pl): Przeno¶ne ¶cie¿ki, iteracje katalogów i inne u¿yteczne operacje na systemie plików
360 Obsoletes: boost < 1.33
362 %description filesystem
363 The boost::filesystem library provides portable facilities to query
364 and manipulate paths, files, and directories.
366 %description filesystem -l pl
367 Przeno¶na biblioteka boost::filesystem dostarcza u³atwienia w
368 operacjach na ¶cie¿kach, plikach i katalogach.
370 %package filesystem-devel
371 Summary: Header files for boost::filesystem
372 Summary(pl): Pliki nag³ówkowe dla boost::filesystem
373 Group: Development/Libraries
374 Requires: %{name}-devel = %{version}-%{release}
375 Requires: %{name}-filesystem = %{version}-%{release}
377 #Requires: %{name}-smart_ptr = %{version}-%{release}
379 %description filesystem-devel
380 Header files for boost::filesystem library.
382 %description filesystem-devel -l pl
383 Pliki nag³ówkowe dla biblioteki boost::filesystem.
385 %package filesystem-static
386 Summary: Static boost::filesystem library
387 Summary(pl): Biblioteka statyczna boost::filesystem
388 Group: Development/Libraries
389 Requires: %{name}-filesystem-devel = %{version}-%{release}
390 Obsoletes: boost-static < 1.33
392 %description filesystem-static
393 Static boost::filesystem library.
395 %description filesystem-static -l pl
396 Biblioteka statyczna boost::filesystem.
398 %package program_options
399 Summary: Access to program options, via conventional methods such as command line and config file
400 Summary(pl): Dostêp do opcji programu za pomoc± typowych metod, jak linia poleceñ i plik konfiguracyjny
403 %description program_options
404 The program_options library allows program developers to obtain
405 program options, that is (name, value) pairs from the user, via
406 conventional methods such as command line and config file.
408 %description program_options -l pl
409 Biblioteka program_options umo¿liwia uzyskanie od u¿ytkownika opcji
410 programu, czyli par (nazwa, warto¶æ), za pomoc± typowych metod,
411 takich jak linia poleceñ, czy plik konfiguracyjny.
413 %package program_options-devel
414 Summary: Header files for boost::program_options
415 Summary(pl): Pliki nag³ówkowe dla boost::program_options
416 Group: Development/Libraries
417 Requires: %{name}-devel = %{version}-%{release}
418 Requires: %{name}-program_options = %{version}-%{release}
420 %description program_options-devel
421 Header files for boost::program_options library.
423 %description program_options-devel -l pl
424 Pliki nag³ówkowe dla biblioteki boost::program_options.
426 %package program_options-static
427 Summary: Static boost::program_options library
428 Summary(pl): Biblioteka statyczna boost::program_options
429 Group: Development/Libraries
430 Requires: %{name}-program_options-devel = %{version}-%{release}
431 Obsoletes: boost-static < 1.33
433 %description program_options-static
434 Static boost::program_options library.
436 %description program_options-static -l pl
437 Biblioteka statyczna boost::program_options.
440 Summary: Small library useful for passing references to function templates
441 Summary(pl): Ma³a biblioteka u¿yteczna przy przekazywaniu referencji do wzorców funkcji
442 Group: Development/Libraries
443 Requires: %{name}-devel = %{version}-%{release}
445 %description ref-devel
446 boost::ref library is a small library that is useful for passing
447 references to function templates (algorithms) that would usually take
448 copies of their arguments.
450 %description ref-devel -l pl
451 Biblioteka boost::ref jest ma³± bibliotek± która jest u¿yteczna w
452 przypadku przekazywania referencji do wzorców funkcji (algorytmów)
453 które zazwyczaj bior± kopiê swoich argumentów.
456 Summary: Signals & slots callback implementation
457 Summary(pl): Implementacja sygna³ów i slotów
459 Obsoletes: boost < 1.33
462 The boost::signals library is an implementation of a signals and slots
465 %description signals -l pl
466 Biblioteka boost::signals jest implementacj± systemu sygna³ów i
469 %package signals-devel
470 Summary: Header files for boost::signals library
471 Summary(pl): Pliki nag³ówkowe dla biblioteki boost::signals
472 Group: Development/Libraries
473 Requires: %{name}-any-devel = %{version}-%{release}
474 Requires: %{name}-devel = %{version}-%{release}
475 Requires: %{name}-signals = %{version}-%{release}
476 #TODO: separate smart_ptr or include to the main devel package
477 Requires: %{name}-bind-devel = %{version}-%{release}
478 #Requires: %{name}-iterator_adaptors-devel = %{version}-%{release}
479 #Requires: %{name}-operators-devel = %{version}-%{release}
480 Requires: %{name}-ref-devel = %{version}-%{release}
481 #Requires: %{name}-smart_ptr-devel = %{version}-%{release}
483 %description signals-devel
484 Header files for boost::signals library.
486 %description signals-devel -l pl
487 Pliki nag³ówkowe dla biblioteki boost::signals.
489 %package signals-static
490 Summary: Static library for boost::signals
491 Summary(pl): Biblioteka statyczna dla boost::signals
492 Group: Development/Libraries
493 Requires: %{name}-signals-devel = %{version}-%{release}
495 %description signals-static
496 Static library for boost::signals.
498 %description signals-static -l pl
499 Biblioteka statyczna dla boost::signals.
501 %package spirit-devel
502 Summary: LL parser framework
503 Summary(pl): Szkielet parsera LL
504 Group: Development/Libraries
505 Requires: %{name}-compressed_pair-devel = %{version}-%{release}
506 Requires: %{name}-ref-devel = %{version}-%{release}
507 Requires: %{name}-regex-devel = %{version}-%{release}
508 Requires: %{name}-thread-devel = %{version}-%{release}
510 #?Requires: %{name}-iterators-devel = %{version}-%{release}
511 #?Requires: %{name}-smart_ptr-devel = %{version}-%{release}
513 %description spirit-devel
514 LL parser framework represents parsers directly as EBNF grammars in
517 %description spirit-devel -l pl
518 Szkielet parsera LL reprezentuj±cy parsery jako gramatyki EBNF
519 bezpo¶rednio w kodzie C++.
522 Summary: Support for program testing and execution monitoring
523 Summary(pl): Wsparcie dla testowania i monitorowania programu
525 Obsoletes: boost < 1.33
528 Support for simple program testing, full unit testing, and for program
529 execution monitoring.
531 %description test -l pl
532 Wsparcie dla prostego testowania programu, pe³nego testowania i
533 monitorowania wykonania programu.
536 Summary: Header files for boost::test
537 Summary(pl): Pliki nag³ówkowe dla boost::test
538 Group: Development/Libraries
539 Requires: %{name}-call_traits-devel = %{version}-%{release}
540 Requires: %{name}-devel = %{version}-%{release}
541 Requires: %{name}-test = %{version}-%{release}
543 #?Requires?: %{name}-function-devel = %{version}-%{release}
544 #Requires: %{name}-smart_ptr = %{version}-%{release}
546 %description test-devel
547 Header files for boost::test.
549 %description test-devel -l pl
550 Pliki nag³ówkowe dla boost::test.
553 Summary: Static boost::test libraries
554 Summary(pl): Biblioteki statyczne boost::test
555 Group: Development/Libraries
556 Requires: %{name}-test-devel = %{version}-%{release}
557 Obsoletes: boost-static < 1.33
559 %description test-static
560 Static boost::test libraries.
562 %description test-static -l pl
563 Biblioteki statyczne boost::test.
566 Summary: Portable C++ threads library
567 Summary(pl): Przeno¶na biblioteka w±tków C++
569 Obsoletes: boost < 1.33
572 Portable C++ threads library - shared library.
574 %description thread -l pl
575 Przeno¶na biblioteka w±tków dla C++ - biblioteka dzielona.
577 %package thread-devel
578 Summary: Header files for boost::thread library
579 Summary(pl): Pliki nag³ówkowe dla biblioteki boost::thread
580 Group: Development/Libraries
581 Requires: %{name}-devel = %{version}-%{release}
582 Requires: %{name}-thread = %{version}-%{release}
583 #TODO:requires boost::function or boost::function to boost-devel
585 %description thread-devel
586 Header files for boost::thread library.
588 %description thread-devel -l pl
589 Pliki nag³ówkowe dla biblioteki boost::thread.
591 %package thread-static
592 Summary: Portable C++ threads library - static version
593 Summary(pl): Przeno¶na biblioteka w±tków C++ - wersja statyczna
595 Requires: %{name}-thread-devel = %{version}-%{release}
596 Obsoletes: boost < 1.33
598 %description thread-static
599 Portable C++ threads library - static library.
601 %description thread-static -l pl
602 Przeno¶na biblioteka w±tków dla C++ - biblioteka statyczna.
605 Summary: Basic linear algebra for dense, packed and sparse matrices
606 Summary(pl): Prosta liniowa algebra dla gêstych, upakowanych i rzadkich macierzy
607 Group: Development/Libraries
608 Requires: %{name}-devel = %{version}-%{release}
610 %description uBLAS-devel
611 uBLAS library provides templated C++ classes for dense, unit and
612 sparse vectors, dense, identity, triangular, banded, symmetric,
613 hermitian and sparse matrices.
615 %description uBLAS-devel -l pl
616 Biblioteka uBLAS dostarcza wzorce klas C++ dla gêstych, jednostkowych
617 i rzadkich wektorów oraz gêstych, jednostkowych, trójk±tnych,
618 diagonalnych, symetrycznych, hermitowskich i rzadkich macierzy.
621 Summary: Boost.Wave - a standard compliant C++ preprocessor library
622 Summary(pl): Boost.Wave - zgodna ze standardem biblioteka preprocesora C++
623 Group: Development/Libraries
624 Requires: %{name}-devel = %{version}-%{release}
626 %description wave-devel
627 Boost.Wave - a standard compliant C++ preprocessor library.
629 %description wave-devel -l pl
630 Boost.Wave - zgodna ze standardem biblioteka preprocesora C++.
633 Summary: Boost C++ Library documentation
634 Summary(pl): Dokumentacja dla biblioteki Boost C++
636 Requires: %{name}-devel = %{version}-%{release}
639 Documentation for the Boost C++ Library.
641 %description doc -l pl
642 Dokumentacja dla biblioteki Boost C++.
645 %setup -q -n %{name}_%{_fver}
648 # don't know how to pass it through (b)jam -s (no way?)
649 # due to oversophisticated build flags system
650 %{__perl} -pi -e 's/ -O3 / %{rpmcflags} /' tools/build/v1/gcc-tools.jam
653 # -pthread gcc parameter doesn't add _REENTRANT to cpp macros on alpha (only)
654 # don't know, is it gcc bug or intentional omission?
655 # anyway, boost check of -D_REENTRANT in its headers, so it's needed here
656 %{__perl} -pi -e 's/(CFLAGS.*-pthread)/$1 -D_REENTRANT/' tools/build/v1/gcc-tools.jam
661 PYTHON_VERSION=`python -V 2>&1 | sed 's,.* \([0-9]\.[0-9]\)\(\.[0-9]\)\?.*,\1,'`
662 PYTHON_ROOT=%{_prefix}
669 -sBUILD="release <threading>multi" \
670 -sPYTHON_ROOT=$PYTHON_ROOT \
671 -sPYTHON_VERSION=$PYTHON_VERSION
674 rm -rf $RPM_BUILD_ROOT
675 install -d $RPM_BUILD_ROOT{%{_libdir},%{_includedir}}
677 cp -rf boost $RPM_BUILD_ROOT%{_includedir}
679 install bin/boost/libs/*/build/*.a/*/release/*/lib*.a $RPM_BUILD_ROOT%{_libdir}
680 install bin/boost/libs/*/build/*.so/*/release/*/*/lib*.so.*.*.* $RPM_BUILD_ROOT%{_libdir}
681 # use cp -d, install follows symlinks instead of preserving them!
682 cp -df bin/boost/libs/*/build/*.so/*/release/*/*/lib*.so $RPM_BUILD_ROOT%{_libdir}
684 # create symlinks without -gcc-mt-* things in names
685 for f in $RPM_BUILD_ROOT%{_libdir}/*.so.*; do
686 [ -f "$f" ] || continue
688 soname=$(basename "$f" | sed -e 's#-gcc-mt-.*#.so#g')
690 ln -s "$f" "$RPM_BUILD_ROOT%{_libdir}/${soname}"
692 for f in $RPM_BUILD_ROOT%{_libdir}/*.a; do
693 [ -f "$f" ] || continue
695 soname=$(basename "$f" | sed -e 's#-gcc-mt-.*#.a#g')
697 ln -s "$f" "$RPM_BUILD_ROOT%{_libdir}/${soname}"
701 install -d $RPM_BUILD_ROOT%{_docdir}/boost-%{version}
702 install README $RPM_BUILD_ROOT%{_docdir}/boost-%{version}
704 # as the documentation doesn't completely reside in a directory of its
705 # own, we need to find out ourselves... this looks for HTML files and
706 # then collects everything linked from those. this is certainly quite
707 # unoptimized wrt mkdir calls, but does it really matter?
708 for i in `find -type f -name '*.htm*'`; do
709 # bjam docu is included in the boost-jam RPM
710 if test "`echo $i | sed 's,jam_src,,'`" = "$i"; then
711 install -d $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/`dirname $i`
712 for LINKED in `%{__perl} - $i $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/$i <<'EOT'
716 # rewrite links from boost/* to %{_includedir}/boost/* and
717 # ignore external links as well as document-internal ones.
718 # HTML files are also ignored as they get installed anyway.
719 if (!($link =~ s,^(?:../)*boost/,%{_includedir}/boost/,) && !($link =~ m,(?:^[^/]+:|^\#|\.html?(?:$|\#)),))
721 (my $file = $link) =~ s/\#.*//;
727 open OUT, ">@ARGV[1]";
731 $in_link and s/^\s*"([^"> ]*)"/'"' . rewrite_link($1) . '"'/e;
732 s/(href|src)="([^"> ]*)"/"$1=\"" . rewrite_link($2) . '"'/eig;
734 $in_link = /href|src=\s*$/;
737 TARGET=`dirname $i`/$LINKED
738 # ignore non-existant linked files
739 if test -f $TARGET; then
740 install -d $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/`dirname $TARGET`
741 install -m 644 $TARGET $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/$TARGET
748 rm -rf $RPM_BUILD_ROOT
750 %post -p /sbin/ldconfig
751 %postun -p /sbin/ldconfig
753 %post date_time -p /sbin/ldconfig
754 %postun date_time -p /sbin/ldconfig
756 %post filesystem -p /sbin/ldconfig
757 %postun filesystem -p /sbin/ldconfig
759 %post python -p /sbin/ldconfig
760 %postun python -p /sbin/ldconfig
762 %post regex -p /sbin/ldconfig
763 %postun regex -p /sbin/ldconfig
765 %post signals -p /sbin/ldconfig
766 %postun signals -p /sbin/ldconfig
768 %post test -p /sbin/ldconfig
769 %postun test -p /sbin/ldconfig
771 %post thread -p /sbin/ldconfig
772 %postun thread -p /sbin/ldconfig
775 %defattr(644,root,root,755)
776 %attr(755,root,root) %{_libdir}/libboost_iostreams*.so.*.*.*
777 %attr(755,root,root) %{_libdir}/libboost_serialization*.so.*.*.*
778 %attr(755,root,root) %{_libdir}/libboost_wserialization*.so.*.*.*
781 %defattr(644,root,root,755)
782 %attr(755,root,root) %{_libdir}/libboost_iostreams*.so
783 %attr(755,root,root) %{_libdir}/libboost_serialization*.so
784 %attr(755,root,root) %{_libdir}/libboost_wserialization*.so
785 %dir %{_includedir}/boost
786 %{_includedir}/boost/algorithm
787 %{_includedir}/boost/archive
788 %{_includedir}/boost/assert.hpp
789 %{_includedir}/boost/assign
790 %{_includedir}/boost/assign.hpp
791 %{_includedir}/boost/blank_fwd.hpp
792 %{_includedir}/boost/cast.hpp
793 %{_includedir}/boost/checked_delete.hpp
794 %{_includedir}/boost/concept_archetype.hpp
795 %{_includedir}/boost/concept_check.hpp
796 %{_includedir}/boost/config
797 %{_includedir}/boost/config.hpp
798 %{_includedir}/boost/cstd*.hpp
799 %{_includedir}/boost/current_function.hpp
800 %dir %{_includedir}/boost/detail
801 %{_includedir}/boost/detail/algorithm.hpp
802 %{_includedir}/boost/detail/allocator_utilities.hpp
803 %{_includedir}/boost/detail/atomic_count*.hpp
804 %{_includedir}/boost/detail/bad_weak_ptr.hpp
805 %{_includedir}/boost/detail/binary_search.hpp
806 %{_includedir}/boost/detail/catch_exceptions.hpp
807 %{_includedir}/boost/detail/dynamic_bitset.hpp
808 %{_includedir}/boost/detail/endian.hpp
809 %{_includedir}/boost/detail/indirect_traits.hpp
810 %{_includedir}/boost/detail/interlocked.hpp
811 %{_includedir}/boost/detail/is_function_ref_tester.hpp
812 %{_includedir}/boost/detail/is_incrementable.hpp
813 %{_includedir}/boost/detail/is_xxx.hpp
814 %{_includedir}/boost/detail/iterator.hpp
815 %{_includedir}/boost/detail/lightweight_*.hpp
816 %{_includedir}/boost/detail/limits.hpp
817 %{_includedir}/boost/detail/lwm_*.hpp
818 %{_includedir}/boost/detail/named_template_params.hpp
819 %{_includedir}/boost/detail/no_exceptions_support.hpp
820 %{_includedir}/boost/detail/numeric_traits.hpp
821 %{_includedir}/boost/detail/quick_allocator.hpp
822 %{_includedir}/boost/detail/reference_content.hpp
823 %{_includedir}/boost/detail/select_type.hpp
824 %{_includedir}/boost/detail/shared_*.hpp
825 %{_includedir}/boost/detail/sp_counted_*.hpp
826 %{_includedir}/boost/detail/utf8_codecvt_facet.hpp
827 %{_includedir}/boost/detail/workaround.hpp
828 %{_includedir}/boost/dynamic_bitset
829 %{_includedir}/boost/dynamic_bitset.hpp
830 %{_includedir}/boost/dynamic_bitset_fwd.hpp
831 %{_includedir}/boost/dynamic_property_map.hpp
832 %{_includedir}/boost/enable_shared_from_this.hpp
833 %{_includedir}/boost/format
834 %{_includedir}/boost/format.hpp
835 %{_includedir}/boost/function
836 %{_includedir}/boost/function.hpp
837 %{_includedir}/boost/function_equal.hpp
838 %{_includedir}/boost/function_output_iterator.hpp
839 %{_includedir}/boost/functional
840 %{_includedir}/boost/functional.hpp
841 %{_includedir}/boost/generator_iterator.hpp
842 %{_includedir}/boost/graph
843 %{_includedir}/boost/implicit_cast.hpp
844 %{_includedir}/boost/indirect_reference.hpp
845 %{_includedir}/boost/integer
846 %{_includedir}/boost/integer*.hpp
847 %{_includedir}/boost/intrusive_ptr.hpp
848 %{_includedir}/boost/io
849 %{_includedir}/boost/iostreams
850 %{_includedir}/boost/io_fwd.hpp
851 %{_includedir}/boost/iterator*.hpp
852 %{_includedir}/boost/iterator
853 %{_includedir}/boost/lambda
854 %{_includedir}/boost/lexical_cast.hpp
855 %{_includedir}/boost/limits.hpp
856 %{_includedir}/boost/logic
857 %{_includedir}/boost/math
858 %{_includedir}/boost/math_fwd.hpp
859 %{_includedir}/boost/mpl
860 %{_includedir}/boost/multi_array
861 %{_includedir}/boost/multi_array.hpp
862 %{_includedir}/boost/multi_index
863 %{_includedir}/boost/multi_index_container.hpp
864 %{_includedir}/boost/multi_index_container_fwd.hpp
865 %{_includedir}/boost/next_prior.hpp
866 %{_includedir}/boost/noncopyable.hpp
867 %{_includedir}/boost/nondet_random.hpp
868 %{_includedir}/boost/none.hpp
869 %{_includedir}/boost/none_t.hpp
870 %{_includedir}/boost/non_type.hpp
871 %dir %{_includedir}/boost/numeric
872 %{_includedir}/boost/numeric/interval*
873 %{_includedir}/boost/numeric/conversion
874 %{_includedir}/boost/operators.hpp
875 %{_includedir}/boost/optional
876 %{_includedir}/boost/optional.hpp
877 %{_includedir}/boost/parameter
878 %{_includedir}/boost/parameter.hpp
879 %{_includedir}/boost/pending
880 %{_includedir}/boost/pfto.hpp
881 %{_includedir}/boost/pool
882 %{_includedir}/boost/pointee.hpp
883 %{_includedir}/boost/preprocessor
884 %{_includedir}/boost/preprocessor.hpp
885 %{_includedir}/boost/progress.hpp
886 %{_includedir}/boost/property_map*.hpp
887 %{_includedir}/boost/ptr_container
888 %{_includedir}/boost/random
889 %{_includedir}/boost/random.hpp
890 %{_includedir}/boost/range
891 %{_includedir}/boost/range.hpp
892 %{_includedir}/boost/rational.hpp
893 %{_includedir}/boost/scoped_*.hpp
894 %{_includedir}/boost/serialization
895 %{_includedir}/boost/shared_*.hpp
896 %{_includedir}/boost/smart_cast.hpp
897 %{_includedir}/boost/smart_ptr.hpp
898 %{_includedir}/boost/state_saver.hpp
899 %{_includedir}/boost/static_assert.hpp
900 %{_includedir}/boost/static_warning.hpp
901 %{_includedir}/boost/strong_typedef.hpp
902 %{_includedir}/boost/throw_exception.hpp
903 %{_includedir}/boost/timer.hpp
904 %{_includedir}/boost/token*.hpp
905 %{_includedir}/boost/tuple
906 %{_includedir}/boost/type.hpp
907 %{_includedir}/boost/type_traits.hpp
908 %{_includedir}/boost/type_traits
909 %{_includedir}/boost/utility*.hpp
910 %{_includedir}/boost/utility
911 %{_includedir}/boost/version.hpp
912 %{_includedir}/boost/vector_property_map.hpp
913 %{_includedir}/boost/weak_ptr.hpp
915 %{_includedir}/boost/variant.hpp
916 %{_includedir}/boost/variant
917 %{_includedir}/boost/blank.hpp
918 %{_includedir}/boost/detail/templated_streams.hpp
920 %{_includedir}/boost/aligned_storage.hpp
921 %{_includedir}/boost/detail/none_t.hpp
924 %defattr(644,root,root,755)
925 %{_libdir}/libboost_iostreams*.a
926 %{_libdir}/libboost_serialization*.a
927 %{_libdir}/libboost_wserialization*.a
931 %defattr(644,root,root,755)
932 %attr(755,root,root) %{_libdir}/libboost_python*.so.*.*.*
935 %defattr(644,root,root,755)
936 %attr(755,root,root) %{_libdir}/libboost_python*.so
937 %{_includedir}/boost/python
938 %{_includedir}/boost/python.hpp
941 %defattr(644,root,root,755)
942 %{_libdir}/libboost_python*.a
946 %defattr(644,root,root,755)
947 %attr(755,root,root) %{_libdir}/libboost_regex*.so.*.*.*
950 %defattr(644,root,root,755)
951 %attr(755,root,root) %{_libdir}/libboost_regex*.so
952 %{_includedir}/boost/cregex.hpp
953 %{_includedir}/boost/regex.h
954 %{_includedir}/boost/regex*.hpp
955 %{_includedir}/boost/regex
958 %defattr(644,root,root,755)
959 %{_libdir}/libboost_regex*.a
962 %defattr(644,root,root,755)
963 %{_includedir}/boost/any.hpp
966 %defattr(644,root,root,755)
967 %{_includedir}/boost/array.hpp
970 %defattr(644,root,root,755)
971 %{_includedir}/boost/bind
972 %{_includedir}/boost/bind.hpp
973 %{_includedir}/boost/get_pointer.hpp
974 %{_includedir}/boost/mem_fn.hpp
976 %files call_traits-devel
977 %defattr(644,root,root,755)
978 %{_includedir}/boost/call_traits.hpp
979 %{_includedir}/boost/detail/call_traits.hpp
980 %{_includedir}/boost/detail/ob_call_traits.hpp
982 %files compatibility-devel
983 %defattr(644,root,root,755)
984 %{_includedir}/boost/compatibility
987 %defattr(644,root,root,755)
988 #%{_includedir}/boost/compose.hpp
990 %files compressed_pair-devel
991 %defattr(644,root,root,755)
992 %{_includedir}/boost/compressed_pair.hpp
993 %{_includedir}/boost/detail/compressed_pair.hpp
994 %{_includedir}/boost/detail/ob_compressed_pair.hpp
997 %defattr(644,root,root,755)
998 %{_includedir}/boost/crc.hpp
1001 %defattr(644,root,root,755)
1002 %attr(755,root,root) %{_libdir}/libboost_date_time*.so.*.*.*
1004 %files date_time-devel
1005 %defattr(644,root,root,755)
1006 %attr(755,root,root) %{_libdir}/libboost_date_time*.so
1007 %{_includedir}/boost/date_time
1009 %files date_time-static
1010 %defattr(644,root,root,755)
1011 %{_libdir}/libboost_date_time*.a
1014 %defattr(644,root,root,755)
1015 %attr(755,root,root) %{_libdir}/libboost_filesystem*.so.*.*.*
1017 %files filesystem-devel
1018 %defattr(644,root,root,755)
1019 %attr(755,root,root) %{_libdir}/libboost_filesystem*.so
1020 %{_includedir}/boost/filesystem
1022 %files filesystem-static
1023 %defattr(644,root,root,755)
1024 %{_libdir}/libboost_filesystem*.a
1026 %files program_options
1027 %defattr(644,root,root,755)
1028 %attr(755,root,root) %{_libdir}/libboost_program_options*.so.*.*.*
1030 %files program_options-devel
1031 %defattr(644,root,root,755)
1032 %{_includedir}/boost/program_options
1033 %{_includedir}/boost/program_options.hpp
1035 %files program_options-static
1036 %defattr(644,root,root,755)
1037 %{_libdir}/libboost_program_options*.a
1040 %defattr(644,root,root,755)
1041 %{_includedir}/boost/ref.hpp
1044 %defattr(644,root,root,755)
1045 %attr(755,root,root) %{_libdir}/libboost_signals*.so.*.*.*
1047 %files signals-devel
1048 %defattr(644,root,root,755)
1049 %attr(755,root,root) %{_libdir}/libboost_signals*.so
1050 %{_includedir}/boost/signal*.hpp
1051 %{_includedir}/boost/signals
1052 %{_includedir}/boost/last_value.hpp
1053 %{_includedir}/boost/visit_each.hpp
1055 %files signals-static
1056 %defattr(644,root,root,755)
1057 %{_libdir}/libboost_signals*.a
1060 %defattr(644,root,root,755)
1061 %{_includedir}/boost/spirit.hpp
1062 %{_includedir}/boost/spirit
1065 %defattr(644,root,root,755)
1066 %attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor*.so.*.*.*
1067 %attr(755,root,root) %{_libdir}/libboost_test_exec_monitor*.so.*.*.*
1068 %attr(755,root,root) %{_libdir}/libboost_unit_test_framework*.so.*.*.*
1071 %defattr(644,root,root,755)
1072 %attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor*.so
1073 %attr(755,root,root) %{_libdir}/libboost_test_exec_monitor*.so
1074 %attr(755,root,root) %{_libdir}/libboost_unit_test_framework*.so
1075 %{_includedir}/boost/test
1078 %defattr(644,root,root,755)
1079 %{_libdir}/libboost_prg_exec_monitor*.a
1080 %{_libdir}/libboost_test_exec_monitor*.a
1081 %{_libdir}/libboost_unit_test_framework*.a
1084 %defattr(644,root,root,755)
1085 %attr(755,root,root) %{_libdir}/libboost_thread*.so.*.*.*
1088 %defattr(644,root,root,755)
1089 %attr(755,root,root) %{_libdir}/libboost_thread*.so
1090 %{_includedir}/boost/thread
1091 %{_includedir}/boost/thread.hpp
1093 %files thread-static
1094 %defattr(644,root,root,755)
1095 %attr(755,root,root) %{_libdir}/libboost_thread*.a
1098 %defattr(644,root,root,755)
1099 %{_includedir}/boost/numeric/ublas
1102 %defattr(644,root,root,755)
1103 %{_libdir}/libboost_wave*.a
1104 %{_includedir}/boost/wave
1105 %{_includedir}/boost/wave.hpp
1108 %defattr(644,root,root,755)
1109 %{_docdir}/%{name}-%{version}