#
# TODO:
-# - review python fixes.
-# - add new subpackages and update files.
+# - pass %{__cxx}
#
# Conditional build:
%bcond_without python # without boost-python support
Summary: The Boost C++ Libraries
Summary(pl.UTF-8): Biblioteki C++ "Boost"
Name: boost
-Version: 1.34.0
-Release: 0.1
+Version: 1.34.1
+Release: 2
License: Boost Software License and others
Group: Libraries
Source0: http://dl.sourceforge.net/boost/%{name}_%{_fver}.tar.bz2
-# Source0-md5: ed5b9291ffad776f8757a916e1726ad0
-Patch0: %{name}-atomicity.patch
-#Patch1: %{name}-python.patch
+# Source0-md5: 2d938467e8a448a2c9763e0a9f8ca7e5
URL: http://www.boost.org/
-BuildRequires: boost-jam >= 3.1.3
+BuildRequires: boost-jam >= 3.1.12
BuildRequires: bzip2-devel
BuildRequires: libicu-devel
BuildRequires: libstdc++-devel
Summary(pl.UTF-8): Pliki nagłówkowe bibliotek C++ Boost
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
-Requires: %{name}-ref-devel = %{version}-%{release}
Requires: libstdc++-devel
# temporary Provides (until CVS HEAD stops using it)?
+Provides: boost-call_traits-devel = %{version}-%{release}
Provides: boost-concept_check-devel = %{version}-%{release}
Provides: boost-conversion-devel = %{version}-%{release}
Provides: boost-mpl-devel = %{version}-%{release}
Provides: boost-preprocessor-devel = %{version}-%{release}
+Provides: boost-ref-devel = %{version}-%{release}
Provides: boost-static_assert-devel = %{version}-%{release}
Provides: boost-type_traits-devel = %{version}-%{release}
Provides: boost-utility-devel = %{version}-%{release}
+Obsoletes: boost-call_traits-devel
Obsoletes: boost-compose-devel
Obsoletes: boost-concept_check-devel
Obsoletes: boost-conversion-devel
Obsoletes: boost-mpl-devel
Obsoletes: boost-preprocessor-devel
+Obsoletes: boost-ref-devel
Obsoletes: boost-static_assert-devel
Obsoletes: boost-type_traits-devel
Obsoletes: boost-utility-devel
Summary: Generalized binders for function/object/pointers and member functions
Summary(pl.UTF-8): Uogólnione bindery dla funkcji/obiektów/wskaźników oraz metod
Group: Development/Libraries
-Requires: %{name}-ref-devel = %{version}-%{release}
+Requires: %{name}-signals-devel = %{version}-%{release}
Provides: boost-mem_fn-devel = %{version}-%{release}
Obsoletes: boost-compose-devel
Obsoletes: boost-mem_fn-devel
std::bind2nd. Ten pakiet zawiera także boost::mem_fn, który jest
uogólnieniem standardowych funkcji std::mem_fun i std::mem_fun_ref.
-%package call_traits-devel
-Summary: Defines types for passing parameters
-Summary(pl.UTF-8): Definiowanie typów dla przekazywania parametrów
-Group: Development/Libraries
-Requires: %{name}-devel = %{version}-%{release}
-
-%description call_traits-devel
-boost::call_traits<T> encapsulates the "best" method to pass a
-parameter of some type T to or from a function. The purpose of
-call_traits is to ensure that problems like "references to references"
-never occur, and that parameters are passed in the most efficient
-manner possible.
-
-%description call_traits-devel -l pl.UTF-8
-boost::call_traits<T> zawiera "najlepszą" metodę przekazywania
-parametrów jakiegoś typu T do lub z funkcji. Celem call_traits jest
-zapewnienie że problemy takie jak "referencja referencji" nigdy nie
-wystąpią i że parametry są przekazywane w możliwie najbardziej
-efektywny sposób.
-
%package compatibility-devel
Summary: Help for non-conforming standard libraries
Summary(pl.UTF-8): Pomoc dla nie trzymających standardu bibliotek
Summary: Empty member optimization
Summary(pl.UTF-8): Optymalizacja pustego elementu
Group: Development/Libraries
-Requires: %{name}-call_traits-devel = %{version}-%{release}
Requires: %{name}-devel = %{version}-%{release}
%description compressed_pair-devel
%description filesystem-static -l pl.UTF-8
Biblioteka statyczna boost::filesystem.
+%package graph
+Summary: General purpose, generic C++ library for graph data structures and graph algorithms
+Summary(pl.UTF-8): Biblioteka ogólnego przeznaczenia w C++ dla struktur danych typu grafy oraz algorytmów związanych z grafami
+Group: Libraries
+
+%description graph
+The boost::graph library provides portable facilities to operate on
+graph data structures using graph algorithms.
+
+%description graph -l pl.UTF-8
+Przenośna biblioteka boost::graph dostarcza ułatwienia w operacjach na
+strukturach danych typu graf za pomocą algorytmów związanych z
+grafami.
+
+%package graph-devel
+Summary: Header files for boost::graph
+Summary(pl.UTF-8): Pliki nagłówkowe dla boost::graph
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+Requires: %{name}-graph = %{version}-%{release}
+
+%description graph-devel
+Header files for boost::graph library.
+
+%description graph-devel -l pl.UTF-8
+Pliki nagłówkowe dla biblioteki boost::graph.
+
+%package graph-static
+Summary: Static boost::graph library
+Summary(pl.UTF-8): Biblioteka statyczna boost::graph
+Group: Development/Libraries
+Requires: %{name}-graph-devel = %{version}-%{release}
+
+%description graph-static
+Static boost::graph library.
+
+%description graph-static -l pl.UTF-8
+Biblioteka statyczna boost::graph.
+
%package program_options
Summary: Access to program options, via conventional methods such as command line and config file
Summary(pl.UTF-8): Dostęp do opcji programu za pomocą typowych metod, jak linia poleceń i plik konfiguracyjny
%description program_options-static -l pl.UTF-8
Biblioteka statyczna boost::program_options.
-%package ref-devel
-Summary: Small library useful for passing references to function templates
-Summary(pl.UTF-8): Mała biblioteka użyteczna przy przekazywaniu referencji do wzorców funkcji
-Group: Development/Libraries
-Requires: %{name}-devel = %{version}-%{release}
-
-%description ref-devel
-boost::ref library is a small library that is useful for passing
-references to function templates (algorithms) that would usually take
-copies of their arguments.
-
-%description ref-devel -l pl.UTF-8
-Biblioteka boost::ref jest małą biblioteką która jest użyteczna w
-przypadku przekazywania referencji do wzorców funkcji (algorytmów)
-które zazwyczaj biorą kopię swoich argumentów.
-
%package signals
Summary: Signals & slots callback implementation
Summary(pl.UTF-8): Implementacja sygnałów i slotów
Requires: %{name}-bind-devel = %{version}-%{release}
#Requires: %{name}-iterator_adaptors-devel = %{version}-%{release}
#Requires: %{name}-operators-devel = %{version}-%{release}
-Requires: %{name}-ref-devel = %{version}-%{release}
#Requires: %{name}-smart_ptr-devel = %{version}-%{release}
%description signals-devel
Summary(pl.UTF-8): Szkielet parsera LL
Group: Development/Libraries
Requires: %{name}-compressed_pair-devel = %{version}-%{release}
-Requires: %{name}-ref-devel = %{version}-%{release}
Requires: %{name}-regex-devel = %{version}-%{release}
Requires: %{name}-thread-devel = %{version}-%{release}
#TODO:
Szkielet parsera LL reprezentujący parsery jako gramatyki EBNF
bezpośrednio w kodzie C++.
+%package statechart-devel
+Summary: C++ library for finite state machines
+Summary(pl.UTF-8): Biblioteka C++ do automatów skończonych
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+
+%description statechart-devel
+C++ library for finite state machines.
+
+%description statechart-devel -l pl.UTF-8
+Biblioteka C++ do automatów skończonych.
+
%package test
Summary: Support for program testing and execution monitoring
Summary(pl.UTF-8): Wsparcie dla testowania i monitorowania programu
Summary: Header files for boost::test
Summary(pl.UTF-8): Pliki nagłówkowe dla boost::test
Group: Development/Libraries
-Requires: %{name}-call_traits-devel = %{version}-%{release}
Requires: %{name}-devel = %{version}-%{release}
Requires: %{name}-test = %{version}-%{release}
#TODO:
%description thread-static -l pl.UTF-8
Przenośna biblioteka wątków dla C++ - biblioteka statyczna.
+%package tr1-devel
+Summary: An implementation of the C++ Technical Report on Standard Library Extensions
+Summary(pl.UTF-8): Implementacja C++ TR dla rozszerzeń biblioteki standardowej
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+
+%description tr1-devel
+The TR1 library provides an implementation of the C++ Technical Report
+on Standard Library Extensions. This library does not itself implement
+the TR1 components, rather it's a thin wrapper that will include your
+standard library's TR1 implementation (if it has one), otherwise it
+will include the Boost Library equivalents, and import them into
+namespace std::tr1.
+
+%description tr1-devel -l pl.UTF-8
+Biblioteka TR1 udostępnia implementację C++ Technical Report on
+Standard Library Extensions (raporto technicznego dotyczącego
+rozszerzeń biblioteki standardowej C++). Biblioteka jako taka nie
+implementuje komponentów TR1, lecz jest cienkim opakowaniem
+zawierającym implementację TR1 z zainstalowanej biblioteki
+standardowej (jeśli taka jest) lub zawiera odpowiedniki z biblioteki
+Boost zaimportowane do przestrzeni nazw std::tr1.
+
+%package typeof-devel
+Summary: Emulates C++ typeid()
+Summary(pl.UTF-8): Emulacja typeid() z C++
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+
+%description typeof-devel
+Emulates C++ typeid().
+
+%description typeof-devel -l pl.UTF-8
+Emulacja typeid() z C++.
+
%package uBLAS-devel
Summary: Basic linear algebra for dense, packed and sparse matrices
Summary(pl.UTF-8): Prosta liniowa algebra dla gęstych, upakowanych i rzadkich macierzy
i rzadkich wektorów oraz gęstych, jednostkowych, trójkątnych,
diagonalnych, symetrycznych, hermitowskich i rzadkich macierzy.
+%package wave
+Summary: Boost.Wave - a standard compliant C++ preprocessor library
+Summary(pl.UTF-8): Boost.Wave - zgodna ze standardem biblioteka preprocesora C++
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+
+%description wave
+Boost.Wave - a standard compliant C++ preprocessor library.
+
+%description wave -l pl.UTF-8
+Boost.Wave - zgodna ze standardem biblioteka preprocesora C++.
+
%package wave-devel
Summary: Boost.Wave - a standard compliant C++ preprocessor library
Summary(pl.UTF-8): Boost.Wave - zgodna ze standardem biblioteka preprocesora C++
%description wave-devel
Boost.Wave - a standard compliant C++ preprocessor library.
+Development files.
%description wave-devel -l pl.UTF-8
+Boost.Wave - zgodna ze standardem biblioteka preprocesora C++. Pliki
+dla developera.
+
+%package wave-static
+Summary: Boost.Wave - a standard compliant C++ preprocessor library
+Summary(pl.UTF-8): Boost.Wave - zgodna ze standardem biblioteka preprocesora C++
+Group: Development/Libraries
+Requires: %{name}-wave-devel = %{version}-%{release}
+
+%description wave-static
+Boost.Wave - a standard compliant C++ preprocessor library. Static
+library.
+
+%description wave-static -l pl.UTF-8
Boost.Wave - zgodna ze standardem biblioteka preprocesora C++.
+Biblioteka statyczna.
+
+%package xpressive-devel
+Summary: Object-oriented regular expression template library for C++
+Summary(pl.UTF-8): Zorientowana obiektowo biblioteka szablonów wyrażeń regularnych dla C++
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+
+%description xpressive-devel
+xpressive is an advanced, object-oriented regular expression template
+library for C++. Regular expressions can be written as strings that
+are parsed at run-time, or as expression templates that are parsed at
+compile-time. Regular expressions can refer to each other and to
+themselves recursively, allowing you to build arbitrarily complicated
+grammars out of them.
+
+%description xpressive-devel -l pl.UTF-8
+xpressive to zaawansowana, zorientowana obiektowo biblioteka szablonów
+wyrażeń regularnych dla C++. Wyrażenia regularne mogą być pisane jako
+łańcuchy znaków analizowane w czasie działania lub szablony wyrażeń
+analizowane w czasie kompilacji. Wyrażenia regularne mogą odwoływać
+się do siebie nawzajem i rekurencyjnie do siebie samych, co pozwala na
+tworzenie z nich dowolnie złożonych gramatyk.
%package doc
Summary: Boost C++ Library documentation
%prep
%setup -q -n %{name}_%{_fver}
-%patch0 -p0
-#patch1 -p1
# - don't know how to pass it through (b)jam -s (no way?)
# due to oversophisticated build flags system.
-d2 --toolset=gcc \
variant=release threading=multi inlining=on debug-symbols=on
-# -sPYTHON_ROOT=$PYTHON_ROOT \
-# -sPYTHON_VERSION=$PYTHON_VERSION
-
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{%{_libdir},%{_includedir}}
%post filesystem -p /sbin/ldconfig
%postun filesystem -p /sbin/ldconfig
+%post graph -p /sbin/ldconfig
+%postun graph -p /sbin/ldconfig
+
%post python -p /sbin/ldconfig
%postun python -p /sbin/ldconfig
%post test -p /sbin/ldconfig
%postun test -p /sbin/ldconfig
+%post wave -p /sbin/ldconfig
+%postun wave -p /sbin/ldconfig
+
%post thread -p /sbin/ldconfig
%postun thread -p /sbin/ldconfig
%{_includedir}/boost/assign
%{_includedir}/boost/assign.hpp
%{_includedir}/boost/blank_fwd.hpp
+%{_includedir}/boost/call_traits.hpp
%{_includedir}/boost/cast.hpp
%{_includedir}/boost/checked_delete.hpp
%{_includedir}/boost/concept_archetype.hpp
%{_includedir}/boost/detail/atomic_count*.hpp
%{_includedir}/boost/detail/bad_weak_ptr.hpp
%{_includedir}/boost/detail/binary_search.hpp
+%{_includedir}/boost/detail/call_traits.hpp
%{_includedir}/boost/detail/catch_exceptions.hpp
%{_includedir}/boost/detail/dynamic_bitset.hpp
%{_includedir}/boost/detail/endian.hpp
%{_includedir}/boost/detail/named_template_params.hpp
%{_includedir}/boost/detail/no_exceptions_support.hpp
%{_includedir}/boost/detail/numeric_traits.hpp
+%{_includedir}/boost/detail/ob_call_traits.hpp
%{_includedir}/boost/detail/quick_allocator.hpp
%{_includedir}/boost/detail/reference_content.hpp
%{_includedir}/boost/detail/select_type.hpp
%{_includedir}/boost/dynamic_bitset_fwd.hpp
%{_includedir}/boost/dynamic_property_map.hpp
%{_includedir}/boost/enable_shared_from_this.hpp
+%{_includedir}/boost/foreach.hpp
%{_includedir}/boost/format
%{_includedir}/boost/format.hpp
%{_includedir}/boost/function
%{_includedir}/boost/functional
%{_includedir}/boost/functional.hpp
%{_includedir}/boost/generator_iterator.hpp
-%{_includedir}/boost/graph
%{_includedir}/boost/implicit_cast.hpp
%{_includedir}/boost/indirect_reference.hpp
%{_includedir}/boost/integer
%{_includedir}/boost/pfto.hpp
%{_includedir}/boost/pool
%{_includedir}/boost/pointee.hpp
+%{_includedir}/boost/pointer_cast.hpp
+%{_includedir}/boost/pointer_to_other.hpp
%{_includedir}/boost/preprocessor
%{_includedir}/boost/preprocessor.hpp
%{_includedir}/boost/progress.hpp
%{_includedir}/boost/range
%{_includedir}/boost/range.hpp
%{_includedir}/boost/rational.hpp
+%{_includedir}/boost/ref.hpp
%{_includedir}/boost/scoped_*.hpp
%{_includedir}/boost/serialization
%{_includedir}/boost/shared_*.hpp
%{_includedir}/boost/get_pointer.hpp
%{_includedir}/boost/mem_fn.hpp
-%files call_traits-devel
-%defattr(644,root,root,755)
-%{_includedir}/boost/call_traits.hpp
-%{_includedir}/boost/detail/call_traits.hpp
-%{_includedir}/boost/detail/ob_call_traits.hpp
-
%files compatibility-devel
%defattr(644,root,root,755)
%{_includedir}/boost/compatibility
%files date_time-devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libboost_date_time*.so
+%{_includedir}/boost/date_time.hpp
%{_includedir}/boost/date_time
%files date_time-static
%files filesystem-devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libboost_filesystem*.so
+%{_includedir}/boost/filesystem.hpp
%{_includedir}/boost/filesystem
%files filesystem-static
%defattr(644,root,root,755)
%{_libdir}/libboost_filesystem*.a
+%files graph
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libboost_graph*.so.*.*.*
+
+%files graph-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libboost_graph*.so
+%{_includedir}/boost/graph
+
+%files graph-static
+%defattr(644,root,root,755)
+%{_libdir}/libboost_grap*.a
+
%files program_options
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libboost_program_options*.so.*.*.*
%defattr(644,root,root,755)
%{_libdir}/libboost_program_options*.a
-%files ref-devel
-%defattr(644,root,root,755)
-%{_includedir}/boost/ref.hpp
-
%files signals
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libboost_signals*.so.*.*.*
%{_includedir}/boost/spirit.hpp
%{_includedir}/boost/spirit
+%files statechart-devel
+%defattr(644,root,root,755)
+%{_includedir}/boost/statechart
+
+%files tr1-devel
+%defattr(644,root,root,755)
+%{_includedir}/boost/tr1
+
%files test
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor*.so.*.*.*
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libboost_thread*.a
+%files typeof-devel
+%defattr(644,root,root,755)
+%{_includedir}/boost/typeof
+
%files uBLAS-devel
%defattr(644,root,root,755)
%{_includedir}/boost/numeric/ublas
+%files wave
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libboost_wave*.so.*.*.*
+
%files wave-devel
%defattr(644,root,root,755)
-%{_libdir}/libboost_wave*.a
+%attr(755,root,root) %{_libdir}/libboost_wave*.so
%{_includedir}/boost/wave
%{_includedir}/boost/wave.hpp
+%files wave-static
+%defattr(644,root,root,755)
+%{_libdir}/libboost_wave*.a
+
+%files xpressive-devel
+%defattr(644,root,root,755)
+%{_includedir}/boost/xpressive
+
%files doc
%defattr(644,root,root,755)
%{_docdir}/%{name}-%{version}