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: 242ecc63507711d6706b9b0c0d0c7d4f
21 Patch0: %{name}-link.patch
22 Patch1: %{name}-clean-gcc-flags.patch
24 Patch201: %{name}-python-abi_letters.patch
25 # https://svn.boost.org/trac/boost/ticket/5637
26 Patch203: %{name}-1.54.0-mpl-print.patch
27 # https://svn.boost.org/trac/boost/ticket/8881
28 Patch221: %{name}-1.54.0-mpi-unused_typedef.patch
29 URL: http://www.boost.org/
30 BuildRequires: bzip2-devel
31 BuildRequires: expat-devel
32 BuildRequires: libicu-devel
33 BuildRequires: libstdc++-devel >= 6:4.7
34 BuildRequires: perl-base
36 BuildRequires: python-devel >= 2.2
37 %{?with_numpy:BuildRequires: python-numpy-devel}
40 BuildRequires: python3-devel
41 %{?with_numpy:BuildRequires: python3-numpy-devel}
43 BuildRequires: rpm-pythonprov
44 BuildRequires: rpmbuild(macros) >= 1.734
45 BuildRequires: zlib-devel
46 Obsoletes: boost-signals
47 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
49 %define specflags -DBOOST_IOSTREAMS_USE_DEPRECATED=1
51 %define py2v %(echo %{py_ver} | tr -d .)
52 %define py3v %(echo %{py3_ver} | tr -d .)
55 The Boost web site provides free peer-reviewed portable C++ source
56 libraries. The emphasis is on libraries which work well with the C++
57 Standard Library. One goal is to establish "existing practice" and
58 provide reference implementations so that the Boost libraries are
59 suitable for eventual standardization. Some of the libraries have
60 already been proposed for inclusion in the C++ Standards Committee's
61 upcoming C++ Standard Library Technical Report.
63 %description -l pl.UTF-8
64 Strona http://www.boost.org/ dostarcza darmowe biblioteki C++ wraz z
65 kodem źródłowym. Nacisk położono na biblioteki, które dobrze
66 współpracują ze standardową biblioteką C++. Celem jest ustanowienie
67 "istniejącej praktyki" i dostarczenie implementacji, tak że biblioteki
68 "Boost" nadają się do ewentualnej standaryzacji. Niektóre z bibliotek
69 już zostały zgłoszone do komitetu standaryzacyjnego C++ w nadchodzącym
70 Raporcie Technicznym Biblioteki Standardowej C++.
73 Summary: Boost C++ development headers
74 Summary(pl.UTF-8): Pliki nagłówkowe bibliotek C++ Boost
75 Group: Development/Libraries
76 Requires: %{name} = %{version}-%{release}
77 Requires: %{name}-chrono = %{version}-%{release}
78 Requires: %{name}-context = %{version}-%{release}
79 Requires: %{name}-date_time = %{version}-%{release}
80 Requires: %{name}-fiber = %{version}-%{release}
81 Requires: %{name}-filesystem = %{version}-%{release}
82 Requires: %{name}-graph = %{version}-%{release}
83 Requires: %{name}-locale = %{version}-%{release}
84 Requires: %{name}-log = %{version}-%{release}
85 Requires: %{name}-program_options = %{version}-%{release}
86 Requires: %{name}-regex = %{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 >= 6:4.7
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.
146 %package python-devel-common
147 Summary: Boost.Python development headers
148 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki Boost.Python
149 Group: Development/Libraries
150 Requires: %{name}-devel = %{version}-%{release}
152 %description python-devel-common
153 Headers for the Boost.Python library.
155 %description python-devel-common -l pl.UTF-8
156 Pliki nagłówkowe biblioteki Boost.Python.
159 Summary: Boost.Python library for Python 2
160 Summary(pl.UTF-8): Biblioteka Boost.Python dla Pythona 2
162 Requires: python-libs
165 Use the Boost Python Library to quickly and easily export a C++
166 library to Python 2 such that the Python 2 interface is very similar
167 to the C++ interface. It is designed to be minimally intrusive on your
168 C++ design. In most cases, you should not have to alter your C++
169 classes in any way in order to use them with Boost.Python. The system
170 should simply ``reflect'' your C++ classes and functions into Python
173 %description python -l pl.UTF-8
174 Biblioteka Boost Python służy do szybkiego i prostego eksportu
175 biblioteki C++ do Pythona 2, tak że interfejs Pythona 2 jest bardzo
176 podobny do interfejsu C++. Biblioteka jest zaprojektowana tak, żeby
177 narzucać jak najmniej wymagań dotyczących konstrukcjii C++. W
178 większości przypadków nie trzeba w ogóle zmieniać własnych klas C++,
179 żeby używać ich z Boost.Python. System powinien po prostu ,,odbić''
180 klasy C++ i funkcje do Pythona 3.
182 %package python-devel
183 Summary: Boost.Python development files for Python 2
184 Summary(pl.UTF-8): Pliki programistyczne biblioteki Boost.Python dla Pythona 2
185 Group: Development/Libraries
186 Requires: %{name}-devel = %{version}-%{release}
187 Requires: %{name}-python = %{version}-%{release}
188 Requires: %{name}-python-devel-common = %{version}-%{release}
190 %description python-devel
191 Boost.Python development files for Python 2.
193 %description python-devel -l pl.UTF-8
194 Pliki programistyczne biblioteki Boost.Python dla Pythona 2.
196 %package python-static
197 Summary: Static version of Boost.Python library for Python 2
198 Summary(pl.UTF-8): Statyczna wersja biblioteki Boost.Python dla Pythona 2
199 Group: Development/Libraries
200 Requires: %{name}-python-devel = %{version}-%{release}
202 %description python-static
203 Static version of Boost.Python library for Python 2.
205 %description python-static -l pl.UTF-8
206 Statyczna wersja biblioteki Boost.Python dla Pythona 2.
209 Summary: Boost.Python library for Python 3
210 Summary(pl.UTF-8): biblioteka Boost.Python dla Pythona 3
212 Requires: python3-libs
215 Use the Boost Python Library to quickly and easily export a C++
216 library to Python 3 such that the Python 3 interface is very similar
217 to the C++ interface. It is designed to be minimally intrusive on your
218 C++ design. In most cases, you should not have to alter your C++
219 classes in any way in order to use them with Boost.Python. The system
220 should simply ``reflect'' your C++ classes and functions into Python
223 %description python3 -l pl.UTF-8
224 Biblioteka Boost Python służy do szybkiego i prostego eksportu
225 biblioteki C++ do Pythona 3, tak że interfejs Pythona 3 jest bardzo
226 podobny do interfejsu C++. Biblioteka jest zaprojektowana tak, żeby
227 narzucać jak najmniej wymagań dotyczących konstrukcjii C++. W
228 większości przypadków nie trzeba w ogóle zmieniać własnych klas C++,
229 żeby używać ich z Boost.Python. System powinien po prostu ,,odbić''
230 klasy C++ i funkcje do Pythona 3.
232 %package python3-devel
233 Summary: Boost.Python development files for Python 3
234 Summary(pl.UTF-8): Pliki programistyczne biblioteki Boost.Python dla Pythona 3
235 Group: Development/Libraries
236 Requires: %{name}-devel = %{version}-%{release}
237 Requires: %{name}-python-devel-common = %{version}-%{release}
238 Requires: %{name}-python3 = %{version}-%{release}
240 %description python3-devel
241 Boost.Python development files for Python 3.
243 %description python3-devel -l pl.UTF-8
244 Pliki programistyczne biblioteki Boost.Python dla Pythona 3.
246 %package python3-static
247 Summary: Static version of Boost.Python library for Python 3
248 Summary(pl.UTF-8): Statyczna wersja biblioteki Boost.Python dla Pythona 3
249 Group: Development/Libraries
250 Requires: %{name}-python3-devel = %{version}-%{release}
252 %description python3-static
253 Static version of Boost.Python library for Python 3.
255 %description python3-static -l pl.UTF-8
256 Statyczna wersja biblioteki Boost.Python dla Pythona 3.
259 Summary: Useful time utilities
260 Summary(pl.UTF-8): Przydatne funkcje związane z czasem
262 Obsoletes: boost < 1.33
265 Useful time utilities.
267 %description chrono -l pl.UTF-8
268 Przydatne funkcje związane z czasem.
271 Summary: Boost.Context - context switching library
272 Summary(pl.UTF-8): Boost.Context - biblioteka do zmiany kontekstu
276 Boost.Context - context switching library, providing a sort of
277 cooperative multitasking on a single thread.
279 %description context -l pl.UTF-8
280 Boost.Context - biblioteka do zmiany kontekstu, zapewniająca pewną
281 wielozadaniowość kooperatywnąw ramach pojedynczego wątku.
284 Summary: Date-Time library
285 Summary(pl.UTF-8): Biblioteka daty-czasu
287 Obsoletes: boost < 1.33
289 %description date_time
290 A set of date-time libraries.
292 %description date_time -l pl.UTF-8
293 Zbiór bibliotek daty-czasu.
296 Summary: A framework for micro-/userland-threads (fibers) scheduled cooperatively
297 Summary(pl.UTF-8): Szkielet mikrowątków przestrzeni użytkownika (fibers), szeregowanych kooperacyjnie
301 boost::fiber provides a framework for micro-/userland-threads (fibers)
302 scheduled cooperatively. The API contains classes and functions
303 to manage and synchronize fibers similiar to boost.thread.
305 %description fiber -l pl.UTF-8
306 boost::fiber to szkielt mikrowątków przestrzeni użytkownika (fibers)
307 szeregowanych kooperacyjnie. API zawiera klasy i funkcje służące do
308 zarządzania i synchronizacji wątków podobne do boost.thread.
311 Summary: Portable paths, iteration over directories, and other useful filesystem operations
312 Summary(pl.UTF-8): Przenośne ścieżki, iteracje katalogów i inne użyteczne operacje na systemie plików
314 Requires: %{name}-system = %{version}-%{release}
315 Obsoletes: boost < 1.33
317 %description filesystem
318 The boost::filesystem library provides portable facilities to query
319 and manipulate paths, files, and directories.
321 %description filesystem -l pl.UTF-8
322 Przenośna biblioteka boost::filesystem dostarcza ułatwienia w
323 operacjach na ścieżkach, plikach i katalogach.
326 Summary: General purpose, generic C++ library for graph data structures and graph algorithms
327 Summary(pl.UTF-8): Biblioteka ogólnego przeznaczenia w C++ dla struktur danych typu grafy oraz algorytmów związanych z grafami
331 The boost::graph library provides portable facilities to operate on
332 graph data structures using graph algorithms.
334 %description graph -l pl.UTF-8
335 Przenośna biblioteka boost::graph dostarcza ułatwienia w operacjach na
336 strukturach danych typu graf za pomocą algorytmów związanych z
340 Summary: Provide localization and Unicode handling tools for C++
341 Summary(pl.UTF-8): Narzędzia do obsługi lokalizacji i Unikodu w C++
345 Provide localization and Unicode handling tools for C++.
347 %description locale -l pl.UTF-8
348 Narzędzia do obsługi lokalizacji i Unikodu w C++.
351 Summary: Provide logging tools for C++
352 Summary(pl.UTF-8): Narzędzia do logowania w C++
356 Provide logging tools for C++.
358 %description log -l pl.UTF-8
359 Narzędzia do logowania w C++.
361 %package program_options
362 Summary: Access to program options, via conventional methods such as command line and config file
363 Summary(pl.UTF-8): Dostęp do opcji programu za pomocą typowych metod, jak linia poleceń i plik konfiguracyjny
366 %description program_options
367 The program_options library allows program developers to obtain
368 program options, that is (name, value) pairs from the user, via
369 conventional methods such as command line and config file.
371 %description program_options -l pl.UTF-8
372 Biblioteka program_options umożliwia uzyskanie od użytkownika opcji
373 programu, czyli par (nazwa, wartość), za pomocą typowych metod, takich
374 jak linia poleceń, czy plik konfiguracyjny.
377 Summary: Boost C++ regular expressions library
378 Summary(pl.UTF-8): Biblioteka wyrażeń regularnych Boost C++
382 Shared library for Boost C++ regular expressions.
384 %description regex -l pl.UTF-8
385 Biblioteka współdzielona do obsługi wyrażeń regularnych w C++.
388 Summary: Support for getting system specific error codes
389 Summary(pl.UTF-8): Wsparcie dla pobierania specyficznych dla systemu kodów błędów
393 The Boost System library provides simple, light-weight error_code
394 objects that encapsulate system-specific error code values, yet also
395 provide access to more abstract and portable error conditions objects.
397 %description system -l pl.UTF-8
398 Biblioteka Boost System udostępnia proste, lekkie obiekty error_code
399 obudowujące wartości kodów błędów specyficznych dla systemu, dając
400 jednocześnie dostęp do bardziej abstrakcyjnych i przenośnych obiektów
404 Summary: Support for program testing and execution monitoring
405 Summary(pl.UTF-8): Wsparcie dla testowania i monitorowania programu
407 Obsoletes: boost < 1.33
410 Support for simple program testing, full unit testing, and for program
411 execution monitoring.
413 %description test -l pl.UTF-8
414 Wsparcie dla prostego testowania programu, pełnego testowania i
415 monitorowania wykonania programu.
418 Summary: Portable C++ threads library
419 Summary(pl.UTF-8): Przenośna biblioteka wątków C++
421 Obsoletes: boost < 1.33
424 Portable C++ threads library - shared library.
426 %description thread -l pl.UTF-8
427 Przenośna biblioteka wątków dla C++ - biblioteka dzielona.
430 Summary: Event timer, progress timer, and progress display classes
431 Summary(pl.UTF-8): Klasy do obsługi pomiarów czasu, postępu i wyświetlania postępu
433 Obsoletes: boost < 1.33
436 Event timer, progress timer, and progress display classes.
438 %description timer -l pl.UTF-8
439 Klasy do obsługi pomiarów czasu, postępu i wyświetlania postępu.
442 Summary: Boost.Wave - a standard compliant C++ preprocessor library
443 Summary(pl.UTF-8): Boost.Wave - zgodna ze standardem biblioteka preprocesora C++
444 Group: Development/Libraries
447 Boost.Wave - a standard compliant C++ preprocessor library.
449 %description wave -l pl.UTF-8
450 Boost.Wave - zgodna ze standardem biblioteka preprocesora C++.
453 Summary: Boost C++ Library documentation
454 Summary(pl.UTF-8): Dokumentacja dla biblioteki Boost C++
456 %if "%{_rpmversion}" >= "5"
461 Documentation for the Boost C++ Library.
463 %description doc -l pl.UTF-8
464 Dokumentacja dla biblioteki Boost C++.
467 %setup -q -n %{name}_%{fver}
475 %if "%{cc_version}" < "6.0"
480 cat << EOF > tools/build/src/user-config.jam
481 using gcc : %{cxx_version} : %{__cxx} : <cflags>"%{rpmcflags} -fPIC" <cxxflags>"%{rpmcxxflags} $CPPSTD -fPIC" <linkflags>"%{rpmldflags}" ;
484 # cleanup backups after patching
485 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
488 EXPAT_INCLUDE=%{_includedir} \
489 EXPAT_LIBPATH=%{_libdir} \
490 ICU_PATH=%{_prefix} \
492 --prefix=%{_prefix} \
493 -without-libraries=python
495 # x32 detection need help (it's autodetected as address-model=32 abi=sysv, while context build expects address-model=64 abi=x32)
509 echo "using python : %{py3_ver} : %{py3_prefix} : %{py3_incdir} : : : : m ;" >> project-config.jam
511 --with-python python=%{py3_ver} \
512 -a -d2 --toolset=gcc \
521 %{__sed} -i -e '/^using python : 3/d' project-config.jam
522 echo "using python : %{py_ver} : %{py_prefix} : %{py_incdir} ;" >> project-config.jam
524 --with-python python=%{py_ver} \
525 -a -d2 --toolset=gcc \
534 rm -rf $RPM_BUILD_ROOT
535 install -d $RPM_BUILD_ROOT{%{_libdir},%{_includedir}}
537 cp -rf boost $RPM_BUILD_ROOT%{_includedir}
539 install -p stage/lib/lib*.a $RPM_BUILD_ROOT%{_libdir}
540 install -p stage/lib/lib*.so.*.*.* $RPM_BUILD_ROOT%{_libdir}
541 cp -a stage/lib/lib*.so $RPM_BUILD_ROOT%{_libdir}
544 install -d $RPM_BUILD_ROOT%{_docdir}/boost-%{version}
546 # as the documentation doesn't completely reside in a directory of its
547 # own, we need to find out ourselves... this looks for HTML files and
548 # then collects everything linked from those. this is certainly quite
549 # unoptimized wrt mkdir calls, but does it really matter?
551 for i in $(find -type f -name '*.htm*'); do
552 # bjam docu is included in the boost-jam RPM
553 if test "`echo $i | sed 's,jam_src,,'`" = "$i"; then
554 install -d $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/${i%/*}
555 for LINKED in `%{__perl} - $i $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/$i <<'EOT'
559 # rewrite links from boost/* to %{_includedir}/boost/* and
560 # ignore external links as well as document-internal ones.
561 # HTML files are also ignored as they get installed anyway.
562 if (!($link =~ s,^(?:../)*boost/,%{_includedir}/boost/,) && !($link =~ m,(?:^[^/]+:|^\#|\.html?(?:$|\#)),))
564 (my $file = $link) =~ s/\#.*//;
570 open OUT, ">@ARGV[1]";
574 $in_link and s/^\s*"([^"> ]*)"/'"' . rewrite_link($1) . '"'/e;
575 s/(href|src)="([^"> ]*)"/"$1=\"" . rewrite_link($2) . '"'/eig;
577 $in_link = /href|src=\s*$/;
580 TARGET=${i%/*}/$LINKED
581 # ignore non-existant linked files
582 if test -f $TARGET; then
583 install -D -m 644 $TARGET $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/$TARGET
591 rm -rf $RPM_BUILD_ROOT
593 %post -p /sbin/ldconfig
594 %postun -p /sbin/ldconfig
596 %post chrono -p /sbin/ldconfig
597 %postun chrono -p /sbin/ldconfig
599 %post context -p /sbin/ldconfig
600 %postun context -p /sbin/ldconfig
602 %post date_time -p /sbin/ldconfig
603 %postun date_time -p /sbin/ldconfig
605 %post fiber -p /sbin/ldconfig
606 %postun fiber -p /sbin/ldconfig
608 %post filesystem -p /sbin/ldconfig
609 %postun filesystem -p /sbin/ldconfig
611 %post graph -p /sbin/ldconfig
612 %postun graph -p /sbin/ldconfig
614 %post locale -p /sbin/ldconfig
615 %postun locale -p /sbin/ldconfig
617 %post python -p /sbin/ldconfig
618 %postun python -p /sbin/ldconfig
620 %post python3 -p /sbin/ldconfig
621 %postun python3 -p /sbin/ldconfig
623 %post program_options -p /sbin/ldconfig
624 %postun program_options -p /sbin/ldconfig
626 %post regex -p /sbin/ldconfig
627 %postun regex -p /sbin/ldconfig
629 %post system -p /sbin/ldconfig
630 %postun system -p /sbin/ldconfig
632 %post test -p /sbin/ldconfig
633 %postun test -p /sbin/ldconfig
635 %post thread -p /sbin/ldconfig
636 %postun thread -p /sbin/ldconfig
638 %post timer -p /sbin/ldconfig
639 %postun timer -p /sbin/ldconfig
641 %post wave -p /sbin/ldconfig
642 %postun wave -p /sbin/ldconfig
645 %defattr(644,root,root,755)
646 %attr(755,root,root) %{_libdir}/libboost_atomic.so.*.*.*
647 %attr(755,root,root) %{_libdir}/libboost_container.so.*.*.*
648 %attr(755,root,root) %{_libdir}/libboost_contract.so.*.*.*
649 %attr(755,root,root) %{_libdir}/libboost_coroutine.so.*.*.*
650 %attr(755,root,root) %{_libdir}/libboost_iostreams.so.*.*.*
651 %attr(755,root,root) %{_libdir}/libboost_math_*.so.*.*.*
652 %attr(755,root,root) %{_libdir}/libboost_random.so.*.*.*
653 %attr(755,root,root) %{_libdir}/libboost_serialization.so.*.*.*
654 %attr(755,root,root) %{_libdir}/libboost_stacktrace_*.so.*.*.*
655 %attr(755,root,root) %{_libdir}/libboost_type_erasure.so.*.*.*
656 %attr(755,root,root) %{_libdir}/libboost_wserialization.so.*.*.*
659 %defattr(644,root,root,755)
660 %attr(755,root,root) %{_libdir}/libboost_atomic.so
661 %attr(755,root,root) %{_libdir}/libboost_chrono.so
662 %attr(755,root,root) %{_libdir}/libboost_container.so
663 %attr(755,root,root) %{_libdir}/libboost_context.so
664 %attr(755,root,root) %{_libdir}/libboost_contract.so
665 %attr(755,root,root) %{_libdir}/libboost_coroutine.so
666 %attr(755,root,root) %{_libdir}/libboost_date_time.so
667 %attr(755,root,root) %{_libdir}/libboost_fiber.so
668 %attr(755,root,root) %{_libdir}/libboost_filesystem.so
669 %attr(755,root,root) %{_libdir}/libboost_graph.so
670 %attr(755,root,root) %{_libdir}/libboost_iostreams.so
671 %attr(755,root,root) %{_libdir}/libboost_locale.so
672 %attr(755,root,root) %{_libdir}/libboost_log.so
673 %attr(755,root,root) %{_libdir}/libboost_log_setup.so
674 %attr(755,root,root) %{_libdir}/libboost_math_*.so
675 %attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor.so
676 %attr(755,root,root) %{_libdir}/libboost_program_options.so
677 %attr(755,root,root) %{_libdir}/libboost_regex.so
678 %attr(755,root,root) %{_libdir}/libboost_random.so
679 %attr(755,root,root) %{_libdir}/libboost_serialization.so
680 %attr(755,root,root) %{_libdir}/libboost_stacktrace_*.so
681 %attr(755,root,root) %{_libdir}/libboost_system.so
682 %attr(755,root,root) %{_libdir}/libboost_thread.so
683 %attr(755,root,root) %{_libdir}/libboost_timer.so
684 %attr(755,root,root) %{_libdir}/libboost_type_erasure.so
685 %attr(755,root,root) %{_libdir}/libboost_unit_test_framework.so
686 %attr(755,root,root) %{_libdir}/libboost_wave.so
687 %attr(755,root,root) %{_libdir}/libboost_wserialization.so
689 %exclude %{_includedir}/boost/python
690 %exclude %{_includedir}/boost/python.hpp
693 %defattr(644,root,root,755)
694 %{_libdir}/libboost_atomic.a
695 %{_libdir}/libboost_chrono.a
696 %{_libdir}/libboost_container.a
697 %{_libdir}/libboost_context.a
698 %{_libdir}/libboost_contract.a
699 %{_libdir}/libboost_coroutine.a
700 %{_libdir}/libboost_date_time.a
701 %{_libdir}/libboost_exception.a
702 %{_libdir}/libboost_fiber.a
703 %{_libdir}/libboost_filesystem.a
704 %{_libdir}/libboost_graph.a
705 %{_libdir}/libboost_iostreams.a
706 %{_libdir}/libboost_locale.a
707 %{_libdir}/libboost_log.a
708 %{_libdir}/libboost_log_setup.a
709 %{_libdir}/libboost_math_*.a
710 %{_libdir}/libboost_prg_exec_monitor.a
711 %{_libdir}/libboost_program_options.a
712 %{_libdir}/libboost_random.a
713 %{_libdir}/libboost_regex.a
714 %{_libdir}/libboost_serialization.a
715 %{_libdir}/libboost_stacktrace_*.a
716 %{_libdir}/libboost_system.a
717 %{_libdir}/libboost_test_exec_monitor.a
718 %{_libdir}/libboost_timer.a
719 %{_libdir}/libboost_thread.a
720 %{_libdir}/libboost_type_erasure.a
721 %{_libdir}/libboost_unit_test_framework.a
722 %{_libdir}/libboost_wave.a
723 %{_libdir}/libboost_wserialization.a
725 %if %{with python2} || %{with python3}
726 %files python-devel-common
727 %defattr(644,root,root,755)
728 %{_includedir}/boost/python
729 %{_includedir}/boost/python.hpp
734 %defattr(644,root,root,755)
736 %attr(755,root,root) %{_libdir}/libboost_numpy%{py2v}.so.*.*.*
738 %attr(755,root,root) %{_libdir}/libboost_python%{py2v}.so.*.*.*
741 %defattr(644,root,root,755)
743 %attr(755,root,root) %{_libdir}/libboost_numpy%{py2v}.so
745 %attr(755,root,root) %{_libdir}/libboost_python%{py2v}.so
748 %defattr(644,root,root,755)
750 %{_libdir}/libboost_numpy%{py2v}.a
752 %{_libdir}/libboost_python%{py2v}.a
757 %defattr(644,root,root,755)
759 %attr(755,root,root) %{_libdir}/libboost_numpy%{py3v}.so.*.*.*
761 %attr(755,root,root) %{_libdir}/libboost_python%{py3v}.so.*.*.*
764 %defattr(644,root,root,755)
766 %attr(755,root,root) %{_libdir}/libboost_numpy%{py3v}.so
768 %attr(755,root,root) %{_libdir}/libboost_python%{py3v}.so
770 %files python3-static
771 %defattr(644,root,root,755)
773 %{_libdir}/libboost_numpy%{py3v}.a
775 %{_libdir}/libboost_python%{py3v}.a
779 %defattr(644,root,root,755)
780 %attr(755,root,root) %{_libdir}/libboost_chrono.so.*.*.*
783 %defattr(644,root,root,755)
784 %attr(755,root,root) %{_libdir}/libboost_context.so.*.*.*
787 %defattr(644,root,root,755)
788 %attr(755,root,root) %{_libdir}/libboost_date_time.so.*.*.*
791 %defattr(644,root,root,755)
792 %attr(755,root,root) %{_libdir}/libboost_fiber.so.*.*.*
795 %defattr(644,root,root,755)
796 %attr(755,root,root) %{_libdir}/libboost_filesystem.so.*.*.*
799 %defattr(644,root,root,755)
800 %attr(755,root,root) %{_libdir}/libboost_graph.so.*.*.*
803 %defattr(644,root,root,755)
804 %attr(755,root,root) %{_libdir}/libboost_locale.so.*.*.*
807 %defattr(644,root,root,755)
808 %attr(755,root,root) %{_libdir}/libboost_log.so.*.*.*
809 %attr(755,root,root) %{_libdir}/libboost_log_setup.so.*.*.*
811 %files program_options
812 %defattr(644,root,root,755)
813 %attr(755,root,root) %{_libdir}/libboost_program_options.so.*.*.*
816 %defattr(644,root,root,755)
817 %attr(755,root,root) %{_libdir}/libboost_regex.so.*.*.*
820 %defattr(644,root,root,755)
821 %attr(755,root,root) %{_libdir}/libboost_system.so.*.*.*
824 %defattr(644,root,root,755)
825 %attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor.so.*.*.*
826 %attr(755,root,root) %{_libdir}/libboost_unit_test_framework.so.*.*.*
829 %defattr(644,root,root,755)
830 %attr(755,root,root) %{_libdir}/libboost_thread.so.*.*.*
833 %defattr(644,root,root,755)
834 %attr(755,root,root) %{_libdir}/libboost_timer.so.*.*.*
837 %defattr(644,root,root,755)
838 %attr(755,root,root) %{_libdir}/libboost_wave.so.*.*.*
841 %defattr(644,root,root,755)
842 %{_docdir}/%{name}-%{version}