]> git.pld-linux.org Git - packages/boost.git/blame - boost.spec
future todo: use .7z download
[packages/boost.git] / boost.spec
CommitLineData
c6874538 1#
bde731a5 2# TODO:
09e2803f
PS
3# - think about building MPI.
4# - split shared libs from core package into -iostreams/-serialization.
bde731a5 5#
c6874538 6# Conditional build:
fe766442
JR
7%bcond_without python2 # without boost-python2 support
8%bcond_without python3 # without boost-python3 support
6d61ae01 9
8b623265 10%define fver %(echo %{version} | tr . _)
c6874538 11Summary: The Boost C++ Libraries
aa63c3d9 12Summary(pl.UTF-8): Biblioteki C++ "Boost"
49f48a3b 13Name: boost
5877771e 14Version: 1.61.0
03a1e8e3 15Release: 2
db639b8e 16License: Boost Software License and others
c6874538 17Group: Libraries
aaeb56b0 18# TODO: use .7z extension:
8b623265 19Source0: http://downloads.sourceforge.net/boost/%{name}_%{fver}.tar.bz2
5877771e 20# Source0-md5: 6095876341956f65f9d35939ccea1a9f
8b623265 21Patch0: %{name}-link.patch
bab7ef8c 22Patch1: %{name}-x32-context.patch
bfed7e70 23Patch2: %{name}-clean-gcc-flags.patch
647f39b2 24# FC Patches:
647f39b2 25# https://svn.boost.org/trac/boost/ticket/5637
6d61ae01 26Patch203: %{name}-1.54.0-mpl-print.patch
647f39b2 27# https://svn.boost.org/trac/boost/ticket/8881
6d61ae01 28Patch221: %{name}-1.54.0-mpi-unused_typedef.patch
49f48a3b 29URL: http://www.boost.org/
afbf1450 30BuildRequires: bzip2-devel
09e2803f 31BuildRequires: expat-devel
7c12a8f9 32BuildRequires: libicu-devel
49f48a3b 33BuildRequires: libstdc++-devel
30964b71 34BuildRequires: perl-base
6725319f 35%{?with_python:BuildRequires: python-devel >= 2.2}
fe766442 36%{?with_python3:BuildRequires: python3-devel}
dbf04d57 37BuildRequires: rpm-pythonprov
afbf1450 38BuildRequires: zlib-devel
c6874538 39BuildConflicts: gcc = 5:3.3.1
49f48a3b 40BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
c6874538 41
647f39b2
AM
42%define specflags -DBOOST_IOSTREAMS_USE_DEPRECATED=1
43
c6874538 44%description
45The Boost web site provides free peer-reviewed portable C++ source
46libraries. The emphasis is on libraries which work well with the C++
47Standard Library. One goal is to establish "existing practice" and
48provide reference implementations so that the Boost libraries are
49suitable for eventual standardization. Some of the libraries have
50already been proposed for inclusion in the C++ Standards Committee's
51upcoming C++ Standard Library Technical Report.
52
4c35df9e 53%description -l pl.UTF-8
49f48a3b 54Strona http://www.boost.org/ dostarcza darmowe biblioteki C++ wraz z
4c35df9e
JR
55kodem źródłowym. Nacisk położono na biblioteki, które dobrze
56współpracują ze standardową biblioteką C++. Celem jest ustanowienie
57"istniejącej praktyki" i dostarczenie implementacji, tak że biblioteki
58"Boost" nadają się do ewentualnej standaryzacji. Niektóre z bibliotek
59już zostały zgłoszone do komitetu standaryzacyjnego C++ w nadchodzącym
2b583775 60Raporcie Technicznym Biblioteki Standardowej C++.
c6874538 61
49f48a3b 62%package devel
000cd675 63Summary: Boost C++ development headers
aa63c3d9 64Summary(pl.UTF-8): Pliki nagłówkowe bibliotek C++ Boost
49f48a3b 65Group: Development/Libraries
000cd675 66Requires: %{name} = %{version}-%{release}
e5cd13f8
JB
67Requires: %{name}-chrono = %{version}-%{release}
68Requires: %{name}-context = %{version}-%{release}
09e2803f
PS
69Requires: %{name}-date_time = %{version}-%{release}
70Requires: %{name}-filesystem = %{version}-%{release}
71Requires: %{name}-graph = %{version}-%{release}
e5cd13f8 72Requires: %{name}-locale = %{version}-%{release}
c054d21a 73Requires: %{name}-log = %{version}-%{release}
09e2803f
PS
74Requires: %{name}-program_options = %{version}-%{release}
75Requires: %{name}-regex = %{version}-%{release}
76Requires: %{name}-signals = %{version}-%{release}
69912bfb 77Requires: %{name}-system = %{version}-%{release}
09e2803f
PS
78Requires: %{name}-test = %{version}-%{release}
79Requires: %{name}-thread = %{version}-%{release}
e5cd13f8 80Requires: %{name}-timer = %{version}-%{release}
09e2803f 81Requires: %{name}-wave = %{version}-%{release}
49f48a3b 82Requires: libstdc++-devel
09e2803f
PS
83Obsoletes: boost-any-devel
84Obsoletes: boost-array-devel
875f51e3 85Obsoletes: boost-asio
09e2803f 86Obsoletes: boost-bind-devel
05b0e240 87Obsoletes: boost-call_traits-devel
09e2803f 88Obsoletes: boost-compatibility-devel
470f1aae 89Obsoletes: boost-compose-devel
09e2803f 90Obsoletes: boost-compressed_pair-devel
89fd45a2
JB
91Obsoletes: boost-concept_check-devel
92Obsoletes: boost-conversion-devel
09e2803f
PS
93Obsoletes: boost-crc-devel
94Obsoletes: boost-date_time-devel
95Obsoletes: boost-filesystem-devel
96Obsoletes: boost-graph-devel
97Obsoletes: boost-mem_fn-devel
89fd45a2
JB
98Obsoletes: boost-mpl-devel
99Obsoletes: boost-preprocessor-devel
09e2803f 100Obsoletes: boost-program_options-devel
7c797e1a 101Obsoletes: boost-ref-devel
09e2803f
PS
102Obsoletes: boost-regex-devel
103Obsoletes: boost-signals-devel
104Obsoletes: boost-spirit-devel
105Obsoletes: boost-statechart-devel
89fd45a2 106Obsoletes: boost-static_assert-devel
09e2803f
PS
107Obsoletes: boost-test-devel
108Obsoletes: boost-thread-devel
109Obsoletes: boost-tr1-devel
89fd45a2 110Obsoletes: boost-type_traits-devel
09e2803f
PS
111Obsoletes: boost-typeof-devel
112Obsoletes: boost-uBLAS-devel
89fd45a2 113Obsoletes: boost-utility-devel
09e2803f
PS
114Obsoletes: boost-wave-devel
115Obsoletes: boost-xpressive-devel
49f48a3b
JB
116
117%description devel
000cd675 118Header files for the Boost C++ libraries.
49f48a3b 119
4c35df9e
JR
120%description devel -l pl.UTF-8
121Pliki nagłówkowe bibliotek C++ Boost.
000cd675
JB
122
123%package static
124Summary: Static version of base Boost C++ libraries
aa63c3d9 125Summary(pl.UTF-8): Statyczne wersje podstawowych bibliotek C++ Boost
000cd675
JB
126Group: Development/Libraries
127Requires: %{name}-devel = %{version}-%{release}
09e2803f 128Obsoletes: boost-static < 1.33
000cd675
JB
129
130%description static
131Static version of base Boost C++ libraries.
132
4c35df9e 133%description static -l pl.UTF-8
000cd675 134Statyczne wersje podstawowych bibliotek C++ Boost.
49f48a3b 135
fe766442
JR
136%package python-devel-common
137Summary: Boost.Python development headers
c9463fef 138Summary(pl.UTF-8): Pliki nagłówkowe biblioteki Boost.Python
fe766442
JR
139Group: Development/Libraries
140Requires: %{name}-devel = %{version}-%{release}
141
142%description python-devel-common
143Headers for the Boost.Python library.
144
145%description python-devel-common -l pl.UTF-8
c9463fef 146Pliki nagłówkowe biblioteki Boost.Python.
fe766442 147
c6874538 148%package python
c9463fef
JB
149Summary: Boost.Python library for Python 2
150Summary(pl.UTF-8): Biblioteka Boost.Python dla Pythona 2
c6874538 151Group: Libraries
c9463fef 152Requires: python-libs
c6874538 153
154%description python
155Use the Boost Python Library to quickly and easily export a C++
c9463fef
JB
156library to Python 2 such that the Python 2 interface is very similar
157to the C++ interface. It is designed to be minimally intrusive on your
c6874538 158C++ design. In most cases, you should not have to alter your C++
159classes in any way in order to use them with Boost.Python. The system
c9463fef
JB
160should simply ``reflect'' your C++ classes and functions into Python
1613.
c6874538 162
4c35df9e
JR
163%description python -l pl.UTF-8
164Biblioteka Boost Python służy do szybkiego i prostego eksportu
c9463fef 165biblioteki C++ do Pythona 2, tak że interfejs Pythona 2 jest bardzo
4c35df9e
JR
166podobny do interfejsu C++. Biblioteka jest zaprojektowana tak, żeby
167narzucać jak najmniej wymagań dotyczących konstrukcjii C++. W
168większości przypadków nie trzeba w ogóle zmieniać własnych klas C++,
169żeby używać ich z Boost.Python. System powinien po prostu ,,odbić''
c9463fef 170klasy C++ i funkcje do Pythona 3.
c6874538 171
172%package python-devel
c9463fef
JB
173Summary: Boost.Python development files for Python 2
174Summary(pl.UTF-8): Pliki programistyczne biblioteki Boost.Python dla Pythona 2
49f48a3b
JB
175Group: Development/Libraries
176Requires: %{name}-devel = %{version}-%{release}
6725319f 177Requires: %{name}-python = %{version}-%{release}
fe766442 178Requires: %{name}-python-devel-common = %{version}-%{release}
c6874538 179
180%description python-devel
c9463fef 181Boost.Python development files for Python 2.
c6874538 182
4c35df9e 183%description python-devel -l pl.UTF-8
c9463fef 184Pliki programistyczne biblioteki Boost.Python dla Pythona 2.
c6874538 185
6725319f 186%package python-static
c9463fef
JB
187Summary: Static version of Boost.Python library for Python 2
188Summary(pl.UTF-8): Statyczna wersja biblioteki Boost.Python dla Pythona 2
6725319f
JB
189Group: Development/Libraries
190Requires: %{name}-python-devel = %{version}-%{release}
191
192%description python-static
c9463fef 193Static version of Boost.Python library for Python 2.
6725319f 194
4c35df9e 195%description python-static -l pl.UTF-8
c9463fef 196Statyczna wersja biblioteki Boost.Python dla Pythona 2.
6725319f 197
fe766442 198%package python3
c9463fef
JB
199Summary: Boost.Python library for Python 3
200Summary(pl.UTF-8): biblioteka Boost.Python dla Pythona 3
fe766442 201Group: Libraries
c9463fef 202Requires: python3-libs
fe766442
JR
203
204%description python3
205Use the Boost Python Library to quickly and easily export a C++
206library to Python 3 such that the Python 3 interface is very similar
207to the C++ interface. It is designed to be minimally intrusive on your
208C++ design. In most cases, you should not have to alter your C++
209classes in any way in order to use them with Boost.Python. The system
c9463fef
JB
210should simply ``reflect'' your C++ classes and functions into Python
2113.
fe766442
JR
212
213%description python3 -l pl.UTF-8
214Biblioteka Boost Python służy do szybkiego i prostego eksportu
215biblioteki C++ do Pythona 3, tak że interfejs Pythona 3 jest bardzo
216podobny do interfejsu C++. Biblioteka jest zaprojektowana tak, żeby
217narzucać jak najmniej wymagań dotyczących konstrukcjii C++. W
218większości przypadków nie trzeba w ogóle zmieniać własnych klas C++,
219żeby używać ich z Boost.Python. System powinien po prostu ,,odbić''
220klasy C++ i funkcje do Pythona 3.
221
222%package python3-devel
c9463fef
JB
223Summary: Boost.Python development files for Python 3
224Summary(pl.UTF-8): Pliki programistyczne biblioteki Boost.Python dla Pythona 3
fe766442
JR
225Group: Development/Libraries
226Requires: %{name}-devel = %{version}-%{release}
e6158199 227Requires: %{name}-python-devel-common = %{version}-%{release}
aaeb56b0 228Requires: %{name}-python3 = %{version}-%{release}
fe766442
JR
229
230%description python3-devel
c9463fef 231Boost.Python development files for Python 3.
fe766442
JR
232
233%description python3-devel -l pl.UTF-8
c9463fef 234Pliki programistyczne biblioteki Boost.Python dla Pythona 3.
fe766442
JR
235
236%package python3-static
c9463fef
JB
237Summary: Static version of Boost.Python library for Python 3
238Summary(pl.UTF-8): Statyczna wersja biblioteki Boost.Python dla Pythona 3
fe766442
JR
239Group: Development/Libraries
240Requires: %{name}-python3-devel = %{version}-%{release}
241
242%description python3-static
c9463fef 243Static version of Boost.Python library for Python 3.
fe766442
JR
244
245%description python3-static -l pl.UTF-8
c9463fef 246Statyczna wersja biblioteki Boost.Python dla Pythona 3.
fe766442 247
17e8d8c2
ŁK
248%package chrono
249Summary: Useful time utilities
d7f6b47a 250Summary(pl.UTF-8): Przydatne funkcje związane z czasem
17e8d8c2
ŁK
251Group: Libraries
252Obsoletes: boost < 1.33
253
254%description chrono
255Useful time utilities.
256
d7f6b47a
JB
257%description chrono -l pl.UTF-8
258Przydatne funkcje związane z czasem.
259
e5cd13f8
JB
260%package context
261Summary: Boost.Context - context switching library
262Summary(pl.UTF-8): Boost.Context - biblioteka do zmiany kontekstu
263Group: Libraries
264
265%description context
266Boost.Context - context switching library, providing a sort of
267cooperative multitasking on a single thread.
268
269%description context -l pl.UTF-8
270Boost.Context - biblioteka do zmiany kontekstu, zapewniająca pewną
271wielozadaniowość kooperatywnąw ramach pojedynczego wątku.
272
02c23151 273%package date_time
d143171f 274Summary: Date-Time library
aa63c3d9 275Summary(pl.UTF-8): Biblioteka daty-czasu
02c23151 276Group: Libraries
000cd675 277Obsoletes: boost < 1.33
02c23151 278
279%description date_time
280A set of date-time libraries.
281
4c35df9e
JR
282%description date_time -l pl.UTF-8
283Zbiór bibliotek daty-czasu.
02c23151 284
31026e88 285%package filesystem
286Summary: Portable paths, iteration over directories, and other useful filesystem operations
aa63c3d9 287Summary(pl.UTF-8): Przenośne ścieżki, iteracje katalogów i inne użyteczne operacje na systemie plików
31026e88 288Group: Libraries
69912bfb 289Requires: %{name}-system = %{version}-%{release}
000cd675 290Obsoletes: boost < 1.33
31026e88 291
292%description filesystem
04846599
JB
293The boost::filesystem library provides portable facilities to query
294and manipulate paths, files, and directories.
31026e88 295
4c35df9e
JR
296%description filesystem -l pl.UTF-8
297Przenośna biblioteka boost::filesystem dostarcza ułatwienia w
298operacjach na ścieżkach, plikach i katalogach.
31026e88 299
06ed6468
AM
300%package graph
301Summary: General purpose, generic C++ library for graph data structures and graph algorithms
302Summary(pl.UTF-8): Biblioteka ogólnego przeznaczenia w C++ dla struktur danych typu grafy oraz algorytmów związanych z grafami
303Group: Libraries
304
305%description graph
306The boost::graph library provides portable facilities to operate on
307graph data structures using graph algorithms.
308
309%description graph -l pl.UTF-8
310Przenośna biblioteka boost::graph dostarcza ułatwienia w operacjach na
311strukturach danych typu graf za pomocą algorytmów związanych z
312grafami.
313
17e8d8c2
ŁK
314%package locale
315Summary: Provide localization and Unicode handling tools for C++
d7f6b47a 316Summary(pl.UTF-8): Narzędzia do obsługi lokalizacji i Unikodu w C++
17e8d8c2
ŁK
317Group: Libraries
318
319%description locale
320Provide localization and Unicode handling tools for C++.
321
d7f6b47a
JB
322%description locale -l pl.UTF-8
323Narzędzia do obsługi lokalizacji i Unikodu w C++.
324
2ced8724
JR
325%package log
326Summary: Provide logging tools for C++
327Summary(pl.UTF-8): Narzędzia do logowania w C++
328Group: Libraries
329
330%description log
331Provide logging tools for C++.
332
333%description log -l pl.UTF-8
334Narzędzia do logowania w C++.
335
99f4684a 336%package program_options
337Summary: Access to program options, via conventional methods such as command line and config file
aa63c3d9 338Summary(pl.UTF-8): Dostęp do opcji programu za pomocą typowych metod, jak linia poleceń i plik konfiguracyjny
99f4684a 339Group: Libraries
340
341%description program_options
342The program_options library allows program developers to obtain
343program options, that is (name, value) pairs from the user, via
344conventional methods such as command line and config file.
345
4c35df9e
JR
346%description program_options -l pl.UTF-8
347Biblioteka program_options umożliwia uzyskanie od użytkownika opcji
348programu, czyli par (nazwa, wartość), za pomocą typowych metod, takich
349jak linia poleceń, czy plik konfiguracyjny.
99f4684a 350
09e2803f
PS
351%package regex
352Summary: Boost C++ regular expressions library
353Summary(pl.UTF-8): Biblioteka wyrażeń regularnych Boost C++
354Group: Libraries
99f4684a 355
09e2803f
PS
356%description regex
357Shared library for Boost C++ regular expressions.
99f4684a 358
09e2803f 359%description regex -l pl.UTF-8
d7f6b47a 360Biblioteka współdzielona do obsługi wyrażeń regularnych w C++.
99f4684a 361
db639b8e 362%package signals
75f9f612 363Summary: Signals & slots callback implementation
aa63c3d9 364Summary(pl.UTF-8): Implementacja sygnałów i slotów
db639b8e 365Group: Libraries
000cd675 366Obsoletes: boost < 1.33
db639b8e 367
368%description signals
369The boost::signals library is an implementation of a signals and slots
370system.
371
4c35df9e
JR
372%description signals -l pl.UTF-8
373Biblioteka boost::signals jest implementacją systemu sygnałów i
374slotów.
db639b8e 375
09e2803f
PS
376%package system
377Summary: Support for getting system specific error codes
378Summary(pl.UTF-8): Wsparcie dla pobierania specyficznych dla systemu kodów błędów
379Group: Libraries
06ed6468 380
09e2803f
PS
381%description system
382The Boost System library provides simple, light-weight error_code
383objects that encapsulate system-specific error code values, yet also
384provide access to more abstract and portable error conditions objects.
0651a785 385
2b583775
JB
386%description system -l pl.UTF-8
387Biblioteka Boost System udostępnia proste, lekkie obiekty error_code
388obudowujące wartości kodów błędów specyficznych dla systemu, dając
389jednocześnie dostęp do bardziej abstrakcyjnych i przenośnych obiektów
390błędów.
391
c0536c7f 392%package test
09e2803f 393Summary: Support for program testing and execution monitoring
aa63c3d9 394Summary(pl.UTF-8): Wsparcie dla testowania i monitorowania programu
c0536c7f 395Group: Libraries
000cd675 396Obsoletes: boost < 1.33
c0536c7f 397
398%description test
399Support for simple program testing, full unit testing, and for program
400execution monitoring.
401
4c35df9e
JR
402%description test -l pl.UTF-8
403Wsparcie dla prostego testowania programu, pełnego testowania i
c0536c7f 404monitorowania wykonania programu.
405
02c23151 406%package thread
d143171f 407Summary: Portable C++ threads library
aa63c3d9 408Summary(pl.UTF-8): Przenośna biblioteka wątków C++
02c23151 409Group: Libraries
000cd675 410Obsoletes: boost < 1.33
02c23151 411
412%description thread
e4ddb7d1 413Portable C++ threads library - shared library.
02c23151 414
4c35df9e
JR
415%description thread -l pl.UTF-8
416Przenośna biblioteka wątków dla C++ - biblioteka dzielona.
02c23151 417
e5cd13f8
JB
418%package timer
419Summary: Event timer, progress timer, and progress display classes
420Summary(pl.UTF-8): Klasy do obsługi pomiarów czasu, postępu i wyświetlania postępu
421Group: Libraries
422Obsoletes: boost < 1.33
423
424%description timer
425Event timer, progress timer, and progress display classes.
426
427%description timer -l pl.UTF-8
428Klasy do obsługi pomiarów czasu, postępu i wyświetlania postępu.
429
06ed6468
AM
430%package wave
431Summary: Boost.Wave - a standard compliant C++ preprocessor library
432Summary(pl.UTF-8): Boost.Wave - zgodna ze standardem biblioteka preprocesora C++
433Group: Development/Libraries
06ed6468
AM
434
435%description wave
436Boost.Wave - a standard compliant C++ preprocessor library.
437
438%description wave -l pl.UTF-8
439Boost.Wave - zgodna ze standardem biblioteka preprocesora C++.
440
c6874538 441%package doc
442Summary: Boost C++ Library documentation
aa63c3d9 443Summary(pl.UTF-8): Dokumentacja dla biblioteki Boost C++
49f48a3b 444Group: Documentation
f6f44d5d
ER
445%if "%{_rpmversion}" >= "5"
446BuildArch: noarch
447%endif
c6874538 448
449%description doc
66ac0d93 450Documentation for the Boost C++ Library.
c6874538 451
4c35df9e 452%description doc -l pl.UTF-8
66ac0d93 453Dokumentacja dla biblioteki Boost C++.
c6874538 454
455%prep
8b623265 456%setup -q -n %{name}_%{fver}
09e2803f 457%patch0 -p1
bfed7e70
JR
458%patch1 -p1
459%patch2 -p1
647f39b2 460
647f39b2 461%patch203 -p0
647f39b2 462%patch221 -p1
647f39b2 463
d20b153a 464cat << EOF > tools/build/src/user-config.jam
bfed7e70 465using gcc : %{cxx_version} : %{__cxx} : <cflags>"%{rpmcflags} -fPIC" <cxxflags>"%{rpmcxxflags} -fPIC" <linkflags>"%{rpmldflags}" ;
09e2803f
PS
466EOF
467
6d61ae01
ER
468# cleanup backups after patching
469find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
470
c6874538 471%build
09e2803f
PS
472EXPAT_INCLUDE=%{_includedir} \
473EXPAT_LIBPATH=%{_libdir} \
474ICU_PATH=%{_prefix} \
bab7ef8c 475./bootstrap.sh \
fe766442
JR
476 --prefix=%{_prefix} \
477 -without-libraries=python
bab7ef8c 478
17e8d8c2 479./b2 \
9b1806d5 480 -d2 --toolset=gcc \
bab7ef8c
JR
481 variant=release \
482 debug-symbols=on \
483 inlining=on \
484 link=static,shared \
485 threading=multi
9b1806d5 486
6cb66fff
JR
487%if %{with python3}
488echo "using python : %{py3_ver}m : %{py3_prefix} : %{py3_incdir} ;" >> project-config.jam
fe766442 489./b2 \
6cb66fff 490 --with-python python=%{py3_ver}m \
e56ca5b5 491 -a -d2 --toolset=gcc \
fe766442
JR
492 variant=release \
493 debug-symbols=on \
494 inlining=on \
495 link=static,shared \
496 threading=multi
497%endif
498
6cb66fff
JR
499%if %{with python2}
500echo "using python : %{py_ver} : %{py_prefix} : %{py_incdir} ;" >> project-config.jam
fe766442 501./b2 \
6cb66fff 502 --with-python python=%{py_ver} \
e56ca5b5 503 -a -d2 --toolset=gcc \
fe766442
JR
504 variant=release \
505 debug-symbols=on \
506 inlining=on \
507 link=static,shared \
508 threading=multi
509%endif
510
c6874538 511%install
512rm -rf $RPM_BUILD_ROOT
30964b71 513install -d $RPM_BUILD_ROOT{%{_libdir},%{_includedir}}
c6874538 514
30964b71 515cp -rf boost $RPM_BUILD_ROOT%{_includedir}
c6874538 516
8b623265
JB
517install -p stage/lib/lib*.a $RPM_BUILD_ROOT%{_libdir}
518install -p stage/lib/lib*.so.*.*.* $RPM_BUILD_ROOT%{_libdir}
519cp -a stage/lib/lib*.so $RPM_BUILD_ROOT%{_libdir}
fa767695 520
c6874538 521# documentation
522install -d $RPM_BUILD_ROOT%{_docdir}/boost-%{version}
c6874538 523
524# as the documentation doesn't completely reside in a directory of its
525# own, we need to find out ourselves... this looks for HTML files and
526# then collects everything linked from those. this is certainly quite
527# unoptimized wrt mkdir calls, but does it really matter?
7c12a8f9
ER
528installdocs() {
529for i in $(find -type f -name '*.htm*'); do
c6874538 530 # bjam docu is included in the boost-jam RPM
531 if test "`echo $i | sed 's,jam_src,,'`" = "$i"; then
7c12a8f9 532 install -d $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/${i%/*}
30964b71 533 for LINKED in `%{__perl} - $i $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/$i <<'EOT'
c6874538 534 sub rewrite_link
535 {
536 my $link = shift;
537 # rewrite links from boost/* to %{_includedir}/boost/* and
538 # ignore external links as well as document-internal ones.
539 # HTML files are also ignored as they get installed anyway.
540 if (!($link =~ s,^(?:../)*boost/,%{_includedir}/boost/,) && !($link =~ m,(?:^[^/]+:|^\#|\.html?(?:$|\#)),))
541 {
542 (my $file = $link) =~ s/\#.*//;
543 print "$file\n";
544 }
545 $link;
546 }
547 open IN, @ARGV[0];
548 open OUT, ">@ARGV[1]";
66ac0d93 549 my $in_link;
c6874538 550 while (<IN>)
551 {
66ac0d93 552 $in_link and s/^\s*"([^"> ]*)"/'"' . rewrite_link($1) . '"'/e;
c6874538 553 s/(href|src)="([^"> ]*)"/"$1=\"" . rewrite_link($2) . '"'/eig;
554 print OUT;
d143171f 555 $in_link = /href|src=\s*$/;
c6874538 556 }
557EOT`; do
7c12a8f9 558 TARGET=${i%/*}/$LINKED
c6874538 559 # ignore non-existant linked files
560 if test -f $TARGET; then
7c12a8f9 561 install -D -m 644 $TARGET $RPM_BUILD_ROOT%{_docdir}/boost-%{version}/$TARGET
c6874538 562 fi
563 done
564 fi
565done
7c12a8f9 566}; installdocs
c6874538 567
568%clean
569rm -rf $RPM_BUILD_ROOT
570
000cd675
JB
571%post -p /sbin/ldconfig
572%postun -p /sbin/ldconfig
573
17e8d8c2
ŁK
574%post chrono -p /sbin/ldconfig
575%postun chrono -p /sbin/ldconfig
576
e5cd13f8
JB
577%post context -p /sbin/ldconfig
578%postun context -p /sbin/ldconfig
579
3d8dd501
JB
580%post date_time -p /sbin/ldconfig
581%postun date_time -p /sbin/ldconfig
582
04846599
JB
583%post filesystem -p /sbin/ldconfig
584%postun filesystem -p /sbin/ldconfig
585
06ed6468
AM
586%post graph -p /sbin/ldconfig
587%postun graph -p /sbin/ldconfig
588
17e8d8c2
ŁK
589%post locale -p /sbin/ldconfig
590%postun locale -p /sbin/ldconfig
591
09e2803f
PS
592%post python -p /sbin/ldconfig
593%postun python -p /sbin/ldconfig
594
fe766442
JR
595%post python3 -p /sbin/ldconfig
596%postun python3 -p /sbin/ldconfig
597
09e2803f
PS
598%post program_options -p /sbin/ldconfig
599%postun program_options -p /sbin/ldconfig
c6874538 600
09e2803f
PS
601%post regex -p /sbin/ldconfig
602%postun regex -p /sbin/ldconfig
290ca6f4 603
09e2803f
PS
604%post signals -p /sbin/ldconfig
605%postun signals -p /sbin/ldconfig
c6874538 606
09e2803f
PS
607%post system -p /sbin/ldconfig
608%postun system -p /sbin/ldconfig
3d8dd501 609
09e2803f
PS
610%post test -p /sbin/ldconfig
611%postun test -p /sbin/ldconfig
c0536c7f 612
09e2803f
PS
613%post thread -p /sbin/ldconfig
614%postun thread -p /sbin/ldconfig
3d8dd501 615
e5cd13f8
JB
616%post timer -p /sbin/ldconfig
617%postun timer -p /sbin/ldconfig
618
d7f6b47a
JB
619%post wave -p /sbin/ldconfig
620%postun wave -p /sbin/ldconfig
621
000cd675
JB
622%files
623%defattr(644,root,root,755)
7bf3427b 624%attr(755,root,root) %{_libdir}/libboost_atomic.so.*.*.*
d20b153a 625%attr(755,root,root) %{_libdir}/libboost_container.so.*.*.*
f1235ec7 626%attr(755,root,root) %{_libdir}/libboost_coroutine.so.*.*.*
8b623265 627%attr(755,root,root) %{_libdir}/libboost_iostreams.so.*.*.*
e019306a 628%attr(755,root,root) %{_libdir}/libboost_math_*.so.*.*.*
8b623265
JB
629%attr(755,root,root) %{_libdir}/libboost_random.so.*.*.*
630%attr(755,root,root) %{_libdir}/libboost_serialization.so.*.*.*
5877771e 631%attr(755,root,root) %{_libdir}/libboost_type_erasure.so.*.*.*
8b623265 632%attr(755,root,root) %{_libdir}/libboost_wserialization.so.*.*.*
000cd675 633
30964b71
JB
634%files devel
635%defattr(644,root,root,755)
7bf3427b 636%attr(755,root,root) %{_libdir}/libboost_atomic.so
17e8d8c2 637%attr(755,root,root) %{_libdir}/libboost_chrono.so
d20b153a 638%attr(755,root,root) %{_libdir}/libboost_container.so
e5cd13f8 639%attr(755,root,root) %{_libdir}/libboost_context.so
f1235ec7 640%attr(755,root,root) %{_libdir}/libboost_coroutine.so
8b623265
JB
641%attr(755,root,root) %{_libdir}/libboost_date_time.so
642%attr(755,root,root) %{_libdir}/libboost_filesystem.so
643%attr(755,root,root) %{_libdir}/libboost_graph.so
644%attr(755,root,root) %{_libdir}/libboost_iostreams.so
17e8d8c2 645%attr(755,root,root) %{_libdir}/libboost_locale.so
2ced8724
JR
646%attr(755,root,root) %{_libdir}/libboost_log.so
647%attr(755,root,root) %{_libdir}/libboost_log_setup.so
e019306a 648%attr(755,root,root) %{_libdir}/libboost_math_*.so
8b623265
JB
649%attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor.so
650%attr(755,root,root) %{_libdir}/libboost_program_options.so
651%attr(755,root,root) %{_libdir}/libboost_regex.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_signals.so
655%attr(755,root,root) %{_libdir}/libboost_system.so
656%attr(755,root,root) %{_libdir}/libboost_thread.so
17e8d8c2 657%attr(755,root,root) %{_libdir}/libboost_timer.so
5877771e 658%attr(755,root,root) %{_libdir}/libboost_type_erasure.so
8b623265
JB
659%attr(755,root,root) %{_libdir}/libboost_unit_test_framework.so
660%attr(755,root,root) %{_libdir}/libboost_wave.so
661%attr(755,root,root) %{_libdir}/libboost_wserialization.so
662%{_includedir}/boost
663%exclude %{_includedir}/boost/python
664%exclude %{_includedir}/boost/python.hpp
99f4684a 665
000cd675
JB
666%files static
667%defattr(644,root,root,755)
7bf3427b 668%{_libdir}/libboost_atomic.a
17e8d8c2 669%{_libdir}/libboost_chrono.a
d20b153a 670%{_libdir}/libboost_container.a
e5cd13f8 671%{_libdir}/libboost_context.a
2ced8724 672%{_libdir}/libboost_coroutine.a
8b623265 673%{_libdir}/libboost_date_time.a
17e8d8c2 674%{_libdir}/libboost_exception.a
8b623265
JB
675%{_libdir}/libboost_filesystem.a
676%{_libdir}/libboost_graph.a
677%{_libdir}/libboost_iostreams.a
17e8d8c2 678%{_libdir}/libboost_locale.a
2ced8724
JR
679%{_libdir}/libboost_log.a
680%{_libdir}/libboost_log_setup.a
e019306a 681%{_libdir}/libboost_math_*.a
8b623265
JB
682%{_libdir}/libboost_prg_exec_monitor.a
683%{_libdir}/libboost_program_options.a
684%{_libdir}/libboost_random.a
685%{_libdir}/libboost_regex.a
686%{_libdir}/libboost_serialization.a
687%{_libdir}/libboost_signals.a
688%{_libdir}/libboost_system.a
689%{_libdir}/libboost_test_exec_monitor.a
17e8d8c2 690%{_libdir}/libboost_timer.a
8b623265 691%{_libdir}/libboost_thread.a
5877771e 692%{_libdir}/libboost_type_erasure.a
8b623265
JB
693%{_libdir}/libboost_unit_test_framework.a
694%{_libdir}/libboost_wave.a
695%{_libdir}/libboost_wserialization.a
db639b8e 696
fe766442
JR
697%if %{with python2} || %{with python3}
698%files python-devel-common
699%defattr(644,root,root,755)
700%{_includedir}/boost/python
701%{_includedir}/boost/python.hpp
702%endif
703
704%if %{with python2}
30964b71 705%files python
49f48a3b 706%defattr(644,root,root,755)
8b623265 707%attr(755,root,root) %{_libdir}/libboost_python.so.*.*.*
49f48a3b 708
30964b71 709%files python-devel
c6874538 710%defattr(644,root,root,755)
8b623265 711%attr(755,root,root) %{_libdir}/libboost_python.so
30964b71 712
6725319f
JB
713%files python-static
714%defattr(644,root,root,755)
8b623265 715%{_libdir}/libboost_python.a
c6874538 716%endif
717
fe766442
JR
718%if %{with python3}
719%files python3
720%defattr(644,root,root,755)
721%attr(755,root,root) %{_libdir}/libboost_python3.so.*.*.*
722
723%files python3-devel
724%defattr(644,root,root,755)
725%attr(755,root,root) %{_libdir}/libboost_python3.so
726
727%files python3-static
728%defattr(644,root,root,755)
729%{_libdir}/libboost_python3.a
730%endif
731
17e8d8c2
ŁK
732%files chrono
733%defattr(644,root,root,755)
734%attr(755,root,root) %{_libdir}/libboost_chrono.so.*.*.*
735
e5cd13f8
JB
736%files context
737%defattr(644,root,root,755)
738%attr(755,root,root) %{_libdir}/libboost_context.so.*.*.*
739
02c23151 740%files date_time
741%defattr(644,root,root,755)
8b623265 742%attr(755,root,root) %{_libdir}/libboost_date_time.so.*.*.*
02c23151 743
31026e88 744%files filesystem
745%defattr(644,root,root,755)
8b623265 746%attr(755,root,root) %{_libdir}/libboost_filesystem.so.*.*.*
31026e88 747
06ed6468
AM
748%files graph
749%defattr(644,root,root,755)
8b623265 750%attr(755,root,root) %{_libdir}/libboost_graph.so.*.*.*
06ed6468 751
17e8d8c2
ŁK
752%files locale
753%defattr(644,root,root,755)
754%attr(755,root,root) %{_libdir}/libboost_locale.so.*.*.*
755
2ced8724
JR
756%files log
757%defattr(644,root,root,755)
758%attr(755,root,root) %{_libdir}/libboost_log.so.*.*.*
759%attr(755,root,root) %{_libdir}/libboost_log_setup.so.*.*.*
760
99f4684a 761%files program_options
762%defattr(644,root,root,755)
8b623265 763%attr(755,root,root) %{_libdir}/libboost_program_options.so.*.*.*
99f4684a 764
09e2803f 765%files regex
99f4684a 766%defattr(644,root,root,755)
8b623265 767%attr(755,root,root) %{_libdir}/libboost_regex.so.*.*.*
99f4684a 768
db639b8e 769%files signals
770%defattr(644,root,root,755)
8b623265 771%attr(755,root,root) %{_libdir}/libboost_signals.so.*.*.*
db639b8e 772
09e2803f 773%files system
db639b8e 774%defattr(644,root,root,755)
8b623265 775%attr(755,root,root) %{_libdir}/libboost_system.so.*.*.*
06ed6468 776
c0536c7f 777%files test
778%defattr(644,root,root,755)
8b623265
JB
779%attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor.so.*.*.*
780%attr(755,root,root) %{_libdir}/libboost_unit_test_framework.so.*.*.*
c0536c7f 781
02c23151 782%files thread
783%defattr(644,root,root,755)
8b623265 784%attr(755,root,root) %{_libdir}/libboost_thread.so.*.*.*
02c23151 785
e5cd13f8
JB
786%files timer
787%defattr(644,root,root,755)
788%attr(755,root,root) %{_libdir}/libboost_timer.so.*.*.*
789
06ed6468
AM
790%files wave
791%defattr(644,root,root,755)
8b623265 792%attr(755,root,root) %{_libdir}/libboost_wave.so.*.*.*
06ed6468 793
30964b71 794%files doc
fe815c68 795%defattr(644,root,root,755)
75f9f612 796%{_docdir}/%{name}-%{version}
This page took 0.264394 seconds and 4 git commands to generate.