3 # - think about building MPI.
4 # - split shared libs from core package into -iostreams/-serialization.
7 %bcond_without python # without boost-python support
9 %define fver %(echo %{version} | tr . _)
10 Summary: The Boost C++ Libraries
11 Summary(pl.UTF-8): Biblioteki C++ "Boost"
15 License: Boost Software License and others
17 Source0: http://downloads.sourceforge.net/boost/%{name}_%{fver}.tar.bz2
18 # Source0-md5: a744cf167b05d72335f27c88115f211d
19 Patch0: %{name}-link.patch
21 # https://svn.boost.org/trac/boost/ticket/5637
22 Patch203: %{name}-1.54.0-mpl-print.patch
23 # https://svn.boost.org/trac/boost/ticket/8870
24 Patch211: %{name}-1.54.0-spirit-unused_typedef.patch
25 Patch212: %{name}-1.54.0-spirit-unused_typedef-2.patch
26 # https://svn.boost.org/trac/boost/ticket/8871
27 Patch213: %{name}-1.54.0-numeric-unused_typedef.patch
28 # https://svn.boost.org/trac/boost/ticket/8878
29 Patch218: %{name}-1.54.0-locale-unused_typedef.patch
30 # https://svn.boost.org/trac/boost/ticket/8881
31 Patch221: %{name}-1.54.0-mpi-unused_typedef.patch
32 # https://svn.boost.org/trac/boost/ticket/8888
33 Patch222: %{name}-1.54.0-python-unused_typedef.patch
34 # https://svn.boost.org/trac/boost/ticket/9038
35 Patch224: %{name}-1.54.0-pool-test_linking.patch
36 URL: http://www.boost.org/
37 BuildRequires: bzip2-devel
38 BuildRequires: expat-devel
39 BuildRequires: libicu-devel
40 BuildRequires: libstdc++-devel
41 BuildRequires: perl-base
42 %{?with_python:BuildRequires: python-devel >= 2.2}
43 BuildRequires: rpm-pythonprov
44 BuildRequires: zlib-devel
45 BuildConflicts: gcc = 5:3.3.1
46 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
48 %define specflags -DBOOST_IOSTREAMS_USE_DEPRECATED=1
51 The Boost web site provides free peer-reviewed portable C++ source
52 libraries. The emphasis is on libraries which work well with the C++
53 Standard Library. One goal is to establish "existing practice" and
54 provide reference implementations so that the Boost libraries are
55 suitable for eventual standardization. Some of the libraries have
56 already been proposed for inclusion in the C++ Standards Committee's
57 upcoming C++ Standard Library Technical Report.
59 %description -l pl.UTF-8
60 Strona http://www.boost.org/ dostarcza darmowe biblioteki C++ wraz z
61 kodem źródłowym. Nacisk położono na biblioteki, które dobrze
62 współpracują ze standardową biblioteką C++. Celem jest ustanowienie
63 "istniejącej praktyki" i dostarczenie implementacji, tak że biblioteki
64 "Boost" nadają się do ewentualnej standaryzacji. Niektóre z bibliotek
65 już zostały zgłoszone do komitetu standaryzacyjnego C++ w nadchodzącym
66 Raporcie Technicznym Biblioteki Standardowej C++.
69 Summary: Boost C++ development headers
70 Summary(pl.UTF-8): Pliki nagłówkowe bibliotek C++ Boost
71 Group: Development/Libraries
72 Requires: %{name} = %{version}-%{release}
73 Requires: %{name}-chrono = %{version}-%{release}
74 Requires: %{name}-context = %{version}-%{release}
75 Requires: %{name}-date_time = %{version}-%{release}
76 Requires: %{name}-filesystem = %{version}-%{release}
77 Requires: %{name}-graph = %{version}-%{release}
78 Requires: %{name}-locale = %{version}-%{release}
79 Requires: %{name}-program_options = %{version}-%{release}
80 Requires: %{name}-regex = %{version}-%{release}
81 Requires: %{name}-signals = %{version}-%{release}
82 Requires: %{name}-system = %{version}-%{release}
83 Requires: %{name}-test = %{version}-%{release}
84 Requires: %{name}-thread = %{version}-%{release}
85 Requires: %{name}-timer = %{version}-%{release}
86 Requires: %{name}-wave = %{version}-%{release}
87 Requires: libstdc++-devel
88 Obsoletes: boost-any-devel
89 Obsoletes: boost-array-devel
91 Obsoletes: boost-bind-devel
92 Obsoletes: boost-call_traits-devel
93 Obsoletes: boost-compatibility-devel
94 Obsoletes: boost-compose-devel
95 Obsoletes: boost-compressed_pair-devel
96 Obsoletes: boost-concept_check-devel
97 Obsoletes: boost-conversion-devel
98 Obsoletes: boost-crc-devel
99 Obsoletes: boost-date_time-devel
100 Obsoletes: boost-filesystem-devel
101 Obsoletes: boost-graph-devel
102 Obsoletes: boost-mem_fn-devel
103 Obsoletes: boost-mpl-devel
104 Obsoletes: boost-preprocessor-devel
105 Obsoletes: boost-program_options-devel
106 Obsoletes: boost-ref-devel
107 Obsoletes: boost-regex-devel
108 Obsoletes: boost-signals-devel
109 Obsoletes: boost-spirit-devel
110 Obsoletes: boost-statechart-devel
111 Obsoletes: boost-static_assert-devel
112 Obsoletes: boost-test-devel
113 Obsoletes: boost-thread-devel
114 Obsoletes: boost-tr1-devel
115 Obsoletes: boost-type_traits-devel
116 Obsoletes: boost-typeof-devel
117 Obsoletes: boost-uBLAS-devel
118 Obsoletes: boost-utility-devel
119 Obsoletes: boost-wave-devel
120 Obsoletes: boost-xpressive-devel
123 Header files for the Boost C++ libraries.
125 %description devel -l pl.UTF-8
126 Pliki nagłówkowe bibliotek C++ Boost.
129 Summary: Static version of base Boost C++ libraries
130 Summary(pl.UTF-8): Statyczne wersje podstawowych bibliotek C++ Boost
131 Group: Development/Libraries
132 Requires: %{name}-devel = %{version}-%{release}
133 Obsoletes: boost-static < 1.33
136 Static version of base Boost C++ libraries.
138 %description static -l pl.UTF-8
139 Statyczne wersje podstawowych bibliotek C++ Boost.
142 Summary: Boost.Python library
143 Summary(pl.UTF-8): biblioteka Boost.Python
148 Use the Boost Python Library to quickly and easily export a C++
149 library to Python such that the Python interface is very similar to
150 the C++ interface. It is designed to be minimally intrusive on your
151 C++ design. In most cases, you should not have to alter your C++
152 classes in any way in order to use them with Boost.Python. The system
153 should simply ``reflect'' your C++ classes and functions into Python.
155 %description python -l pl.UTF-8
156 Biblioteka Boost Python służy do szybkiego i prostego eksportu
157 biblioteki C++ do Pythona, tak że interfejs Pythona jest bardzo
158 podobny do interfejsu C++. Biblioteka jest zaprojektowana tak, żeby
159 narzucać jak najmniej wymagań dotyczących konstrukcjii C++. W
160 większości przypadków nie trzeba w ogóle zmieniać własnych klas C++,
161 żeby używać ich z Boost.Python. System powinien po prostu ,,odbić''
162 klasy C++ i funkcje do Pythona.
164 %package python-devel
165 Summary: Boost.Python development headers
166 Summary(pl.UTF-8): Pliki nagłówkowe dla Boost.Python
167 Group: Development/Libraries
168 Requires: %{name}-devel = %{version}-%{release}
169 Requires: %{name}-python = %{version}-%{release}
171 %description python-devel
172 Headers for the Boost.Python library.
174 %description python-devel -l pl.UTF-8
175 Pliki nagłówkowe dla biblioteki Boost.Python.
177 %package python-static
178 Summary: Static version of Boost.Python library
179 Summary(pl.UTF-8): Statyczna wersja biblioteki Boost.Python
180 Group: Development/Libraries
181 Requires: %{name}-python-devel = %{version}-%{release}
183 %description python-static
184 Static version of Boost.Python library.
186 %description python-static -l pl.UTF-8
187 Statyczna wersja biblioteki Boost.Python.
190 Summary: Useful time utilities
191 Summary(pl.UTF-8): Przydatne funkcje związane z czasem
193 Obsoletes: boost < 1.33
196 Useful time utilities.
198 %description chrono -l pl.UTF-8
199 Przydatne funkcje związane z czasem.
202 Summary: Boost.Context - context switching library
203 Summary(pl.UTF-8): Boost.Context - biblioteka do zmiany kontekstu
207 Boost.Context - context switching library, providing a sort of
208 cooperative multitasking on a single thread.
210 %description context -l pl.UTF-8
211 Boost.Context - biblioteka do zmiany kontekstu, zapewniająca pewną
212 wielozadaniowość kooperatywnąw ramach pojedynczego wątku.
215 Summary: Date-Time library
216 Summary(pl.UTF-8): Biblioteka daty-czasu
218 Obsoletes: boost < 1.33
220 %description date_time
221 A set of date-time libraries.
223 %description date_time -l pl.UTF-8
224 Zbiór bibliotek daty-czasu.
227 Summary: Portable paths, iteration over directories, and other useful filesystem operations
228 Summary(pl.UTF-8): Przenośne ścieżki, iteracje katalogów i inne użyteczne operacje na systemie plików
230 Requires: %{name}-system = %{version}-%{release}
231 Obsoletes: boost < 1.33
233 %description filesystem
234 The boost::filesystem library provides portable facilities to query
235 and manipulate paths, files, and directories.
237 %description filesystem -l pl.UTF-8
238 Przenośna biblioteka boost::filesystem dostarcza ułatwienia w
239 operacjach na ścieżkach, plikach i katalogach.
242 Summary: General purpose, generic C++ library for graph data structures and graph algorithms
243 Summary(pl.UTF-8): Biblioteka ogólnego przeznaczenia w C++ dla struktur danych typu grafy oraz algorytmów związanych z grafami
247 The boost::graph library provides portable facilities to operate on
248 graph data structures using graph algorithms.
250 %description graph -l pl.UTF-8
251 Przenośna biblioteka boost::graph dostarcza ułatwienia w operacjach na
252 strukturach danych typu graf za pomocą algorytmów związanych z
256 Summary: Provide localization and Unicode handling tools for C++
257 Summary(pl.UTF-8): Narzędzia do obsługi lokalizacji i Unikodu w C++
261 Provide localization and Unicode handling tools for C++.
263 %description locale -l pl.UTF-8
264 Narzędzia do obsługi lokalizacji i Unikodu w C++.
267 Summary: Provide logging tools for C++
268 Summary(pl.UTF-8): Narzędzia do logowania w C++
272 Provide logging tools for C++.
274 %description log -l pl.UTF-8
275 Narzędzia do logowania w C++.
277 %package program_options
278 Summary: Access to program options, via conventional methods such as command line and config file
279 Summary(pl.UTF-8): Dostęp do opcji programu za pomocą typowych metod, jak linia poleceń i plik konfiguracyjny
282 %description program_options
283 The program_options library allows program developers to obtain
284 program options, that is (name, value) pairs from the user, via
285 conventional methods such as command line and config file.
287 %description program_options -l pl.UTF-8
288 Biblioteka program_options umożliwia uzyskanie od użytkownika opcji
289 programu, czyli par (nazwa, wartość), za pomocą typowych metod, takich
290 jak linia poleceń, czy plik konfiguracyjny.
293 Summary: Boost C++ regular expressions library
294 Summary(pl.UTF-8): Biblioteka wyrażeń regularnych Boost C++
298 Shared library for Boost C++ regular expressions.
300 %description regex -l pl.UTF-8
301 Biblioteka współdzielona do obsługi wyrażeń regularnych w C++.
304 Summary: Signals & slots callback implementation
305 Summary(pl.UTF-8): Implementacja sygnałów i slotów
307 Obsoletes: boost < 1.33
310 The boost::signals library is an implementation of a signals and slots
313 %description signals -l pl.UTF-8
314 Biblioteka boost::signals jest implementacją systemu sygnałów i
318 Summary: Support for getting system specific error codes
319 Summary(pl.UTF-8): Wsparcie dla pobierania specyficznych dla systemu kodów błędów
323 The Boost System library provides simple, light-weight error_code
324 objects that encapsulate system-specific error code values, yet also
325 provide access to more abstract and portable error conditions objects.
327 %description system -l pl.UTF-8
328 Biblioteka Boost System udostępnia proste, lekkie obiekty error_code
329 obudowujące wartości kodów błędów specyficznych dla systemu, dając
330 jednocześnie dostęp do bardziej abstrakcyjnych i przenośnych obiektów
334 Summary: Support for program testing and execution monitoring
335 Summary(pl.UTF-8): Wsparcie dla testowania i monitorowania programu
337 Obsoletes: boost < 1.33
340 Support for simple program testing, full unit testing, and for program
341 execution monitoring.
343 %description test -l pl.UTF-8
344 Wsparcie dla prostego testowania programu, pełnego testowania i
345 monitorowania wykonania programu.
348 Summary: Portable C++ threads library
349 Summary(pl.UTF-8): Przenośna biblioteka wątków C++
351 Obsoletes: boost < 1.33
354 Portable C++ threads library - shared library.
356 %description thread -l pl.UTF-8
357 Przenośna biblioteka wątków dla C++ - biblioteka dzielona.
360 Summary: Event timer, progress timer, and progress display classes
361 Summary(pl.UTF-8): Klasy do obsługi pomiarów czasu, postępu i wyświetlania postępu
363 Obsoletes: boost < 1.33
366 Event timer, progress timer, and progress display classes.
368 %description timer -l pl.UTF-8
369 Klasy do obsługi pomiarów czasu, postępu i wyświetlania postępu.
372 Summary: Boost.Wave - a standard compliant C++ preprocessor library
373 Summary(pl.UTF-8): Boost.Wave - zgodna ze standardem biblioteka preprocesora C++
374 Group: Development/Libraries
377 Boost.Wave - a standard compliant C++ preprocessor library.
379 %description wave -l pl.UTF-8
380 Boost.Wave - zgodna ze standardem biblioteka preprocesora C++.
383 Summary: Boost C++ Library documentation
384 Summary(pl.UTF-8): Dokumentacja dla biblioteki Boost C++
386 Requires: %{name}-devel = %{version}-%{release}
389 Documentation for the Boost C++ Library.
391 %description doc -l pl.UTF-8
392 Dokumentacja dla biblioteki Boost C++.
395 %setup -q -n %{name}_%{fver}
407 # - don't know how to pass it through (b)jam -s (no way?)
408 # due to oversophisticated build flags system.
409 # - pass -fPIC due to <shared-linkable> removal.
410 %{__sed} -i "s/<optimization>speed : -O3/<optimization>speed : ${CXXFLAGS:-%rpmcxxflags} -fPIC/" tools/build/src/tools/gcc.jam
412 # cleanup -g switch to avoid override debuginfocflags.
413 %{__sed} -i 's/<debug-symbols>on : -g/<debug-symbols>on :/' tools/build/src/tools/gcc.jam
414 # link against shared expat library.
415 #%{__sed} -i 's:find-static:find-shared:' libs/graph/build/Jamfile.v2
417 cat << EOF > tools/build/src/user-config.jam
418 using gcc : %{cxx_version} : %{__cxx} ;
421 # cleanup backups after patching
422 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
426 PYTHON_VERSION=$(%{__python} -c 'import sys; print sys.version[0:3]')
427 PYTHON_ROOT=%{_prefix}
432 EXPAT_INCLUDE=%{_includedir} \
433 EXPAT_LIBPATH=%{_libdir} \
434 ICU_PATH=%{_prefix} \
435 ./bootstrap.sh --prefix=%{_prefix}
438 variant=release debug-symbols=on inlining=on link=static,shared threading=multi
441 rm -rf $RPM_BUILD_ROOT
442 install -d $RPM_BUILD_ROOT{%{_libdir},%{_includedir}}
444 cp -rf boost $RPM_BUILD_ROOT%{_includedir}
446 install -p stage/lib/lib*.a $RPM_BUILD_ROOT%{_libdir}
447 install -p stage/lib/lib*.so.*.*.* $RPM_BUILD_ROOT%{_libdir}
448 cp -a stage/lib/lib*.so $RPM_BUILD_ROOT%{_libdir}
451 install -d $RPM_BUILD_ROOT%{_docdir}/boost-%{version}
453 # as the documentation doesn't completely reside in a directory of its
454 # own, we need to find out ourselves... this looks for HTML files and
455 # then collects everything linked from those. this is certainly quite
456 # unoptimized wrt mkdir calls, but does it really matter?
458 for i in $(find -type f -name '*.htm*'); do
459 # bjam docu is included in the boost-jam RPM
460 if test "`echo $i | sed 's,jam_src,,'`" = "$i"; then
461 install -d $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/${i%/*}
462 for LINKED in `%{__perl} - $i $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/$i <<'EOT'
466 # rewrite links from boost/* to %{_includedir}/boost/* and
467 # ignore external links as well as document-internal ones.
468 # HTML files are also ignored as they get installed anyway.
469 if (!($link =~ s,^(?:../)*boost/,%{_includedir}/boost/,) && !($link =~ m,(?:^[^/]+:|^\#|\.html?(?:$|\#)),))
471 (my $file = $link) =~ s/\#.*//;
477 open OUT, ">@ARGV[1]";
481 $in_link and s/^\s*"([^"> ]*)"/'"' . rewrite_link($1) . '"'/e;
482 s/(href|src)="([^"> ]*)"/"$1=\"" . rewrite_link($2) . '"'/eig;
484 $in_link = /href|src=\s*$/;
487 TARGET=${i%/*}/$LINKED
488 # ignore non-existant linked files
489 if test -f $TARGET; then
490 install -D -m 644 $TARGET $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/$TARGET
498 rm -rf $RPM_BUILD_ROOT
500 %post -p /sbin/ldconfig
501 %postun -p /sbin/ldconfig
503 %post chrono -p /sbin/ldconfig
504 %postun chrono -p /sbin/ldconfig
506 %post context -p /sbin/ldconfig
507 %postun context -p /sbin/ldconfig
509 %post date_time -p /sbin/ldconfig
510 %postun date_time -p /sbin/ldconfig
512 %post filesystem -p /sbin/ldconfig
513 %postun filesystem -p /sbin/ldconfig
515 %post graph -p /sbin/ldconfig
516 %postun graph -p /sbin/ldconfig
518 %post locale -p /sbin/ldconfig
519 %postun locale -p /sbin/ldconfig
521 %post python -p /sbin/ldconfig
522 %postun python -p /sbin/ldconfig
524 %post program_options -p /sbin/ldconfig
525 %postun program_options -p /sbin/ldconfig
527 %post regex -p /sbin/ldconfig
528 %postun regex -p /sbin/ldconfig
530 %post signals -p /sbin/ldconfig
531 %postun signals -p /sbin/ldconfig
533 %post system -p /sbin/ldconfig
534 %postun system -p /sbin/ldconfig
536 %post test -p /sbin/ldconfig
537 %postun test -p /sbin/ldconfig
539 %post thread -p /sbin/ldconfig
540 %postun thread -p /sbin/ldconfig
542 %post timer -p /sbin/ldconfig
543 %postun timer -p /sbin/ldconfig
545 %post wave -p /sbin/ldconfig
546 %postun wave -p /sbin/ldconfig
549 %defattr(644,root,root,755)
550 %attr(755,root,root) %{_libdir}/libboost_atomic.so.*.*.*
551 %attr(755,root,root) %{_libdir}/libboost_container.so.*.*.*
552 %attr(755,root,root) %{_libdir}/libboost_coroutine.so.*.*.*
553 %attr(755,root,root) %{_libdir}/libboost_iostreams.so.*.*.*
554 %attr(755,root,root) %{_libdir}/libboost_math_*.so.*.*.*
555 %attr(755,root,root) %{_libdir}/libboost_random.so.*.*.*
556 %attr(755,root,root) %{_libdir}/libboost_serialization.so.*.*.*
557 %attr(755,root,root) %{_libdir}/libboost_wserialization.so.*.*.*
560 %defattr(644,root,root,755)
561 %attr(755,root,root) %{_libdir}/libboost_atomic.so
562 %attr(755,root,root) %{_libdir}/libboost_chrono.so
563 %attr(755,root,root) %{_libdir}/libboost_container.so
564 %attr(755,root,root) %{_libdir}/libboost_context.so
565 %attr(755,root,root) %{_libdir}/libboost_coroutine.so
566 %attr(755,root,root) %{_libdir}/libboost_date_time.so
567 %attr(755,root,root) %{_libdir}/libboost_filesystem.so
568 %attr(755,root,root) %{_libdir}/libboost_graph.so
569 %attr(755,root,root) %{_libdir}/libboost_iostreams.so
570 %attr(755,root,root) %{_libdir}/libboost_locale.so
571 %attr(755,root,root) %{_libdir}/libboost_log.so
572 %attr(755,root,root) %{_libdir}/libboost_log_setup.so
573 %attr(755,root,root) %{_libdir}/libboost_math_*.so
574 %attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor.so
575 %attr(755,root,root) %{_libdir}/libboost_program_options.so
576 %attr(755,root,root) %{_libdir}/libboost_regex.so
577 %attr(755,root,root) %{_libdir}/libboost_random.so
578 %attr(755,root,root) %{_libdir}/libboost_serialization.so
579 %attr(755,root,root) %{_libdir}/libboost_signals.so
580 %attr(755,root,root) %{_libdir}/libboost_system.so
581 %attr(755,root,root) %{_libdir}/libboost_thread.so
582 %attr(755,root,root) %{_libdir}/libboost_timer.so
583 %attr(755,root,root) %{_libdir}/libboost_unit_test_framework.so
584 %attr(755,root,root) %{_libdir}/libboost_wave.so
585 %attr(755,root,root) %{_libdir}/libboost_wserialization.so
587 %exclude %{_includedir}/boost/python
588 %exclude %{_includedir}/boost/python.hpp
591 %defattr(644,root,root,755)
592 %{_libdir}/libboost_atomic.a
593 %{_libdir}/libboost_chrono.a
594 %{_libdir}/libboost_container.a
595 %{_libdir}/libboost_context.a
596 %{_libdir}/libboost_coroutine.a
597 %{_libdir}/libboost_date_time.a
598 %{_libdir}/libboost_exception.a
599 %{_libdir}/libboost_filesystem.a
600 %{_libdir}/libboost_graph.a
601 %{_libdir}/libboost_iostreams.a
602 %{_libdir}/libboost_locale.a
603 %{_libdir}/libboost_log.a
604 %{_libdir}/libboost_log_setup.a
605 %{_libdir}/libboost_math_*.a
606 %{_libdir}/libboost_prg_exec_monitor.a
607 %{_libdir}/libboost_program_options.a
608 %{_libdir}/libboost_random.a
609 %{_libdir}/libboost_regex.a
610 %{_libdir}/libboost_serialization.a
611 %{_libdir}/libboost_signals.a
612 %{_libdir}/libboost_system.a
613 %{_libdir}/libboost_test_exec_monitor.a
614 %{_libdir}/libboost_timer.a
615 %{_libdir}/libboost_thread.a
616 %{_libdir}/libboost_unit_test_framework.a
617 %{_libdir}/libboost_wave.a
618 %{_libdir}/libboost_wserialization.a
622 %defattr(644,root,root,755)
623 %attr(755,root,root) %{_libdir}/libboost_python.so.*.*.*
626 %defattr(644,root,root,755)
627 %attr(755,root,root) %{_libdir}/libboost_python.so
628 %{_includedir}/boost/python
629 %{_includedir}/boost/python.hpp
632 %defattr(644,root,root,755)
633 %{_libdir}/libboost_python.a
637 %defattr(644,root,root,755)
638 %attr(755,root,root) %{_libdir}/libboost_chrono.so.*.*.*
641 %defattr(644,root,root,755)
642 %attr(755,root,root) %{_libdir}/libboost_context.so.*.*.*
645 %defattr(644,root,root,755)
646 %attr(755,root,root) %{_libdir}/libboost_date_time.so.*.*.*
649 %defattr(644,root,root,755)
650 %attr(755,root,root) %{_libdir}/libboost_filesystem.so.*.*.*
653 %defattr(644,root,root,755)
654 %attr(755,root,root) %{_libdir}/libboost_graph.so.*.*.*
657 %defattr(644,root,root,755)
658 %attr(755,root,root) %{_libdir}/libboost_locale.so.*.*.*
661 %defattr(644,root,root,755)
662 %attr(755,root,root) %{_libdir}/libboost_log.so.*.*.*
663 %attr(755,root,root) %{_libdir}/libboost_log_setup.so.*.*.*
665 %files program_options
666 %defattr(644,root,root,755)
667 %attr(755,root,root) %{_libdir}/libboost_program_options.so.*.*.*
670 %defattr(644,root,root,755)
671 %attr(755,root,root) %{_libdir}/libboost_regex.so.*.*.*
674 %defattr(644,root,root,755)
675 %attr(755,root,root) %{_libdir}/libboost_signals.so.*.*.*
678 %defattr(644,root,root,755)
679 %attr(755,root,root) %{_libdir}/libboost_system.so.*.*.*
682 %defattr(644,root,root,755)
683 %attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor.so.*.*.*
684 %attr(755,root,root) %{_libdir}/libboost_unit_test_framework.so.*.*.*
687 %defattr(644,root,root,755)
688 %attr(755,root,root) %{_libdir}/libboost_thread.so.*.*.*
691 %defattr(644,root,root,755)
692 %attr(755,root,root) %{_libdir}/libboost_timer.so.*.*.*
695 %defattr(644,root,root,755)
696 %attr(755,root,root) %{_libdir}/libboost_wave.so.*.*.*
699 %defattr(644,root,root,755)
700 %{_docdir}/%{name}-%{version}