3 # - think about building MPI.
4 # - split shared libs from core package into -iostreams/-serialization.
7 %bcond_without python2 # boost-python[2] support
8 %bcond_without python3 # boost-python3 support
9 %bcond_without numpy # boost-numpy support
11 %define fver %(echo %{version} | tr . _)
12 Summary: The Boost C++ Libraries
13 Summary(pl.UTF-8): Biblioteki C++ "Boost"
17 License: Boost Software License and others
19 Source0: http://downloads.sourceforge.net/boost/%{name}_%{fver}.tar.bz2
20 # Source0-md5: 1c837ecd990bb022d07e7aab32b09847
21 Patch0: %{name}-link.patch
22 Patch1: %{name}-x32-context.patch
23 Patch2: %{name}-clean-gcc-flags.patch
24 Patch3: %{name}-numpy3.patch
25 Patch4: hash-new-char-types.patch
27 Patch201: %{name}-python-abi_letters.patch
28 # https://github.com/boostorg/build/issues/163
29 Patch202: %{name}-dual-python-build.patch
30 # https://svn.boost.org/trac/boost/ticket/5637
31 Patch203: %{name}-1.54.0-mpl-print.patch
32 # https://svn.boost.org/trac/boost/ticket/8881
33 Patch221: %{name}-1.54.0-mpi-unused_typedef.patch
34 URL: http://www.boost.org/
35 BuildRequires: bzip2-devel
36 BuildRequires: expat-devel
37 BuildRequires: libicu-devel
38 BuildRequires: libstdc++-devel >= 6:4.7
39 BuildRequires: perl-base
41 BuildRequires: python-devel >= 2.2
42 %{?with_numpy:BuildRequires: python-numpy-devel}
45 BuildRequires: python3-devel
46 %{?with_numpy:BuildRequires: python3-numpy-devel}
48 BuildRequires: rpm-pythonprov
49 BuildRequires: rpmbuild(macros) >= 1.734
50 BuildRequires: zlib-devel
51 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
53 %define specflags -DBOOST_IOSTREAMS_USE_DEPRECATED=1
56 The Boost web site provides free peer-reviewed portable C++ source
57 libraries. The emphasis is on libraries which work well with the C++
58 Standard Library. One goal is to establish "existing practice" and
59 provide reference implementations so that the Boost libraries are
60 suitable for eventual standardization. Some of the libraries have
61 already been proposed for inclusion in the C++ Standards Committee's
62 upcoming C++ Standard Library Technical Report.
64 %description -l pl.UTF-8
65 Strona http://www.boost.org/ dostarcza darmowe biblioteki C++ wraz z
66 kodem źródłowym. Nacisk położono na biblioteki, które dobrze
67 współpracują ze standardową biblioteką C++. Celem jest ustanowienie
68 "istniejącej praktyki" i dostarczenie implementacji, tak że biblioteki
69 "Boost" nadają się do ewentualnej standaryzacji. Niektóre z bibliotek
70 już zostały zgłoszone do komitetu standaryzacyjnego C++ w nadchodzącym
71 Raporcie Technicznym Biblioteki Standardowej C++.
74 Summary: Boost C++ development headers
75 Summary(pl.UTF-8): Pliki nagłówkowe bibliotek C++ Boost
76 Group: Development/Libraries
77 Requires: %{name} = %{version}-%{release}
78 Requires: %{name}-chrono = %{version}-%{release}
79 Requires: %{name}-context = %{version}-%{release}
80 Requires: %{name}-date_time = %{version}-%{release}
81 Requires: %{name}-fiber = %{version}-%{release}
82 Requires: %{name}-filesystem = %{version}-%{release}
83 Requires: %{name}-graph = %{version}-%{release}
84 Requires: %{name}-locale = %{version}-%{release}
85 Requires: %{name}-log = %{version}-%{release}
86 Requires: %{name}-program_options = %{version}-%{release}
87 Requires: %{name}-regex = %{version}-%{release}
88 Requires: %{name}-signals = %{version}-%{release}
89 Requires: %{name}-system = %{version}-%{release}
90 Requires: %{name}-test = %{version}-%{release}
91 Requires: %{name}-thread = %{version}-%{release}
92 Requires: %{name}-timer = %{version}-%{release}
93 Requires: %{name}-wave = %{version}-%{release}
94 Requires: libstdc++-devel >= 6:4.7
95 Obsoletes: boost-any-devel
96 Obsoletes: boost-array-devel
98 Obsoletes: boost-bind-devel
99 Obsoletes: boost-call_traits-devel
100 Obsoletes: boost-compatibility-devel
101 Obsoletes: boost-compose-devel
102 Obsoletes: boost-compressed_pair-devel
103 Obsoletes: boost-concept_check-devel
104 Obsoletes: boost-conversion-devel
105 Obsoletes: boost-crc-devel
106 Obsoletes: boost-date_time-devel
107 Obsoletes: boost-filesystem-devel
108 Obsoletes: boost-graph-devel
109 Obsoletes: boost-mem_fn-devel
110 Obsoletes: boost-mpl-devel
111 Obsoletes: boost-preprocessor-devel
112 Obsoletes: boost-program_options-devel
113 Obsoletes: boost-ref-devel
114 Obsoletes: boost-regex-devel
115 Obsoletes: boost-signals-devel
116 Obsoletes: boost-spirit-devel
117 Obsoletes: boost-statechart-devel
118 Obsoletes: boost-static_assert-devel
119 Obsoletes: boost-test-devel
120 Obsoletes: boost-thread-devel
121 Obsoletes: boost-tr1-devel
122 Obsoletes: boost-type_traits-devel
123 Obsoletes: boost-typeof-devel
124 Obsoletes: boost-uBLAS-devel
125 Obsoletes: boost-utility-devel
126 Obsoletes: boost-wave-devel
127 Obsoletes: boost-xpressive-devel
130 Header files for the Boost C++ libraries.
132 %description devel -l pl.UTF-8
133 Pliki nagłówkowe bibliotek C++ Boost.
136 Summary: Static version of base Boost C++ libraries
137 Summary(pl.UTF-8): Statyczne wersje podstawowych bibliotek C++ Boost
138 Group: Development/Libraries
139 Requires: %{name}-devel = %{version}-%{release}
140 Obsoletes: boost-static < 1.33
143 Static version of base Boost C++ libraries.
145 %description static -l pl.UTF-8
146 Statyczne wersje podstawowych bibliotek C++ Boost.
148 %package python-devel-common
149 Summary: Boost.Python development headers
150 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki Boost.Python
151 Group: Development/Libraries
152 Requires: %{name}-devel = %{version}-%{release}
154 %description python-devel-common
155 Headers for the Boost.Python library.
157 %description python-devel-common -l pl.UTF-8
158 Pliki nagłówkowe biblioteki Boost.Python.
161 Summary: Boost.Python library for Python 2
162 Summary(pl.UTF-8): Biblioteka Boost.Python dla Pythona 2
164 Requires: python-libs
167 Use the Boost Python Library to quickly and easily export a C++
168 library to Python 2 such that the Python 2 interface is very similar
169 to the C++ interface. It is designed to be minimally intrusive on your
170 C++ design. In most cases, you should not have to alter your C++
171 classes in any way in order to use them with Boost.Python. The system
172 should simply ``reflect'' your C++ classes and functions into Python
175 %description python -l pl.UTF-8
176 Biblioteka Boost Python służy do szybkiego i prostego eksportu
177 biblioteki C++ do Pythona 2, tak że interfejs Pythona 2 jest bardzo
178 podobny do interfejsu C++. Biblioteka jest zaprojektowana tak, żeby
179 narzucać jak najmniej wymagań dotyczących konstrukcjii C++. W
180 większości przypadków nie trzeba w ogóle zmieniać własnych klas C++,
181 żeby używać ich z Boost.Python. System powinien po prostu ,,odbić''
182 klasy C++ i funkcje do Pythona 3.
184 %package python-devel
185 Summary: Boost.Python development files for Python 2
186 Summary(pl.UTF-8): Pliki programistyczne biblioteki Boost.Python dla Pythona 2
187 Group: Development/Libraries
188 Requires: %{name}-devel = %{version}-%{release}
189 Requires: %{name}-python = %{version}-%{release}
190 Requires: %{name}-python-devel-common = %{version}-%{release}
192 %description python-devel
193 Boost.Python development files for Python 2.
195 %description python-devel -l pl.UTF-8
196 Pliki programistyczne biblioteki Boost.Python dla Pythona 2.
198 %package python-static
199 Summary: Static version of Boost.Python library for Python 2
200 Summary(pl.UTF-8): Statyczna wersja biblioteki Boost.Python dla Pythona 2
201 Group: Development/Libraries
202 Requires: %{name}-python-devel = %{version}-%{release}
204 %description python-static
205 Static version of Boost.Python library for Python 2.
207 %description python-static -l pl.UTF-8
208 Statyczna wersja biblioteki Boost.Python dla Pythona 2.
211 Summary: Boost.Python library for Python 3
212 Summary(pl.UTF-8): biblioteka Boost.Python dla Pythona 3
214 Requires: python3-libs
217 Use the Boost Python Library to quickly and easily export a C++
218 library to Python 3 such that the Python 3 interface is very similar
219 to the C++ interface. It is designed to be minimally intrusive on your
220 C++ design. In most cases, you should not have to alter your C++
221 classes in any way in order to use them with Boost.Python. The system
222 should simply ``reflect'' your C++ classes and functions into Python
225 %description python3 -l pl.UTF-8
226 Biblioteka Boost Python służy do szybkiego i prostego eksportu
227 biblioteki C++ do Pythona 3, tak że interfejs Pythona 3 jest bardzo
228 podobny do interfejsu C++. Biblioteka jest zaprojektowana tak, żeby
229 narzucać jak najmniej wymagań dotyczących konstrukcjii C++. W
230 większości przypadków nie trzeba w ogóle zmieniać własnych klas C++,
231 żeby używać ich z Boost.Python. System powinien po prostu ,,odbić''
232 klasy C++ i funkcje do Pythona 3.
234 %package python3-devel
235 Summary: Boost.Python development files for Python 3
236 Summary(pl.UTF-8): Pliki programistyczne biblioteki Boost.Python dla Pythona 3
237 Group: Development/Libraries
238 Requires: %{name}-devel = %{version}-%{release}
239 Requires: %{name}-python-devel-common = %{version}-%{release}
240 Requires: %{name}-python3 = %{version}-%{release}
242 %description python3-devel
243 Boost.Python development files for Python 3.
245 %description python3-devel -l pl.UTF-8
246 Pliki programistyczne biblioteki Boost.Python dla Pythona 3.
248 %package python3-static
249 Summary: Static version of Boost.Python library for Python 3
250 Summary(pl.UTF-8): Statyczna wersja biblioteki Boost.Python dla Pythona 3
251 Group: Development/Libraries
252 Requires: %{name}-python3-devel = %{version}-%{release}
254 %description python3-static
255 Static version of Boost.Python library for Python 3.
257 %description python3-static -l pl.UTF-8
258 Statyczna wersja biblioteki Boost.Python dla Pythona 3.
261 Summary: Useful time utilities
262 Summary(pl.UTF-8): Przydatne funkcje związane z czasem
264 Obsoletes: boost < 1.33
267 Useful time utilities.
269 %description chrono -l pl.UTF-8
270 Przydatne funkcje związane z czasem.
273 Summary: Boost.Context - context switching library
274 Summary(pl.UTF-8): Boost.Context - biblioteka do zmiany kontekstu
278 Boost.Context - context switching library, providing a sort of
279 cooperative multitasking on a single thread.
281 %description context -l pl.UTF-8
282 Boost.Context - biblioteka do zmiany kontekstu, zapewniająca pewną
283 wielozadaniowość kooperatywnąw ramach pojedynczego wątku.
286 Summary: Date-Time library
287 Summary(pl.UTF-8): Biblioteka daty-czasu
289 Obsoletes: boost < 1.33
291 %description date_time
292 A set of date-time libraries.
294 %description date_time -l pl.UTF-8
295 Zbiór bibliotek daty-czasu.
298 Summary: A framework for micro-/userland-threads (fibers) scheduled cooperatively
299 Summary(pl.UTF-8): Szkielet mikrowątków przestrzeni użytkownika (fibers), szeregowanych kooperacyjnie
303 boost::fiber provides a framework for micro-/userland-threads (fibers)
304 scheduled cooperatively. The API contains classes and functions
305 to manage and synchronize fibers similiar to boost.thread.
307 %description fiber -l pl.UTF-8
308 boost::fiber to szkielt mikrowątków przestrzeni użytkownika (fibers)
309 szeregowanych kooperacyjnie. API zawiera klasy i funkcje służące do
310 zarządzania i synchronizacji wątków podobne do boost.thread.
313 Summary: Portable paths, iteration over directories, and other useful filesystem operations
314 Summary(pl.UTF-8): Przenośne ścieżki, iteracje katalogów i inne użyteczne operacje na systemie plików
316 Requires: %{name}-system = %{version}-%{release}
317 Obsoletes: boost < 1.33
319 %description filesystem
320 The boost::filesystem library provides portable facilities to query
321 and manipulate paths, files, and directories.
323 %description filesystem -l pl.UTF-8
324 Przenośna biblioteka boost::filesystem dostarcza ułatwienia w
325 operacjach na ścieżkach, plikach i katalogach.
328 Summary: General purpose, generic C++ library for graph data structures and graph algorithms
329 Summary(pl.UTF-8): Biblioteka ogólnego przeznaczenia w C++ dla struktur danych typu grafy oraz algorytmów związanych z grafami
333 The boost::graph library provides portable facilities to operate on
334 graph data structures using graph algorithms.
336 %description graph -l pl.UTF-8
337 Przenośna biblioteka boost::graph dostarcza ułatwienia w operacjach na
338 strukturach danych typu graf za pomocą algorytmów związanych z
342 Summary: Provide localization and Unicode handling tools for C++
343 Summary(pl.UTF-8): Narzędzia do obsługi lokalizacji i Unikodu w C++
347 Provide localization and Unicode handling tools for C++.
349 %description locale -l pl.UTF-8
350 Narzędzia do obsługi lokalizacji i Unikodu w C++.
353 Summary: Provide logging tools for C++
354 Summary(pl.UTF-8): Narzędzia do logowania w C++
358 Provide logging tools for C++.
360 %description log -l pl.UTF-8
361 Narzędzia do logowania w C++.
363 %package program_options
364 Summary: Access to program options, via conventional methods such as command line and config file
365 Summary(pl.UTF-8): Dostęp do opcji programu za pomocą typowych metod, jak linia poleceń i plik konfiguracyjny
368 %description program_options
369 The program_options library allows program developers to obtain
370 program options, that is (name, value) pairs from the user, via
371 conventional methods such as command line and config file.
373 %description program_options -l pl.UTF-8
374 Biblioteka program_options umożliwia uzyskanie od użytkownika opcji
375 programu, czyli par (nazwa, wartość), za pomocą typowych metod, takich
376 jak linia poleceń, czy plik konfiguracyjny.
379 Summary: Boost C++ regular expressions library
380 Summary(pl.UTF-8): Biblioteka wyrażeń regularnych Boost C++
384 Shared library for Boost C++ regular expressions.
386 %description regex -l pl.UTF-8
387 Biblioteka współdzielona do obsługi wyrażeń regularnych w C++.
390 Summary: Signals & slots callback implementation
391 Summary(pl.UTF-8): Implementacja sygnałów i slotów
393 Obsoletes: boost < 1.33
396 The boost::signals library is an implementation of a signals and slots
399 %description signals -l pl.UTF-8
400 Biblioteka boost::signals jest implementacją systemu sygnałów i
404 Summary: Support for getting system specific error codes
405 Summary(pl.UTF-8): Wsparcie dla pobierania specyficznych dla systemu kodów błędów
409 The Boost System library provides simple, light-weight error_code
410 objects that encapsulate system-specific error code values, yet also
411 provide access to more abstract and portable error conditions objects.
413 %description system -l pl.UTF-8
414 Biblioteka Boost System udostępnia proste, lekkie obiekty error_code
415 obudowujące wartości kodów błędów specyficznych dla systemu, dając
416 jednocześnie dostęp do bardziej abstrakcyjnych i przenośnych obiektów
420 Summary: Support for program testing and execution monitoring
421 Summary(pl.UTF-8): Wsparcie dla testowania i monitorowania programu
423 Obsoletes: boost < 1.33
426 Support for simple program testing, full unit testing, and for program
427 execution monitoring.
429 %description test -l pl.UTF-8
430 Wsparcie dla prostego testowania programu, pełnego testowania i
431 monitorowania wykonania programu.
434 Summary: Portable C++ threads library
435 Summary(pl.UTF-8): Przenośna biblioteka wątków C++
437 Obsoletes: boost < 1.33
440 Portable C++ threads library - shared library.
442 %description thread -l pl.UTF-8
443 Przenośna biblioteka wątków dla C++ - biblioteka dzielona.
446 Summary: Event timer, progress timer, and progress display classes
447 Summary(pl.UTF-8): Klasy do obsługi pomiarów czasu, postępu i wyświetlania postępu
449 Obsoletes: boost < 1.33
452 Event timer, progress timer, and progress display classes.
454 %description timer -l pl.UTF-8
455 Klasy do obsługi pomiarów czasu, postępu i wyświetlania postępu.
458 Summary: Boost.Wave - a standard compliant C++ preprocessor library
459 Summary(pl.UTF-8): Boost.Wave - zgodna ze standardem biblioteka preprocesora C++
460 Group: Development/Libraries
463 Boost.Wave - a standard compliant C++ preprocessor library.
465 %description wave -l pl.UTF-8
466 Boost.Wave - zgodna ze standardem biblioteka preprocesora C++.
469 Summary: Boost C++ Library documentation
470 Summary(pl.UTF-8): Dokumentacja dla biblioteki Boost C++
472 %if "%{_rpmversion}" >= "5"
477 Documentation for the Boost C++ Library.
479 %description doc -l pl.UTF-8
480 Dokumentacja dla biblioteki Boost C++.
483 %setup -q -n %{name}_%{fver}
495 cat << EOF > tools/build/src/user-config.jam
496 using gcc : %{cxx_version} : %{__cxx} : <cflags>"%{rpmcflags} -fPIC" <cxxflags>"%{rpmcxxflags} -std=c++11 -fPIC" <linkflags>"%{rpmldflags}" ;
499 # cleanup backups after patching
500 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
503 EXPAT_INCLUDE=%{_includedir} \
504 EXPAT_LIBPATH=%{_libdir} \
505 ICU_PATH=%{_prefix} \
507 --prefix=%{_prefix} \
508 -without-libraries=python
519 echo "using python : %{py3_ver} : %{py3_prefix} : %{py3_incdir} : : : : m ;" >> project-config.jam
521 --with-python python=%{py3_ver} \
522 -a -d2 --toolset=gcc \
531 %{__sed} -i -e '/^using python : 3/d' project-config.jam
532 echo "using python : %{py_ver} : %{py_prefix} : %{py_incdir} ;" >> project-config.jam
534 --with-python python=%{py_ver} \
535 -a -d2 --toolset=gcc \
544 rm -rf $RPM_BUILD_ROOT
545 install -d $RPM_BUILD_ROOT{%{_libdir},%{_includedir}}
547 cp -rf boost $RPM_BUILD_ROOT%{_includedir}
549 install -p stage/lib/lib*.a $RPM_BUILD_ROOT%{_libdir}
550 install -p stage/lib/lib*.so.*.*.* $RPM_BUILD_ROOT%{_libdir}
551 cp -a stage/lib/lib*.so $RPM_BUILD_ROOT%{_libdir}
554 install -d $RPM_BUILD_ROOT%{_docdir}/boost-%{version}
556 # as the documentation doesn't completely reside in a directory of its
557 # own, we need to find out ourselves... this looks for HTML files and
558 # then collects everything linked from those. this is certainly quite
559 # unoptimized wrt mkdir calls, but does it really matter?
561 for i in $(find -type f -name '*.htm*'); do
562 # bjam docu is included in the boost-jam RPM
563 if test "`echo $i | sed 's,jam_src,,'`" = "$i"; then
564 install -d $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/${i%/*}
565 for LINKED in `%{__perl} - $i $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/$i <<'EOT'
569 # rewrite links from boost/* to %{_includedir}/boost/* and
570 # ignore external links as well as document-internal ones.
571 # HTML files are also ignored as they get installed anyway.
572 if (!($link =~ s,^(?:../)*boost/,%{_includedir}/boost/,) && !($link =~ m,(?:^[^/]+:|^\#|\.html?(?:$|\#)),))
574 (my $file = $link) =~ s/\#.*//;
580 open OUT, ">@ARGV[1]";
584 $in_link and s/^\s*"([^"> ]*)"/'"' . rewrite_link($1) . '"'/e;
585 s/(href|src)="([^"> ]*)"/"$1=\"" . rewrite_link($2) . '"'/eig;
587 $in_link = /href|src=\s*$/;
590 TARGET=${i%/*}/$LINKED
591 # ignore non-existant linked files
592 if test -f $TARGET; then
593 install -D -m 644 $TARGET $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/$TARGET
601 rm -rf $RPM_BUILD_ROOT
603 %post -p /sbin/ldconfig
604 %postun -p /sbin/ldconfig
606 %post chrono -p /sbin/ldconfig
607 %postun chrono -p /sbin/ldconfig
609 %post context -p /sbin/ldconfig
610 %postun context -p /sbin/ldconfig
612 %post date_time -p /sbin/ldconfig
613 %postun date_time -p /sbin/ldconfig
615 %post fiber -p /sbin/ldconfig
616 %postun fiber -p /sbin/ldconfig
618 %post filesystem -p /sbin/ldconfig
619 %postun filesystem -p /sbin/ldconfig
621 %post graph -p /sbin/ldconfig
622 %postun graph -p /sbin/ldconfig
624 %post locale -p /sbin/ldconfig
625 %postun locale -p /sbin/ldconfig
627 %post python -p /sbin/ldconfig
628 %postun python -p /sbin/ldconfig
630 %post python3 -p /sbin/ldconfig
631 %postun python3 -p /sbin/ldconfig
633 %post program_options -p /sbin/ldconfig
634 %postun program_options -p /sbin/ldconfig
636 %post regex -p /sbin/ldconfig
637 %postun regex -p /sbin/ldconfig
639 %post signals -p /sbin/ldconfig
640 %postun signals -p /sbin/ldconfig
642 %post system -p /sbin/ldconfig
643 %postun system -p /sbin/ldconfig
645 %post test -p /sbin/ldconfig
646 %postun test -p /sbin/ldconfig
648 %post thread -p /sbin/ldconfig
649 %postun thread -p /sbin/ldconfig
651 %post timer -p /sbin/ldconfig
652 %postun timer -p /sbin/ldconfig
654 %post wave -p /sbin/ldconfig
655 %postun wave -p /sbin/ldconfig
658 %defattr(644,root,root,755)
659 %attr(755,root,root) %{_libdir}/libboost_atomic.so.*.*.*
660 %attr(755,root,root) %{_libdir}/libboost_container.so.*.*.*
661 %attr(755,root,root) %{_libdir}/libboost_coroutine.so.*.*.*
662 %attr(755,root,root) %{_libdir}/libboost_iostreams.so.*.*.*
663 %attr(755,root,root) %{_libdir}/libboost_math_*.so.*.*.*
664 %attr(755,root,root) %{_libdir}/libboost_random.so.*.*.*
665 %attr(755,root,root) %{_libdir}/libboost_serialization.so.*.*.*
666 %attr(755,root,root) %{_libdir}/libboost_type_erasure.so.*.*.*
667 %attr(755,root,root) %{_libdir}/libboost_wserialization.so.*.*.*
670 %defattr(644,root,root,755)
671 %attr(755,root,root) %{_libdir}/libboost_atomic.so
672 %attr(755,root,root) %{_libdir}/libboost_chrono.so
673 %attr(755,root,root) %{_libdir}/libboost_container.so
674 %attr(755,root,root) %{_libdir}/libboost_context.so
675 %attr(755,root,root) %{_libdir}/libboost_coroutine.so
676 %attr(755,root,root) %{_libdir}/libboost_date_time.so
677 %attr(755,root,root) %{_libdir}/libboost_fiber.so
678 %attr(755,root,root) %{_libdir}/libboost_filesystem.so
679 %attr(755,root,root) %{_libdir}/libboost_graph.so
680 %attr(755,root,root) %{_libdir}/libboost_iostreams.so
681 %attr(755,root,root) %{_libdir}/libboost_locale.so
682 %attr(755,root,root) %{_libdir}/libboost_log.so
683 %attr(755,root,root) %{_libdir}/libboost_log_setup.so
684 %attr(755,root,root) %{_libdir}/libboost_math_*.so
685 %attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor.so
686 %attr(755,root,root) %{_libdir}/libboost_program_options.so
687 %attr(755,root,root) %{_libdir}/libboost_regex.so
688 %attr(755,root,root) %{_libdir}/libboost_random.so
689 %attr(755,root,root) %{_libdir}/libboost_serialization.so
690 %attr(755,root,root) %{_libdir}/libboost_signals.so
691 %attr(755,root,root) %{_libdir}/libboost_system.so
692 %attr(755,root,root) %{_libdir}/libboost_thread.so
693 %attr(755,root,root) %{_libdir}/libboost_timer.so
694 %attr(755,root,root) %{_libdir}/libboost_type_erasure.so
695 %attr(755,root,root) %{_libdir}/libboost_unit_test_framework.so
696 %attr(755,root,root) %{_libdir}/libboost_wave.so
697 %attr(755,root,root) %{_libdir}/libboost_wserialization.so
699 %exclude %{_includedir}/boost/python
700 %exclude %{_includedir}/boost/python.hpp
703 %defattr(644,root,root,755)
704 %{_libdir}/libboost_atomic.a
705 %{_libdir}/libboost_chrono.a
706 %{_libdir}/libboost_container.a
707 %{_libdir}/libboost_context.a
708 %{_libdir}/libboost_coroutine.a
709 %{_libdir}/libboost_date_time.a
710 %{_libdir}/libboost_exception.a
711 %{_libdir}/libboost_fiber.a
712 %{_libdir}/libboost_filesystem.a
713 %{_libdir}/libboost_graph.a
714 %{_libdir}/libboost_iostreams.a
715 %{_libdir}/libboost_locale.a
716 %{_libdir}/libboost_log.a
717 %{_libdir}/libboost_log_setup.a
718 %{_libdir}/libboost_math_*.a
719 %{_libdir}/libboost_prg_exec_monitor.a
720 %{_libdir}/libboost_program_options.a
721 %{_libdir}/libboost_random.a
722 %{_libdir}/libboost_regex.a
723 %{_libdir}/libboost_serialization.a
724 %{_libdir}/libboost_signals.a
725 %{_libdir}/libboost_system.a
726 %{_libdir}/libboost_test_exec_monitor.a
727 %{_libdir}/libboost_timer.a
728 %{_libdir}/libboost_thread.a
729 %{_libdir}/libboost_type_erasure.a
730 %{_libdir}/libboost_unit_test_framework.a
731 %{_libdir}/libboost_wave.a
732 %{_libdir}/libboost_wserialization.a
734 %if %{with python2} || %{with python3}
735 %files python-devel-common
736 %defattr(644,root,root,755)
737 %{_includedir}/boost/python
738 %{_includedir}/boost/python.hpp
743 %defattr(644,root,root,755)
745 %attr(755,root,root) %{_libdir}/libboost_numpy.so.*.*.*
747 %attr(755,root,root) %{_libdir}/libboost_python.so.*.*.*
750 %defattr(644,root,root,755)
752 %attr(755,root,root) %{_libdir}/libboost_numpy.so
754 %attr(755,root,root) %{_libdir}/libboost_python.so
757 %defattr(644,root,root,755)
759 %{_libdir}/libboost_numpy.a
761 %{_libdir}/libboost_python.a
766 %defattr(644,root,root,755)
768 %attr(755,root,root) %{_libdir}/libboost_numpy3.so.*.*.*
770 %attr(755,root,root) %{_libdir}/libboost_python3.so.*.*.*
773 %defattr(644,root,root,755)
775 %attr(755,root,root) %{_libdir}/libboost_numpy3.so
777 %attr(755,root,root) %{_libdir}/libboost_python3.so
779 %files python3-static
780 %defattr(644,root,root,755)
782 %{_libdir}/libboost_numpy3.a
784 %{_libdir}/libboost_python3.a
788 %defattr(644,root,root,755)
789 %attr(755,root,root) %{_libdir}/libboost_chrono.so.*.*.*
792 %defattr(644,root,root,755)
793 %attr(755,root,root) %{_libdir}/libboost_context.so.*.*.*
796 %defattr(644,root,root,755)
797 %attr(755,root,root) %{_libdir}/libboost_date_time.so.*.*.*
800 %defattr(644,root,root,755)
801 %attr(755,root,root) %{_libdir}/libboost_fiber.so.*.*.*
804 %defattr(644,root,root,755)
805 %attr(755,root,root) %{_libdir}/libboost_filesystem.so.*.*.*
808 %defattr(644,root,root,755)
809 %attr(755,root,root) %{_libdir}/libboost_graph.so.*.*.*
812 %defattr(644,root,root,755)
813 %attr(755,root,root) %{_libdir}/libboost_locale.so.*.*.*
816 %defattr(644,root,root,755)
817 %attr(755,root,root) %{_libdir}/libboost_log.so.*.*.*
818 %attr(755,root,root) %{_libdir}/libboost_log_setup.so.*.*.*
820 %files program_options
821 %defattr(644,root,root,755)
822 %attr(755,root,root) %{_libdir}/libboost_program_options.so.*.*.*
825 %defattr(644,root,root,755)
826 %attr(755,root,root) %{_libdir}/libboost_regex.so.*.*.*
829 %defattr(644,root,root,755)
830 %attr(755,root,root) %{_libdir}/libboost_signals.so.*.*.*
833 %defattr(644,root,root,755)
834 %attr(755,root,root) %{_libdir}/libboost_system.so.*.*.*
837 %defattr(644,root,root,755)
838 %attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor.so.*.*.*
839 %attr(755,root,root) %{_libdir}/libboost_unit_test_framework.so.*.*.*
842 %defattr(644,root,root,755)
843 %attr(755,root,root) %{_libdir}/libboost_thread.so.*.*.*
846 %defattr(644,root,root,755)
847 %attr(755,root,root) %{_libdir}/libboost_timer.so.*.*.*
850 %defattr(644,root,root,755)
851 %attr(755,root,root) %{_libdir}/libboost_wave.so.*.*.*
854 %defattr(644,root,root,755)
855 %{_docdir}/%{name}-%{version}