Hello community, here is the log from the commit of package boost for openSUSE:Factory checked in at 2015-12-17 15:54:07 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/boost (Old) and /work/SRC/openSUSE:Factory/.boost.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "boost" Changes: -------- --- /work/SRC/openSUSE:Factory/boost/boost.changes 2015-12-09 22:13:01.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.boost.new/boost.changes 2015-12-17 15:54:08.000000000 +0100 @@ -1,0 +2,7 @@ +Tue Dec 8 15:52:49 CET 2015 - p...@suse.de + +- Add boost-visibility.patch to make members of basic_xml_grammar<char> + visible (boo#958150). +- Fix redefinition of _docdir. + +------------------------------------------------------------------- New: ---- boost-visibility.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ boost.spec ++++++ --- /var/tmp/diff_new_pack.if0vFG/_old 2015-12-17 15:54:13.000000000 +0100 +++ /var/tmp/diff_new_pack.if0vFG/_new 2015-12-17 15:54:13.000000000 +0100 @@ -21,56 +21,46 @@ %define docs_version 1.56.0 %define short_version 1_56 %define lib_appendix 1_59_0 - #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 1 - %define build_quickbook 1 - +%define boost_l1 libboost_date_time%{lib_appendix} libboost_filesystem%{lib_appendix} libboost_graph%{lib_appendix} +%define boost_l2 libboost_iostreams%{lib_appendix} libboost_math%{lib_appendix} libboost_test%{lib_appendix} +%define boost_l3 libboost_program_options%{lib_appendix} libboost_python%{lib_appendix} libboost_serialization%{lib_appendix} +%define boost_l4 libboost_signals%{lib_appendix} libboost_system%{lib_appendix} libboost_thread%{lib_appendix} +%define boost_l5 libboost_wave%{lib_appendix} libboost_regex%{lib_appendix} libboost_regex%{lib_appendix} +%define boost_l6 libboost_random%{lib_appendix} libboost_chrono%{lib_appendix} libboost_locale%{lib_appendix} +%define boost_l7 libboost_timer%{lib_appendix} libboost_atomic%{lib_appendix} libboost_log%{lib_appendix} libboost_container%{lib_appendix} +%define most_libs %{boost_l1} %{boost_l2} %{boost_l3} %{boost_l4} %{boost_l5} %{boost_l6} %{boost_l7} %{?boost_libs_context} +%define my_docdir %{_docdir}/boost-%{version} # Just hardcode build_mpi to 1 as soon as openmpi builds on all # named architectures. - %ifarch ia64 hppa %define build_mpi 0 %else %define build_mpi 1 %endif - # context hasn't been ported to most architectures yet %ifarch %ix86 x86_64 %arm aarch64 mips ppc ppc64 ppc64le %define build_context 1 %else %define build_context 0 %endif - %ifarch hppa %define disable_long_double 1 %else %define disable_long_double 0 %endif - -%define boost_l1 libboost_date_time%{lib_appendix} libboost_filesystem%{lib_appendix} libboost_graph%{lib_appendix} -%define boost_l2 libboost_iostreams%{lib_appendix} libboost_math%{lib_appendix} libboost_test%{lib_appendix} -%define boost_l3 libboost_program_options%{lib_appendix} libboost_python%{lib_appendix} libboost_serialization%{lib_appendix} -%define boost_l4 libboost_signals%{lib_appendix} libboost_system%{lib_appendix} libboost_thread%{lib_appendix} -%define boost_l5 libboost_wave%{lib_appendix} libboost_regex%{lib_appendix} libboost_regex%{lib_appendix} -%define boost_l6 libboost_random%{lib_appendix} libboost_chrono%{lib_appendix} libboost_locale%{lib_appendix} -%define boost_l7 libboost_timer%{lib_appendix} libboost_atomic%{lib_appendix} libboost_log%{lib_appendix} libboost_container%{lib_appendix} -%if %build_context +%if %{build_context} %define boost_libs_context libboost_context%{lib_appendix} libboost_coroutine%{lib_appendix} %endif - -%define most_libs %boost_l1 %boost_l2 %boost_l3 %boost_l4 %boost_l5 %boost_l6 %boost_l7 %{?boost_libs_context} - -%if %build_mpi -%define all_libs %{most_libs} libboost_graph_parallel%lib_appendix libboost_mpi%{lib_appendix} +%if %{build_mpi} +%define all_libs %{most_libs} libboost_graph_parallel%{lib_appendix} libboost_mpi%{lib_appendix} %else %define all_libs %{most_libs} %endif - Name: boost Version: 1.59.0 Release: 0 @@ -95,6 +85,7 @@ Patch10: boost-disable-pch-on-aarch64.patch Patch11: boost-1.59-python-make_setter.patch Patch12: boost-1.59-test-fenv.patch +Patch13: boost-visibility.patch BuildRequires: chrpath BuildRequires: dos2unix BuildRequires: fdupes @@ -105,20 +96,18 @@ BuildRequires: python-devel #!BuildIgnore: python BuildRequires: zlib-devel -%if %build_mpi +Recommends: %{all_libs} +BuildRoot: %{_tmppath}/%{name}-%{version}-build +%if %{build_mpi} BuildRequires: openmpi-devel %endif -%if %build_docs +%if %{build_docs} BuildRequires: docbook BuildRequires: docbook-xsl-stylesheets BuildRequires: doxygen BuildRequires: libxslt-tools BuildRequires: texlive-latex %endif -BuildRoot: %{_tmppath}/%{name}-%{version}-build -Recommends: %{all_libs} - -%define _docdir %{_datadir}/doc/packages/boost-%{version} %description Boost provides free peer-reviewed portable C++ source libraries. The @@ -182,7 +171,7 @@ # This package contains the documentation of the boost dynamic libraries # as man pages. -%if %package_pdf +%if %{package_pdf} %package doc-pdf Summary: PDF documentation for the Boost C++ Libraries Group: Development/Libraries/C and C++ @@ -254,12 +243,12 @@ %description -n libboost_graph%{lib_appendix} This package contains the Boost::Graph Runtime libraries. -%package -n libboost_graph_parallel%lib_appendix +%package -n libboost_graph_parallel%{lib_appendix} Summary: Boost graph::distributed runtime libraries Group: System/Libraries -Requires: boost-license%lib_appendix +Requires: boost-license%{lib_appendix} -%description -n libboost_graph_parallel%lib_appendix +%description -n libboost_graph_parallel%{lib_appendix} This package contains the boost::graph::distributed runtime libraries. %package -n libboost_iostreams%{lib_appendix} @@ -288,7 +277,7 @@ %description -n libboost_math%{lib_appendix} This package contains the Boost::Math Runtime libraries. -%if %build_mpi +%if %{build_mpi} %package -n libboost_mpi%{lib_appendix} Summary: Boost::MPI Runtime libraries Group: System/Libraries @@ -314,7 +303,6 @@ %description -n libboost_program_options%{lib_appendix} This package contains the Boost::ProgramOptions Runtime libraries. - %package -n libboost_python%{lib_appendix} Summary: Boost::Python Runtime Libraries Group: System/Libraries @@ -403,7 +391,7 @@ %description -n libboost_timer%{lib_appendix} This package contains the Boost::Timer runtime library. -%if %build_quickbook +%if %{build_quickbook} %package -n quickbook Summary: Documentation tool geared towards C++ Group: Development/Tools/Doc Generators @@ -431,6 +419,7 @@ %patch10 -p1 %patch11 -p1 %patch12 -p1 +%patch13 #stupid build machinery copies .orig files find . -name \*.orig -exec rm {} + @@ -469,12 +458,12 @@ %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" +PYTHON_FLAGS="--with-python-root=%{_prefix} --with-python-version=$PYTHON_VERSION" export REGEX_FLAGS="--with-icu" -export EXPAT_INCLUDE=/usr/include EXPAT_LIBPATH=%{_libdir} +export EXPAT_INCLUDE=%{_includedir} EXPAT_LIBPATH=%{_libdir} export PYTHON_FLAGS LIBRARIES_FLAGS=--with-libraries=all -%if !%build_context +%if !%{build_context} # coroutine/coroutine2 depend on context LIBRARIES_FLAGS+=" --without-libraries=context,coroutine,coroutine2" %endif @@ -484,7 +473,7 @@ . ./.build # Set PATH, MANPATH and LD_LIBRARY_PATH for mpi -. /var/mpi-selector/data/$(rpm --qf "%{NAME}-%{VERSION}" -q openmpi).sh +. %{_localstatedir}/mpi-selector/data/$(rpm --qf "%{NAME}-%{VERSION}" -q openmpi).sh # use supplied bootstrap.sh instead of mucking with old bjam # see also: https://svn.boost.org/trac/boost/ticket/9304 @@ -501,20 +490,20 @@ using gcc : : : <compileflags>\$(RPM_OPT_FLAGS) ; EOF -%if %build_docs +%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 + : %{_datadir}/xml/docbook/stylesheet/nwalsh/current + : %{_datadir}/xml/docbook/schema/dtd/4.2 ; using doxygen ; EOF %endif -%if %build_mpi +%if %{build_mpi} cat << EOF >>user-config.jam using mpi ; EOF @@ -523,13 +512,13 @@ # perform the compilation ./b2 -d+2 -q --prefix=%{_prefix} --libdir=%{_libdir} --user-config=./user-config.jam -%if %build_quickbook +%if %{build_quickbook} pushd tools/quickbook ../../b2 --user-config=../../user-config.jam --v2 dist-bin popd %endif -%if %build_docs +%if %{build_docs} cd doc ../b2 --user-config=../user-config.jam --v2 man %endif @@ -540,7 +529,7 @@ . ./.build # Set PATH, MANPATH and LD_LIBRARY_PATH for mpi -. /var/mpi-selector/data/$(rpm --qf "%{NAME}-%{VERSION}" -q openmpi).sh +. %{_localstatedir}/mpi-selector/data/$(rpm --qf "%{NAME}-%{VERSION}" -q openmpi).sh ./b2 install \ --prefix=%{buildroot}%{_prefix} --exec-prefix=%{buildroot}%{_bindir} \ @@ -551,7 +540,7 @@ # see https://bugzilla.redhat.com/show_bug.cgi?id=801534 for details rm -f %{buildroot}%{_libdir}/mpi.so -mkdir -p %{buildroot}%{_docdir} +mkdir -p %{buildroot}%{my_docdir} pushd %{buildroot}%{_libdir} blibs=$(find . -name \*.so.%{version}) @@ -585,85 +574,127 @@ libs/graph/doc/lengauer_tarjan_dominator.htm 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 {} + + tar --files-from=%{SOURCE4} -cf - --files-from=- | tar -C %{buildroot}%{my_docdir} -xf - +rm -rf %{buildroot}%{my_docdir}/boost +ln -s %{_includedir}/boost %{buildroot}%{my_docdir} +ln -s ../LICENSE_1_0.txt %{buildroot}%{my_docdir}/libs +find %{buildroot}%{my_docdir} -name \*.py -exec chmod -x {} + chmod -x ../%{name}_%{short_version}_pdf/*.pdf rm -f %{buildroot}%{_libdir}/*.a #symlink dupes -%fdupes %buildroot +%fdupes %{buildroot} -%if %build_quickbook +%if %{build_quickbook} mkdir -p %{buildroot}%{_bindir} install -m 0755 dist/bin/quickbook %{buildroot}%{_bindir}/quickbook %endif %post -n libboost_atomic%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_container%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_context%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_coroutine%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_date_time%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_filesystem%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_iostreams%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_log%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_test%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_program_options%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_python%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_regex%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_serialization%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_signals%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_thread%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_math%{lib_appendix} -p /sbin/ldconfig -%if %build_mpi +%if %{build_mpi} %post -n libboost_mpi%{lib_appendix} -p /sbin/ldconfig %endif + %post -n libboost_graph%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_system%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_wave%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_random%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_chrono%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_locale%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_timer%{lib_appendix} -p /sbin/ldconfig + %post -n libboost_graph_parallel%{lib_appendix} -p /sbin/ldconfig %postun -n libboost_atomic%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_container%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_context%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_coroutine%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_date_time%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_filesystem%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_iostreams%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_log%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_test%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_program_options%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_python%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_regex%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_serialization%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_signals%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_thread%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_math%{lib_appendix} -p /sbin/ldconfig -%if %build_mpi +%if %{build_mpi} %postun -n libboost_mpi%{lib_appendix} -p /sbin/ldconfig %endif + %postun -n libboost_graph%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_system%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_wave%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_random%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_chrono%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_locale%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_timer%{lib_appendix} -p /sbin/ldconfig + %postun -n libboost_graph_parallel%{lib_appendix} -p /sbin/ldconfig %files -n boost-license%{lib_appendix} %defattr(-, root, root, -) -%dir %{_docdir} -#%%doc %%{_docdir}/NEWS -%doc %{_docdir}/LICENSE_1_0.txt +%dir %{my_docdir} +%doc %{my_docdir}/LICENSE_1_0.txt %files -n libboost_atomic%{lib_appendix} %defattr(-, root, root, -) @@ -673,7 +704,7 @@ %defattr(-, root, root, -) %{_libdir}/libboost_container*.so.* -%if %build_context +%if %{build_context} %files -n libboost_context%{lib_appendix} %defattr(-, root, root, -) %{_libdir}/libboost_context*.so.* @@ -695,9 +726,9 @@ %defattr(-, root, root, -) %{_libdir}/libboost_graph.so.* -%files -n libboost_graph_parallel%lib_appendix +%files -n libboost_graph_parallel%{lib_appendix} %defattr(-,root,root) -%_libdir/libboost_graph_parallel.so.* +%{_libdir}/libboost_graph_parallel.so.* %files -n libboost_iostreams%{lib_appendix} %defattr(-, root, root, -) @@ -711,7 +742,7 @@ %defattr(-, root, root, -) %{_libdir}/libboost_math_*.so.* -%if %build_mpi +%if %{build_mpi} %files -n libboost_mpi%{lib_appendix} %defattr(-, root, root, -) %{_libdir}/libboost_mpi*.so.* @@ -778,8 +809,8 @@ %files doc-html %defattr(-, root, root, -) -%doc %{_docdir}/* -%exclude %{_docdir}/LICENSE_1_0.txt +%doc %{my_docdir}/* +%exclude %{my_docdir}/LICENSE_1_0.txt # %%files doc-man # %%defattr(644, root, root, -) @@ -787,7 +818,7 @@ # %%doc %%{_mandir}/man7/*.7.gz # %%doc %%{_mandir}/man9/*.9.gz -%if %package_pdf +%if %{package_pdf} %files doc-pdf %defattr(-, root, root, -) %doc ../%{name}_%{short_version}_pdf/*.pdf ++++++ boost-visibility.patch ++++++ --- boost/archive/impl/basic_xml_grammar.hpp | 16 ++++++++-------- libs/serialization/src/basic_xml_grammar.ipp | 14 +++++++------- 2 files changed, 15 insertions(+), 15 deletions(-) Index: boost/archive/impl/basic_xml_grammar.hpp =================================================================== --- boost/archive/impl/basic_xml_grammar.hpp.orig 2015-05-23 20:51:06.000000000 +0200 +++ boost/archive/impl/basic_xml_grammar.hpp 2015-12-08 15:47:11.506885556 +0100 @@ -135,7 +135,7 @@ private: Sch, NameChar; - void init_chset(); + BOOST_SYMBOL_VISIBLE void init_chset(); bool my_parse( IStream & is, @@ -143,7 +143,7 @@ private: const CharType delimiter = L'>' ) const ; public: - struct return_values { + BOOST_SYMBOL_VISIBLE struct return_values { StringType object_name; StringType contents; //class_id_type class_id; @@ -159,12 +159,12 @@ public: tracking_level(false) {} } rv; - bool parse_start_tag(IStream & is) /*const*/; - bool parse_end_tag(IStream & is) const; - bool parse_string(IStream & is, StringType & s) /*const*/; - void init(IStream & is); - void windup(IStream & is); - basic_xml_grammar(); + BOOST_SYMBOL_VISIBLE bool parse_start_tag(IStream & is) /*const*/; + BOOST_SYMBOL_VISIBLE bool parse_end_tag(IStream & is) const; + BOOST_SYMBOL_VISIBLE bool parse_string(IStream & is, StringType & s) /*const*/; + BOOST_SYMBOL_VISIBLE void init(IStream & is); + BOOST_SYMBOL_VISIBLE void windup(IStream & is); + BOOST_SYMBOL_VISIBLE basic_xml_grammar(); }; } // namespace archive Index: libs/serialization/src/basic_xml_grammar.ipp =================================================================== --- libs/serialization/src/basic_xml_grammar.ipp.orig 2015-05-23 20:51:06.000000000 +0200 +++ libs/serialization/src/basic_xml_grammar.ipp 2015-12-08 15:41:23.620854565 +0100 @@ -173,7 +173,7 @@ struct append_lit { } // namespace anonymous template<class CharType> -bool basic_xml_grammar<CharType>::my_parse( +BOOST_SYMBOL_VISIBLE bool basic_xml_grammar<CharType>::my_parse( typename basic_xml_grammar<CharType>::IStream & is, const rule_t & rule_, CharType delimiter @@ -211,7 +211,7 @@ bool basic_xml_grammar<CharType>::my_par } template<class CharType> -bool basic_xml_grammar<CharType>::parse_start_tag( +BOOST_SYMBOL_VISIBLE bool basic_xml_grammar<CharType>::parse_start_tag( typename basic_xml_grammar<CharType>::IStream & is ){ rv.class_name.resize(0); @@ -219,12 +219,12 @@ bool basic_xml_grammar<CharType>::parse_ } template<class CharType> -bool basic_xml_grammar<CharType>::parse_end_tag(IStream & is) const { +BOOST_SYMBOL_VISIBLE bool basic_xml_grammar<CharType>::parse_end_tag(IStream & is) const { return my_parse(is, ETag); } template<class CharType> -bool basic_xml_grammar<CharType>::parse_string(IStream & is, StringType & s){ +BOOST_SYMBOL_VISIBLE bool basic_xml_grammar<CharType>::parse_string(IStream & is, StringType & s){ rv.contents.resize(0); bool result = my_parse(is, content, '<'); // note: unget caused a problem with dinkumware. replace with @@ -237,7 +237,7 @@ bool basic_xml_grammar<CharType>::parse_ } template<class CharType> -basic_xml_grammar<CharType>::basic_xml_grammar(){ +BOOST_SYMBOL_VISIBLE basic_xml_grammar<CharType>::basic_xml_grammar(){ init_chset(); S = @@ -434,7 +434,7 @@ basic_xml_grammar<CharType>::basic_xml_g } template<class CharType> -void basic_xml_grammar<CharType>::init(IStream & is){ +BOOST_SYMBOL_VISIBLE void basic_xml_grammar<CharType>::init(IStream & is){ init_chset(); if(! my_parse(is, XMLDecl)) boost::serialization::throw_exception( @@ -455,7 +455,7 @@ void basic_xml_grammar<CharType>::init(I } template<class CharType> -void basic_xml_grammar<CharType>::windup(IStream & is){ +BOOST_SYMBOL_VISIBLE void basic_xml_grammar<CharType>::windup(IStream & is){ if(is.fail() || is.eof()) return; // uh-oh - don't throw exception from code called by a destructor !