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