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