Guest User

Untitled

a guest
Nov 6th, 2017
725
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
RPM Spec 68.61 KB | None | 0 0
  1. #
  2. # spec file for package boost
  3. #
  4. # Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
  5. #
  6. # All modifications and additions to the file contributed by third parties
  7. # remain the property of their copyright owners, unless otherwise agreed
  8. # upon. The license for this file, and modifications and additions to the
  9. # file, is the same license as for the pristine package itself (unless the
  10. # license for the pristine package is not an Open Source License, in which
  11. # case the license is the MIT License). An "Open Source License" is a
  12. # license that conforms to the Open Source Definition (Version 1.9)
  13. # published by the Open Source Initiative.
  14.  
  15. # Please submit bugfixes or comments via http://bugs.opensuse.org/
  16. #
  17.  
  18.  
  19. %define ver 1.54.0
  20. %define file_version 1_54_0
  21. %define short_version 1_54
  22. %define lib_appendix 1_54_0
  23.  
  24. #Only define to 1 to generate the man pages
  25. %define build_docs 0
  26.  
  27. #Define to 0 to not package the pdf documentation
  28. %define package_pdf 1
  29.  
  30. # Just hardcode build_mpi to 1 as soon as openmpi builds on all
  31. # named architectures.
  32.  
  33. %ifarch ia64 hppa
  34. %define build_mpi 0
  35. %else
  36. %define build_mpi 1
  37. %endif
  38.  
  39. # context hasn't been ported to most architectures yet
  40. %ifarch %ix86 x86_64 %arm mips ppc ppc64 ppc64le
  41. %define build_context 1
  42. %else
  43. %define build_context 0
  44. %endif
  45.  
  46. %ifarch hppa
  47. %define disable_long_double 1
  48. %else
  49. %define disable_long_double 0
  50. %endif
  51.  
  52. %define boost_libs1 libboost_date_time%{lib_appendix} libboost_filesystem%{lib_appendix} libboost_graph%{lib_appendix}
  53. %define boost_libs2 libboost_iostreams%{lib_appendix} libboost_math%{lib_appendix} libboost_test%{lib_appendix}
  54. %define boost_libs3 libboost_program_options%{lib_appendix} libboost_python%{lib_appendix} libboost_serialization%{lib_appendix}
  55. %define boost_libs4 libboost_signals%{lib_appendix} libboost_system%{lib_appendix} libboost_thread%{lib_appendix}
  56. %define boost_libs5 libboost_wave%{lib_appendix} libboost_regex%{lib_appendix} libboost_regex%{lib_appendix}
  57. %define boost_libs6 libboost_random%{lib_appendix} libboost_chrono%{lib_appendix} libboost_locale%{lib_appendix}
  58. %define boost_libs7 libboost_timer%{lib_appendix} libboost_atomic%{lib_appendix} libboost_log%{lib_appendix}
  59.  
  60. %define most_libs %boost_libs1 %boost_libs2 %boost_libs3 %boost_libs4 %boost_libs5 %boost_libs6 %boost_libs7
  61.  
  62. %if %build_mpi
  63. %define mpi_libs libboost_graph_parallel%lib_appendix libboost_mpi%{lib_appendix}
  64. %endif
  65.  
  66. %if %build_context
  67. %define context_libs libboost_context%{lib_appendix}
  68. %endif
  69.  
  70. %define all_libs %boost_libs1 %boost_libs2 %boost_libs3 %boost_libs4 %boost_libs5 %boost_libs6 %boost_libs7 %{?mpi_libs} %{?context_libs}
  71.  
  72. Name:           boost
  73. BuildRequires:  chrpath
  74. BuildRequires:  dos2unix
  75. BuildRequires:  gcc-c++
  76. BuildRequires:  libbz2-devel
  77. BuildRequires:  libexpat-devel
  78. BuildRequires:  libicu-devel >= 4.4
  79. BuildRequires:  python-devel
  80. BuildRequires:  xorg-x11-devel
  81. #!BuildIgnore:  python
  82. BuildRequires:  zlib-devel
  83. %if %build_mpi
  84. BuildRequires:  openmpi-devel
  85. %endif
  86. %if %build_docs
  87. BuildRequires:  docbook
  88. BuildRequires:  docbook-xsl-stylesheets
  89. BuildRequires:  doxygen
  90. BuildRequires:  libxslt-tools
  91. BuildRequires:  texlive-latex
  92. %endif
  93. %if 0%suse_version > 1020
  94. BuildRequires:  fdupes
  95. %endif
  96. Url:            http://www.boost.org
  97. Summary:        Boost C++ Libraries
  98. License:        BSL-1.0
  99. Group:          Development/Libraries/C and C++
  100. BuildRoot:      %{_tmppath}/%{name}-%{version}-build
  101. Version:        1.54.0
  102. Release:        16.1
  103. Source0:        http://downloads.sourceforge.net/project/boost/boost/%{version}/%{name}_%{file_version}.tar.bz2
  104. Source1:        boost-rpmlintrc
  105. Source2:        %{name}_%{short_version}_man.tar.bz2
  106. Source3:        http://downloads.sourceforge.net/project/boost/boost-docs/%{version}/%{name}_%{file_version}_pdf.tar.bz2
  107. Source4:        existing_extra_docs
  108. Source5:        baselibs.conf
  109. #Source5:        NEWS
  110. Patch1:         boost-thread.patch
  111. Patch2:         boost-no_type_punning.patch
  112. Patch8:         boost-no_segfault_in_Regex_filter.patch
  113. Patch9:         boost-pool_check_overflow.patch
  114. Patch20:        boost-strict_aliasing.patch
  115. Patch50:        boost-use_std_xml_catalog.patch
  116. Patch60:        boost-glibc-2.18.patch
  117. Patch61:        bjam-alignment.patch
  118. #PATCH-FIX-UPSTREAM A post-release patch.
  119. Patch71:        boost-1.54-001-coroutine.patch
  120. #PATCH-FIX-UPSTREAM A post-release patch.
  121. Patch72:        boost-1.54-002-date-time.patch
  122. #PATCH-FIX-UPSTREAM A post-release patch.
  123. Patch73:        boost-1.54-003-log.patch
  124. #PATCH-FIX-UPSTREAM https://svn.boost.org/trac/boost/ticket/8790
  125. Patch74:        boost-1.54-change85160.patch
  126. #PATCH-FIX-UPSTREAM https://svn.boost.org/trac/boost/ticket/9041
  127. Patch75:        boost-1.54.0-thread-link_atomic.patch
  128. #PATCH-FIX-UPSTREAM https://github.com/boost-at/boost_1_55_0/commit/4221b902fe3a3a9ff1e2d384acf46eceda782160
  129. Patch76:        boost-ppc64-abiv2-context.patch
  130. #PATCH-FIX-UPSTREAM https://github.com/boost-at/boost_1_55_0/commit/e0fc16ec166c90564487f99078ed228e27828d2e
  131. Patch77:        boost-ppc64-abiv2-coroutine.patch
  132. Patch78:        https://svn.boost.org/trac/boost/changeset/85738.patch
  133. Patch100:       gcc_path.patch
  134.  
  135. Recommends:     %{all_libs}
  136.  
  137. %define _docdir %{_datadir}/doc/packages/boost-%{version}
  138.  
  139. %description
  140. Boost provides free peer-reviewed portable C++ source libraries. The
  141. emphasis is on libraries that work well with the C++ Standard Library.
  142. One goal is to establish "existing practice" and provide reference
  143. implementations so that the Boost libraries are suitable for eventual
  144. standardization. Some of the libraries have already been proposed for
  145. inclusion in the C++ Standards Committee's upcoming C++ Standard
  146. Library Technical Report.
  147.  
  148. Although Boost was begun by members of the C++ Standards Committee
  149. Library Working Group, membership has expanded to include nearly two
  150. thousand members of the C++ community at large.
  151.  
  152. This package is mainly needed for updating from a prior version, the
  153. dynamic libraries are found in their respective package. For development
  154. using Boost, you also need the boost-devel package. For documentation,
  155. see the boost-doc package.
  156.  
  157.  
  158.  
  159. %package        devel
  160. Summary:        Development package for Boost C++
  161. Group:          Development/Libraries/C and C++
  162. Requires:       %{all_libs}
  163. Requires:       libstdc++-devel
  164.  
  165. %description    devel
  166. This package contains all that is needed to develop/compile
  167. applications that use the Boost C++ libraries. For documentation see
  168. the documentation packages (html, man or pdf).
  169.  
  170.  
  171.  
  172. %package     -n boost-license%{lib_appendix}
  173. Summary:        Boost License
  174. Group:          Development/Libraries/C and C++
  175. Provides:       boost-license = %{version}-%{release}
  176. Obsoletes:      boost-license
  177. %if 0%{?suse_version} >= 1120
  178. BuildArch:      noarch
  179. %endif
  180.  
  181. %description    -n boost-license%{lib_appendix}
  182. This package contains the license boost is provided under.
  183.  
  184.  
  185.  
  186. %package        doc-html
  187. Summary:        HTML documentation for the Boost C++ Libraries
  188. Group:          Development/Libraries/C and C++
  189. %if 0%{?suse_version} >= 1120
  190. BuildArch:      noarch
  191. %endif
  192.  
  193. %description    doc-html
  194. This package contains the documentation of the boost dynamic libraries
  195. in HTML format.
  196.  
  197.  
  198.  
  199. %package        doc-man
  200. Summary:        Man documentation for the Boost C++ Libraries
  201. Group:          Development/Libraries/C and C++
  202. %if 0%{?suse_version} >= 1120
  203. BuildArch:      noarch
  204. %endif
  205.  
  206. %description    doc-man
  207. This package contains the documentation of the boost dynamic libraries
  208. as man pages.
  209.  
  210.  
  211. %if %package_pdf
  212.  
  213. %package        doc-pdf
  214. Summary:        PDF documentation for the Boost C++ Libraries
  215. Group:          Development/Libraries/C and C++
  216. %if 0%{?suse_version} >= 1120
  217. BuildArch:      noarch
  218. %endif
  219.  
  220. %description     doc-pdf
  221. This package contains the documentation of the boost dynamic libraries
  222. in PDF format.
  223. %endif
  224.  
  225. %package        -n libboost_atomic%{lib_appendix}
  226. Summary:        Run-Time component of boost atomic library
  227. Group:          System/Libraries
  228. Requires:       boost-license%{lib_appendix}
  229.  
  230. %description -n libboost_atomic%{lib_appendix}
  231. Run-Time support for Boost.Atomic, a library that provides atomic data types
  232. and operations on these data types, as well as memory ordering constraints
  233. required for coordinating multiple threads through atomic variables.
  234.  
  235. %package        -n libboost_context%{lib_appendix}
  236. Summary:        Run-Time component of boost context switching library
  237. Group:          System/Libraries
  238. Requires:       boost-license%{lib_appendix}
  239.  
  240. %description -n libboost_context%{lib_appendix}
  241. Run-Time support for Boost.Context, a foundational library that
  242. provides a sort of cooperative multitasking on a single thread.
  243.  
  244. %package        -n libboost_date_time%{lib_appendix}
  245. Summary:        Boost::Date.Time Runtime libraries
  246. Group:          System/Libraries
  247. Requires:       boost-license%{lib_appendix}
  248.  
  249. %description -n libboost_date_time%{lib_appendix}
  250. This package contains the Boost Date.Time runtime libraries.
  251.  
  252.  
  253. %package     -n libboost_filesystem%{lib_appendix}
  254. Summary:        Boost::Filesystem Runtime Libraries
  255. Group:          System/Localization
  256. Requires:       boost-license%{lib_appendix}
  257.  
  258. %description    -n libboost_filesystem%{lib_appendix}
  259. This package contains the Boost::Filesystem libraries.
  260.  
  261.  
  262. %package        -n libboost_graph%{lib_appendix}
  263. Summary:        Boost::Graph Runtime Libraries
  264. Group:          System/Libraries
  265. Requires:       boost-license%{lib_appendix}
  266.  
  267. %description    -n libboost_graph%{lib_appendix}
  268. This package contains the Boost::Graph Runtime libraries.
  269.  
  270. %package        -n libboost_graph_parallel%lib_appendix
  271. Summary:        Boost graph::distributed runtime libraries
  272. Group:          System/Libraries
  273. Requires:       boost-license%lib_appendix
  274.  
  275. %description    -n libboost_graph_parallel%lib_appendix
  276. This package contains the boost::graph::distributed runtime libraries.
  277.  
  278. %package        -n libboost_iostreams%{lib_appendix}
  279. Summary:        Boost::IOStreams Runtime Libraries
  280. Group:          System/Libraries
  281. Requires:       boost-license%{lib_appendix}
  282.  
  283. %description    -n libboost_iostreams%{lib_appendix}
  284. This package contains the Boost::IOStreams Runtime libraries.
  285.  
  286.  
  287. %package        -n libboost_log%{lib_appendix}
  288. Summary:        Run-Time component of boost logging library
  289. Group:          System/Libraries
  290. Requires:       boost-license%{lib_appendix}
  291.  
  292. %description -n libboost_log%{lib_appendix}
  293. Boost.Log library aims to make logging significantly easier for the
  294. application developer. It provides a wide range of out-of-the-box
  295. tools along with public interfaces for extending the library.
  296.  
  297.  
  298. %package        -n libboost_math%{lib_appendix}
  299. Summary:        Boost::Math Runtime Libraries
  300. Group:          System/Libraries
  301. Requires:       boost-license%{lib_appendix}
  302.  
  303. %description    -n libboost_math%{lib_appendix}
  304. This package contains the Boost::Math Runtime libraries.
  305.  
  306.  
  307. %if %build_mpi
  308.  
  309. %package        -n libboost_mpi%{lib_appendix}
  310. Summary:        Boost::MPI Runtime libraries
  311. Group:          System/Libraries
  312. Requires:       boost-license%{lib_appendix}
  313.  
  314. %description    -n libboost_mpi%{lib_appendix}
  315. This package contains the Boost::MPI Runtime libraries.
  316.  
  317. %endif
  318.  
  319. %package        -n libboost_test%{lib_appendix}
  320. Summary:        Boost::Test Runtime Libraries
  321. Group:          System/Libraries
  322. Requires:       boost-license%{lib_appendix}
  323.  
  324. %description    -n libboost_test%{lib_appendix}
  325. This package contains the Boost::Test runtime libraries.
  326.  
  327.  
  328. %package        -n libboost_program_options%{lib_appendix}
  329. Summary:        Boost::ProgramOptions Runtime libraries
  330. Group:          System/Libraries
  331. Requires:       boost-license%{lib_appendix}
  332.  
  333. %description    -n libboost_program_options%{lib_appendix}
  334. This package contains the Boost::ProgramOptions Runtime libraries.
  335.  
  336.  
  337. %package        -n libboost_python%{lib_appendix}
  338. Summary:        Boost::Python Runtime Libraries
  339. Group:          System/Libraries
  340. Requires:       boost-license%{lib_appendix}
  341.  
  342. %description    -n libboost_python%{lib_appendix}
  343. This package contains the Boost::Python Runtime libraries.
  344.  
  345.  
  346. %package        -n libboost_serialization%{lib_appendix}
  347. Summary:        Boost::Serialization Runtime Libraries
  348. Group:          System/Libraries
  349. Requires:       boost-license%{lib_appendix}
  350.  
  351. %description    -n libboost_serialization%{lib_appendix}
  352. This package contains the Boost::Serialization Runtime libraries.
  353.  
  354.  
  355. %package        -n libboost_signals%{lib_appendix}
  356. Summary:        Boost::Signals Runtime Libraries
  357. Group:          System/Libraries
  358. Requires:       boost-license%{lib_appendix}
  359.  
  360. %description    -n libboost_signals%{lib_appendix}
  361. This package contains the Boost::Signals Runtime libraries.
  362.  
  363.  
  364. %package        -n libboost_system%{lib_appendix}
  365. Summary:        Boost::System Runtime Libraries
  366. Group:          System/Libraries
  367. Requires:       boost-license%{lib_appendix}
  368.  
  369. %description    -n libboost_system%{lib_appendix}
  370. This package contains the Boost::System runtime libraries.
  371.  
  372.  
  373. %package        -n libboost_thread%{lib_appendix}
  374. Summary:        Boost::Thread Runtime Libraries
  375. Group:          System/Libraries
  376. Requires:       boost-license%{lib_appendix}
  377.  
  378. %description    -n libboost_thread%{lib_appendix}
  379. This package contains the Boost::Thread runtime libraries.
  380.  
  381.  
  382. %package        -n libboost_wave%{lib_appendix}
  383. Summary:        Boost::Wave Runtime Libraries
  384. Group:          System/Libraries
  385. Requires:       boost-license%{lib_appendix}
  386.  
  387. %description    -n libboost_wave%{lib_appendix}
  388. This package contains the Boost::Wave runtime libraries.
  389.  
  390.  
  391. %package        -n libboost_regex%{lib_appendix}
  392. Summary:        The Boost::Regex runtime library
  393. Group:          System/Libraries
  394. Requires:       boost-license%{lib_appendix}
  395.  
  396. %description    -n libboost_regex%{lib_appendix}
  397. This package contains the Boost::Regex runtime library.
  398.  
  399. %package        -n libboost_random%{lib_appendix}
  400. Summary:        The Boost::Random runtime library
  401. Group:          System/Libraries
  402. Requires:       boost-license%{lib_appendix}
  403.  
  404. %description    -n libboost_random%{lib_appendix}
  405. This package contains the Boost::Random runtime library.
  406.  
  407. %package        -n libboost_chrono%{lib_appendix}
  408. Summary:        The Boost::Chrono runtime library
  409. Group:          System/Libraries
  410. Requires:       boost-license%{lib_appendix}
  411.  
  412. %description    -n libboost_chrono%{lib_appendix}
  413. This package contains the Boost::Chrono runtime library.
  414.  
  415. %package        -n libboost_locale%{lib_appendix}
  416. Summary:        The Boost::Locale runtime library
  417. Group:          System/Libraries
  418. Requires:       boost-license%{lib_appendix}
  419.  
  420. %description    -n libboost_locale%{lib_appendix}
  421. This package contains the Boost::Locale runtime library.
  422.  
  423. %package        -n libboost_timer%{lib_appendix}
  424. Summary:        The Boost::Timer runtime library
  425. Group:          System/Libraries
  426. Requires:       boost-license%{lib_appendix}
  427.  
  428. %description    -n libboost_timer%{lib_appendix}
  429. This package contains the Boost::Timer runtime library.
  430.  
  431.  
  432. %prep
  433. %if %build_docs
  434. %setup -q -n %{name}_%{file_version} -b 3
  435. %else
  436. %setup -q -n %{name}_%{file_version} -a 2 -b 3
  437. %endif
  438. #everything in the tarball has the executable flag set ...
  439. find -type f ! \( -name \*.sh -o -name \*.py -o -name \*.pl \) -exec chmod -x {} +
  440. %patch1
  441. %patch2
  442. %patch8
  443. %patch9
  444. %patch20
  445. %patch50
  446. %patch60 -p1
  447. %patch61 -p1
  448. %patch71 -p1
  449. %patch72 -p1
  450. %patch73 -p1
  451. %patch74 -p0
  452. %patch75 -p1
  453. %patch76 -p1
  454. %patch77 -p1
  455. %patch78 -p2
  456. %patch100 -p1
  457. #stupid build machinery copies .orig files
  458. find . -name \*.orig -exec rm {} +
  459.  
  460. %build
  461. find . -type f -exec chmod u+w {} +
  462.  
  463. # Create shared build instructions
  464. cat << \EOF >.build
  465. # Now build it
  466. J_P=%{jobs}
  467. J_G=$(getconf _NPROCESSORS_ONLN)
  468. [ $J_G -gt 64 ] && J_G=64
  469.  
  470. if test -z "$JOBS"; then
  471.   JOBS=$J_G
  472. else
  473.   test 1 -gt "$JOBS" && JOBS=1
  474. fi
  475. Mem=$(grep MemTotal /proc/meminfo | awk '{print $2}')
  476. # require 4G for parallel build
  477. if test "$Mem" -lt 4000000; then
  478.   JOBS=1
  479. elif test "$Mem" -lt 7000000; then
  480. # lower number of jobs if memory is less than 7G but more than 4G
  481.    JOBS=2
  482. fi
  483. if test "$JOBS" = 0; then
  484.   JOBS=1
  485. fi
  486.  
  487. # In case you want more parallel jobs than autobuild grants you
  488. #if [ $J_P -gt $J_I ]; then
  489. #  JOBS=$J_G
  490. #fi
  491.  
  492. %if %{disable_long_double}
  493. export LONG_DOUBLE_FLAGS="--disable-long-double"
  494. %endif
  495. BJAM_CONFIG="-d2 -j$JOBS -sICU_PATH=%{_prefix}"
  496. PYTHON_VERSION=$(python -c 'import sys; print sys.version[:3]')
  497. PYTHON_FLAGS="--with-python-root=/usr --with-python-version=$PYTHON_VERSION"
  498. export REGEX_FLAGS="--with-icu"
  499. export EXPAT_INCLUDE=/usr/include EXPAT_LIBPATH=%{_libdir}
  500. export PYTHON_FLAGS
  501. LIBRARIES_FLAGS=--with-libraries=all
  502. %if !%build_context
  503. # coroutine depends on context
  504. LIBRARIES_FLAGS+=" --without-libraries=context,coroutine"
  505. %endif
  506. EOF
  507.  
  508. # Read shared build instructions
  509. . ./.build
  510.  
  511. # Set PATH, MANPATH and LD_LIBRARY_PATH for mpi
  512. . /var/mpi-selector/data/$(rpm --qf "%{NAME}-%{VERSION}" -q openmpi).sh
  513.  
  514. # use supplied bootstrap.sh instead of mucking with old bjam
  515. # see also: https://svn.boost.org/trac/boost/ticket/9304
  516. ./bootstrap.sh $LIBRARIES_FLAGS \
  517.     --prefix=%{_prefix} --exec-prefix=%{_bindir} \
  518.     --libdir=%{_libdir} --includedir=%{_includedir}
  519.  
  520. # add specific wishes in user-config.jam
  521. %if %build_docs
  522. cat << EOF >user-config.jam
  523. using xsltproc ;
  524.  
  525. using boostbook : /usr/share/xml/docbook/stylesheet/nwalsh/current ;
  526.  
  527. using doxygen ;
  528. EOF
  529. %endif
  530.  
  531. %if %build_mpi
  532. cat << EOF >>user-config.jam
  533. using mpi ;
  534. EOF
  535. %endif
  536.  
  537. # perform the compilation
  538. ./b2 --prefix=%{_prefix} --libdir=%{_libdir} --user-config=./user-config.jam
  539.  
  540. %if %build_docs
  541. cd doc
  542. ../b2 ${BJAM_CONFIG} --user-config=../user-config.jam --v2 man
  543. %endif
  544.  
  545. %install
  546.  
  547. # Read shared build instructions
  548. . ./.build
  549.  
  550. # Set PATH, MANPATH and LD_LIBRARY_PATH for mpi
  551. . /var/mpi-selector/data/$(rpm --qf "%{NAME}-%{VERSION}" -q openmpi).sh
  552.  
  553. ./b2 install \
  554.     --prefix=%{buildroot}%{_prefix} --exec-prefix=%{buildroot}%{_bindir} \
  555.     --libdir=%{buildroot}%{_libdir} --includedir=%{buildroot}%{_includedir} \
  556.     --user-config=./user-config.jam
  557.  
  558. # do not install the python module - as long as noone needs it, it requires more fixes
  559. # see https://bugzilla.redhat.com/show_bug.cgi?id=801534 for details
  560. rm -f %{buildroot}%{_libdir}/mpi.so
  561.  
  562. mkdir -p %{buildroot}%{_docdir}
  563.  
  564. pushd %{buildroot}%{_libdir}
  565. blibs=$(find . -name \*.so.%{version})
  566. echo $blibs | xargs chrpath -d
  567.  
  568. for lib in ${blibs}; do
  569.   BASE=$(basename ${lib} .so.%{version})
  570.   SONAME_MT="$BASE-mt.so"
  571.   ln -sf ${lib} $SONAME_MT
  572. done
  573. popd
  574.  
  575. # install the man pages
  576. rm -rf doc/man/man3/boost::units::operator
  577. mv doc/man/man3/path.3 doc/man/man3/boost::property_tree::path.3
  578. mv doc/man/man3/string.3 doc/man/man3/boost::container::string.3
  579.  
  580. for sec in 3 7 9; do
  581.     install -d %buildroot/%{_mandir}/man${sec}
  582. done
  583. pushd doc/man
  584. rm -f *.manifest
  585. tar -cf - .| tar -C %{buildroot}/%{_mandir} -xvf -
  586. popd
  587.  
  588. #install doc files
  589. dos2unix libs/ptr_container/doc/tutorial_example.html \
  590.     libs/parameter/doc/html/reference.html \
  591.     libs/parameter/doc/html/index.html \
  592.     libs/iostreams/doc/tree/tree.js \
  593.     libs/graph/doc/lengauer_tarjan_dominator.htm \
  594.     libs/test/test/test_files/errors_handling_test.pattern \
  595.     libs/test/test/test_files/result_report_test.pattern
  596. find . -name \*.htm\* -o -name \*.gif -o -name \*.css -o -name \*.jpg -o -name \*.png -o -name \*.ico | \
  597.     tar --files-from=%{S:4} -cf - --files-from=- | tar -C %{buildroot}%{_docdir} -xf -
  598. rm -rf %{buildroot}%{_docdir}/boost
  599. ln -s /usr/include/boost %{buildroot}%{_docdir}
  600. ln -s ../LICENSE_1_0.txt %{buildroot}%{_docdir}/libs
  601. #Copy the news file.
  602. #cp %%{S:5} %%{buildroot}%%{_docdir}
  603. #only for documentation, doesn't need to be executable
  604. find %{buildroot}%{_docdir} -name \*.py -exec chmod -x {} +
  605. chmod -x ../%{name}_%{file_version}_pdf/*.pdf
  606. rm -f %{buildroot}%{_libdir}/*.a
  607. #symlink dupes
  608. %if 0%suse_version > 1020
  609. %fdupes %buildroot
  610. %endif
  611.  
  612. %post -n libboost_atomic%{lib_appendix} -p /sbin/ldconfig
  613. %post -n libboost_context%{lib_appendix} -p /sbin/ldconfig
  614. %post -n libboost_date_time%{lib_appendix} -p /sbin/ldconfig
  615. %post -n libboost_filesystem%{lib_appendix} -p /sbin/ldconfig
  616. %post -n libboost_iostreams%{lib_appendix} -p /sbin/ldconfig
  617. %post -n libboost_log%{lib_appendix} -p /sbin/ldconfig
  618. %post -n libboost_test%{lib_appendix} -p /sbin/ldconfig
  619. %post -n libboost_program_options%{lib_appendix} -p /sbin/ldconfig
  620. %post -n libboost_python%{lib_appendix} -p /sbin/ldconfig
  621. %post -n libboost_regex%{lib_appendix} -p /sbin/ldconfig
  622. %post -n libboost_serialization%{lib_appendix} -p /sbin/ldconfig
  623. %post -n libboost_signals%{lib_appendix} -p /sbin/ldconfig
  624. %post -n libboost_thread%{lib_appendix} -p /sbin/ldconfig
  625. %post -n libboost_math%{lib_appendix} -p /sbin/ldconfig
  626.  
  627. %if %build_mpi
  628. %post -n libboost_mpi%{lib_appendix} -p /sbin/ldconfig      
  629. %endif
  630.  
  631. %post -n libboost_graph%{lib_appendix} -p /sbin/ldconfig
  632. %post -n libboost_system%{lib_appendix} -p /sbin/ldconfig
  633. %post -n libboost_wave%{lib_appendix} -p /sbin/ldconfig
  634. %post -n libboost_random%{lib_appendix} -p /sbin/ldconfig
  635. %post -n libboost_chrono%{lib_appendix} -p /sbin/ldconfig
  636. %post -n libboost_locale%{lib_appendix} -p /sbin/ldconfig
  637. %post -n libboost_timer%{lib_appendix} -p /sbin/ldconfig
  638. %post -n libboost_graph_parallel%{lib_appendix} -p /sbin/ldconfig
  639.  
  640. %postun -n libboost_atomic%{lib_appendix} -p /sbin/ldconfig
  641. %postun -n libboost_context%{lib_appendix} -p /sbin/ldconfig
  642. %postun -n libboost_date_time%{lib_appendix} -p /sbin/ldconfig
  643. %postun -n libboost_filesystem%{lib_appendix} -p /sbin/ldconfig
  644. %postun -n libboost_iostreams%{lib_appendix} -p /sbin/ldconfig
  645. %postun -n libboost_log%{lib_appendix} -p /sbin/ldconfig
  646. %postun -n libboost_test%{lib_appendix} -p /sbin/ldconfig
  647. %postun -n libboost_program_options%{lib_appendix} -p /sbin/ldconfig
  648. %postun -n libboost_python%{lib_appendix} -p /sbin/ldconfig
  649. %postun -n libboost_regex%{lib_appendix} -p /sbin/ldconfig
  650. %postun -n libboost_serialization%{lib_appendix} -p /sbin/ldconfig
  651. %postun -n libboost_signals%{lib_appendix} -p /sbin/ldconfig
  652. %postun -n libboost_thread%{lib_appendix} -p /sbin/ldconfig
  653. %postun -n libboost_math%{lib_appendix} -p /sbin/ldconfig
  654.  
  655. %if %build_mpi
  656. %postun -n libboost_mpi%{lib_appendix} -p /sbin/ldconfig
  657. %endif
  658.  
  659. %postun -n libboost_graph%{lib_appendix} -p /sbin/ldconfig
  660. %postun -n libboost_system%{lib_appendix} -p /sbin/ldconfig
  661. %postun -n libboost_wave%{lib_appendix} -p /sbin/ldconfig
  662. %postun -n libboost_random%{lib_appendix} -p /sbin/ldconfig
  663. %postun -n libboost_chrono%{lib_appendix} -p /sbin/ldconfig
  664. %postun -n libboost_locale%{lib_appendix} -p /sbin/ldconfig
  665. %postun -n libboost_timer%{lib_appendix} -p /sbin/ldconfig
  666. %postun -n libboost_graph_parallel%{lib_appendix} -p /sbin/ldconfig
  667.  
  668. %files -n boost-license%{lib_appendix}
  669. %defattr(-, root, root, -)
  670. %dir %{_docdir}
  671. #%%doc %%{_docdir}/NEWS
  672. %doc %{_docdir}/LICENSE_1_0.txt
  673.  
  674. %files -n libboost_atomic%{lib_appendix}
  675. %defattr(-, root, root, -)
  676. %{_libdir}/libboost_atomic*.so.*
  677.  
  678. %if %build_context
  679. %files -n libboost_context%{lib_appendix}
  680. %defattr(-, root, root, -)
  681. %{_libdir}/libboost_context*.so.*
  682. %endif
  683.  
  684. %files -n libboost_date_time%{lib_appendix}
  685. %defattr(-, root, root, -)
  686. %{_libdir}/libboost_date_time*.so.*
  687.  
  688. %files -n libboost_filesystem%{lib_appendix}
  689. %defattr(-, root, root, -)
  690. %{_libdir}/libboost_filesystem*.so.*
  691.  
  692. %files -n libboost_graph%{lib_appendix}
  693. %defattr(-, root, root, -)
  694. %{_libdir}/libboost_graph.so.*
  695.  
  696. %files -n libboost_graph_parallel%lib_appendix
  697. %defattr(-,root,root)
  698. %_libdir/libboost_graph_parallel.so.*
  699.  
  700. %files -n libboost_iostreams%{lib_appendix}
  701. %defattr(-, root, root, -)
  702. %{_libdir}/libboost_iostreams*.so.*
  703.  
  704. %files -n libboost_log%{lib_appendix}
  705. %defattr(-, root, root, -)
  706. %{_libdir}/libboost_log*.so.*
  707.  
  708. %files -n libboost_math%{lib_appendix}
  709. %defattr(-, root, root, -)
  710. %{_libdir}/libboost_math_*.so.*
  711.  
  712. %if %build_mpi
  713.  
  714. %files -n libboost_mpi%{lib_appendix}
  715. %defattr(-, root, root, -)
  716. %{_libdir}/libboost_mpi*.so.*
  717. %endif
  718.  
  719. %files -n libboost_test%{lib_appendix}
  720. %defattr(-, root, root, -)
  721. %{_libdir}/libboost_prg_exec_monitor*.so.*
  722. %{_libdir}/libboost_unit_test_framework*.so.*
  723.  
  724. %files -n libboost_program_options%{lib_appendix}
  725. %defattr(-, root, root, -)
  726. %{_libdir}/libboost_program_options*.so.*
  727.  
  728. %files -n libboost_python%{lib_appendix}
  729. %defattr(-, root, root, -)
  730. %{_libdir}/libboost_python*.so.*
  731.  
  732. %files -n libboost_serialization%{lib_appendix}
  733. %defattr(-, root, root, -)
  734. %{_libdir}/libboost_*serialization*.so.*
  735.  
  736. %files -n libboost_signals%{lib_appendix}
  737. %defattr(-, root, root, -)
  738. %{_libdir}/libboost_signals*.so.*
  739.  
  740. %files -n libboost_system%{lib_appendix}
  741. %defattr(-, root, root, -)
  742. %{_libdir}/libboost_system*.so.*
  743.  
  744. %files -n libboost_thread%{lib_appendix}
  745. %defattr(-, root, root, -)
  746. %{_libdir}/libboost_thread*.so.*
  747.  
  748. %files -n libboost_wave%{lib_appendix}
  749. %defattr(-, root, root, -)
  750. %{_libdir}/libboost_wave*.so.*
  751.  
  752. %files -n libboost_regex%{lib_appendix}
  753. %defattr(-, root, root, -)
  754. %{_libdir}/libboost_regex*.so.*
  755.  
  756. %files -n libboost_random%{lib_appendix}
  757. %defattr(-, root, root, -)
  758. %{_libdir}/libboost_random*.so.*
  759.  
  760. %files -n libboost_chrono%{lib_appendix}
  761. %defattr(-, root, root, -)
  762. %{_libdir}/libboost_chrono*.so.*
  763.  
  764. %files -n libboost_locale%{lib_appendix}
  765. %defattr(-, root, root, -)
  766. %{_libdir}/libboost_locale*.so.*
  767.  
  768. %files -n libboost_timer%{lib_appendix}
  769. %defattr(-, root, root, -)
  770. %{_libdir}/libboost_timer*.so.*
  771.  
  772. %files devel
  773. %defattr(-, root, root, -)
  774. %{_includedir}/boost
  775. %{_libdir}/*.so
  776. #%%{_datadir}/aclocal/*.m4
  777.  
  778. %files doc-html
  779. %defattr(-, root, root, -)
  780. %doc %{_docdir}/*
  781. %exclude %{_docdir}/LICENSE_1_0.txt
  782.  
  783. %files doc-man
  784. %defattr(644, root, root, -)
  785. %doc %{_mandir}/man3/*.3.gz
  786. %doc %{_mandir}/man7/*.7.gz
  787. %doc %{_mandir}/man9/*.9.gz
  788.  
  789. %if %package_pdf
  790.  
  791. %files doc-pdf
  792. %defattr(-, root, root, -)
  793. %doc ../%{name}_%{file_version}_pdf/*.pdf
  794. %endif
  795.  
  796. %changelog
  797. * Mon Jan  9 2017 adam.majer@suse.de
  798. - baselibs.conf: add libboost_locale (bnc#1017048)
  799. * Tue Sep 27 2016 adam.majer@suse.de
  800. - 85738.patch - fix regression in asio library (bnc#925309)
  801. - Add libboost_context to the -devel dependencies, at least when
  802.   we actually build it (bnc#970706)
  803. * Mon Sep 12 2016 adam.majer@suse.de
  804. - gcc_path.patch - fix GCC search paths (bnc#996917)
  805.   Boost assumes /usr/include/c++/x.y.z/ existence for GCC 4.x
  806.   onward while our version of GCC only has /usr/include/c++/x.y
  807.   for 4.x GCC and /usr/include/c++/x/ for 5.x onward.
  808. * Tue Aug  5 2014 tbehrens@suse.com
  809. - Fix bnc#890184 - obsolete boost-license packages
  810. * Tue Jul 22 2014 fcrozat@suse.com
  811. - Ensure there is enough disk space available for build.
  812. * Tue Jul 22 2014 fcrozat@suse.com
  813. - use only JOBS=2 to avoid gcc being killed with OOM when memory is
  814.   between 4G and 7G.
  815. * Tue Apr 29 2014 dvaleev@suse.com
  816. - ppc64 ABIv2 support
  817. - enable build_context for ppc64le
  818. - added patches:
  819.   * boost-ppc64-abiv2-context.patch
  820.   * boost-ppc64-abiv2-coroutine.patch
  821. * Sat Apr 19 2014 schwab@suse.de
  822. - Fix quoting while creating shared build instructions
  823. - Properly configure library list
  824. - bjam-alignment.patch: fix alignment check in bjam
  825. * Tue Apr  1 2014 coolo@suse.com
  826. - buildignore python, python-base is enough
  827. * Tue Mar 11 2014 Rene.vanPaassen@gmail.com
  828. - further improved the use of supplied b2 / bootstrap.sh,
  829.   include user-config.jam, and remove superfluous python
  830.   and gcc instructions from user-config.jam
  831. * Mon Mar 10 2014 Rene.vanPaassen@gmail.com
  832. - fix problem with executable .pdf in doc by correcting
  833.   permissions after install (%%attr with a dir failed on
  834.   sled/sles)
  835. - add dependency on zlib-devel and libbz2-devel and use the
  836.   supplied bootstrap.sh script in building. This adds
  837.   on-the-fly compression to boost-iostreams
  838. * Thu Feb 27 2014 coolo@suse.com
  839. - remove broken python module mpi.so
  840. - trying to make the build more reliable:
  841.   * use -fno-var-tracking in cxxflags as recommended by richi
  842.   * disable parallel build on low memory
  843. * Sat Feb  8 2014 pth@suse.de
  844. - Add post and postun sections for libboost_graph_parallel.
  845. * Fri Feb  7 2014 ro@suse.de
  846. - add boost-1.54.0-thread-link_atomic.patch fixing upstream issue
  847.   https://svn.boost.org/trac/boost/ticket/9041
  848.   (fixes compilation failure of snapper on various platforms)
  849. * Wed Feb  5 2014 ro@suse.de
  850. - enable build_mpi on s390/s390x
  851. * Tue Jan  7 2014 schwab@suse.de
  852. - Disable coroutine library together with context
  853. * Sat Jan  4 2014 coolo@suse.com
  854. - fix build of libzypp - patch from boost's track
  855. - added patches:
  856.   * boost-1.54-change85160.patch
  857. * Tue Nov 26 2013 tbehrens@suse.com
  858. - Add boost-pool_check_overflow.patch: Prevent possible overflow when
  859.   calculating the amount to malloc (bnc#765443).
  860.   Fix from https://svn.boost.org/trac/boost/ticket/6701
  861. * Sun Oct 20 2013 jengelh@inai.de
  862. - Split libboost_graph so that the MPI components are not forced
  863. * Wed Sep 18 2013 dap.darkness@gmail.com
  864. - Update to 1.54.0. Major changes since 1.53.0:
  865.   New libraries:
  866.   * Log: Logging library, from Andrey Semashev.
  867.   * TTI: Type Traits Introspection library, from Edward Diener.
  868.   * Type Erasure: Runtime polymorphism based on concepts.
  869.   For a detailed descriptions see
  870.   http://www.boost.org/users/history/version_1_54_0.html
  871. - Update broken patch:
  872.   * boost-use_std_xml_catalog.patch
  873. - Delete merged patch:
  874.   * boost-fix_ppc64_asm.patch
  875. - Add post-release fix patches:
  876.   * boost-1.54-001-coroutine.patch
  877.   * boost-1.54-002-date-time.patch
  878.   * boost-1.54-003-log.patch
  879. - build_pdf define was deleted as unused;
  880.   package_pdf was refactored.
  881. - _constraints was added to request more memory to build.
  882. * Sun Aug 18 2013 tchvatal@suse.com
  883. - Fix build with updated glibc:
  884.   * boost-glibc-2.18.patch - taken from upstream scm
  885. * Sat Jun  8 2013 schwab@suse.de
  886. - Build context library only on supported architectures
  887. - Reenable mpi on aarch64
  888. - Avoid duplication between %%build and %%install
  889. * Wed Apr  3 2013 pth@suse.de
  890. - Apply upstream patch that fixes the ppc64 code in boost::context
  891.   (boost#8374): boost-fix_ppc64_asm.patch
  892. * Fri Mar 22 2013 idonmez@suse.com
  893. - Rename manpages to avoid conflict with other packages
  894. * Thu Mar 21 2013 mmeister@suse.com
  895. - Added url as source.
  896.   Please see http://en.opensuse.org/SourceUrls
  897. * Sat Mar 16 2013 dap.darkness@gmail.com
  898. - Update to 1.53.0. Major changes since 1.49.0:
  899.   New libraries:
  900.   * Algorithm:  A collection of useful generic algorithms.
  901.   * Context:  Context switching library.
  902.   * Functional/OverloadedFunction: Overload different functions.
  903.   * LocalFunction: Program functions locally, within other functions.
  904.   * Utility/IdentityType: Wrap types within round parenthesis.
  905.   For a detailed descriptions see
  906.   http://www.boost.org/users/history/version_1_50_0.html
  907.   http://www.boost.org/users/history/version_1_51_0.html
  908.   http://www.boost.org/users/history/version_1_52_0.html
  909. - Delete unneeded patches:
  910.   * boost-chrono_add_function_return.patch
  911.   * boost-fix_documentation.patch
  912.   * boost-time_utc.patch
  913. * Wed Feb 27 2013 dmueller@suse.com
  914. - build without openmpi on aarch64 for now
  915. * Wed Jan 23 2013 BSipos@rkf-eng.com
  916. - Require package for ICU having same minimum version that the build requires.
  917. - Avoid obsoleting older versions of boost documentation to allow multiple boost package versions in same environment.
  918. * Thu Jan 17 2013 opensuse@dstoecker.de
  919. - use bzip2 instead of xz to support older SUSE releases
  920. * Thu Sep  6 2012 cfarrell@suse.com
  921. - license update: BSL-1.0
  922.   Boost Software License 1.0 is available in SPDX format on
  923.   http://www.spdx.org/licenses as BSL-1.0
  924. * Thu Aug  2 2012 aj@suse.de
  925. - Add patch from upstream to use TIME_UTC_ instead of TIME_UTC since
  926.   the later is part of ISO C11.
  927. * Fri May 18 2012 aj@suse.de
  928. - Fix timer post script, it used the comment as content.
  929. * Fri May 11 2012 coolo@suse.com
  930. - fixing the previous fix
  931. * Wed May  9 2012 coolo@suse.com
  932. - fixing baselibs.conf after version bump
  933. * Sat Mar 17 2012 jengelh@medozas.de
  934. - Adjust Require for new libxslt-tools
  935. * Tue Mar 13 2012 pth@suse.de
  936. - Update to 1.49.0. Major changes since 1.46.1:
  937.   New libraries:
  938.   * Heap.
  939.   * Container
  940.   * Locale
  941.   * Move
  942.   * Chrono
  943.   * Geometry
  944.   * Phoenix
  945.   * Ratio
  946.   For a detailed descriptions see
  947.   http://www.boost.org/users/history/version_1_47_0.html
  948.   http://www.boost.org/users/history/version_1_48_0.html
  949.   http://www.boost.org/users/history/version_1_49_0.html
  950. - Rebuilt the man documentation with gcc 4.5 as the current gcc
  951.   segfaults when building quickbook.
  952. - Package PDF documentation independent of whether we build it
  953.   ourselves.
  954. - Fix missing function return in Boost::Chrono's process_cpu_clocks.hpp
  955. * Mon Feb 13 2012 coolo@suse.com
  956. - patch license to follow spdx.org standard
  957. * Tue Dec  6 2011 aj@suse.de
  958. - Do not package NEWS and LICENSE twice.
  959. * Fri Nov 25 2011 jengelh@medozas.de
  960. - Remove redundant/unwanted tags/section (cf. specfile guidelines)
  961. * Thu Nov 24 2011 nadvornik@suse.com
  962. - dropped visit_each patch (bnc#714373)
  963. * Mon Oct  3 2011 dmueller@suse.de
  964. - disable openmpi on %%%%arm
  965. * Mon Apr 18 2011 ro@suse.de
  966. - update baselibs.conf
  967. * Mon Mar 21 2011 idoenmez@novell.com
  968. - Fix attribute handling problem in spirit library,
  969.   See http://comments.gmane.org/gmane.comp.parsers.spirit.general/22073
  970. * Mon Mar 21 2011 pth@suse.de
  971. - Prefix bug numbers.
  972. * Fri Mar 18 2011 pth@suse.de
  973. - Make packaging of the pdf documentation configurable.
  974. * Fri Mar 18 2011 pth@suse.de
  975. - Update to 1.46.1, a bugfix release:
  976.   • Asio:
  977.   - EV_ONESHOT seems to cause problems on some versions of Mac OS X, with
  978.     the io_service destructor getting stuck inside the close() system call.
  979.     Changed the kqueue backend to use EV_CLEAR instead (boost#5021).
  980.   - Fixed compile failures with some versions of g++ due to the use of
  981.     anonymous enums (boost#4883).
  982.   - Fixed a bug on kqueue-based platforms, where some system calls that
  983.     repeatedly fail with EWOULDBLOCK are not correctly re-registered with
  984.     kqueue.
  985.   - Changed asio::streambuf to ensure that its internal pointers are
  986.     updated correctly after the data has been modified using std::streambuf
  987.     member functions.
  988.   - Fixed a bug that prevented the linger socket option from working on
  989.     platforms other than Windows.
  990.   For the rest see NEWS or the boost web site http://www.boost.org
  991. * Wed Mar 16 2011 pth@suse.de
  992. - Remove comment chars from doc-pdf description.
  993. * Mon Mar 14 2011 pth@suse.de
  994. - Use xz to compress tarballs.
  995. - Generate new man pages tarball.
  996. - Update pdf tarball.
  997. - Update to 1.46:
  998.   New Libraries
  999.     Icl: Interval Container Library, interval sets and maps and
  1000.     aggregation of associated values, from Joachim Faulhaber.
  1001.   For the rest of the changes see NEWS in the package documentation
  1002.   directory or see http://www.boost.org/users/news/version_1_46_0 .
  1003. * Thu Nov 25 2010 pth@suse.de
  1004. - Remove the boost specific autoconf macros now that we have the
  1005.   complete autoconf archive packaged (bnc#655747).
  1006. - Move the lib64 patch over to autoconf-archive.
  1007. * Mon Oct 25 2010 jslaby@novell.com
  1008. - take care of random library (build 32bit on x86_64 and
  1009.   require it in boost-devel)
  1010. * Wed Sep 29 2010 coolo@novell.com
  1011. - fix baselibs.conf
  1012. * Fri Sep  3 2010 pth@suse.de
  1013. - Shorten the list of update items.
  1014. - Fix typo in spec.
  1015. * Thu Aug 26 2010 pth@suse.de
  1016. - Redo the lib64 patch for the boost autoconf macros so that
  1017.   lib64 is used on all archs that need it.
  1018. - Remove the ICU patch.
  1019. * Thu Aug 26 2010 pth@suse.de
  1020. - Update to 1.44.0:
  1021.   New Libraries:
  1022.   * Meta State Machine: High-performance expressive UML2 finite
  1023.     state machines
  1024.   * Polygon: Booleans/clipping, resizing/offsetting and more for
  1025.     planar polygons with integral coordinates
  1026.   Updated Libraries:
  1027.   * Accumulators:
  1028.   * Asio:
  1029.   * Foreach:
  1030.   * Fusion:
  1031.   * Hash:
  1032.   * Math:
  1033.   * MPL:
  1034.   * Multi-index Containers:
  1035.   * Proto:
  1036.   * Regex:
  1037.   * Thread:
  1038.   * Type Traits:
  1039.   * uBLAS:
  1040.   * Utility:
  1041.   * Uuid:
  1042.   * Config:
  1043.   * Xpressive:
  1044.   * Filesystem:
  1045.     o This release contains both version 2 and version 3 of the
  1046.     library.  Version 3 is a major upgrade that will break some
  1047.     existing user code, so version 2 is the default.  Users are
  1048.     encouraged to migrate to version 3.  See 'Version 2' and
  1049.     'Version 3' for more information.
  1050.   * Iostreams:
  1051.     o Several fixes for file descriptors class, including a
  1052.     breaking change to the constructors and open methods for
  1053.     file_descriptor, file_descriptor_source and
  1054.     file_descriptor_sink.  See the documentation for details.
  1055.     The old methods are still available if you define
  1056.     BOOST_IOSTREAMS_USE_DEPRECATED
  1057.   * Spirit: Spirit V2.4, see the 'What's New' section for details.
  1058.   * System:
  1059.     o Change system_category and generic_category to functions, to
  1060.     conform to the C++0x FCD.  This change may cause compile
  1061.     errors some user code; the fix is add "()" to references to
  1062.     system_category and generic_category, so that they become
  1063.     function calls.
  1064.   * Wave: See the Changelog for details.
  1065.   Major Changes in 1.43.0:
  1066.   New Libraries
  1067.   * Functional/factory: Function objects for dynamic and by-value
  1068.     construction
  1069.   * Functional/forward: Function object adapters to address the
  1070.     forwarding problem
  1071.   For a complete list of changes see
  1072.   http://www.boost.org/users/news/version_1_43_0 and
  1073.   http://www.boost.org/users/news/version_1_44_0.
  1074. * Fri Jul  9 2010 pth@suse.de
  1075. - Rename patch to be identical to the one checked in for 11.3.
  1076.   The patch adds an explicite specialization to the call to prevent
  1077.   unwanted temporary instantiations.
  1078. * Fri Jul  9 2010 lnussel@suse.de
  1079. - fix bug that shows with gcc 4.5 (bnc#621140)
  1080. * Wed Jun 16 2010 pth@suse.de
  1081. - Noarch sub packages only doable from 11.2 on up.
  1082. * Thu Jun 10 2010 wittemar@googlemail.com
  1083. - build 32bit-packages
  1084. * Mon May 24 2010 bg@novell.com
  1085. - disable long double support for hppa
  1086. * Thu May 20 2010 bg@novell.com
  1087. - openmpi does not build on hppa
  1088. * Thu Apr 29 2010 pth@novell.com
  1089. - Move provides/obsoletes for boost-license to the right section
  1090.   (bnc#544958).
  1091. * Mon Apr 26 2010 pth@novell.com
  1092. - Delete unneeded patches.
  1093. * Wed Apr 14 2010 pth@suse.de
  1094. - Readd those patches that are still needed.
  1095. - Try to fix an aliasing bug in function_base.hpp
  1096. - Build man pages locally and only include them as a tarball.
  1097. - Split documentation in in format specific packages.
  1098. * Fri Apr  2 2010 freespacer@gmx.de
  1099. - update to 1.42.0:
  1100.   New Libraries
  1101.   * Uuid: A universally unique identifier, from Andy Tompkins.
  1102.   Updated Libraries (see README for details)
  1103.   * Asio:
  1104.   * Circular Buffer:
  1105.   * Fusion:
  1106.   * Graph:
  1107.   * Integer:
  1108.   * Iostreams:
  1109.   * Program.Options:
  1110.   * PropertyMap:
  1111.   * Proto:
  1112.   * Regex:
  1113.   * Spirit:
  1114.   * Unordered:
  1115.   * Xpressive:
  1116. - update to 1.41.0:
  1117.   New Libraries
  1118.   * Property Tree: A tree data structure especially suited to storing
  1119.     configuration data, from Marcin Kalicinski and Sebastian Redl.
  1120.   Updated Libraries (see README for details)
  1121.   * DateTime:
  1122.   * Filesystem:
  1123.   * Iostreams:
  1124.   * Math:
  1125.   * Multi-index Containers:
  1126.   * Proto:
  1127.   * Regex:
  1128.   * Spirit:
  1129.   * System:
  1130.   * Thread:
  1131.   * Unordered:
  1132.   * Utility:
  1133.   * Wave:
  1134.   * Xpressive:
  1135. - update to 1.40.0:
  1136.   Updated Libraries (see README for details)
  1137.   * Accumulators:
  1138.   * Asio:
  1139.   * Circular Buffer:
  1140.   * Foreach:
  1141.   * Function:
  1142.   * Fusion:
  1143.   * Graph:
  1144.   * Hash:
  1145.   * Interprocess:
  1146.   * Intrusive:
  1147.   * MPL:
  1148.   * Program.Options:
  1149.   * Property Map:
  1150.   * Proto:
  1151.   * Random:
  1152.   * Serialization:
  1153.   * Unordered:
  1154.   * Xpressive:
  1155. - removed patches no longer needed
  1156. * Wed Jan  6 2010 jengelh@medozas.de
  1157. - documentation change needed to be done in boost.spec.in
  1158.   (not boost.spec)
  1159. - openmpi change was missing too; add it now
  1160. * Tue Dec 15 2009 jengelh@medozas.de
  1161. - add baselibs for SPARC
  1162. - add baselibs.conf as a source
  1163. - deactivate use of openmpi on SPARC, as compat-dapl is not
  1164.   available
  1165. - package documentation as noarch
  1166. * Mon Oct 19 2009 pth@suse.de
  1167. - Provide/Obsolete boost-license (bnc#544958)
  1168. * Thu Aug  6 2009 pth@suse.de
  1169. - Add a fix from boost bugtracker that fixes the hash resizing
  1170.   (boost#54376)
  1171. - Add a test for cancelling deadline timers from the same changeset.
  1172. * Tue Aug  4 2009 pth@suse.de
  1173. - Readd the patch to fix the misplaced ifdef in
  1174.   template_function.hpp:move_assign.
  1175. * Tue Jul 28 2009 coolo@novell.com
  1176. - update to 1.39.0:
  1177.   New Libraries
  1178.   * Signals2: Managed signals & slots callback implementation (thread-safe version 2),
  1179.     from Frank Mori Hess.
  1180.   Updated Libraries (see README for details)
  1181.   * Asio:
  1182.   * Flyweight:
  1183.   * Foreach:
  1184.   * Hash:
  1185.   * Interprocess:
  1186.   * Intrusive:
  1187.   * Program.Options:
  1188.   * Proto:
  1189.   * PtrContainer:
  1190.   * Range:
  1191.   * Unordered:
  1192.   * Xpressive:
  1193. - removed patches no longer needed (hoping the best for ppc asm)
  1194. * Thu Apr 16 2009 crrodriguez@suse.de
  1195. - as agreed with maintainer, get rid of static libraries
  1196. * Wed Apr 15 2009 ro@suse.de
  1197. - buildfix: fix typo in specfile
  1198. * Mon Mar 16 2009 pth@suse.de
  1199. - Don't rely on system default mpi implementation being set. This
  1200.   fixes building boost on systems before openSUSE 11.0.
  1201. * Tue Mar  3 2009 pth@suse.de
  1202. - Fix misplaced ifdef in template_function.hpp:move_assign. Fixes
  1203.   building software that defines BOOST_NO_EXCEPTION (bnc#479659).
  1204. * Wed Feb 25 2009 pth@suse.de
  1205. - Fix packaging of the documentation.
  1206. * Sun Feb 22 2009 pth@suse.de
  1207. - Fix the line in the spec that copies the documentation.
  1208. * Fri Feb 20 2009 pth@suse.de
  1209. - Put the license in a versioned package. This allows installing
  1210.   libraries in parallel (bnc#477603).
  1211. * Fri Feb 13 2009 pth@suse.de
  1212. - Fix spec file (remove patches).
  1213. * Wed Feb 11 2009 pth@suse.de
  1214. - Add boost autoconf macros from the autoconf archive to the
  1215.   - devel package.
  1216. - Update to 1.38.0:
  1217.   New Libraries
  1218.   * Flyweight:
  1219.     o Design pattern to manage large quantities of highly redundant
  1220.     objects, from Joaquín M López Muñoz.
  1221.   * ScopeExit:
  1222.     o Execute arbitrary code at scope exit, from Alexander Nasonov.
  1223.   * Swap:
  1224.     o Enhanced generic swap function, from Joseph Gauterin.
  1225.   Updated Libraries
  1226.   * Accumulators:
  1227.     o Add rolling_sum, rolling_count and rolling_mean accumulators.
  1228.   * Any:
  1229.     o Use a by-value argument for operator= (#2311).
  1230.   * Asio:
  1231.     o Improved compatibility with some Windows firewall software.
  1232.     o Ensured arguments to windows::overlapped_ptr::complete() are
  1233.     correctly passed to the completion handler (#2614).
  1234.     o Drop back to using a pipe for notification if eventfd is not
  1235.     available at runtime on Linux (#2683).
  1236.     o Various minor bug and documentation fixes (#2534, #2541,
  1237.     [#2607], #2617, #2619)
  1238.   * Config:
  1239.     o Add new macros BOOST_NO_STD_UNORDERED and
  1240.     BOOST_NO_INITIALIZER_LISTS.
  1241.     o Added Codegear compiler support.
  1242.     o Added Dragonfly to the BSD family of configs.
  1243.     o Recognise latest compilers from MS and Intel.
  1244.   * Date_Time:
  1245.     o Added support for formatting and reading time durations longer
  1246.     than 24 hours with new formatter: %%0.
  1247.     o Removed the testfrmwk.hpp file from the public include directory.
  1248.     o Fixed several bugs and compile errors.
  1249.     o For full details see the change history
  1250.   * Exception:
  1251.     o Improved and more customizable diagnostic_information output.
  1252.   * Filesystem:
  1253.     o Fix native(name) test failures on POSIX-like systems.
  1254.     o Several bugfixes (#2543, #2224, #2531, #1840, #2542).
  1255.   * Graph:
  1256.     o Added a new algorithms for Travelling Salesman Problem
  1257.     approximation (metric_tsp_approx) and resource-constrained
  1258.     Shortest Paths (r_c_shortest_paths).
  1259.     o Support for named vertices in adjacency_list.
  1260.     o A number of bugfixes ( #416, #1622, #1700, #2209, #2392,
  1261.     [#2460], and #2550)
  1262.   * Hash:
  1263.     o boost/functional/detail/container_fwd.hpp has been moved to
  1264.     boost/detail/container_fwd.hpp.  The current location is
  1265.     deprecated.
  1266.     o For more detail, see the library changelog.
  1267.   * Interprocess:
  1268.     o Updated documentation to show rvalue-references functions
  1269.     instead of emulation functions.
  1270.     o More non-copyable classes are now movable.
  1271.     o Move-constructor and assignments now leave moved object in
  1272.     default-constructed state instead of just swapping contents.
  1273.     o Several bugfixes (#2391, #2431, #1390, #2570, #2528).
  1274.   * Intrusive:
  1275.     o New treap-based containers: treap, treap_set, treap_multiset.
  1276.     o Corrected compilation bug for Windows-based 64 bit compilers.
  1277.     o Corrected exception-safety bugs in container constructors.
  1278.     o Updated documentation to show rvalue-references functions
  1279.     instead of emulation functions.
  1280.   * Lexical Cast:
  1281.     o Changed to work without RTTI when BOOST_NO_TYPEID is defined
  1282.     (#1220).
  1283.   * Math:
  1284.     o Added Johan RÃ¥de's optimised floating point classification routines.
  1285.     o Fixed code so that it compiles in GCC's -pedantic mode (bug report #1451).
  1286.   * Multi-index Containers:
  1287.     o Some redundant type definitions have been deprecated. Consult the
  1288.     library release notes for further information.
  1289.   * Proto:
  1290.     o Fix problem with SFINAE of binary operators (Bug 2407).
  1291.     o Fix proto::call transform for callable transforms with >3 arguments.
  1292.     o result_of::value changed behavior for array-by-value terminals.
  1293.     o unpack_expr requires only Forward Sequences rather than Random Access
  1294.     Sequences.
  1295.     o Deprecate legacy undocumented BOOST_PROTO_DEFINE_(VARARG_)FUNCTION_TEMPLATE
  1296.     macros.
  1297.     o Add BOOST_PROTO_REPEAT and BOOST_PROTO_LOCAL_ITERATE macros to help with
  1298.     repetitive code generation
  1299.     o Support for nullary expressions with tag types other than
  1300.     proto::tag::terminal
  1301.     o Allow 0- and 1-argument variants of proto::or_ and proto::and_
  1302.   * Regex:
  1303.     o Breaking change: empty expressions, and empty alternatives are
  1304.     now allowed when using the Perl regular expression syntax.
  1305.     This change has been added for Perl compatibility, when the
  1306.     new syntax_option_type no_empty_expressions is set then the
  1307.     old behaviour is preserved and empty expressions are
  1308.     prohibited.  This is issue #1081.
  1309.     o Added support for Perl style ${n} expressions in format strings
  1310.     (issue #2556).
  1311.     o Added support for accessing the location of sub-expressions
  1312.     within the regular expression string (issue #2269).
  1313.     o Fixed compiler compatibility issues #2244, #2514, and #2458.
  1314.   * Thread:
  1315.     o No longer catches unhandled exceptions in threads as this debuggers
  1316.     couldn't identify the cause of unhandled exceptions in threads. An
  1317.     unhandled exception will still cause the application to terminate.
  1318.   * TR1:
  1319.     o Added support for the TR1 math functions and the unordered
  1320.     containers.
  1321.   * Type Traits:
  1322.     o Added support for Codegear intrinsics.
  1323.     o Minor tweaks to warning suppression and alignment_of code.
  1324.   * Unordered:
  1325.     o Use boost::swap.
  1326.     o Use a larger prime number list for selecting the number of buckets.
  1327.     o Use aligned storage to store the types.
  1328.     o Add support for C++0x initializer lists where they're available.
  1329.     o For more detail, see the library changelog.
  1330.   * Xpressive:
  1331.     o basic_regex gets nested syntax_option_flags and value_type typedef,
  1332.     for compatibility with std::basic_regex
  1333.     o Ported to Proto v4; Proto v2 at boost/xpressive/proto has been
  1334.     removed.
  1335.     o regex_error inherits from boost::exception
  1336.   Other Changes
  1337.   * Experimental support for building Boost with CMake has been introduced in
  1338.     this version. For more details see the wiki, Discussion is taking place
  1339.     on the Boost-cmake mailing list.
  1340.   * Fixed subversion properties for several files. Most notably, unix shell
  1341.     scripts should always have unix line endings, even in the windows
  1342.     packages.
  1343. * Fri Jan  9 2009 pth@suse.de
  1344. - Apply patch in boost.spec.in
  1345. * Thu Jan  8 2009 pth@suse.de
  1346. - Actually use the patch.
  1347. * Wed Jan  7 2009 pth@suse.de
  1348. - Initialize all data passed in the syscall to keep valgrind
  1349.   happy (bnc#461372).
  1350. * Thu Dec 11 2008 ro@suse.de
  1351. - fix baselibs.conf (no requirement for boost-xxbit)
  1352.   (bnc#457699)
  1353. * Thu Nov 27 2008 ro@suse.de
  1354. - update baselibs.conf
  1355. - package mpi.so only in mpi package, not in devel
  1356. * Wed Nov 19 2008 jjolly@suse.de
  1357. - Made the use of the mpi-selector conditional for mpi-enabled
  1358.   platforms.
  1359. * Tue Nov 11 2008 ro@suse.de
  1360. - SLE-11 uses PPC64 instead of PPC, adapt baselibs.conf
  1361. * Fri Oct 31 2008 pth@suse.de
  1362. - Fix the bug that made boost.monitor mix up uid and pib and
  1363.   also make boost.monitor not special-case SIGCLD (bnc#439805)
  1364. - Fix generation of default extension in boost.filesystem.
  1365. - Make boost recommend library subpackages instead of requiring
  1366.   them to allow removal of unwanted libraries after update.
  1367. - Run mkspec explicitely in a shell so that mkspec.sh doesn't
  1368.   need to be executable.
  1369. - Disable deletion of full-name symlinks in boost.spec.in.
  1370. - Make boost-devel directly require all library subpackages.
  1371. - boost.rpm isn't needed, even for updates, so don't build it and
  1372.   remove the README file needeed only for this package.
  1373. - Make debug package require all library subpackages.
  1374. - Add pre_checkin.sh to ensure that boost.spec is regenerated
  1375.   at check-in time.
  1376. - Make boost.build use sane library names. Only the multi-threaded
  1377.   libraries are built and these have no -mt in their name.
  1378.   Symlinks for convenience are spupplied.
  1379. - Use -fno-strict-aliasing only for boost.python, where it's needed.
  1380. - Don't use configure and make (only convenience wrappers) but
  1381.   call bjam directly.
  1382. * Mon Oct 27 2008 ro@suse.de
  1383. - do not remove full-name symlinks for shared libs
  1384. * Thu Oct 23 2008 pth@suse.de
  1385. - Use a script and a Makefile to generate boost.spec.
  1386. - Pull in all libraries on update.
  1387. - Modify README to apply to both openSUSE and SLE.
  1388. * Thu Oct 23 2008 ro@suse.de
  1389. - fix regexp for short symlinks
  1390. - hook all mpi related parts to build_mpi macro
  1391. - disable build_mpi on ia64 s390 s390x for the moment
  1392. * Fri Oct 17 2008 pth@suse.de
  1393. - Using a rpm macros in package name doesn't work with autobuild.
  1394. * Wed Oct 15 2008 pth@suse.de
  1395. - Fix naming of library packages to match the horribly broken
  1396.   sonames of the boost libraries.
  1397. - Add post/postun for all library packages.
  1398. - Stop rpmlint warning about explicit library dependencies
  1399.   needed to pull in all library subpackages during updates.
  1400. * Tue Oct 14 2008 pth@suse.de
  1401. - Fix build failure (README not in build directory).
  1402. * Tue Sep  2 2008 pth@suse.de
  1403. - Split off runtime libraries into their own packages.
  1404. - Update to 1.36.0:
  1405.   New Libraries
  1406.   * Accumulators: Framework for incremental calculation, and
  1407.     collection of statistical accumulators.
  1408.   * Exception: A library for transporting of arbitrary data in
  1409.     exception objects, and transporting of exceptions
  1410.     between threads.
  1411.   * Units: Zero-overhead dimensional analysis and unit/quantity
  1412.     manipulation and conversion.
  1413.   * Unordered: Unordered associative containers.
  1414.   Updated Libraries
  1415.   * Asio:
  1416.     o Added support for serial ports.
  1417.     o Added support for UNIX domain sockets.
  1418.     o Added support for raw sockets and ICMP.
  1419.     o Added wrappers for POSIX stream-oriented file descriptors
  1420.     (excluding regular files).
  1421.     o Added support for reactor-style operations using a new
  1422.     null_buffers type.
  1423.     o Added an iterator type for bytewise traversal of buffer
  1424.     sequences.
  1425.     o Added new read_until() and async_read_until() overloads that
  1426.     take a user-defined function object for locating message
  1427.     boundaries.
  1428.     o Added an experimental two-lock queue (enabled by defining
  1429.     BOOST_ASIO_ENABLE_TWO_LOCK_QUEUE) that may provide better
  1430.     io_service scalability across many processors.
  1431.     o Various fixes, performance improvements, and more complete
  1432.     coverage of the custom memory allocation support.
  1433.   * Assign:list_of() (and its variants) now has overloaded comparison
  1434.     operators. This allows you to write test code such as
  1435.     BOOST_CHECK_EQUAL(my_container,list_of(2)(3)(4)(5));.
  1436.   * Foreach:BOOST_FOREACH macro for easily iterating over the elements
  1437.     of a sequence.
  1438.     o New BOOST_REVERSE_FOREACH macro for iterating over a sequence
  1439.     in reverse.
  1440.   * Function:
  1441.     o Improved allocator support.
  1442.   * Hash: Minor updates and fixes, for more info see the change log.
  1443.   * Interprocess:
  1444.     o Added anonymous shared memory for UNIX systems.
  1445.     o Fixed missing move semantics on managed memory classes.
  1446.     o Added copy_on_write and open_read_only options for shared
  1447.     memory and mapped file managed classes.
  1448.     o shared_ptr is movable and supports aliasing.
  1449.   * Intrusive:
  1450.     o Added linear<> and cache_last<> options to singly linked lists.
  1451.     o Added optimize_multikey<> option to unordered container hooks.
  1452.     o Optimized unordered containers when store_hash option is used
  1453.     in the hook.
  1454.     o Implementation changed to avoid explicit use of try-catch
  1455.     blocks and be compilable with exceptions disabled.
  1456.   * Math:
  1457.     o Added new non-central Chi-Square, Beta, F and T distributions.
  1458.     o Added Exponential Integral and Zeta special functions.
  1459.     o Added Rounding, Truncation, and Unit-in-the-last-place
  1460.     functions.
  1461.     o Added support for compile time powers of a runtime base.
  1462.     o Added a few SSE2 based optimisations for the Lanczos
  1463.     approximations.
  1464.   * MPI:
  1465.     o Added support for non-blocking operations in Python
  1466.     o Added support for graph topologies.
  1467.   * Multi-index Containers: Minor additions and maintenance fixes.
  1468.     Consult the library release notes for
  1469.     further information.
  1470.   * PtrContainer: Support for a few more containers, and addition
  1471.     of insert iterators. For details see upgrading
  1472.     details.
  1473.   * Spirit: Integrated the "Classic" Spirit V1.8.x code base with
  1474.     Spirit V2, "The New Generation". See Change Log.
  1475.   * Thread:
  1476.     o New generic lock and try_lock functions for locking multiple
  1477.     mutexes at once.
  1478.     o Rvalue reference support for move semantics where the
  1479.     compilers supports it.
  1480.     o A few bugs fixed and missing functions added (including
  1481.     the serious win32 condition variable bug).
  1482.     o scoped_try_lock types are now backwards-compatible with
  1483.     Boost 1.34.0 and previous releases.
  1484.     o Support for passing function arguments to the thread
  1485.     function by supplying additional arguments to the thread
  1486.     constructor.
  1487.     o Backwards-compatibility overloads added for timed_lock and
  1488.     timed_wait functions to allow use of xtime for timeouts.
  1489.   * Wave:
  1490.     o Wave V2.0 is a new major release introducing some breaking
  1491.     API changes, preventing it to be used with Boost versions
  1492.     earlier than V1.36.0. Mainly, the API and hook interface
  1493.     have been streamlined for more consistency.
  1494.     o Fixed a couple of bugs, improved regression test system to
  1495.     include testing of the preporcessing hooks interface
  1496.     (for details see: Changelog).
  1497.   * Xpressive:
  1498.     o Regular expressions that can be written as strings or as
  1499.     expression templates, and that can refer to each other and
  1500.     themselves recursively with the power of context-free
  1501.     grammars.
  1502.     o skip() for specifying which parts of the input sequence
  1503.     to ignore when matching it against a regex.
  1504.     o regex_replace() accepts formatter objects and formatter
  1505.     expressions in addition to format strings.
  1506.     o Range-based regex_replace() algorithm.
  1507.     o Fix crash when semantic actions are placed in look-aheads,
  1508.     look-behinds or independent sub-expressions.
  1509. * Mon Jun 23 2008 pth@suse.de
  1510. - Qualify name to avoid clash (bnc#401964)
  1511. * Fri Jun 20 2008 schwab@suse.de
  1512. - Fix ppc atomic ops.
  1513. * Thu Apr 10 2008 ro@suse.de
  1514. - added baselibs.conf file to build xxbit packages
  1515.   for multilib support
  1516. * Mon Jan 28 2008 schwab@suse.de
  1517. - Remove obsolete patch again.
  1518. * Fri Jan 18 2008 pth@suse.de
  1519. - Fix CVE-2008-0171 and CVE-2008-0171 (bugzilla #353180)
  1520. - Qualify special_values_parser (bugzilla #353897)
  1521. * Thu Jan 17 2008 schwab@suse.de
  1522. - Remove obsolete patch.
  1523. * Mon Jan 14 2008 pth@suse.de
  1524. - Move 1.34.1 from BS to Autobuild
  1525. - Add patch for critical bug in Boost.Function.
  1526. - Include C headers where necessary.
  1527. - Make the tests for ULONG_MAX more readable 64.
  1528. * Wed Oct 24 2007 rguenther@suse.de
  1529. - Use -fpermissive in addition to -O2 for building.
  1530. - Add patch to enable building wave with GCC 4.3.
  1531. * Mon Aug 20 2007 pth@suse.de
  1532. - Only use fdupes from 10.3 onwards.
  1533. * Sat Aug 11 2007 aj@suse.de
  1534. - Fix spec file to build again.
  1535. * Thu Aug  9 2007 pth@suse.de
  1536. - Add man pages (made for 1.33.1).
  1537. - Package html documentation differently.
  1538. - Check all links and add missing files that do exist.
  1539. - Use %%%%fdupes
  1540. - Add patch by rschiele@gmail.com to pass compiler flags into
  1541.   Boost.build.
  1542. - Update to 1.34.1 and use .spec file from bkoz@redhat.com as
  1543.   a basis.
  1544.   Changes 1.33.1 -> 1.34.0:
  1545.   New Libraries:
  1546.   * Foreach Library: BOOST_FOREACH macro for easily iterating over
  1547.     the elements of a sequence,
  1548.   * Statechart Library: Arbitrarily complex finite state machines
  1549.     can be implemented in easily readable and
  1550.     maintainable C++ code,
  1551.   * TR1 Library: An implementation of the C++ Technical Report on Standard
  1552.     Library Extensions, from John Maddock. This library does
  1553.     not itself implement the TR1 components, rather it's a
  1554.     thin wrapper that will include your standard library's
  1555.     TR1 implementation (if it has one), otherwise it will
  1556.     include the Boost Library equivalents, and import them
  1557.     into namespace std::tr1. Highlights include: Reference
  1558.     Wrappers, Smart Pointers, result_of, Function Object
  1559.     Binders, Polymorphic function wrappers, Type Traits,
  1560.     Random Number Generators and Distributions, Tuples, Fixed
  1561.     Size Array, Hash Function Objects, Regular Expressions,
  1562.     and Complex Number Additional Algorithms.
  1563.   * Typeof Library: Typeof operator emulation, from Arkadiy Vertleyb
  1564.     and Peder Holt.
  1565.   * Xpressive Library: Regular expressions that can be written as strings
  1566.     or as expression templates, and that can refer to
  1567.     each other and themselves recursively with the
  1568.     power of context-free grammars, from Eric Niebler.
  1569.     Updated Libraries:
  1570.   * Assign Library:
  1571.     o Support for ptr_map<key,T> via the new function ptr_map_insert()
  1572.     o Support for initialization of Pointer Containers when the
  1573.     containers hold pointers to an abstract base class.
  1574.   * Date_time library:
  1575.     o Support for new US/Canada timezone rules and other bug fixes.
  1576.     See Change History for details.
  1577.   * Filesystem Library: Major upgrade in preparation for submission to the
  1578.     C++ Standards Committee for TR2. Changes include:
  1579.     o Internationalization, provided by class templates basic_path,
  1580.     basic_filesystem_error, basic_directory_iterator, and
  1581.     basic_directory_entry.
  1582.     o Simplification of the path interface by eliminating special
  1583.     constructors to identify native formats.
  1584.     o Rationalization of predicate function design, including the
  1585.     addition of several new functions.
  1586.     o Clearer specification by reference to POSIX, the ISO/IEEE Single
  1587.     Unix Standard, with provisions for Windows and other operating
  1588.     systems.
  1589.     o Preservation of existing user code whenever possible.
  1590.     o More efficient directory iteration.
  1591.     o Addition of a recursive directory iterator.
  1592.   * Function Library: Boost.Function now implements a small buffer
  1593.     optimization, which can drastically improve the
  1594.     performance when copying or constructing
  1595.     Boost.Function objects storing small function
  1596.     objects. For instance, bind(&X:foo, &x, _1, _2)
  1597.     requires no heap allocation when placed into a
  1598.     Boost.Function object.
  1599.   * Functional/Hash Library
  1600.     o Use declarations for standard classes, so that the library
  1601.     doesn't need to include all of their headers
  1602.     o Deprecated the <boost/functional/hash/*.hpp> headers.
  1603.     o Add support for the BOOST_HASH_NO_EXTENSIONS macro, which
  1604.     disables the extensions to TR1
  1605.     o Minor improvements to the hash functions for floating point numbers.
  1606.   * Graph Library:
  1607.     o edmonds_maximum_cardinality_matching,
  1608.     o lengauer_tarjan_dominator_tree,
  1609.     o compressed_sparse_row_graph,
  1610.     o sorted_erdos_renyi_iterator,
  1611.     o biconnected_components now supports a visitor and named
  1612.     parameters,
  1613.     o adjacency_matrix now models the Bidirectional Graph concept.
  1614.     o dijkstra_shortest_paths now calls vis.initialize_vertex for each
  1615.     vertex during initialization.
  1616.     o Note: the name of the compiled library for the GraphViz reader has
  1617.     changed to boost_graph (from bgl-viz) to match Boost conventions.
  1618.     o See the complete revision history for more information.
  1619.   * MultiArray Library: Boost.MultiArray now by default provides
  1620.     range-checking for operator[]. Range checking can
  1621.     be disabled by defining the macro
  1622.     BOOST_DISABLE_ASSERTS before including
  1623.     multi_array.hpp. A bug in multi_array::resize()
  1624.     related to storage orders was fixed.
  1625.   * Multi-index Containers Library:
  1626.     o New random access indices.
  1627.     o Non key-based indices feature new rearrange facilities.
  1628.     o This version also includes a number of optimizations and usage
  1629.     improvements. For a complete list of changes, see the library
  1630.     release notes.
  1631.   * Optional Library:
  1632.     o boost::none_t and boost::none now added to Optional's
  1633.     documentation
  1634.     o Relational operators now directly support arguments of type
  1635.     'T' and 'none_t'
  1636.     o operator->() now also works with reference types.
  1637.     o Helper functions make_optional(val), make_optional(cond,val)
  1638.     and get_optional_value_or(opt,alternative_value) added.
  1639.     o Constructor taking a boolean condition (as well as a value)
  1640.     added.
  1641.     o Member function get_value_or(alternative_value) added.
  1642.     o Incompatbility bug with mpl::apply<> fixed.
  1643.     o Converting assignment bug with uninitialized lvalues fixed.
  1644.   * Parameter Library:
  1645.     o Every ArgumentPack is now a valid MPL Forward Sequence.
  1646.     o Support for unnamed arguments (those whose keyword is
  1647.     deduced from their types) is added.
  1648.     o Support for named and unnamed template arguments is added.
  1649.     o New overload generation macros solve the forwarding problem
  1650.     directly.
  1651.     o See also the Python library changes, below.
  1652.   * Pointer Container Library:
  1653.     o Support for serialization via Boost.Serialization.
  1654.     o Exceptions can be disabled by defining the macro
  1655.     BOOST_PTR_CONTAINER_NO_EXCEPTIONS before including any header.
  1656.     This macro is defined by default if BOOST_NO_EXCEPTIONS is defined.
  1657.     o Additional std::auto_ptr<T> overloads added s.t. one can also
  1658.     pass std::auto_ptr<T> instead of only T* arguments to member
  1659.     functions.
  1660.     o transfer() now has weaker requirements s.t. one can transfer
  1661.     objects from ptr_container<Derived> to ptr_container<Base>,
  1662.   * Python Library:
  1663.     o Boost.Python now automatically appends C++ signatures to
  1664.     docstrings. The new docstring_options.hpp header is available to
  1665.     control the content of docstrings.
  1666.     o stl_input_iterator, for turning a Python iterable object into an
  1667.     STL input iterator, from Eric Niebler.
  1668.     o Support for void* conversions is added.
  1669.     o Integrated support for wrapping C++ functions built with the
  1670.     parameter library; keyword names are automatically known to
  1671.     docsstrings.
  1672.     o Enhancements to the API for better embedding support
  1673.     (boost::python::import(), boost::python::exec(), and
  1674.     boost::python::exec_file()).
  1675.   * Signals Library: More improvements to signal invocation performance.
  1676.   * Smart Pointers Library:
  1677.     o Allocator support as proposed in N1851 (162 Kb PDF).
  1678.     o pointer_cast and pointer_to_other utilities to allow
  1679.     pointer-independent code,
  1680.   * String Algorithm Library:
  1681.     o lexicographical_compare
  1682.     o join
  1683.     o New comparison predicates is_less, is_not_greater.
  1684.     o Negative indexes support (like Perl) in various algorihtms
  1685.     (*_head/tail, *_nth).
  1686.   * Wave Library:
  1687.     o Wave now correctly recognizes pp-number tokens as mandated by
  1688.     the C++ Standard, which are converted to C++ tokens right before
  1689.     they are returned from the library.
  1690.     o Several new preprocessing hooks have been added. For a complete
  1691.     description please refer to the related documentation page: The
  1692.     Context Policy.
  1693.     o Shared library (dll) support has been added for the generated
  1694.     Wave libraries.
  1695.     o The overall error handling has been improved. It is now possible
  1696.     to recover and continue after an error or a warning was issued.
  1697.     o Support for optional comment and/or full whitespace
  1698.     preservation in the generated output stream has been added.
  1699.     o The Wave library now performs automatic include guard
  1700.     detection to avoid accessing header files more than once, if
  1701.     appropriate.
  1702.     o Full interactive mode has been added to the Wave tool. Now the
  1703.     Wave tool can be used just like Python or Perl for instance to
  1704.     interactively try out your BOOST_PP macros. Additionally it is
  1705.     now possible to load and save the current state of an
  1706.     interactive session (macro tables et.al.).
  1707.     o The overall performance has been improved by upto 40-60%%,
  1708.     depending on the concrete files to process.
  1709.     o Support for new pragmas has been added allowing to control
  1710.     certain library features from inside the preprocessed sources
  1711.     (partial output redirection, control of generated whitespace
  1712.     and #line directives).
  1713.     o Optional support for #pragma message "..." has been added.
  1714.     o This version also includes a number of bug fixes and usage
  1715.     improvements. For a complete list of changes, see the
  1716.     libraries change log.
  1717.   Fixes in 1.34.1:
  1718.   * Fixes for build on IBM pSeries for AIX and Linux
  1719.   * gcc-4.2 atomicity.h location fixed
  1720.   * [iostreams] zlib_compressor memory leaks in 1.34.0
  1721.   * filtering ostream problem... pushing zlib_compressor works in 1_33,
  1722.     dies in 1_34
  1723.   * [doc] The "Getting Started" page mentions incorrect library names
  1724.   * [filesystem] missing documentation or bad links
  1725.   * add missing docs for boost.python API enhancements.
  1726.   * Entire iostreams library outdated in 1.34.0
  1727.   * numeric_limits specializations in limits.hpp are incorrect
  1728.   * Updated ICU support in Boost.Regex
  1729.   * Make boost.python compatible with python 2.5
  1730.   * ::boost::detail::empty_base improved
  1731.   * Fix failing uild of libs/python/example/quickstart.
  1732.   * Fix problems when building Python modules on boost 1.34.0
  1733.   * Patches to allow boost 1.34.0 to compile with stricter warning
  1734.     checking under mac OS and gcc
  1735.   * Unable to compile Python example, tutorial, or quickstart with
  1736.     Boost 1_34_0
  1737.   * Improper overflow handling in shortest paths algorithms
  1738.   * Multiple include paths for Python
  1739.   * Add documentation for the iter_find/split algorithms
  1740.   * regex_token_iterator crashes
  1741.   * regex_error exception when quantifying some non-capturing groups
  1742.   * read_write_mutex docs don't clearly specify that the functionality
  1743.     is not present
  1744. - Remove patches not needed anymore.
  1745. - Replace file dupes by symlinks.
  1746. - Add rpmlintrc to suppress rpmlint warnings for things that won't be
  1747.   changed.
  1748. * Sun Jul 15 2007 schwab@suse.de
  1749. - Fix reference to atomicity.h.
  1750. * Sat Mar 24 2007 aj@suse.de
  1751. - Add libbz2-devel to BuildRequires.
  1752. * Fri Sep 22 2006 pth@suse.de
  1753. - Apply patch from community to build with Python 2.5
  1754. * Fri Jul 14 2006 sf@suse.de
  1755. - fixed wrong usage of visit_each() (Bug #192116 )
  1756. * Thu Jul 13 2006 sf@suse.de
  1757. - fixed link creation to libboost_thread.so, using %%_lib instead
  1758.   of lib
  1759. * Mon Jun 19 2006 jw@suse.de
  1760. - added a libboost_thread.so as a symlink to libboost_thread-mt.so
  1761. * Tue Apr  4 2006 pth@suse.de
  1762. - Add libboost_wave.a to file list
  1763. * Tue Apr  4 2006 pth@suse.de
  1764. - Use explicit file names instead of wildcards to detect libraries
  1765.   that weren't built.
  1766. * Wed Feb  8 2006 schwab@suse.de
  1767. - Fix broken assembler constraints [#148429].
  1768. * Wed Jan 25 2006 mls@suse.de
  1769. - converted neededforbuild to BuildRequires
  1770. * Tue Jan 17 2006 schwab@suse.de
  1771. - Don't strip binaries.
  1772. * Wed Dec  7 2005 pth@suse.de
  1773. - Fix cases of type-punning in boost::python
  1774. - Compile without -fno-strict-aliasing again.
  1775. - Remove unnecessary type attributes in forward declarations.
  1776. * Tue Dec  6 2005 pth@suse.de
  1777. - Update to 1.33.1.
  1778. - Fix use of uninitialized variable.
  1779. - Compile with -fno-strict-aliasing.
  1780. - Update NEWS file
  1781. * Thu Aug 25 2005 pth@suse.de
  1782. - Incorporate fixes that are bound to be in 1.33.1
  1783. - Build boost.regex with unicode support.
  1784. * Fri Aug 19 2005 pth@suse.de
  1785. - Add a NEWS file.
  1786. * Thu Aug 18 2005 pth@suse.de
  1787. - Update to 1.33.0 with 5 new libraries. See NEWS for specifics.
  1788. - Fix use of uninitialized class member (matz@suse.de)
  1789. - Compile with -O2 instead of -O3
  1790. - Make build process use %%optflags
  1791. * Thu Mar 10 2005 pth@suse.de
  1792. - Update to 1.32.0
  1793. * Fri May  7 2004 pth@suse.de
  1794. - Add convenience symlinks (#38491)
  1795. * Sun Apr 25 2004 coolo@suse.de
  1796. - build with several jobs
  1797. * Fri Mar  5 2004 pth@suse.de
  1798. - Update to 1.31.0.
  1799. - Make building boost work on Linux platforms where gcc does not
  1800.   define _REENTRANT when passed -pthread. Patch was done by
  1801.   Robert Schiele.
  1802. * Sat Jan 10 2004 adrian@suse.de
  1803. - add %%run_ldconfig
  1804. * Wed Aug 20 2003 pthomas@suse.de
  1805. - Update to 1.30.2, a bugfix release
  1806. * Wed Jul 23 2003 pthomas@suse.de
  1807. - Initial package, based on the work by Robert Schiele.
  1808. - Fix building with Python 2.3
Add Comment
Please, Sign In to add comment