3 # - think about building MPI.
4 # - split shared libs from core package into -iostreams/-serialization.
5 # - fix building context and corouting on x32 (patch1)
8 %bcond_without python # without boost-python support
10 %define fver %(echo %{version} | tr . _)
11 Summary: The Boost C++ Libraries
12 Summary(pl.UTF-8): Biblioteki C++ "Boost"
16 License: Boost Software License and others
18 Source0: http://downloads.sourceforge.net/boost/%{name}_%{fver}.tar.bz2
19 # Source0-md5: a744cf167b05d72335f27c88115f211d
20 Patch0: %{name}-link.patch
21 Patch1: %{name}-x32-context.patch
23 # https://svn.boost.org/trac/boost/ticket/5637
24 Patch203: %{name}-1.54.0-mpl-print.patch
25 # https://svn.boost.org/trac/boost/ticket/8870
26 Patch211: %{name}-1.54.0-spirit-unused_typedef.patch
27 Patch212: %{name}-1.54.0-spirit-unused_typedef-2.patch
28 # https://svn.boost.org/trac/boost/ticket/8871
29 Patch213: %{name}-1.54.0-numeric-unused_typedef.patch
30 # https://svn.boost.org/trac/boost/ticket/8878
31 Patch218: %{name}-1.54.0-locale-unused_typedef.patch
32 # https://svn.boost.org/trac/boost/ticket/8881
33 Patch221: %{name}-1.54.0-mpi-unused_typedef.patch
34 # https://svn.boost.org/trac/boost/ticket/8888
35 Patch222: %{name}-1.54.0-python-unused_typedef.patch
36 # https://svn.boost.org/trac/boost/ticket/9038
37 Patch224: %{name}-1.54.0-pool-test_linking.patch
38 URL: http://www.boost.org/
39 BuildRequires: bzip2-devel
40 BuildRequires: expat-devel
41 BuildRequires: libicu-devel
42 BuildRequires: libstdc++-devel
43 BuildRequires: perl-base
44 %{?with_python:BuildRequires: python-devel >= 2.2}
45 BuildRequires: rpm-pythonprov
46 BuildRequires: zlib-devel
47 BuildConflicts: gcc = 5:3.3.1
48 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
50 %define specflags -DBOOST_IOSTREAMS_USE_DEPRECATED=1
53 The Boost web site provides free peer-reviewed portable C++ source
54 libraries. The emphasis is on libraries which work well with the C++
55 Standard Library. One goal is to establish "existing practice" and
56 provide reference implementations so that the Boost libraries are
57 suitable for eventual standardization. Some of the libraries have
58 already been proposed for inclusion in the C++ Standards Committee's
59 upcoming C++ Standard Library Technical Report.
61 %description -l pl.UTF-8
62 Strona http://www.boost.org/ dostarcza darmowe biblioteki C++ wraz z
63 kodem źródłowym. Nacisk położono na biblioteki, które dobrze
64 współpracują ze standardową biblioteką C++. Celem jest ustanowienie
65 "istniejącej praktyki" i dostarczenie implementacji, tak że biblioteki
66 "Boost" nadają się do ewentualnej standaryzacji. Niektóre z bibliotek
67 już zostały zgłoszone do komitetu standaryzacyjnego C++ w nadchodzącym
68 Raporcie Technicznym Biblioteki Standardowej C++.
71 Summary: Boost C++ development headers
72 Summary(pl.UTF-8): Pliki nagłówkowe bibliotek C++ Boost
73 Group: Development/Libraries
74 Requires: %{name} = %{version}-%{release}
75 Requires: %{name}-chrono = %{version}-%{release}
77 Requires: %{name}-context = %{version}-%{release}
79 Requires: %{name}-date_time = %{version}-%{release}
80 Requires: %{name}-filesystem = %{version}-%{release}
81 Requires: %{name}-graph = %{version}-%{release}
82 Requires: %{name}-locale = %{version}-%{release}
83 Requires: %{name}-log = %{version}-%{release}
84 Requires: %{name}-program_options = %{version}-%{release}
85 Requires: %{name}-regex = %{version}-%{release}
86 Requires: %{name}-signals = %{version}-%{release}
87 Requires: %{name}-system = %{version}-%{release}
88 Requires: %{name}-test = %{version}-%{release}
89 Requires: %{name}-thread = %{version}-%{release}
90 Requires: %{name}-timer = %{version}-%{release}
91 Requires: %{name}-wave = %{version}-%{release}
92 Requires: libstdc++-devel
93 Obsoletes: boost-any-devel
94 Obsoletes: boost-array-devel
96 Obsoletes: boost-bind-devel
97 Obsoletes: boost-call_traits-devel
98 Obsoletes: boost-compatibility-devel
99 Obsoletes: boost-compose-devel
100 Obsoletes: boost-compressed_pair-devel
101 Obsoletes: boost-concept_check-devel
102 Obsoletes: boost-conversion-devel
103 Obsoletes: boost-crc-devel
104 Obsoletes: boost-date_time-devel
105 Obsoletes: boost-filesystem-devel
106 Obsoletes: boost-graph-devel
107 Obsoletes: boost-mem_fn-devel
108 Obsoletes: boost-mpl-devel
109 Obsoletes: boost-preprocessor-devel
110 Obsoletes: boost-program_options-devel
111 Obsoletes: boost-ref-devel
112 Obsoletes: boost-regex-devel
113 Obsoletes: boost-signals-devel
114 Obsoletes: boost-spirit-devel
115 Obsoletes: boost-statechart-devel
116 Obsoletes: boost-static_assert-devel
117 Obsoletes: boost-test-devel
118 Obsoletes: boost-thread-devel
119 Obsoletes: boost-tr1-devel
120 Obsoletes: boost-type_traits-devel
121 Obsoletes: boost-typeof-devel
122 Obsoletes: boost-uBLAS-devel
123 Obsoletes: boost-utility-devel
124 Obsoletes: boost-wave-devel
125 Obsoletes: boost-xpressive-devel
128 Header files for the Boost C++ libraries.
130 %description devel -l pl.UTF-8
131 Pliki nagłówkowe bibliotek C++ Boost.
134 Summary: Static version of base Boost C++ libraries
135 Summary(pl.UTF-8): Statyczne wersje podstawowych bibliotek C++ Boost
136 Group: Development/Libraries
137 Requires: %{name}-devel = %{version}-%{release}
138 Obsoletes: boost-static < 1.33
141 Static version of base Boost C++ libraries.
143 %description static -l pl.UTF-8
144 Statyczne wersje podstawowych bibliotek C++ Boost.
147 Summary: Boost.Python library
148 Summary(pl.UTF-8): biblioteka Boost.Python
153 Use the Boost Python Library to quickly and easily export a C++
154 library to Python such that the Python interface is very similar to
155 the C++ interface. It is designed to be minimally intrusive on your
156 C++ design. In most cases, you should not have to alter your C++
157 classes in any way in order to use them with Boost.Python. The system
158 should simply ``reflect'' your C++ classes and functions into Python.
160 %description python -l pl.UTF-8
161 Biblioteka Boost Python służy do szybkiego i prostego eksportu
162 biblioteki C++ do Pythona, tak że interfejs Pythona jest bardzo
163 podobny do interfejsu C++. Biblioteka jest zaprojektowana tak, żeby
164 narzucać jak najmniej wymagań dotyczących konstrukcjii C++. W
165 większości przypadków nie trzeba w ogóle zmieniać własnych klas C++,
166 żeby używać ich z Boost.Python. System powinien po prostu ,,odbić''
167 klasy C++ i funkcje do Pythona.
169 %package python-devel
170 Summary: Boost.Python development headers
171 Summary(pl.UTF-8): Pliki nagłówkowe dla Boost.Python
172 Group: Development/Libraries
173 Requires: %{name}-devel = %{version}-%{release}
174 Requires: %{name}-python = %{version}-%{release}
176 %description python-devel
177 Headers for the Boost.Python library.
179 %description python-devel -l pl.UTF-8
180 Pliki nagłówkowe dla biblioteki Boost.Python.
182 %package python-static
183 Summary: Static version of Boost.Python library
184 Summary(pl.UTF-8): Statyczna wersja biblioteki Boost.Python
185 Group: Development/Libraries
186 Requires: %{name}-python-devel = %{version}-%{release}
188 %description python-static
189 Static version of Boost.Python library.
191 %description python-static -l pl.UTF-8
192 Statyczna wersja biblioteki Boost.Python.
195 Summary: Useful time utilities
196 Summary(pl.UTF-8): Przydatne funkcje związane z czasem
198 Obsoletes: boost < 1.33
201 Useful time utilities.
203 %description chrono -l pl.UTF-8
204 Przydatne funkcje związane z czasem.
207 Summary: Boost.Context - context switching library
208 Summary(pl.UTF-8): Boost.Context - biblioteka do zmiany kontekstu
212 Boost.Context - context switching library, providing a sort of
213 cooperative multitasking on a single thread.
215 %description context -l pl.UTF-8
216 Boost.Context - biblioteka do zmiany kontekstu, zapewniająca pewną
217 wielozadaniowość kooperatywnąw ramach pojedynczego wątku.
220 Summary: Date-Time library
221 Summary(pl.UTF-8): Biblioteka daty-czasu
223 Obsoletes: boost < 1.33
225 %description date_time
226 A set of date-time libraries.
228 %description date_time -l pl.UTF-8
229 Zbiór bibliotek daty-czasu.
232 Summary: Portable paths, iteration over directories, and other useful filesystem operations
233 Summary(pl.UTF-8): Przenośne ścieżki, iteracje katalogów i inne użyteczne operacje na systemie plików
235 Requires: %{name}-system = %{version}-%{release}
236 Obsoletes: boost < 1.33
238 %description filesystem
239 The boost::filesystem library provides portable facilities to query
240 and manipulate paths, files, and directories.
242 %description filesystem -l pl.UTF-8
243 Przenośna biblioteka boost::filesystem dostarcza ułatwienia w
244 operacjach na ścieżkach, plikach i katalogach.
247 Summary: General purpose, generic C++ library for graph data structures and graph algorithms
248 Summary(pl.UTF-8): Biblioteka ogólnego przeznaczenia w C++ dla struktur danych typu grafy oraz algorytmów związanych z grafami
252 The boost::graph library provides portable facilities to operate on
253 graph data structures using graph algorithms.
255 %description graph -l pl.UTF-8
256 Przenośna biblioteka boost::graph dostarcza ułatwienia w operacjach na
257 strukturach danych typu graf za pomocą algorytmów związanych z
261 Summary: Provide localization and Unicode handling tools for C++
262 Summary(pl.UTF-8): Narzędzia do obsługi lokalizacji i Unikodu w C++
266 Provide localization and Unicode handling tools for C++.
268 %description locale -l pl.UTF-8
269 Narzędzia do obsługi lokalizacji i Unikodu w C++.
272 Summary: Provide logging tools for C++
273 Summary(pl.UTF-8): Narzędzia do logowania w C++
277 Provide logging tools for C++.
279 %description log -l pl.UTF-8
280 Narzędzia do logowania w C++.
282 %package program_options
283 Summary: Access to program options, via conventional methods such as command line and config file
284 Summary(pl.UTF-8): Dostęp do opcji programu za pomocą typowych metod, jak linia poleceń i plik konfiguracyjny
287 %description program_options
288 The program_options library allows program developers to obtain
289 program options, that is (name, value) pairs from the user, via
290 conventional methods such as command line and config file.
292 %description program_options -l pl.UTF-8
293 Biblioteka program_options umożliwia uzyskanie od użytkownika opcji
294 programu, czyli par (nazwa, wartość), za pomocą typowych metod, takich
295 jak linia poleceń, czy plik konfiguracyjny.
298 Summary: Boost C++ regular expressions library
299 Summary(pl.UTF-8): Biblioteka wyrażeń regularnych Boost C++
303 Shared library for Boost C++ regular expressions.
305 %description regex -l pl.UTF-8
306 Biblioteka współdzielona do obsługi wyrażeń regularnych w C++.
309 Summary: Signals & slots callback implementation
310 Summary(pl.UTF-8): Implementacja sygnałów i slotów
312 Obsoletes: boost < 1.33
315 The boost::signals library is an implementation of a signals and slots
318 %description signals -l pl.UTF-8
319 Biblioteka boost::signals jest implementacją systemu sygnałów i
323 Summary: Support for getting system specific error codes
324 Summary(pl.UTF-8): Wsparcie dla pobierania specyficznych dla systemu kodów błędów
328 The Boost System library provides simple, light-weight error_code
329 objects that encapsulate system-specific error code values, yet also
330 provide access to more abstract and portable error conditions objects.
332 %description system -l pl.UTF-8
333 Biblioteka Boost System udostępnia proste, lekkie obiekty error_code
334 obudowujące wartości kodów błędów specyficznych dla systemu, dając
335 jednocześnie dostęp do bardziej abstrakcyjnych i przenośnych obiektów
339 Summary: Support for program testing and execution monitoring
340 Summary(pl.UTF-8): Wsparcie dla testowania i monitorowania programu
342 Obsoletes: boost < 1.33
345 Support for simple program testing, full unit testing, and for program
346 execution monitoring.
348 %description test -l pl.UTF-8
349 Wsparcie dla prostego testowania programu, pełnego testowania i
350 monitorowania wykonania programu.
353 Summary: Portable C++ threads library
354 Summary(pl.UTF-8): Przenośna biblioteka wątków C++
356 Obsoletes: boost < 1.33
359 Portable C++ threads library - shared library.
361 %description thread -l pl.UTF-8
362 Przenośna biblioteka wątków dla C++ - biblioteka dzielona.
365 Summary: Event timer, progress timer, and progress display classes
366 Summary(pl.UTF-8): Klasy do obsługi pomiarów czasu, postępu i wyświetlania postępu
368 Obsoletes: boost < 1.33
371 Event timer, progress timer, and progress display classes.
373 %description timer -l pl.UTF-8
374 Klasy do obsługi pomiarów czasu, postępu i wyświetlania postępu.
377 Summary: Boost.Wave - a standard compliant C++ preprocessor library
378 Summary(pl.UTF-8): Boost.Wave - zgodna ze standardem biblioteka preprocesora C++
379 Group: Development/Libraries
382 Boost.Wave - a standard compliant C++ preprocessor library.
384 %description wave -l pl.UTF-8
385 Boost.Wave - zgodna ze standardem biblioteka preprocesora C++.
388 Summary: Boost C++ Library documentation
389 Summary(pl.UTF-8): Dokumentacja dla biblioteki Boost C++
391 Requires: %{name}-devel = %{version}-%{release}
394 Documentation for the Boost C++ Library.
396 %description doc -l pl.UTF-8
397 Dokumentacja dla biblioteki Boost C++.
400 %setup -q -n %{name}_%{fver}
413 # - don't know how to pass it through (b)jam -s (no way?)
414 # due to oversophisticated build flags system.
415 # - pass -fPIC due to <shared-linkable> removal.
416 %{__sed} -i "s/<optimization>speed : -O3/<optimization>speed : ${CXXFLAGS:-%rpmcxxflags} -fPIC/" tools/build/src/tools/gcc.jam
418 # cleanup -g switch to avoid override debuginfocflags.
419 %{__sed} -i 's/<debug-symbols>on : -g/<debug-symbols>on :/' tools/build/src/tools/gcc.jam
420 # link against shared expat library.
421 #%{__sed} -i 's:find-static:find-shared:' libs/graph/build/Jamfile.v2
423 cat << EOF > tools/build/src/user-config.jam
424 using gcc : %{cxx_version} : %{__cxx} ;
427 # cleanup backups after patching
428 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
432 PYTHON_VERSION=$(%{__python} -c 'import sys; print sys.version[0:3]')
433 PYTHON_ROOT=%{_prefix}
438 EXPAT_INCLUDE=%{_includedir} \
439 EXPAT_LIBPATH=%{_libdir} \
440 ICU_PATH=%{_prefix} \
447 --without-coroutine \
457 rm -rf $RPM_BUILD_ROOT
458 install -d $RPM_BUILD_ROOT{%{_libdir},%{_includedir}}
460 cp -rf boost $RPM_BUILD_ROOT%{_includedir}
462 install -p stage/lib/lib*.a $RPM_BUILD_ROOT%{_libdir}
463 install -p stage/lib/lib*.so.*.*.* $RPM_BUILD_ROOT%{_libdir}
464 cp -a stage/lib/lib*.so $RPM_BUILD_ROOT%{_libdir}
467 install -d $RPM_BUILD_ROOT%{_docdir}/boost-%{version}
469 # as the documentation doesn't completely reside in a directory of its
470 # own, we need to find out ourselves... this looks for HTML files and
471 # then collects everything linked from those. this is certainly quite
472 # unoptimized wrt mkdir calls, but does it really matter?
474 for i in $(find -type f -name '*.htm*'); do
475 # bjam docu is included in the boost-jam RPM
476 if test "`echo $i | sed 's,jam_src,,'`" = "$i"; then
477 install -d $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/${i%/*}
478 for LINKED in `%{__perl} - $i $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/$i <<'EOT'
482 # rewrite links from boost/* to %{_includedir}/boost/* and
483 # ignore external links as well as document-internal ones.
484 # HTML files are also ignored as they get installed anyway.
485 if (!($link =~ s,^(?:../)*boost/,%{_includedir}/boost/,) && !($link =~ m,(?:^[^/]+:|^\#|\.html?(?:$|\#)),))
487 (my $file = $link) =~ s/\#.*//;
493 open OUT, ">@ARGV[1]";
497 $in_link and s/^\s*"([^"> ]*)"/'"' . rewrite_link($1) . '"'/e;
498 s/(href|src)="([^"> ]*)"/"$1=\"" . rewrite_link($2) . '"'/eig;
500 $in_link = /href|src=\s*$/;
503 TARGET=${i%/*}/$LINKED
504 # ignore non-existant linked files
505 if test -f $TARGET; then
506 install -D -m 644 $TARGET $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/$TARGET
514 rm -rf $RPM_BUILD_ROOT
516 %post -p /sbin/ldconfig
517 %postun -p /sbin/ldconfig
519 %post chrono -p /sbin/ldconfig
520 %postun chrono -p /sbin/ldconfig
522 %post context -p /sbin/ldconfig
523 %postun context -p /sbin/ldconfig
525 %post date_time -p /sbin/ldconfig
526 %postun date_time -p /sbin/ldconfig
528 %post filesystem -p /sbin/ldconfig
529 %postun filesystem -p /sbin/ldconfig
531 %post graph -p /sbin/ldconfig
532 %postun graph -p /sbin/ldconfig
534 %post locale -p /sbin/ldconfig
535 %postun locale -p /sbin/ldconfig
537 %post python -p /sbin/ldconfig
538 %postun python -p /sbin/ldconfig
540 %post program_options -p /sbin/ldconfig
541 %postun program_options -p /sbin/ldconfig
543 %post regex -p /sbin/ldconfig
544 %postun regex -p /sbin/ldconfig
546 %post signals -p /sbin/ldconfig
547 %postun signals -p /sbin/ldconfig
549 %post system -p /sbin/ldconfig
550 %postun system -p /sbin/ldconfig
552 %post test -p /sbin/ldconfig
553 %postun test -p /sbin/ldconfig
555 %post thread -p /sbin/ldconfig
556 %postun thread -p /sbin/ldconfig
558 %post timer -p /sbin/ldconfig
559 %postun timer -p /sbin/ldconfig
561 %post wave -p /sbin/ldconfig
562 %postun wave -p /sbin/ldconfig
565 %defattr(644,root,root,755)
566 %attr(755,root,root) %{_libdir}/libboost_atomic.so.*.*.*
567 %attr(755,root,root) %{_libdir}/libboost_container.so.*.*.*
569 %attr(755,root,root) %{_libdir}/libboost_coroutine.so.*.*.*
571 %attr(755,root,root) %{_libdir}/libboost_iostreams.so.*.*.*
572 %attr(755,root,root) %{_libdir}/libboost_math_*.so.*.*.*
573 %attr(755,root,root) %{_libdir}/libboost_random.so.*.*.*
574 %attr(755,root,root) %{_libdir}/libboost_serialization.so.*.*.*
575 %attr(755,root,root) %{_libdir}/libboost_wserialization.so.*.*.*
578 %defattr(644,root,root,755)
579 %attr(755,root,root) %{_libdir}/libboost_atomic.so
580 %attr(755,root,root) %{_libdir}/libboost_chrono.so
581 %attr(755,root,root) %{_libdir}/libboost_container.so
583 %attr(755,root,root) %{_libdir}/libboost_context.so
584 %attr(755,root,root) %{_libdir}/libboost_coroutine.so
586 %attr(755,root,root) %{_libdir}/libboost_date_time.so
587 %attr(755,root,root) %{_libdir}/libboost_filesystem.so
588 %attr(755,root,root) %{_libdir}/libboost_graph.so
589 %attr(755,root,root) %{_libdir}/libboost_iostreams.so
590 %attr(755,root,root) %{_libdir}/libboost_locale.so
591 %attr(755,root,root) %{_libdir}/libboost_log.so
592 %attr(755,root,root) %{_libdir}/libboost_log_setup.so
593 %attr(755,root,root) %{_libdir}/libboost_math_*.so
594 %attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor.so
595 %attr(755,root,root) %{_libdir}/libboost_program_options.so
596 %attr(755,root,root) %{_libdir}/libboost_regex.so
597 %attr(755,root,root) %{_libdir}/libboost_random.so
598 %attr(755,root,root) %{_libdir}/libboost_serialization.so
599 %attr(755,root,root) %{_libdir}/libboost_signals.so
600 %attr(755,root,root) %{_libdir}/libboost_system.so
601 %attr(755,root,root) %{_libdir}/libboost_thread.so
602 %attr(755,root,root) %{_libdir}/libboost_timer.so
603 %attr(755,root,root) %{_libdir}/libboost_unit_test_framework.so
604 %attr(755,root,root) %{_libdir}/libboost_wave.so
605 %attr(755,root,root) %{_libdir}/libboost_wserialization.so
607 %exclude %{_includedir}/boost/python
608 %exclude %{_includedir}/boost/python.hpp
611 %defattr(644,root,root,755)
612 %{_libdir}/libboost_atomic.a
613 %{_libdir}/libboost_chrono.a
614 %{_libdir}/libboost_container.a
616 %{_libdir}/libboost_context.a
617 %{_libdir}/libboost_coroutine.a
619 %{_libdir}/libboost_date_time.a
620 %{_libdir}/libboost_exception.a
621 %{_libdir}/libboost_filesystem.a
622 %{_libdir}/libboost_graph.a
623 %{_libdir}/libboost_iostreams.a
624 %{_libdir}/libboost_locale.a
625 %{_libdir}/libboost_log.a
626 %{_libdir}/libboost_log_setup.a
627 %{_libdir}/libboost_math_*.a
628 %{_libdir}/libboost_prg_exec_monitor.a
629 %{_libdir}/libboost_program_options.a
630 %{_libdir}/libboost_random.a
631 %{_libdir}/libboost_regex.a
632 %{_libdir}/libboost_serialization.a
633 %{_libdir}/libboost_signals.a
634 %{_libdir}/libboost_system.a
635 %{_libdir}/libboost_test_exec_monitor.a
636 %{_libdir}/libboost_timer.a
637 %{_libdir}/libboost_thread.a
638 %{_libdir}/libboost_unit_test_framework.a
639 %{_libdir}/libboost_wave.a
640 %{_libdir}/libboost_wserialization.a
644 %defattr(644,root,root,755)
645 %attr(755,root,root) %{_libdir}/libboost_python.so.*.*.*
648 %defattr(644,root,root,755)
649 %attr(755,root,root) %{_libdir}/libboost_python.so
650 %{_includedir}/boost/python
651 %{_includedir}/boost/python.hpp
654 %defattr(644,root,root,755)
655 %{_libdir}/libboost_python.a
659 %defattr(644,root,root,755)
660 %attr(755,root,root) %{_libdir}/libboost_chrono.so.*.*.*
664 %defattr(644,root,root,755)
665 %attr(755,root,root) %{_libdir}/libboost_context.so.*.*.*
669 %defattr(644,root,root,755)
670 %attr(755,root,root) %{_libdir}/libboost_date_time.so.*.*.*
673 %defattr(644,root,root,755)
674 %attr(755,root,root) %{_libdir}/libboost_filesystem.so.*.*.*
677 %defattr(644,root,root,755)
678 %attr(755,root,root) %{_libdir}/libboost_graph.so.*.*.*
681 %defattr(644,root,root,755)
682 %attr(755,root,root) %{_libdir}/libboost_locale.so.*.*.*
685 %defattr(644,root,root,755)
686 %attr(755,root,root) %{_libdir}/libboost_log.so.*.*.*
687 %attr(755,root,root) %{_libdir}/libboost_log_setup.so.*.*.*
689 %files program_options
690 %defattr(644,root,root,755)
691 %attr(755,root,root) %{_libdir}/libboost_program_options.so.*.*.*
694 %defattr(644,root,root,755)
695 %attr(755,root,root) %{_libdir}/libboost_regex.so.*.*.*
698 %defattr(644,root,root,755)
699 %attr(755,root,root) %{_libdir}/libboost_signals.so.*.*.*
702 %defattr(644,root,root,755)
703 %attr(755,root,root) %{_libdir}/libboost_system.so.*.*.*
706 %defattr(644,root,root,755)
707 %attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor.so.*.*.*
708 %attr(755,root,root) %{_libdir}/libboost_unit_test_framework.so.*.*.*
711 %defattr(644,root,root,755)
712 %attr(755,root,root) %{_libdir}/libboost_thread.so.*.*.*
715 %defattr(644,root,root,755)
716 %attr(755,root,root) %{_libdir}/libboost_timer.so.*.*.*
719 %defattr(644,root,root,755)
720 %attr(755,root,root) %{_libdir}/libboost_wave.so.*.*.*
723 %defattr(644,root,root,755)
724 %{_docdir}/%{name}-%{version}