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