From fe19ed710ccbcb970f095af2db7a092a3a1826d4 Mon Sep 17 00:00:00 2001 From: DongHun Kwak Date: Fri, 6 Dec 2019 09:26:45 +0900 Subject: [PATCH] Bump to boost 1.71.0 Change-Id: Id30e41b0a12e33a049b30ac815966c6327917f85 --- packaging/baselibs.conf | 18 + packaging/boost-rpmlintrc | 14 + packaging/boost.changes | 13 + packaging/boost.manifest | 5 + packaging/boost.pc | 11 + packaging/boost.spec | 839 ++++++++++++++++++++++++++++++++++++++++++ packaging/existing_extra_docs | 460 +++++++++++++++++++++++ run_test.sh | 68 ++++ 8 files changed, 1428 insertions(+) create mode 100644 packaging/baselibs.conf create mode 100644 packaging/boost-rpmlintrc create mode 100644 packaging/boost.changes create mode 100644 packaging/boost.manifest create mode 100644 packaging/boost.pc create mode 100644 packaging/boost.spec create mode 100644 packaging/existing_extra_docs create mode 100755 run_test.sh diff --git a/packaging/baselibs.conf b/packaging/baselibs.conf new file mode 100644 index 0000000..ac0826c --- /dev/null +++ b/packaging/baselibs.conf @@ -0,0 +1,18 @@ +package boost-devel + requires -boost- +libboost_date_time +libboost_filesystem +libboost_graph +libboost_iostreams +libboost_math +libboost_mpi +libboost_test +libboost_program_options +libboost_python +libboost_random +libboost_serialization +libboost_signals +libboost_system +libboost_thread +libboost_wave +libboost_regex diff --git a/packaging/boost-rpmlintrc b/packaging/boost-rpmlintrc new file mode 100644 index 0000000..0f4dc07 --- /dev/null +++ b/packaging/boost-rpmlintrc @@ -0,0 +1,14 @@ +# This line is mandatory to access the configuration functions +from Config import * + +addFilter("boost.* shlib-policy-nonversioned-dir") +addFilter("boost.* shlib-policy-missing-suffix") +addFilter("boost-doc.* devel-dependency") +addFilter("boost.* rpm-buildroot-usage") +addFilter("boost.* explicit-lib-dependency") +addFilter("boost.* filename-too-long-for-joliet") +addFilter("boost.* no-binary") +addFilter("boost.* static-library-without-debuginfo") +addFilter("boost.* obsolete-suse-version-check") +addFilter("boost.* shlib-unversioned-lib") +addFilter("boost.* no-dependency-on") diff --git a/packaging/boost.changes b/packaging/boost.changes new file mode 100644 index 0000000..95e9d4b --- /dev/null +++ b/packaging/boost.changes @@ -0,0 +1,13 @@ +* Thu Aug 29 2013 Anas Nashif submit/tizen/20130827.111941@86fbc3f +- build with glibc 2.18 + +* Tue Aug 27 2013 Anas Nashif submit/tizen/20130827.055530@2c102b0 +- Apply patch to protect invalid UTF8 sequences and overflow of ordered_malloc() +- update to 1.51.0 + +* Sat Jan 12 2013 Anas Nashif submit/trunk/20121229.051952@fffe0f9 +- use TIME_UTC_ instead of TIME_UTC + +* Fri Dec 28 2012 Anas Nashif upstream/1.49.0@71b07fb +- Provide old package names + diff --git a/packaging/boost.manifest b/packaging/boost.manifest new file mode 100644 index 0000000..017d22d --- /dev/null +++ b/packaging/boost.manifest @@ -0,0 +1,5 @@ + + + + + diff --git a/packaging/boost.pc b/packaging/boost.pc new file mode 100644 index 0000000..d71a282 --- /dev/null +++ b/packaging/boost.pc @@ -0,0 +1,11 @@ +prefix=/usr +exec_prefix=/usr +libdir=/usr/lib +includedir=/usr/include/boost + +Name: Boost +Description: Boost C++ libraries (@TEST_LIBRARY@) +Version: @BOOST_VERSION@ +Libs: -L${libdir} -lboost_chrono -lboost_date_time -lboost_filesystem -lboost_iostreams -lboost_prg_exec_monitor -lboost_program_options -lboost_random -lboost_regex -lboost_serialization -lboost_system -lboost_thread -lboost_unit_test_framework -lboost_wserialization +Cflags: -I/usr/include/boost + diff --git a/packaging/boost.spec b/packaging/boost.spec new file mode 100644 index 0000000..0c0fc33 --- /dev/null +++ b/packaging/boost.spec @@ -0,0 +1,839 @@ +%define ver 1.71.0 +%define file_version 1_71_0 +%define short_version 1_71 + +#Only define to 1 to generate the man pages +%define build_docs 0 + +#Define to 0 to not package the pdf documentation +%define package_pdf 0 + +# Just hardcode build_mpi to 1 as soon as openmpi builds on all +# named architectures. +%define build_mpi 0 + +%define disable_long_double 0 + +%define boost_libs1 boost-date-time boost-filesystem boost-graph +%define boost_libs2 boost-iostreams boost-math boost-test +%define boost_libs3 boost-program-options boost-python boost-serialization +%define boost_libs4 boost-system boost-thread +%define boost_libs5 boost-wave boost-regex boost-contract +%define boost_libs6 boost-random boost-chrono boost-locale +%define boost_libs7 boost-timer boost-atomic boost-log boost-container boost_stacktrace + +%define most_libs %boost_libs1 %boost_libs2 %boost_libs3 %boost_libs4 %boost_libs5 %boost_libs6 %boost_libs7 + +# context hasn't been ported to most architectures yet +%ifarch aarch64 armv7hl +%define build_context 0 +%else +%define build_context 1 +%endif + +# needs newer GCC to compile runtime +%if %{build_context} +%define build_fiber 1 +%else +%define build_fiber 0 +%endif + +%if %{build_context} +%define context_libs boost-context boost-coroutine +%endif + +%if %{build_fiber} +%define fiber_libs boost-fiber +%endif + +%define all_libs %{most_libs} %{?context_libs} %{?fiber_libs} + +Name: boost +BuildRequires: boost-jam +BuildRequires: dos2unix +BuildRequires: chrpath +BuildRequires: gcc-c++ +BuildRequires: bzip2-devel +BuildRequires: zlib-devel +BuildRequires: expat-devel +BuildRequires: libicu-devel +BuildRequires: python +BuildRequires: python-devel +BuildRequires: xz +BuildRequires: fdupes +Url: http://www.boost.org +Summary: Boost C++ Libraries +License: BSL-1.0 +Group: Base/Libraries +Version: 1.71.0 +Release: 0 +Source0: %{name}_%{file_version}.tar.bz2 +Source1: boost-rpmlintrc +Source4: existing_extra_docs +Source1001: boost.manifest +Source1002: boost.pc + +%define _docdir %{_datadir}/doc/packages/boost-%{version} + +%description +Boost provides free peer-reviewed portable C++ source libraries. The +emphasis is on libraries that work well with the C++ Standard Library. +One goal is to establish "existing practice" and provide reference +implementations so that the Boost libraries are suitable for eventual +standardization. Some of the libraries have already been proposed for +inclusion in the C++ Standards Committee's upcoming C++ Standard +Library Technical Report. + +Although Boost was begun by members of the C++ Standards Committee +Library Working Group, membership has expanded to include nearly two +thousand members of the C++ community at large. + +This package is mainly needed for updating from a prior version, the +dynamic libraries are found in their respective package. For development +using Boost, you also need the boost-devel package. For documentation, +see the boost-doc package. + +%package devel +Summary: Development package for Boost C++ +Group: Development/Libraries/C and C++ +Requires: %{all_libs} +Requires: libstdc++-devel + +%description devel +This package contains all that is needed to develop/compile +applications that use the Boost C++ libraries. For documentation see +the documentation packages (html, man or pdf). + +%package -n boost-license +Summary: Boost License +Group: Development/Libraries/C and C++ +Provides: boost-license = %{version}-%{release} +BuildArch: noarch + +%description -n boost-license +This package contains the license boost is provided under. + +%package doc-html +Summary: HTML documentation for the Boost C++ Libraries +Group: Development/Libraries/C and C++ +BuildArch: noarch + +%description doc-html +This package contains the documentation of the boost dynamic libraries +in HTML format. + +%package -n boost-atomic +Summary: Run-Time component of boost atomic library +Group: System/Libraries +Requires: boost-license + +%description -n boost-atomic +Run-Time support for Boost.Atomic, a library that provides atomic data types +and operations on these data types, as well as memory ordering constraints +required for coordinating multiple threads through atomic variables. + +%package -n boost-container +Summary: Boost::Container Runtime libraries +Group: System/Libraries +Requires: boost-license + +%description -n boost-container +This package contains the Boost Container runtime libraries. + +%if %{build_context} +%package -n boost-context +Summary: Run-Time component of boost context switching library +Group: System/Libraries +Requires: boost-license + +%description -n boost-context +Run-Time support for Boost.Context, a foundational library that +provides a sort of cooperative multitasking on a single thread. + +%package -n boost-contract +Summary: Boost.Contract runtime library +Group: System/Libraries +Requires: boost-license + +%description -n boost-contract +Runtime support for Boost.Contract, a library that implements +Design by Contract or DbC or contract programming. + +%package -n boost-coroutine +Summary: Boost::Coroutine Runtime libraries +Group: System/Libraries +Requires: boost-license + +%description -n boost-coroutine +This package contains the Boost Coroutine runtime libraries. +%endif + +%if %{build_fiber} +%package -n boost-fiber +Summary: Run-Time component of boost fiber +Group: System/Libraries +Requires: boost-license + +%description -n boost-fiber +Run-Time support for Boost.fiber +%endif + + +%package -n boost-date-time +Summary: Boost::Date.Time Runtime libraries +Group: System/Libraries +Requires: boost-license +Provides: boost-date-time + +%description -n boost-date-time +This package contains the Boost Date.Time runtime libraries. + +%package -n boost-filesystem +Summary: Boost::Filesystem Runtime Libraries +Group: System/Localization +Requires: boost-license +Provides: boost-filesystem + +%description -n boost-filesystem +This package contains the Boost::Filesystem libraries. + +%package -n boost-graph +Summary: Boost::Graph Runtime Libraries +Group: System/Libraries +Requires: boost-license +Provides: boost-graph + +%description -n boost-graph +This package contains the Boost::Graph Runtime libraries. + +%if %build_mpi +%package -n boost-graph-parallel +Summary: Boost graph::distributed runtime libraries +Group: System/Libraries +Requires: boost-license + +%description -n boost-graph-parallel +This package contains the boost::graph::distributed runtime libraries. +%endif + +%package -n boost-iostreams +Summary: Boost::IOStreams Runtime Libraries +Group: System/Libraries +Requires: boost-license +Provides: boost-iostreams + +%description -n boost-iostreams +This package contains the Boost::IOStreams Runtime libraries. + +%package -n boost-log +Summary: Run-Time component of boost logging library +Group: System/Libraries +Requires: boost-license +Provides: boost-log + +%description -n boost-log +Boost.Log library aims to make logging significantly easier for the +application developer. It provides a wide range of out-of-the-box +tools along with public interfaces for extending the library. + +%package -n boost-math +Summary: Boost::Math Runtime Libraries +Group: System/Libraries +Requires: boost-license +Provides: boost-math + +%description -n boost-math +This package contains the Boost::Math Runtime libraries. + +%if %build_mpi +%package -n boost-mpi +Summary: Boost::MPI Runtime libraries +Group: System/Libraries +Requires: boost-license +Provides: boost-mpi + +%description -n boost-mpi +This package contains the Boost::MPI Runtime libraries. +%endif + +%package -n boost-test +Summary: Boost::Test Runtime Libraries +Group: System/Libraries +Requires: boost-license +Provides: boost-test + +%description -n boost-test +This package contains the Boost::Test runtime libraries. + +%package -n boost-program-options +Summary: Boost::ProgramOptions Runtime libraries +Group: System/Libraries +Requires: boost-license +Provides: boost-program-options + +%description -n boost-program-options +This package contains the Boost::ProgramOptions Runtime libraries. + + +%package -n boost-python +Summary: Boost::Python Runtime Libraries +Group: System/Libraries +Requires: boost-license +Provides: boost-python + +%description -n boost-python +This package contains the Boost::Python Runtime libraries. + +%package -n boost-serialization +Summary: Boost::Serialization Runtime Libraries +Group: System/Libraries +Requires: boost-license +Provides: boost-serialization + +%description -n boost-serialization +This package contains the Boost::Serialization Runtime libraries. + +%package -n boost_stacktrace +Summary: Boost.Stacktrace runtime library +Group: System/Libraries +Requires: boost-license + +%description -n boost_stacktrace +This package contains the Boost.Stacktrace runtime library. + +%package -n boost-system +Summary: Boost::System Runtime Libraries +Group: System/Libraries +Requires: boost-license +Provides: boost-system + +%description -n boost-system +This package contains the Boost::System runtime libraries. + +%package -n boost-thread +Summary: Boost::Thread Runtime Libraries +Group: System/Libraries +Requires: boost-license +Provides: boost-thread + +%description -n boost-thread +This package contains the Boost::Thread runtime libraries. + +%package -n boost-wave +Summary: Boost::Wave Runtime Libraries +Group: System/Libraries +Requires: boost-license +Provides: boost-wave + +%description -n boost-wave +This package contains the Boost::Wave runtime libraries. + +%package -n boost-regex +Summary: The Boost::Regex runtime library +Group: System/Libraries +Requires: boost-license +Provides: boost-regex + +%description -n boost-regex +This package contains the Boost::Regex runtime library. + +%package -n boost-random +Summary: The Boost::Random runtime library +Group: System/Libraries +Requires: boost-license +Provides: boost-random + +%description -n boost-random +This package contains the Boost::Random runtime library. + +%package -n boost-chrono +Summary: The Boost::Chrono runtime library +Group: System/Libraries +Requires: boost-license +Provides: boost-chrono + +%description -n boost-chrono +This package contains the Boost::Chrono runtime library. + +%package -n boost-locale +Summary: The Boost::Locale runtime library +Group: System/Libraries +Requires: boost-license +Provides: boost-locale + +%description -n boost-locale +This package contains the Boost::Locale runtime library. + +%package -n boost-timer +Summary: The Boost::Timer runtime library +Group: System/Libraries +Requires: boost-license +Provides: boost-timer + +%description -n boost-timer +This package contains the Boost::Timer runtime library. + +%package -n boost_type_erasure +Summary: The Boost::TypeErasure runtime library +Group: System/Libraries +Requires: boost-license + +%description -n boost_type_erasure +This package contains the Boost::TypeErasure runtime library. + + +%prep +%setup -q -n %{name}_%{version} +cp %{SOURCE1001} . +cp %{SOURCE1002} . +#everything in the tarball has the executable flag set ... +find -type f ! \( -name \*.sh -o -name \*.py -o -name \*.pl \) -exec chmod -x {} + + +#stupid build machinery copies .orig files +find . -name \*.orig -exec rm {} + + +%build +find . -type f -exec chmod u+w {} + + +# Create shared build instructions +cat << \EOF >.build +# Now build it +J_P=%{jobs} +J_G=$(getconf _NPROCESSORS_ONLN) +JOBS=${JOBS-$J_P} +[ $J_G -gt 64 ] && J_G=64 + +if test -z "$JOBS"; then + JOBS=$J_G +else + test 1 -gt "$JOBS" && JOBS=1 +fi + +%if %{disable_long_double} +export LONG_DOUBLE_FLAGS="--disable-long-double" +%endif +BJAM_CONFIG="-d2 -j$JOBS -sICU_PATH=%{_prefix}" +PYTHON_VERSION=$(python -c 'import sys; print sys.version[:3]') +PYTHON_FLAGS="--with-python-root=/usr --with-python-version=$PYTHON_VERSION" +export REGEX_FLAGS="--with-icu" +export EXPAT_INCLUDE=/usr/include EXPAT_LIBPATH=%{_libdir} +export PYTHON_FLAGS +LIBRARIES_FLAGS=--with-libraries=all + +%if !%{build_context} +# coroutine/coroutine2 depend on context +LIBRARIES_FLAGS+=" --without-libraries=context,coroutine" +%endif + +%if !%{build_fiber} +LIBRARIES_FLAGS+=" --without-libraries=fiber" +%endif + +EOF + +touch user-config.jam + +# Read shared build instructions +. ./.build + +%if %build_mpi +# Set PATH, MANPATH and LD_LIBRARY_PATH for mpi +. /var/mpi-selector/data/$(rpm --qf "%{NAME}-%{VERSION}" -q openmpi).sh +%endif + +# use supplied bootstrap.sh instead of mucking with old bjam +# see also: https://svn.boost.org/trac/boost/ticket/9304 +./bootstrap.sh $LIBRARIES_FLAGS \ + --prefix=%{_prefix} --exec-prefix=%{_bindir} \ + --libdir=%{_libdir} --includedir=%{_includedir} + +# add specific wishes in user-config.jam +%if %build_docs +cat << EOF >user-config.jam +using xsltproc ; + +using boostbook + : /usr/share/xml/docbook/stylesheet/nwalsh/current + : /usr/share/xml/docbook/schema/dtd/4.2 + ; + +using doxygen ; +EOF +%endif + +%if %build_mpi +cat << EOF >>user-config.jam +using mpi ; +EOF +%endif + +# perform the compilation +./b2 %{?_smp_mflags} --prefix=%{_prefix} --libdir=%{_libdir} \ + --user-config=./user-config.jam ${CFLAGS:+cflags="$CFLAGS"} \ + ${CXXFLAGS:+cxxflags="$CXXFLAGS"} ${LDFLAGS:+linkflags="$LDFLAGS"} + + +%if %build_docs +cd doc +../b2 --user-config=../user-config.jam --v2 man +%endif + +%check +%if "%{run_tests}" == "1" +BOOST_LIBS="chrono,program_options,thread,system,filesystem,date_time,regex,serialization,iostreams,random,test" + chmod 777 ./run_test.sh + echo "RUN run_test.sh" + ./run_test.sh %{version} $BOOST_LIBS || exit 0 +%endif + +%install + +# Read shared build instructions +. ./.build + +%if %build_mpi +# Set PATH, MANPATH and LD_LIBRARY_PATH for mpi +. /var/mpi-selector/data/$(rpm --qf "%{NAME}-%{VERSION}" -q openmpi).sh +%endif + +./b2 install %{?_smp_mflags} \ + --prefix=%{buildroot}%{_prefix} --exec-prefix=%{buildroot}%{_bindir} \ + --libdir=%{buildroot}%{_libdir} --includedir=%{buildroot}%{_includedir} \ + --user-config=./user-config.jam + +# do not install the python module - as long as noone needs it, it requires more fixes +# see https://bugzilla.redhat.com/show_bug.cgi?id=801534 for details +rm -f %{buildroot}%{_libdir}/mpi.so + +mkdir -p %{buildroot}%{_docdir} + +pushd %{buildroot}%{_libdir} +blibs=$(find . -name \*.so.%{version}) +echo $blibs | xargs chrpath -d + +for lib in ${blibs}; do + BASE=$(basename ${lib} .so.%{version}) + SONAME_MT="$BASE-mt.so" + ln -sf ${lib} $SONAME_MT +done +popd + +# install pkgconfig file +mkdir -p $RPM_BUILD_ROOT%{_libdir}/pkgconfig +install -D -m 644 %{SOURCE1002} $RPM_BUILD_ROOT%{_libdir}/pkgconfig + +find . -name \*.htm\* -o -name \*.gif -o -name \*.css -o -name \*.jpg -o -name \*.png -o -name \*.ico | \ + tar --files-from=%{S:4} -cf - --files-from=- | tar -C %{buildroot}%{_docdir} -xf - +rm -rf %{buildroot}%{_docdir}/boost +ln -s /usr/include/boost %{buildroot}%{_docdir} +ln -s ../LICENSE_1_0.txt %{buildroot}%{_docdir}/libs +#Copy the news file. +#cp %%{S:5} %%{buildroot}%%{_docdir} +#only for documentation, doesn't need to be executable +find %{buildroot}%{_docdir} -name \*.py -exec chmod -x {} + + +%if %package_pdf +chmod -x ../%{name}_%{short_version}_pdf/*.pdf +%endif + +#rm -f %{buildroot}%{_libdir}/*.a +ls %{buildroot}%{_libdir}/*.a | grep -v libboost_unit_test_framework.a | xargs rm +#symlink dupes + +# Delete cmake files +rm -rf %{buildroot}%{_libdir}/cmake + +%fdupes %buildroot + +%post -n boost-atomic -p /sbin/ldconfig +%post -n boost-container -p /sbin/ldconfig + +%if %{build_context} +%post -n boost-context -p /sbin/ldconfig +%post -n boost-coroutine -p /sbin/ldconfig +%endif +%post -n boost-contract -p /sbin/ldconfig + +%if %{build_fiber} +%post -n boost-fiber -p /sbin/ldconfig +%endif +%post -n boost-date-time -p /sbin/ldconfig +%post -n boost-filesystem -p /sbin/ldconfig +%post -n boost-iostreams -p /sbin/ldconfig +%post -n boost-log -p /sbin/ldconfig +%post -n boost-test -p /sbin/ldconfig +%post -n boost-program-options -p /sbin/ldconfig +%post -n boost-python -p /sbin/ldconfig +%post -n boost-regex -p /sbin/ldconfig +%post -n boost-serialization -p /sbin/ldconfig +%post -n boost-thread -p /sbin/ldconfig +%post -n boost-math -p /sbin/ldconfig +%post -n boost_type_erasure -p /sbin/ldconfig +%if %build_mpi +%post -n boost-mpi -p /sbin/ldconfig +%endif +%post -n boost-graph -p /sbin/ldconfig +%post -n boost_stacktrace -p /sbin/ldconfig +%post -n boost-system -p /sbin/ldconfig +%post -n boost-wave -p /sbin/ldconfig +%post -n boost-random -p /sbin/ldconfig +%post -n boost-chrono -p /sbin/ldconfig +%post -n boost-locale -p /sbin/ldconfig +%post -n boost-timer -p /sbin/ldconfig +%if %build_mpi +%post -n boost-graph-parallel -p /sbin/ldconfig +%endif + +%postun -n boost-atomic -p /sbin/ldconfig +%postun -n boost-container -p /sbin/ldconfig + +%if %{build_context} +%postun -n boost-context -p /sbin/ldconfig +%postun -n boost-coroutine -p /sbin/ldconfig +%endif +%postun -n boost-contract -p /sbin/ldconfig + +%if %{build_fiber} +%postun -n boost-fiber -p /sbin/ldconfig +%endif + +%postun -n boost-date-time -p /sbin/ldconfig +%postun -n boost-filesystem -p /sbin/ldconfig +%postun -n boost-iostreams -p /sbin/ldconfig +%postun -n boost-log -p /sbin/ldconfig +%postun -n boost-test -p /sbin/ldconfig +%postun -n boost-program-options -p /sbin/ldconfig +%postun -n boost-python -p /sbin/ldconfig +%postun -n boost-regex -p /sbin/ldconfig +%postun -n boost-serialization -p /sbin/ldconfig +%postun -n boost-thread -p /sbin/ldconfig +%postun -n boost-math -p /sbin/ldconfig +%postun -n boost_type_erasure -p /sbin/ldconfig +%if %build_mpi +%postun -n boost-mpi -p /sbin/ldconfig +%endif +%postun -n boost-graph -p /sbin/ldconfig +%postun -n boost_stacktrace -p /sbin/ldconfig +%postun -n boost-system -p /sbin/ldconfig +%postun -n boost-wave -p /sbin/ldconfig +%postun -n boost-random -p /sbin/ldconfig +%postun -n boost-chrono -p /sbin/ldconfig +%postun -n boost-locale -p /sbin/ldconfig +%postun -n boost-timer -p /sbin/ldconfig +%if %build_mpi +%postun -n boost-graph-parallel -p /sbin/ldconfig +%endif + +%files +%manifest %{name}.manifest +%license LICENSE_1_0.txt + +%files -n boost-license +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt + +%files -n boost-atomic +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_atomic*.so.* + +%files -n boost-container +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_container*.so.* + + +%if %{build_context} +%files -n boost-context +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_context*.so.* + +%files -n boost-coroutine +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_coroutine*.so.* +%endif + +%files -n boost-contract +%{_libdir}/libboost_contract.so.* + +%if %{build_fiber} +%files -n boost-fiber +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_fiber*.so.* +%endif + + +%files -n boost-date-time +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_date_time*.so.* + +%files -n boost-filesystem +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_filesystem*.so.* + +%files -n boost-graph +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_graph.so.* + +%if %build_mpi +%files -n boost-graph-parallel +%manifest %{name}.manifest +%defattr(-,root,root) +%license LICENSE_1_0.txt +%_libdir/libboost_graph_parallel.so.* +%endif + +%files -n boost-iostreams +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_iostreams*.so.* + +%files -n boost-log +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_log*.so.* + +%files -n boost-math +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_math_*.so.* + +%files -n boost_type_erasure +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_type_erasure*.so.* + +%if %build_mpi +%manifest %{name}.manifest +%files -n boost-mpi +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_mpi*.so.* +%endif + +%files -n boost-test +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_prg_exec_monitor*.so.* +%{_libdir}/libboost_unit_test_framework*.so.* +%{_libdir}/libboost_unit_test_framework.a + + +%files -n boost-program-options +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_program_options*.so.* + +%files -n boost-python +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_python*.so.* + +%files -n boost-serialization +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_*serialization*.so.* + +%files -n boost_stacktrace +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_stacktrace_addr2line.so.* +%{_libdir}/libboost_stacktrace_basic.so.* +%{_libdir}/libboost_stacktrace_noop.so.* + +%files -n boost-system +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_system*.so.* + +%files -n boost-thread +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_thread*.so.* + +%files -n boost-wave +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_wave*.so.* + +%files -n boost-regex +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_regex*.so.* + +%files -n boost-random +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_random*.so.* + +%files -n boost-chrono +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_chrono*.so.* + +%files -n boost-locale +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_locale*.so.* + +%files -n boost-timer +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_libdir}/libboost_timer*.so.* + +%files devel +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%{_includedir}/boost +%{_libdir}/*.so +%{_libdir}/pkgconfig/boost.pc +#%%{_datadir}/aclocal/*.m4 + +%files doc-html +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%doc %{_docdir}/* +%exclude %{_docdir}/LICENSE_1_0.txt + +%if %package_pdf +%files doc-pdf +%manifest %{name}.manifest +%defattr(-, root, root, -) +%license LICENSE_1_0.txt +%doc ../%{name}_%{short_version}_pdf/*.pdf +%endif + +%changelog diff --git a/packaging/existing_extra_docs b/packaging/existing_extra_docs new file mode 100644 index 0000000..aaa23af --- /dev/null +++ b/packaging/existing_extra_docs @@ -0,0 +1,460 @@ +libs/algorithm/minmax/example/minmax_ex.cpp +libs/algorithm/minmax/example/minmax_timer.cpp +libs/assign/test/array.cpp +libs/assign/test/list_inserter.cpp +libs/assign/test/list_of.cpp +libs/assign/test/list_of_workaround.cpp +libs/assign/test/std.cpp +libs/bind/bind_as_compose.cpp +libs/bind/bind_visitor.cpp +libs/bind/test/bind_fastcall_mf_test.cpp +libs/bind/test/bind_fastcall_test.cpp +libs/bind/test/bind_stdcall_mf_test.cpp +libs/bind/test/bind_stdcall_test.cpp +libs/bind/test/bind_test.cpp +libs/bind/test/mem_fn_derived_test.cpp +libs/bind/test/mem_fn_fastcall_test.cpp +libs/bind/test/mem_fn_stdcall_test.cpp +libs/bind/test/mem_fn_test.cpp +libs/bind/test/mem_fn_void_test.cpp +libs/compatibility/generate_cpp_c_headers.py +libs/concept_check/bad_error_eg.cpp +libs/concept_check/stl_concept_check.cpp +libs/concept_check/stl_concept_covering.cpp +libs/config/test/limits_test.cpp +libs/config/tools/configure.in +libs/crc/crc_example.cpp +libs/filesystem/build/Jamfile.v2 +libs/filesystem/example/simple_ls.cpp +libs/filesystem/test/fstream_test.cpp +libs/filesystem/test/operations_test.cpp +libs/filesystem/test/path_test.cpp +libs/format/example/sample_advanced.cpp +libs/format/example/sample_formats.cpp +libs/format/example/sample_new_features.cpp +libs/format/example/sample_userType.cpp +libs/functional/hash/examples/books.cpp +libs/functional/hash/examples/point.cpp +libs/functional/hash/examples/portable.cpp +libs/function/test/allocator_test.cpp +libs/function/test/contains_test.cpp +libs/function/test/function_30.cpp +libs/function/test/function_arith_cxx98.cpp +libs/function/test/function_arith_portable.cpp +libs/function/test/function_n_test.cpp +libs/function/test/function_ref_cxx98.cpp +libs/function/test/function_ref_portable.cpp +libs/function/test/function_test.cpp +libs/function/test/function_test_fail1.cpp +libs/function/test/function_test_fail2.cpp +libs/function/test/lambda_test.cpp +libs/function/test/mem_fun_cxx98.cpp +libs/function/test/mem_fun_portable.cpp +libs/function/test/stateless_test.cpp +libs/function/test/std_bind_cxx98.cpp +libs/function/test/std_bind_portable.cpp +libs/function/test/sum_avg_cxx98.cpp +libs/function/test/sum_avg_portable.cpp +libs/graph/doc/iscope99.pdf +libs/graph/doc/isomorphism-impl.pdf +libs/graph/example/bfs.cpp +libs/graph/example/bfs-example2.cpp +libs/graph/example/bfs-example.cpp +libs/graph/example/biconnected_components.cpp +libs/graph/example/city_visitor.cpp +libs/graph/example/connected_components.cpp +libs/graph/example/csr-example.cpp +libs/graph/example/cuthill_mckee_ordering.cpp +libs/graph/example/dave.cpp +libs/graph/example/dfs-example.cpp +libs/graph/example/dfs_parenthesis.cpp +libs/graph/example/dijkstra-example.cpp +libs/graph/example/family-tree-eg.cpp +libs/graph/example/file_dependencies.cpp +libs/graph/example/fr_layout.cpp +libs/graph/example/girth.cpp +libs/graph/example/graphviz.cpp +libs/graph/example/incremental_components.cpp +libs/graph/example/isomorphism.cpp +libs/graph/example/johnson-eg.cpp +libs/graph/example/kevin-bacon.cpp +libs/graph/example/king_ordering.cpp +libs/graph/example/kruskal-example.cpp +libs/graph/example/matching_example.cpp +libs/graph/example/max_flow.cpp +libs/graph/example/miles_span.cpp +libs/graph/example/minimum_degree_ordering.cpp +libs/graph/example/ordered_out_edges.cpp +libs/graph/example/quick_tour.cpp +libs/graph/example/reverse-graph-eg.cpp +libs/graph/example/roget_components.cpp +libs/graph/example/sloan_ordering.cpp +libs/graph/example/strong_components.cpp +libs/graph/example/transitive_closure.cpp +libs/graph/example/transpose-example.cpp +libs/graph/example/undirected_dfs.cpp +libs/graph/test/dominator_tree_test.cpp +libs/graph/test/graph.cpp +libs/integer/test/integer_mask_test.cpp +libs/integer/test/static_log2_test.cpp +libs/integer/test/static_min_max_test.cpp +libs/iostreams/doc/tree/tree.js +libs/iostreams/example/container_device.hpp +libs/iostreams/example/dictionary_filter.hpp +libs/iostreams/example/finite_state_filter.hpp +libs/iostreams/example/line_wrapping_filter.hpp +libs/iostreams/example/shell_comments_filter.hpp +libs/iostreams/example/tab_expanding_filter.hpp +libs/iostreams/example/unix2dos_filter.hpp +libs/iostreams/src/bzip2.cpp +libs/iostreams/src/file_descriptor.cpp +libs/iostreams/src/mapped_file.cpp +libs/iostreams/src/zlib.cpp +libs/iostreams/test/bzip2_test.cpp +libs/iostreams/test/file_descriptor_test.cpp +libs/iostreams/test/finite_state_filter_test.cpp +libs/iostreams/test/mapped_file_test.cpp +libs/iostreams/test/seekable_file_test.cpp +libs/io/test/ios_state_test.cpp +libs/iterator/doc/BidirectionalTraversal.rst +libs/iterator/doc/counting_iterator.pdf +libs/iterator/doc/counting_iterator.rst +libs/iterator/doc/facade-and-adaptor.pdf +libs/iterator/doc/facade-and-adaptor.rst +libs/iterator/doc/filter_iterator.pdf +libs/iterator/doc/filter_iterator.rst +libs/iterator/doc/ForwardTraversal.rst +libs/iterator/doc/function_output_iterator.pdf +libs/iterator/doc/function_output_iterator.rst +libs/iterator/doc/IncrementableIterator.rst +libs/iterator/doc/index.rst +libs/iterator/doc/indirect_iterator.pdf +libs/iterator/doc/indirect_iterator.rst +libs/iterator/doc/iterator_adaptor.pdf +libs/iterator/doc/iterator_adaptor.rst +libs/iterator/doc/iterator_archetypes.pdf +libs/iterator/doc/iterator_archetypes.rst +libs/iterator/doc/iterator_concepts.pdf +libs/iterator/doc/iterator_concepts.rst +libs/iterator/doc/iterator_facade.pdf +libs/iterator/doc/iterator_facade.rst +libs/iterator/doc/iterator_traits.pdf +libs/iterator/doc/iterator_traits.rst +libs/iterator/doc/LvalueIterator.rst +libs/iterator/doc/new-iter-concepts.pdf +libs/iterator/doc/new-iter-concepts.rst +libs/iterator/doc/permutation_iterator.pdf +libs/iterator/doc/permutation_iterator.rst +libs/iterator/doc/pointee.pdf +libs/iterator/doc/pointee.rst +libs/iterator/doc/RandomAccessTraversal.rst +libs/iterator/doc/ReadableIterator.rst +libs/iterator/doc/reverse_iterator.pdf +libs/iterator/doc/reverse_iterator.rst +libs/iterator/doc/SinglePassIterator.rst +libs/iterator/doc/SwappableIterator.rst +libs/iterator/doc/transform_iterator.pdf +libs/iterator/doc/transform_iterator.rst +libs/iterator/doc/WritableIterator.rst +libs/iterator/doc/zip_iterator.pdf +libs/iterator/doc/zip_iterator.rst +libs/iterator/example/counting_iterator_example.cpp +libs/iterator/example/filter_iterator_example.cpp +libs/iterator/example/indirect_iterator_example.cpp +libs/iterator/example/node_iterator1.cpp +libs/iterator/example/node_iterator2.cpp +libs/iterator/example/node_iterator2.hpp +libs/iterator/example/node_iterator3.cpp +libs/iterator/example/permutation_iter_example.cpp +libs/iterator/example/reverse_iterator_example.cpp +libs/iterator/example/transform_iterator_example.cpp +libs/logic/test/tribool_io_test.cpp +libs/logic/test/tribool_rename_test.cpp +libs/logic/test/tribool_test.cpp +libs/math/octonion/graphics/octonion_blurb17.jpeg +libs/math/octonion/octonion_test.cpp +libs/math/octonion/output_more.txt +libs/math/octonion/output.txt +libs/math/quaternion/HSO3.hpp +libs/math/quaternion/HSO3SO4.cpp +libs/math/quaternion/HSO4.hpp +libs/math/quaternion/output_more.txt +libs/math/quaternion/output.txt +libs/math/quaternion/quaternion_test.cpp +libs/math/quaternion/TQE_EA.pdf +libs/math/quaternion/TQE.pdf +libs/math/special_functions/graphics/special_functions_blurb15.jpeg +libs/math/special_functions/graphics/special_functions_blurb17.jpeg +libs/math/special_functions/graphics/special_functions_blurb18.jpeg +libs/math/special_functions/graphics/special_functions_blurb1.jpeg +libs/math/special_functions/graphics/special_functions_blurb20.jpeg +libs/math/special_functions/graphics/special_functions_blurb22.jpeg +libs/math/special_functions/graphics/special_functions_blurb5.jpeg +libs/math/special_functions/graphics/special_functions_blurb6.jpeg +libs/math/special_functions/graphics/special_functions_blurb7.jpeg +libs/math/special_functions/output_more.txt +libs/math/special_functions/output.txt +libs/math/special_functions/special_functions_test.cpp +libs/math/test/common_factor_test.cpp +libs/math/test/log1p_expm1_test.cpp +libs/mpl/doc/refmanual.pdf +libs/mpl/example/fsm/player1.cpp +libs/multi_array/test/access.cpp +libs/multi_array/test/assign.cpp +libs/multi_array/test/assign_to_array.cpp +libs/multi_array/test/compare.cpp +libs/multi_array/test/concept_checks.cpp +libs/multi_array/test/constructors.cpp +libs/multi_array/test/fail_cbracket.cpp +libs/multi_array/test/fail_cdata.cpp +libs/multi_array/test/fail_citerator.cpp +libs/multi_array/test/fail_cparen.cpp +libs/multi_array/test/fail_criterator.cpp +libs/multi_array/test/fail_csubarray2.cpp +libs/multi_array/test/fail_csubarray3.cpp +libs/multi_array/test/fail_csubarray.cpp +libs/multi_array/test/fail_cview2.cpp +libs/multi_array/test/fail_cview3.cpp +libs/multi_array/test/fail_cview.cpp +libs/multi_array/test/fail_ref_cbracket.cpp +libs/multi_array/test/fail_ref_cdata.cpp +libs/multi_array/test/fail_ref_citerator.cpp +libs/multi_array/test/fail_ref_cparen.cpp +libs/multi_array/test/fail_ref_criterator.cpp +libs/multi_array/test/fail_ref_csubarray2.cpp +libs/multi_array/test/fail_ref_csubarray3.cpp +libs/multi_array/test/fail_ref_csubarray.cpp +libs/multi_array/test/fail_ref_cview2.cpp +libs/multi_array/test/fail_ref_cview3.cpp +libs/multi_array/test/fail_ref_cview.cpp +libs/multi_array/test/generative_tests.hpp +libs/multi_array/test/idxgen1.cpp +libs/multi_array/test/index_bases.cpp +libs/multi_array/test/iterators.cpp +libs/multi_array/test/range1.cpp +libs/multi_array/test/reshape.cpp +libs/multi_array/test/resize.cpp +libs/multi_array/test/slice.cpp +libs/multi_array/test/stl_interaction.cpp +libs/multi_array/test/storage_order.cpp +libs/multi_index/example/basic.cpp +libs/multi_index/example/bimap.cpp +libs/multi_index/example/complex_structs.cpp +libs/multi_index/example/composite_keys.cpp +libs/multi_index/example/hashed.cpp +libs/multi_index/example/non_default_ctor.cpp +libs/multi_index/example/random_access.cpp +libs/multi_index/example/rearrange.cpp +libs/multi_index/example/sequenced.cpp +libs/multi_index/example/serialization.cpp +libs/multi_index/perf/test_perf.cpp +libs/multi_index/test/test_basic.cpp +libs/multi_index/test/test_capacity.cpp +libs/multi_index/test/test_comparison.cpp +libs/multi_index/test/test_composite_key.cpp +libs/multi_index/test/test_conv_iterators.cpp +libs/multi_index/test/test_copy_assignment.cpp +libs/multi_index/test/test_hash_ops.cpp +libs/multi_index/test/test_iterators.cpp +libs/multi_index/test/test_key_extractors.cpp +libs/multi_index/test/test_list_ops.cpp +libs/multi_index/test/test_modifiers.cpp +libs/multi_index/test/test_mpl_ops.cpp +libs/multi_index/test/test_observers.cpp +libs/multi_index/test/test_projection.cpp +libs/multi_index/test/test_range.cpp +libs/multi_index/test/test_rearrange.cpp +libs/multi_index/test/test_safe_mode.cpp +libs/multi_index/test/test_serialization1.cpp +libs/multi_index/test/test_serialization2.cpp +libs/multi_index/test/test_set_ops.cpp +libs/multi_index/test/test_special_set_ops.cpp +libs/multi_index/test/test_update.cpp +libs/preprocessor/doc/examples/array_arithmetic.c +libs/preprocessor/doc/examples/catch_builtin.cpp +libs/preprocessor/doc/examples/delay.c +libs/preprocessor/doc/examples/duffs_device.c +libs/preprocessor/doc/examples/is_integral.cpp +libs/preprocessor/doc/examples/linear_fib.c +libs/ptr_container/test/incomplete_type_test.cpp +libs/ptr_container/test/ptr_array.cpp +libs/ptr_container/test/simple_test.cpp +libs/ptr_container/test/tree_test.cpp +libs/ptr_container/test/view_example.cpp +libs/python/doc/building.rst +libs/python/doc/internals.rst +libs/python/doc/PyConDC_2003/bpl.pdf +libs/python/doc/v2/callbacks.txt +libs/python/example/quickstart/boost-build.jam +libs/python/example/quickstart/extending.cpp +libs/python/example/quickstart/Jamroot +libs/python/example/tutorial/Jamroot +libs/python/test/input_iterator.cpp +libs/python/test/iterator.cpp +libs/python/test/iterator.py +libs/python/test/map_indexing_suite.cpp +libs/python/test/map_indexing_suite.py +libs/python/test/pickle1.cpp +libs/python/test/pickle2.cpp +libs/python/test/pickle3.cpp +libs/python/test/pickle4.cpp +libs/python/test/vector_indexing_suite.cpp +libs/python/test/vector_indexing_suite.py +libs/range/test/algorithm_example.cpp +libs/range/test/array.cpp +libs/range/test/iterator_pair.cpp +libs/range/test/iterator_range.cpp +libs/range/test/reversible_range.cpp +libs/range/test/std_container.cpp +libs/range/test/string.cpp +libs/range/test/sub_range.cpp +libs/regex/build/generic.mak +libs/regex/example/grep/grep.cpp +libs/regex/example/snippets/captures_example.cpp +libs/regex/example/snippets/credit_card_example.cpp +libs/regex/example/snippets/partial_regex_grep.cpp +libs/regex/example/snippets/partial_regex_match.cpp +libs/regex/example/snippets/regex_grep_example_1.cpp +libs/regex/example/snippets/regex_grep_example_2.cpp +libs/regex/example/snippets/regex_grep_example_3.cpp +libs/regex/example/snippets/regex_grep_example_4.cpp +libs/regex/example/snippets/regex_iterator_example.cpp +libs/regex/example/snippets/regex_match_example.cpp +libs/regex/example/snippets/regex_merge_example.cpp +libs/regex/example/snippets/regex_replace_example.cpp +libs/regex/example/snippets/regex_search_example.cpp +libs/regex/example/snippets/regex_split_example_1.cpp +libs/regex/example/snippets/regex_split_example_2.cpp +libs/regex/example/snippets/regex_token_iterator_eg_1.cpp +libs/regex/example/snippets/regex_token_iterator_eg_2.cpp +libs/regex/example/timer/regex_timer.cpp +libs/regex/test/captures/captures_test.cpp +libs/regex/test/concepts/concept_check.cpp +libs/regex/test/pathology/bad_expression_test.cpp +libs/regex/test/pathology/recursion_test.cpp +libs/regex/test/regress/basic_tests.cpp +libs/regex/test/regress/main.cpp +libs/regex/test/regress/test_deprecated.cpp +libs/serialization/example/demo_auto_ptr.cpp +libs/serialization/example/demo.cpp +libs/serialization/example/demo_exception.cpp +libs/serialization/example/demo_fast_archive.cpp +libs/serialization/example/demofile.txt +libs/serialization/example/demo_output.txt +libs/serialization/example/demo_pimpl_A.cpp +libs/serialization/example/demo_pimpl.cpp +libs/serialization/example/demo_polymorphic_A.cpp +libs/serialization/example/demo_polymorphic_A.hpp +libs/serialization/example/demo_polymorphic.cpp +libs/serialization/example/demo_portable_archive.cpp +libs/serialization/example/demo_save.xml +libs/serialization/example/demo_shared_ptr.cpp +libs/serialization/example/demo_xml.cpp +libs/serialization/example/demo_xml.hpp +libs/serialization/example/demo_xml_load.cpp +libs/serialization/example/demo_xml_save.cpp +libs/serialization/test/test_delete_pointer.cpp +libs/serialization/test/test_diamond.cpp +libs/serialization/test/test_no_rtti.cpp +libs/signals/example/doc_view.cpp +libs/signals/test/dead_slot_test.cpp +libs/signals/test/deletion_test.cpp +libs/signals/test/ordering_test.cpp +libs/signals/test/signal_n_test.cpp +libs/signals/test/signal_test.cpp +libs/signals/test/trackable_test.cpp +libs/smart_ptr/example/scoped_ptr_example.cpp +libs/smart_ptr/example/scoped_ptr_example.hpp +libs/smart_ptr/example/scoped_ptr_example_test.cpp +libs/smart_ptr/example/shared_ptr_example2.cpp +libs/smart_ptr/example/shared_ptr_example2.hpp +libs/smart_ptr/example/shared_ptr_example2_test.cpp +libs/smart_ptr/example/shared_ptr_example.cpp +libs/smart_ptr/smarttest.zip +libs/smart_ptr/test/pointer_cast_test.cpp +libs/smart_ptr/test/pointer_to_other_test.cpp +libs/smart_ptr/test/smart_ptr_test.cpp +libs/statechart/doc/rationale.pdf +libs/statechart/doc/reference.pdf +libs/statechart/doc/tutorial.pdf +libs/statechart/test/TuTest.cpp +libs/statechart/test/TuTest.hpp +libs/statechart/test/TuTestMain.cpp +libs/static_assert/static_assert_example_1.cpp +libs/static_assert/static_assert_example_2.cpp +libs/static_assert/static_assert_example_3.cpp +libs/static_assert/static_assert_test.cpp +libs/static_assert/static_assert_test_fail_1.cpp +libs/static_assert/static_assert_test_fail_2.cpp +libs/static_assert/static_assert_test_fail_3.cpp +libs/static_assert/static_assert_test_fail_4.cpp +libs/static_assert/static_assert_test_fail_5.cpp +libs/static_assert/static_assert_test_fail_6.cpp +libs/static_assert/static_assert_test_fail_7.cpp +libs/static_assert/static_assert_test_fail_8.cpp +libs/static_assert/static_assert_test_fail_9.cpp +libs/test/example/exec_mon_example.cpp +libs/test/example/prg_exec_example.cpp +libs/test/example/test_case_template_example.cpp +libs/test/example/unit_test_example_01.cpp +libs/test/example/unit_test_example_02.cpp +libs/test/example/unit_test_example_03.cpp +libs/test/example/unit_test_example_04.cpp +libs/test/example/unit_test_example_05.cpp +libs/test/src/compiler_log_formatter.cpp +libs/test/src/cpp_main.cpp +libs/test/src/exception_safety.cpp +libs/test/src/execution_monitor.cpp +libs/test/src/framework.cpp +libs/test/src/interaction_based.cpp +libs/test/src/logged_expectations.cpp +libs/test/src/plain_report_formatter.cpp +libs/test/src/progress_monitor.cpp +libs/test/src/results_collector.cpp +libs/test/src/results_reporter.cpp +libs/test/src/test_tools.cpp +libs/test/src/unit_test_log.cpp +libs/test/src/unit_test_main.cpp +libs/test/src/unit_test_monitor.cpp +libs/test/src/unit_test_parameters.cpp +libs/test/src/unit_test_suite.cpp +libs/test/src/xml_log_formatter.cpp +libs/test/src/xml_report_formatter.cpp +libs/test/test/custom_exception_test.cpp +libs/test/test/errors_handling_test.cpp +libs/test/test/minimal_test.cpp +libs/test/test/online_test.cpp +libs/test/test/output_test_stream_test.cpp +libs/test/test/parameterized_test_test.cpp +libs/test/test/prg_exec_fail1.cpp +libs/test/test/prg_exec_fail2.cpp +libs/test/test/prg_exec_fail3.cpp +libs/test/test/prg_exec_fail4.cpp +libs/test/test/result_report_test.cpp +libs/test/test/test_case_template_test.cpp +libs/test/test/test_files/errors_handling_test.pattern +libs/test/test/test_files/result_report_test.pattern +libs/test/test/test_fp_comparisons.cpp +libs/test/test/test_tools_test.cpp +libs/type_traits/examples/copy_example.cpp +libs/type_traits/examples/fill_example.cpp +libs/type_traits/examples/iter_swap_example.cpp +libs/type_traits/examples/trivial_destructor_example.cpp +libs/utility/base_from_member_test.cpp +libs/utility/call_traits_test.cpp +libs/utility/iterators_test.cpp +libs/utility/operators_test.cpp +libs/utility/shared_iterator_example1.cpp +libs/utility/shared_iterator_example2.cpp +libs/utility/shared_iterator_example3.cpp +libs/wave/ChangeLog +LICENSE_1_0.txt +more/blanket-permission.txt +tools/inspect/build/Jamfile.v2 +tools/inspect/inspect.cpp +tools/inspect/inspector.hpp +tools/inspect/link_check.cpp +tools/inspect/link_check.hpp +tools/inspect/tab_check.cpp +tools/inspect/tab_check.hpp +tools/quickbook/doc/quickbook.qbk diff --git a/run_test.sh b/run_test.sh new file mode 100755 index 0000000..9d5fab3 --- /dev/null +++ b/run_test.sh @@ -0,0 +1,68 @@ +#!/bin/bash + +BOOST_VERSION=$1 +BOOST_PACKAGE_LIST=${2//,/ } + +echo "Boost package list: [$BOOST_PACKAGE_LIST]" + +TEST_LOG="/tmp/boost_test" +export TEST_LOG +rm -f ${TEST_LOG} + +# Color +Color_Off='\e[0m' # Text Reset + +# Regular Colors +Red='\e[0;31m' # Red +Green='\e[0;32m' # Green +Cyan='\e[0;36m' # Cyank + +# Bold +BWhite='\e[1;37m' # White + + +for ix in $BOOST_PACKAGE_LIST; +do +# echo "Build [$ix] test case" + pushd ./libs/${ix}/test + ../../../b2 > /dev/null 2>&1 + popd + +# echo "Check [$ix] test result" + pushd ./bin.v2/libs/${ix}/test + for iy in `find . -name "*.output"`; + do + result=`cat $iy | grep "EXIT STATUS:" | awk '{print $3}'` + if [ $result -eq 0 ] + then + echo -e "${Green}PASS${Color_Off}: [$ix] [${iy##*/}]" + echo "TEST: PASS: [$ix] [${iy##*/}]" >> ${TEST_LOG} + else + echo -e "${Red}FAIL${Color_Off}: [$ix] [${iy##*/}]" + echo "TEST: FAIL: [$ix] [${iy##*/}]" >> ${TEST_LOG} + fi + done + popd +done + + +TOTAL_CNT=`grep "TEST:" ${TEST_LOG} | wc -l` +PASS_CNT=`grep "PASS:" ${TEST_LOG} | wc -l` +FAIL_CNT=`grep "FAIL:" ${TEST_LOG} | wc -l` +SKIP_CNT=`grep "SKIP:" ${TEST_LOG} | wc -l` + + +br='==================='; br=$br$br$br$br; + +echo -e "${Green}$br ${Color_Off}" +echo -e "${Green}Testshite summary for Boost ${BOOST_VERSION}${Color_Off}" +echo -e "${Green}$br ${Color_Off}" +echo -e "#${BWhite} TOTAL: $TOTAL_CNT ${Color_Off}" +echo -e "#${Green} PASS${Color_Off} : $PASS_CNT" +echo -e "#${Red} FAIL${Color_Off} : $FAIL_CNT" +echo -e "#${Cyan} SKIP${Color_Off} : $SKIP_CNT" +echo -e "${Green}$br ${Color_Off}" + +rm -f ${TEST_LOG} +exit 0 + -- 2.7.4