summaryrefslogtreecommitdiff
path: root/external/boost
AgeCommit message (Collapse)Author
2022-02-07boost / gettext warning improvement.Michael Meeks
std::runtime_exception of: "Invalid or unsupported charset:UTF-8 or UTF-8" is less useful than it could be when spat out from the boost gettext impl. Survive for the next (and probably more useful) exception. Change-Id: Ibeb60b4a34f09f47051844c3e8048f38618d0e05 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129566 Tested-by: Jenkins Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
2022-01-19WASM boost: fix build with EmscriptenJan-Marek Glogowski
boost probably expects a WASI, not Emscripten. Change-Id: I7f275e1b501d6ea46d43637be815bf5a45b1cc40 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128586 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-11-10Upgrade external/boost to latest Boost 1.77.0Stephan Bergmann
<https://dev-www.libreoffice.org/src/boost_1_77_0.tar.xz> has been generated (on Fedora 35) with > $ wget https://boostorg.jfrog.io/artifactory/main/release/1.77.0/source/boost_1_77_0.tar.bz2 > $ printf 'fc9f85fc030e233142908241af7a846e60630aa7388de9a5fafb1f3a26840854 boost_1_77_0.tar.bz2' | sha256sum -c # cf. <https://www.boost.org/users/history/version_1_77_0.html> > boost_1_77_0.tar.bz2: OK > $ external/boost/repack_tarball.sh boost_1_77_0.tar.bz2 > Unpacking boost_1_77_0.tar.bz2 ... > Removing unnecessary files ... > Creating boost_1_77_0.tar.xz ... > Cleaning up ... > 9b334d6c6d7af5a0687280788cd84444398b8e0b472cd88e52bbc3c3ef11d98e boost_1_77_0.tar.xz > Done. Change-Id: I527cad7eb2f311d968da371f268644bdd31f6462 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124947 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-11-04The std::auto_ptr workarounds should no longer be necessaryStephan Bergmann
...with the bundled Boost 1.76.0, as boost/locale no longer uses it since <https://github.com/boostorg/locale/commit/322437a485c63d9fce4dc620597b6c75b6396daf> "Adding dual auto_ptr/unique_ptr support" in Boost 1.67.0 in combination with BOOST_NO_AUTO_PTR being set automatically when building for C++17 and beyond for both libc++ (via <https://github.com/boostorg/config/commit/0df7552f38cc059defa4189d7a36101925559eb8> "define BOOST_NO_AUTO_PTR when building with libc++ and C++17" in Boost 1.65.0) and MSVC (via <https://github.com/boostorg/config/commit/776bc8ac107e864fc4c51d6aee0e532026a50281> "Update for MSVC14's _HAS_AUTO_PTR_ETC" in Boost 1.60.0; if we didn't globally set _HAS_AUTO_PTR_ETC in gb_COMPILERDEFS in solenv/gbuild/platform/com_MSC_defs.mk since 61c88ae6945c241f5f2aeb844eeca0776b487132 "gbuild: always compile as C++17 with MSVC 2017" anyway) Change-Id: Idd9d44c8350217f19ad2fa6749b90a9ffce38511 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124712 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-08-12disable gcc warnings when using boost::make_sharedNoel Grandin
Change-Id: I02a54d9ab9c1faf36ce0b03b6ca42b3708f02667 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120394 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-08-10Clean up remaining uses of boost::logic::triboolStephan Bergmann
obFitShapeToText and obRelFlipV can just as well be modelled with std::optional<bool>, and obFlipH and obFlipV apparently only need two states anyway (as for a boost::logic::tribool x, bool(x == true) is true iff x has the value true) Change-Id: Ic35e33ffa4ee30d1c2cdf9f8d4aa3bae29ece2af Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120281 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-08-10Upgrade external/boost to latest Boost 1.76.0Stephan Bergmann
* <https://dev-www.libreoffice.org/src/boost_1_76_0.tar.xz> has been generated (on Fedora 34) with > $ wget https://boostorg.jfrog.io/native/main/release/1.76.0/source/boost_1_76_0.tar.bz2 > $ printf 'f0397ba6e982c4450f27bf32a2a83292aba035b827a5623a14636ea583318c41 boost_1_76_0.tar.bz2' | sha256sum -c # cf. <https://www.boost.org/users/history/version_1_76_0.html> > boost_1_76_0.tar.bz2: OK > $ external/boost/repack_tarball.sh boost_1_76_0.tar.bz2 > Unpacking boost_1_76_0.tar.bz2 ... > Removing unnecessary files ... > Creating boost_1_76_0.tar.xz ... > Cleaning up ... > adfa0ca971c56006a8304b6146d1382e6369815d568f6e6a7440fe29995d51b8 boost_1_76_0.tar.xz > Done. * external/boost/0001-Fix-include-inside-boost-namespace.patch.2 is necessary to fix > checking for boost/math/constants/constants.hpp... no > configure: error: Required boost headers not found. > make[1]: *** [external/libzmf/ExternalProject_libzmf.mk:28: workdir/ExternalProject/libzmf/build] Error 1 with recent libstdc++ 12 trunk (presumably since <https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=261d5a4a459bd49942e53bc83334ccc7154a09d5> "libstdc++: Reduce header dependencies on <array> and <utility>", and with other standard libraries <utility> was likely already included indirectly earlier, so the include nested in namespace boost::math::tools::meta_programming in the middle of workdir/UnpackedTarball/boost/boost/math/tools/mp.hpp didn't cause harm). Change-Id: I1eee23915fea48bbb383cbeefc4ddfdeaac63e14 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120253 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-05-05WASM: add initial support for Emscripten cross buildJan-Marek Glogowski
- configure with: - --host=wasm64-local-emscripten - had to make a few externals optional, so adding: - --disable-nss - --disable-cmis - --disable-curl Change-Id: I48d1c73d2675ad2e2beaf2c341578199efbd24ee Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111130 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2021-01-14external/boost: Silence Boost bind deprecation warningStephan Bergmann
> In file included from desktop/source/lib/lokinteractionhandler.cxx:22: > In file included from external/boost/include/boost/property_tree/json_parser.hpp:30: > In file included from workdir/UnpackedTarball/boost/boost/property_tree/json_parser.hpp:16: > In file included from workdir/UnpackedTarball/boost/boost/property_tree/json_parser/detail/read.hpp:13: > In file included from workdir/UnpackedTarball/boost/boost/property_tree/json_parser/detail/parser.hpp:7: > In file included from external/boost/include/boost/bind.hpp:30: > workdir/UnpackedTarball/boost/boost/bind.hpp:36:1: warning: The practice of declaring the Bind placeholders (_1, _2, ...) in the global namespace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior. [-W#pragma-messages] > BOOST_PRAGMA_MESSAGE( > ^ etc. from within boost/property_tree/json_parser.hpp wherever that is included, since e0f1b5bd94550835c639efda4e4c9a801c78dbe9 "Upgrade external/boost to latest Boost 1.75.0". Change-Id: I2c780966e4774a8d58d1cbdf21f77d685da00689 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109229 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-01-06Upgrade external/boost to latest Boost 1.75.0Stephan Bergmann
* <https://dev-www.libreoffice.org/src/boost_1_75_0.tar.xz> has been generated (on Fedora 33) with > $ wget https://dl.bintray.com/boostorg/release/1.75.0/source/boost_1_75_0.tar.bz2 > $ printf '953db31e016db7bb207f11432bef7df100516eeb746843fa0486a222e3fd49cb boost_1_75_0.tar.bz2' | sha256sum -c # cf. <https://www.boost.org/users/history/version_1_75_0.html> > boost_1_75_0.tar.bz2: OK > $ external/boost/repack_tarball.sh boost_1_75_0.tar.bz2 > Unpacking boost_1_75_0.tar.bz2 ... > Removing unnecessary files ... > Creating boost_1_75_0.tar.xz ... > Cleaning up ... > cc378a036a1cfd3af289f3da24deeb8dba7a729f61ab104c7b018a622e22d21b boost_1_75_0.tar.xz > Done. * external/boost/StaticLibrary_boost_date_time.mk: Even though date_generators.cpp and greg_weekday.cpp are still present, their function definitions are now covered by inline function definitions in include files, > workdir/UnpackedTarball/boost/libs/date_time/src/gregorian/greg_weekday.cpp:23:17: error: redefinition of 'as_short_string' > greg_weekday::as_short_string() const > ^ > workdir/UnpackedTarball/boost/boost/date_time/gregorian/greg_weekday.hpp:52:17: note: previous definition is here > const char* as_short_string() const > ^ etc. and > workdir/UnpackedTarball/boost/libs/date_time/src/gregorian/date_generators.cpp:23:36: error: redefinition of 'nth_as_str' > BOOST_DATE_TIME_DECL const char* nth_as_str(int ele) > ^ > workdir/UnpackedTarball/boost/boost/date_time/date_generators.hpp:157:22: note: previous definition is here > inline const char* nth_as_str(int ele) > ^ * external/boost/StaticLibrary_boost_filesystem.mk now lacked various symbols, as seen when linking external/liborcus' orcus-parser library: > "boost::filesystem::emit_error(int, boost::system::error_code*, char const*)", referenced from: [...] > "boost::filesystem::emit_error(int, boost::filesystem::path const&, boost::system::error_code*, char const*)", referenced from: [...] > "boost::filesystem::emit_error(int, boost::filesystem::path const&, boost::filesystem::path const&, boost::system::error_code*, char const*)", referenced from: [...] > "boost::filesystem::filesystem_error::filesystem_error(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, boost::filesystem::path const&, boost::system::error_code)", referenced from: [...] > "boost::filesystem::filesystem_error::filesystem_error(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, boost::filesystem::path const&, boost::filesystem::path const&, boost::system::error_code)", referenced from: [...] > "boost::filesystem::filesystem_error::~filesystem_error()", referenced from: [...] > "boost::filesystem::detail::dir_itr_close(void*&, void*&)", referenced from: [...] > "boost::filesystem::detail::directory_iterator_construct(boost::filesystem::directory_iterator&, boost::filesystem::path const&, unsigned int, boost::system::error_code*)", referenced from: [...] > "boost::filesystem::detail::directory_iterator_increment(boost::filesystem::directory_iterator&, boost::system::error_code*)", referenced from: [...] > "typeinfo for boost::filesystem::filesystem_error", referenced from: [...] * No longer sure why external/boost/gcc9.patch.0 from e7b8728f5c0292a6c6a18e76220b1769ecf25aa3 "external/boost: silence -Werror=deprecated-copy (GCC trunk towards GCC 9)" was necessary at all, in addition to that commit's > #pragma GCC diagnostic ignored "-Wdeprecated-copy" changes, but at least a build with recent GCC 11 trunk appears to work fine now without it. (And the patch would no longer have applied as-is.) * The dropped patches in external/boost/c++20-allocator.patch.0 and external/boost/clang-cl.patch.0 would no longer have applied as-is, but also appear not to be needed any more. * external/boost/include/boost/property_tree/ptree_fwd.hpp became necessary to silence > In file included from workdir/UnpackedTarball/boost/boost/property_tree/ptree_fwd.hpp:16, > from libreofficekit/qa/gtktiledviewer/gtv-helpers.hxx:21, > from libreofficekit/qa/gtktiledviewer/gtv-application-window.cxx:19: > workdir/UnpackedTarball/boost/boost/throw_exception.hpp: In instantiation of ‘boost::wrapexcept<E>::wrapexcept(const E&, const boost::source_location&) [with E = boost::property_tree::ptree_bad_data]’: > workdir/UnpackedTarball/boost/boost/throw_exception.hpp:171:11: required from ‘void boost::throw_exception(const E&, const boost::source_location&) [with E = boost::property_tree::ptree_bad_data]’ > workdir/UnpackedTarball/boost/boost/property_tree/detail/ptree_implementation.hpp:826:13: required from ‘void boost::property_tree::basic_ptree<Key, Data, KeyCompare>::put_value(const Type&, Translator) [with Type = char [8]; Translator = boost::property_tree::stream_translator<char, std::char_traits<char>, std::allocator<char>, char [8]>; Key = std::__cxx11::basic_string<char>; Data = std::__cxx11::basic_string<char>; KeyCompare = std::less<std::__cxx11::basic_string<char> >]’ > workdir/UnpackedTarball/boost/boost/property_tree/detail/ptree_implementation.hpp:845:34: required from ‘boost::property_tree::basic_ptree<K, D, C>& boost::property_tree::basic_ptree<Key, Data, KeyCompare>::put(const path_type&, const Type&, Translator) [with Type = char [8]; Translator = boost::property_tree::stream_translator<char, std::char_traits<char>, std::allocator<char>, char [8]>; Key = std::__cxx11::basic_string<char>; Data = std::__cxx11::basic_string<char>; KeyCompare = std::less<std::__cxx11::basic_string<char> >; boost::property_tree::basic_ptree<Key, Data, KeyCompare>::path_type = boost::property_tree::string_path<std::__cxx11::basic_string<char>, boost::property_tree::id_translator<std::__cxx11::basic_string<char> > >]’ > workdir/UnpackedTarball/boost/boost/property_tree/detail/ptree_implementation.hpp:859:19: required from ‘boost::property_tree::basic_ptree<K, D, C>& boost::property_tree::basic_ptree<Key, Data, KeyCompare>::put(const path_type&, const Type&) [with Type = char [8]; Key = std::__cxx11::basic_string<char>; Data = std::__cxx11::basic_string<char>; KeyCompare = std::less<std::__cxx11::basic_string<char> >; boost::property_tree::basic_ptree<Key, Data, KeyCompare>::path_type = boost::property_tree::string_path<std::__cxx11::basic_string<char>, boost::property_tree::id_translator<std::__cxx11::basic_string<char> > >]’ > libreofficekit/qa/gtktiledviewer/gtv-application-window.cxx:300:103: required from here > workdir/UnpackedTarball/boost/boost/throw_exception.hpp:134:82: error: implicitly-declared ‘boost::property_tree::ptree_bad_data::ptree_bad_data(const boost::property_tree::ptree_bad_data&)’ is deprecated [-Werror=deprecated-copy-dtor] > 134 | explicit wrapexcept( E const & e, boost::source_location const & loc ): E( e ) > | ^ > In file included from workdir/UnpackedTarball/boost/boost/property_tree/exceptions.hpp:84, > from workdir/UnpackedTarball/boost/boost/property_tree/string_path.hpp:16, > from workdir/UnpackedTarball/boost/boost/property_tree/ptree.hpp:16, > from external/boost/include/boost/property_tree/ptree.hpp:30, > from workdir/UnpackedTarball/boost/boost/property_tree/json_parser.hpp:14, > from external/boost/include/boost/property_tree/json_parser.hpp:30, > from libreofficekit/qa/gtktiledviewer/gtv-application-window.cxx:26: > workdir/UnpackedTarball/boost/boost/property_tree/detail/exception_implementation.hpp:51:12: note: because ‘boost::property_tree::ptree_bad_data’ has user-provided ‘virtual boost::property_tree::ptree_bad_data::~ptree_bad_data()’ > 51 | inline ptree_bad_data::~ptree_bad_data() throw() > | ^~~~~~~~~~~~~~ etc. Change-Id: I36fcd04ca6f109910761a5802535a18cfb17ddd9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108878 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-01-06external/boost: Backport a Boost 1.72.0 fixStephan Bergmann
...for issues with MSVC 2019 16.8.3 --with-latest-c++ in external/libwpd: > [build CXX] workdir/UnpackedTarball/libwpd/src/lib/libwpd_internal.cpp > C:\lo\core\workdir\UnpackedTarball\boost\boost/proto/generate.hpp(239): error C2039: 'value': is not a member of 'boost::proto' > C:\lo\core\workdir\UnpackedTarball\boost\boost/proto/generate.hpp(32): note: see declaration of 'boost::proto' > C:\lo\core\workdir\UnpackedTarball\boost\boost/proto/generate.hpp(239): note: This diagnostic occurred in the compiler generated function 'Extends<boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<MemberClass::* >,boost::proto::argsns_::term<MemberClass::* >::arity>> boost::proto::pod_generator<Extends>::operator ()(const boost::proto::exprns_::expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<MemberClass::* >,boost::proto::argsns_::term<MemberClass::* >::arity> &) const' > C:\lo\core\workdir\UnpackedTarball\boost\boost/proto/generate.hpp(252): note: see reference to class template instantiation 'boost::proto::pod_generator<Extends>' being compiled [...] Change-Id: Iae62b41e09b89bd387efab2744d47d938a868d17 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108839 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-07-22Silence GCC 11 trunk -Werror=nonnull in external/boostStephan Bergmann
...like > In file included from workdir/UnpackedTarball/boost/boost/concept/assert.hpp:35, > from workdir/UnpackedTarball/boost/boost/concept_check.hpp:20, > from workdir/UnpackedTarball/boost/boost/range/concepts.hpp:19, > from workdir/UnpackedTarball/boost/boost/range/size_type.hpp:20, > from workdir/UnpackedTarball/boost/boost/range/size.hpp:21, > from workdir/UnpackedTarball/boost/boost/range/functions.hpp:20, > from workdir/UnpackedTarball/boost/boost/range/iterator_range_core.hpp:38, > from workdir/UnpackedTarball/boost/boost/range/iterator_range.hpp:13, > from external/boost/include/boost/range/iterator_range.hpp:29, > from workdir/UnpackedTarball/boost/boost/range/as_literal.hpp:22, > from workdir/UnpackedTarball/boost/boost/algorithm/string/trim.hpp:19, > from workdir/UnpackedTarball/boost/boost/algorithm/string.hpp:19, > from external/boost/include/boost/algorithm/string.hpp:29, > from sal/cppunittester/cppunittester.cxx:61: > workdir/UnpackedTarball/boost/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::constraint<Model>::failed() [with Model = boost::algorithm::FinderConcept<boost::algorithm::detail::token_finderF<boost::algorithm::detail::is_any_ofF<char> >, const char*>]’: > workdir/UnpackedTarball/boost/boost/algorithm/string/iter_find.hpp:81:13: required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::__debug::vector<std::__cxx11::basic_string<char> >; RangeT = const char*&; FinderT = boost::algorithm::detail::token_finderF<boost::algorithm::detail::is_any_ofF<char> >]’ > workdir/UnpackedTarball/boost/boost/algorithm/string/split.hpp:158:50: required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, boost::algorithm::token_compress_mode_type) [with SequenceSequenceT = std::__debug::vector<std::__cxx11::basic_string<char> >; RangeT = const char*&; PredicateT = boost::algorithm::detail::is_any_ofF<char>]’ > sal/cppunittester/cppunittester.cxx:303:71: required from here > workdir/UnpackedTarball/boost/boost/concept/detail/general.hpp:47:52: error: ‘this’ pointer null [-Werror=nonnull] > 47 | static void failed() { ((Model*)0)->constraints(); } > | ~~~~~~~~~~~~~~~~~~~~~~~~^~ Change-Id: Ia22b5d510ba41bea138dfcc8d8e0b9eb1e9ad41c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99217 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-03-30Mark external/boost/c++20-allocator.patch.0 as partially covered upstreamStephan Bergmann
Change-Id: I086e51c581202cd8c68a5a408b8d7575c953461d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91347 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-03-18repack the boost tarball to be smaller and fasterLuboš Luňák
The tarball is almost 100MiB and it unpacks to roughly 0.75GiB, because it contains tons of generated html docs and other stuff that is not needed for building. Unpacking it on Cygwin takes several minutes (done in parallel, but still) and even on Linux the unpacking takes longer than the actual compilation. Change-Id: Ied9f3059530f4e9a856170ec3fcc304631ff8e0a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89825 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-02-24boost: disable -Wmaybe-uninitialized from GCC 9.2.1 -OgMichael Stahl
This warning is notorious for false positives so let's disable it here. from sal/cppunittester/cppunittester.cxx:61: workdir/UnpackedTarball/boost/boost/function/function_template.hpp: In function ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::__debug::vector<std::__cxx11::basic_string<char> >; RangeT = const char*&; FinderT = boost::algorithm::detail::token_finderF<boost::algorithm::detail::is_any_ofF<char> >]’: workdir/UnpackedTarball/boost/boost/function/function_template.hpp:904:22: error: ‘*((void*)&<anonymous> +8)’ may be used uninitialized in this function [-Werror=maybe-uninitialized] 904 | std::memcpy(this->functor.data, f.functor.data, sizeof(boost::detail::function::function_buffer)); Change-Id: Id3cf9fae8db190337b6a3eb0c847c019394088ba Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89349 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-02-24boost: remove unused boost wrapper headersMichael Stahl
Change-Id: I543e60e295cf87f773f05faf6cfb8da285fac466 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89348 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-01-15Bump boost version to 1.71David Ostrovsky
Change-Id: Ica4aba467aa00236a4d1c5b0411d1ebc657ea4df Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86594 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-12-12Enable -Wdeprecated-copy-dtor where availableStephan Bergmann
We already get -Wdeprecated-copy (warning about implicitly defined copy functions that will in the future be deleted because other user-provided copy functions exist) automatically through -Wextra, where available. -Wdeprecated-copy-dtor (warning about implicitly defined copy functions that will in the future be deleted because of a user-provided dtor) is split off into its own warning excluded from -Wextra for somewhat unclear reasons, see the discussion at <https://gcc.gnu.org/bugzilla/buglist.cgi?quicksearch=88136> "-Wdeprecated-copy is draconian and shouldn't be in -Wall". But -Wdeprecated-copy-dtor has been useful in finding issues (esp. the Clang 10 trunk version, which, unlike the GCC 9 version, also finds copy functions that are implicitly defined because they are used from template instantiations), see 3e59716375a240576fd6d8759b32b4319506ed70 "Prevent BroadcastRecalcOnRefMoveHandler copies" and 4f98cd0f9ce9c2a331a5d34b3ef9d18f9bb6b235 "ScShapeChild has broken copy functions". We need to disable -Wdeprecated-copy-dtor in files included from external/boost, and in two compilerplugin/clang/test/ files. Change-Id: I74b159c3a046e23661473ddbfe53c92c4136a9db Reviewed-on: https://gerrit.libreoffice.org/85073 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-10-28external/boost: Adapt to std::allocator parts removed in C++20Stephan Bergmann
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0174r2.html#4.2> "Deprecating Vestigial Library Parts in C++17" deprecated, among others, std::allocator::rebind and std::allocator::allocate's hint parameter, and <http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0619r4.html#3.9> "Reviewing Deprecated Facilities of C++17 for C++20" removed them completely. (And <https://gcc.gnu.org/git/?p=gcc.git;a=commit; h=954026a7a4e6a1affd1ac5db237ccd75a3316760> "Remove redundant std::allocator members for C++20" removed them from libstdc++ now for -std=c++2a.) The change to boost/bimap/detail/bimap_core.hpp was necessary in Library_pdfimport: > In file included from workdir/UnpackedTarball/boost/boost/bimap/bimap.hpp:61, > from external/boost/include/boost/bimap/bimap.hpp:30, > from sdext/source/pdfimport/inc/pdfiprocessor.hxx:49, > from sdext/source/pdfimport/pdfiadaptor.cxx:27: > workdir/UnpackedTarball/boost/boost/bimap/detail/bimap_core.hpp: In instantiation of ‘class boost::bimaps::detail::bimap_core<boost::bimaps::unordered_set_of<pdfi::GraphicsContext, pdfi::GraphicsContextHash>, boost::bimaps::unordered_set_of<int>, mpl_::na, mpl_::na, mpl_::na>’: > workdir/UnpackedTarball/boost/boost/bimap/bimap.hpp:133:7: required from ‘class boost::bimaps::bimap<boost::bimaps::unordered_set_of<pdfi::GraphicsContext, pdfi::GraphicsContextHash>, boost::bimaps::unordered_set_of<int> >’ > sdext/source/pdfimport/inc/pdfiprocessor.hxx:190:44: required from here > workdir/UnpackedTarball/boost/boost/bimap/detail/bimap_core.hpp:410:7: error: no class template named ‘rebind’ in ‘boost::bimaps::detail::manage_additional_parameters<mpl_::na, mpl_::na, mpl_::na>::case_NNN::allocator’ {aka ‘class std::allocator<void>’} > 410 | > core_type; > | ^~~~~~~~~ [...] The change to boost/format/alt_sstream_impl.hpp was necessary in ExternalProject_libpagemaker: > In file included from libpagemaker_utils.h:22, > from geometry.h:20, > from OutputShape.h:17, > from OutputShape.cpp:10: > external/boost/include/boost/cstdint.hpp:30:2: warning: #include_next is a GCC extension > 30 | #include_next <boost/cstdint.hpp> > | ^~~~~~~~~~~~ > In file included from workdir/UnpackedTarball/boost/boost/format/alt_sstream.hpp:174, > from workdir/UnpackedTarball/boost/boost/format/internals.hpp:24, > from workdir/UnpackedTarball/boost/boost/format.hpp:38, > from PMDExceptions.h:15, > from OutputShape.h:16, > from OutputShape.cpp:10: > workdir/UnpackedTarball/boost/boost/format/alt_sstream_impl.hpp: In instantiation of ‘boost::io::basic_altstringbuf<Ch, Tr, Alloc>::int_type boost::io::basic_altstringbuf<Ch, Tr, Alloc>::overflow(boost::io::basic_altstringbuf<Ch, Tr, Alloc>::int_type) [with Ch = char; Tr = std::char_traits<char>; Alloc = std::allocator<char>; boost::io::basic_altstringbuf<Ch, Tr, Alloc>::int_type = int]’: > workdir/UnpackedTarball/boost/boost/format/alt_sstream_impl.hpp:227:9: required from here > workdir/UnpackedTarball/boost/boost/format/alt_sstream_impl.hpp:261:45: error: no matching function for call to ‘std::allocator<char>::allocate(std::size_t&, char*)’ > 261 | newptr = alloc_.allocate(new_size, is_allocated_? oldptr : 0); > | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > In file included from gcc/trunk/inst/include/c++/10.0.0/memory:64, > from OutputShape.h:13, > from OutputShape.cpp:10: > gcc/trunk/inst/include/c++/10.0.0/bits/allocator.h:164:7: note: candidate: ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = char; std::size_t = long unsigned int]’ > 164 | allocate(size_t __n) > | ^~~~~~~~ > gcc/trunk/inst/include/c++/10.0.0/bits/allocator.h:164:7: note: candidate expects 1 argument, 2 provided Change-Id: Id423f7597fe2e84e57df1d48a2ecc4d636c4a913 Reviewed-on: https://gerrit.libreoffice.org/81584 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-10-01external/boost: clang-cl cannot use MSVC's ATOMIC_FLAG_INITStephan Bergmann
The C++ standard leaves it unspecified how ATOMIC_FLAG_INIT is defined, and at least MS Visual Studio 2017 version 15.9 defines it as {0}, asking for list- initialization, but std::atomic_flag is no aggregate (it has a default ctor) and has no suitable ctor for that initializer list. Other standard library implementations solve that by e.g. adding a std::atomic_flag ctor taking a bool parameter, and defining ATOMIC_FLAG_INIT as std::atomic_flag(false); but MSVC apparently relies on some non-standard behavior here that allows to initialize std::atomic_flag from {0}. But that is apparently not supported by clang-cl, causing failures like > [build CXX] workdir/UnpackedTarball/boost/libs/locale/src/shared/date_time.cpp > In file included from workdir/UnpackedTarball/boost/libs/locale/src/shared/date_time.cpp:11: > In file included from workdir/UnpackedTarball/boost\boost/thread/locks.hpp:10: > In file included from workdir/UnpackedTarball/boost\boost/thread/lock_algorithms.hpp:11: > In file included from workdir/UnpackedTarball/boost\boost/thread/lock_types.hpp:18: > In file included from workdir/UnpackedTarball/boost\boost/thread/thread_time.hpp:9: > In file included from workdir/UnpackedTarball/boost\boost/date_time/time_clock.hpp:17: > In file included from external/boost/include\boost/shared_ptr.hpp:27: > In file included from workdir/UnpackedTarball/boost\boost/shared_ptr.hpp:17: > In file included from workdir/UnpackedTarball/boost\boost/smart_ptr/shared_ptr.hpp:36: > workdir/UnpackedTarball/boost\boost/smart_ptr/detail/spinlock_pool.hpp(77,5): error: no matching constructor for initialization of 'std::atomic_flag' > BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, > ^~~~~~~~~~~~~~~~~~~~~~~~~~ > workdir/UnpackedTarball/boost\boost/smart_ptr/detail/spinlock_std_atomic.hpp(81,38): note: expanded from macro 'BOOST_DETAIL_SPINLOCK_INIT' > #define BOOST_DETAIL_SPINLOCK_INIT { ATOMIC_FLAG_INIT } > ^~~~~~~~~~~~~~~~ > C:/PROGRA~2/MIB055~1/2017/COMMUN~1/VC/Tools/MSVC/1416~1.270/Include\atomic(158,26): note: expanded from macro 'ATOMIC_FLAG_INIT' > #define ATOMIC_FLAG_INIT {0} > ^~~ > C:/PROGRA~2/MIB055~1/2017/COMMUN~1/VC/Tools/MSVC/1416~1.270/Include\atomic(169,2): note: candidate constructor not viable: no known conversion from 'int' to 'const std::atomic_flag' for 1st argument > atomic_flag(const atomic_flag&) = delete; > ^ > C:/PROGRA~2/MIB055~1/2017/COMMUN~1/VC/Tools/MSVC/1416~1.270/Include\atomic(168,2): note: candidate constructor not viable: requires 0 arguments, but 1 was provided > atomic_flag() noexcept = default; > ^ The internals of external/boost appear to be the only place where we currently use ATOMIC_FLAG_INIT, and we can work around that easily by picking a different backend in boost/smart_ptr/detail/spinlock.hpp for the problematic combination of Clang and _MSC_VER 1916 (which may need to be extended to further MSVC versions). Change-Id: Ie6aa62556efbedd3897ad7803b546cb8088ebe10 Reviewed-on: https://gerrit.libreoffice.org/79967 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-05-24disable warnings in external libsLuboš Luňák
As in, really disable, so that they do not even show. This moreover avoids tons of D9025 warnings from MSVC about overriding -W4 with -w. Change-Id: Ia2e72fd72d883d91bdd89e467ee42f259e2ae033 Reviewed-on: https://gerrit.libreoffice.org/72899 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-01-30external/boost/boost_1_60_0.undef.warning.patch should no longer be necessaryStephan Bergmann
...(at least the original BOOST_GCC_VERSION part) as Boost 1.69.0 boost/config/workaround.hpp contains > #ifndef BOOST_GCC > #define BOOST_GCC_WORKAROUND_GUARD 1 > #define BOOST_GCC_VERSION_WORKAROUND_GUARD 1 > #else > #define BOOST_GCC_WORKAROUND_GUARD 0 > #define BOOST_GCC_VERSION_WORKAROUND_GUARD 0 > #endif Change-Id: I7690db147dbe776ff51b94fc9950b890bb290bda Reviewed-on: https://gerrit.libreoffice.org/67000 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-01-30Just define the __clang_major___WORKAROUND_GUARDJan-Marek Glogowski
Change-Id: I84e969005ac2a96da449b5434ee5fdb37fc9b432 Reviewed-on: https://gerrit.libreoffice.org/66928 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-01-15Avoid -Werror=undef in boost/optional.hppStephan Bergmann
...after 23a8d5ffbbe58761b89f590f0735abccd69a3681 "Upgrade external/boost to Boost 1.69.0", where at least some GCC versions apparently choke on -Wundef there even though going through external/boost/include/boost/optional.hpp with #pragma GCC diagnostic ignored "-Wundef" (<https://ci.libreoffice.org/job/lo_tb_master_linux_dbg/23929/>): > In file included from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/workdir/UnpackedTarball/boost/boost/core/explicit_operator_bool.hpp:22:0, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/workdir/UnpackedTarball/boost/boost/optional/optional.hpp:30, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/external/boost/include/boost/optional/optional.hpp:27, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/workdir/UnpackedTarball/boost/boost/optional.hpp:15, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/external/boost/include/boost/optional.hpp:27, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/include/vcl/outdevstate.hxx:31, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/include/vcl/outdev.hxx:39, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/include/vcl/window.hxx:25, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/include/vcl/ctrl.hxx:25, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/include/vcl/fixed.hxx:25, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/comphelper/source/misc/xmlsechelper.cxx:25: > /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/workdir/UnpackedTarball/boost/boost/type_traits/detail/config.hpp:85:69: error: "__clang_major___WORKAROUND_GUARD" is not defined, evaluates to 0 [-Werror=undef] > && !BOOST_WORKAROUND(BOOST_MSVC, < 1900) && !BOOST_WORKAROUND(__clang_major__, <= 4) > ^ > /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/workdir/UnpackedTarball/boost/boost/config/workaround.hpp:253:10: note: in definition of macro ‘BOOST_WORKAROUND’ > ((symbol ## _WORKAROUND_GUARD + 0 == 0) && \ > ^~~~~~ > /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/workdir/UnpackedTarball/boost/boost/type_traits/detail/config.hpp:85:69: error: "__clang_major__" is not defined, evaluates to 0 [-Werror=undef] > && !BOOST_WORKAROUND(BOOST_MSVC, < 1900) && !BOOST_WORKAROUND(__clang_major__, <= 4) > ^ > /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/workdir/UnpackedTarball/boost/boost/config/workaround.hpp:254:9: note: in definition of macro ‘BOOST_WORKAROUND’ > (symbol != 0) && (1 % (( (symbol test) ) + 1))) > ^~~~~~ Change-Id: I9fe6bf0019fcddad7e1b5606a162474130a9250e Reviewed-on: https://gerrit.libreoffice.org/66349 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-01-15Upgrade external/boost to Boost 1.69.0Stephan Bergmann
<https://dev-www.libreoffice.org/src/boost_1_69_0.tar.bz2> is a copy of <https://dl.bintray.com/boostorg/release/1.69.0/source/boost_1_69_0.tar.bz2>, SHA256 hash as given at <https://www.boost.org/users/download/>. * removed from external/boost/include/boost/ those files that are no longer present in workdir/UnpackedTarball/boost/boost/ * the shrunk external/boost/rtti.patch.0 can probably be removed completely in a follow-up commit * the patch to libs/filesystem/src/operations.cpp in external/boost/boost-android-unified.patch.1 no longer applied, and appears to be no longer necessary anyway (seeing a working build without it of --with-distro=LibreOfficeAndroid and NDK r16b); but with the non-standard Clang 5.0.300080 from NDK r16b, the build now caused failures like > workdir/UnpackedTarball/boost/boost/type_traits/detail/is_function_cxx_11.hpp:36:11: error: class template partial specialization contains a template parameter that cannot be deduced; this partial specialization will never be used [-Wunusable-partial-specialization] > struct is_function<Ret BOOST_TT_DEF_CALL(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {}; > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > workdir/UnpackedTarball/boost/boost/type_traits/detail/is_function_cxx_11.hpp:35:38: note: non-deducible template parameter 'NE' > template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> > ^ > workdir/UnpackedTarball/boost/boost/type_traits/detail/is_function_cxx_11.hpp:22:40: note: expanded from macro 'BOOST_TT_NOEXCEPT_PARAM' > #define BOOST_TT_NOEXCEPT_PARAM , bool NE > ^ showing that that version of Clang has the same problem handling noexcept(b) as a deduced template parameter as MSVC has, as already supported by the code * new external/boost/sse.patch.0 needed on Windows x86 to silence errors like > C:\cygwin\home\tdf\lode\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/type_traits/detail/is_function_cxx_11.hpp(111): error C2215: '__vectorcall' cannot be used with '/arch:SSE' (<https://ci.libreoffice.org/job/gerrit_windows/26117/>); according to <https://docs.microsoft.com/en-us/cpp/preprocessor/predefined-macros ?view=vs-2017>: "_M_IX86_FP Defined as an integer literal value that indicates the /arch compiler option that was set, or the default. This macro is always defined when the compilation target is an x86 processor. Otherwise, undefined. When defined, the value is: [...] 1 if the /arch:SSE compiler option was set." and we specify /arch:SSE explicitly for Windows x86 since 8bd6bf93b7711a7ac7c5cbd7c3bb980481570ebd "fdo#82430: configure: MSVC build: avoid using SSE2 instructions" * boost::logic::tribool conversion operator to bool is explicit now Change-Id: Iea49560d734f545539f062dce46740fbf812dd84 Reviewed-on: https://gerrit.libreoffice.org/66189 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com>
2019-01-11Drop external/boost/boost.gcc47679.patchStephan Bergmann
The corresponding <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=47679> "[5 Regression] Strange uninitialized warning after SRA" is claimed to be fixed in GCC 6, so should no longer be needed (with our current baseline of GCC 7). Change-Id: Ia9435dbf6644639961094d6bfb47e47500ab70b7 Reviewed-on: https://gerrit.libreoffice.org/66181 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-11-30Remove obsolete _MSC_VER checksStephan Bergmann
...after 206b8c4ae320d7d8614f21800d8f77fa29f8f5ff "On Windows, check for at least Visual Studio 2017 version 15.7" Change-Id: I38ee86e1649bbdc828a7e328f2dbbac0dc163c8a Reviewed-on: https://gerrit.libreoffice.org/64250 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-08-31cl version 19.15.26726 (VS 2017 15.8.1) still produces those warningsStephan Bergmann
...see d84bf553afa510e5c674817fa480ac0af62e4945 "Silence external/boost deprecated std::iterator warnings with MSVC 2017" Change-Id: I886ce27b90184aa0044f5a89f40cdd69507a70c4 Reviewed-on: https://gerrit.libreoffice.org/59831 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-08-09Silence external/boost deprecated std::iterator warnings with MSVC 2017Stephan Bergmann
At least cl version 19.14.26433 generates such warning C4996 now. While the one about the using declaration in boost/iterator.hpp looks somewhat bogus, the one in boost/circular_buffer/details.hpp is about an actual use of std::iterator as a base class in Boost-internal code. If further such places in external/boost crop up that need fixing, an alternative approach could be to extend the external/boost/include/ wrappers to be also used with MSVC. (Globally setting _SILENCE_CXX17_ITERATOR_BASE_CLASS_DEPRECATION_WARNING has avoided, as it also finds uses in our own code that should be fixed, like 58222feb7fee0c08fb54b9ee29f8f0674c5cf508 "warning STL4015: std::iterator is deprecated (clang-cl)".) Change-Id: I6a41421a590fcee57b4ac8bcb7c3631fdfdecb81 Reviewed-on: https://gerrit.libreoffice.org/58755 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-07-26external/boost: silence -Werror=deprecated-copy (GCC trunk towards GCC 9)Stephan Bergmann
Change-Id: I25703979ebe94649f9cf1464d282b21a70cfe1fa Reviewed-on: https://gerrit.libreoffice.org/58041 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-05-17Don't ever attempt to initialise a std::locale with a UTF-8 locale on WindowsTor Lillqvist
As I said in 2ff121f298e64ff204621220622472fe697d599d, passing a POSIX-style locale name to the std::locale constructor on Windows is decidedly odd, and apparently boost adds insult to injury by even really attempting to use a UTF-8 one if that is what our code thinks it wants. Or something. This commit avoids the ton of "warn:unotools.i18n:7996:3544:unotools/source/i18n/resmgr.cxx:123: CRT Report Hook: ASSERT: f:\dd\vctools\crt\crtw32\stdcpp\xmbtowc.c(89) : Assertion failed: ploc->_Mbcurmax == 1 || ploc->_Mbcurmax == 2" we otherwise get when built with --enable-dbgutil and a current VS2015 (or 2017?). Change-Id: I3a774dff7b12d9960f553c9f242e0463c6d13d5d Reviewed-on: https://gerrit.libreoffice.org/54444 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2018-05-04Removed executable permission on data filesAndrea Gelmini
chmod -x for doc, xlsx, png, hxx, cxx, xls, ppt, hpp Change-Id: I52aed261e318cfd765e9adb3ed8edd226c8a59d8 Reviewed-on: https://gerrit.libreoffice.org/52569 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2018-02-01external: MSVC: pragma warning: make more specific, remove obsoleteMike Kaganski
Change-Id: Ic17ffd6fc34504cf848d963e787e685ed2142080 Reviewed-on: https://gerrit.libreoffice.org/48978 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-01-24Silence upcoming GCC 8 -Werror=parentheses in external/boostStephan Bergmann
...reporting such delights as > [CXX] sal/cppunittester/cppunittester.cxx > In file included from workdir/UnpackedTarball/boost/boost/mpl/aux_/na_assert.hpp:23, [...] > from external/boost/include/boost/algorithm/string.hpp:25, > from sal/cppunittester/cppunittester.cxx:60: > workdir/UnpackedTarball/boost/boost/mpl/assert.hpp:188:21: error: unnecessary parentheses in declaration of ‘assert_arg’ [-Werror=parentheses] > failed ************ (Pred::************ > ^ where boost/mpl/assert.hpp contains > template< typename Pred > > failed ************ (Pred::************ > assert_arg( void (*)(Pred), typename assert_arg_pred<Pred>::type ) > ); Change-Id: I6976b2cc23f1d309d27d3fde9098b10c9d877599 Reviewed-on: https://gerrit.libreoffice.org/48386 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-01-23Silence -Werror,-Wundef in external/boostStephan Bergmann
> [CXX] vcl/unx/gtk3_kde5/gtk3_kde5_folderpicker.cxx > In file included from vcl/unx/gtk3_kde5/gtk3_kde5_folderpicker.cxx:20: > In file included from vcl/unx/gtk3_kde5/gtk3_kde5_folderpicker.hxx:30: > In file included from vcl/unx/gtk3_kde5/gtk3_kde5_filepicker_ipc.hxx:29: > In file included from workdir/UnpackedTarball/boost/boost/process/child.hpp:22: > In file included from workdir/UnpackedTarball/boost/boost/process/detail/execute_impl.hpp:24: > workdir/UnpackedTarball/boost/boost/process/detail/posix/executor.hpp:446:5: error: 'BOOST_POSIX_HAS_VFORK' is not defined, evaluates to 0 [-Werror,-Wundef] > #if BOOST_POSIX_HAS_VFORK > ^ under --enable-gtk3-kde5 Change-Id: Ib4648d1337a493c35b35897dc71c5e971c6eb214
2018-01-22boost: upgrade to release 1.66.0Michael Stahl
This claims to support Visual Studio 2017.4, but not the current 2017.5. * remove boost.auto_link.patch; it does not apply; not sure why we need this if we can just define BOOST_ALL_NO_LIB (see commit 7f2e168421c3cd928a31a52a8b5afe97e931d3ba) * remove some hunks from clang-cl.patch.0 that look fixed upstream * add a global workaround for spurious GCC warning: oox/source/drawingml/shape.cxx:921:54: error: ‘oShadowColor.boost::optional_detail::tc_optional_base<int>::m_storage’ may be used uninitialized in this function [-Werror=maybe-uninitialized] aFormat.Color = *oShadowColor; Change-Id: I1eb1d8b66554a84a7d7269f1faaa98695fe2f501 Reviewed-on: https://gerrit.libreoffice.org/48187 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-01-18android: use unified headers and llvm-c++ STL (x86) with NDK 16Christian Lohmaier
gnustl (and others) are to be removed in future versions of the ndk also bump gradle and build-tools to current versions along with it arm unfortunately crashes with llvm-c++, so keep with gnustl for now/fix that later Change-Id: Ic794c3293b599b77ec48096bf3283a99c09cbb79 Reviewed-on: https://gerrit.libreoffice.org/45163 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Tested-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2018-01-10Silence clang-cl -Werror,-Wmicrosoft-unqualified-friend, reduxStephan Bergmann
...adding two more wrapper files missing from aef6da021da33f099f99ed633814b8771ad4abda "Silence clang-cl -Werror,-Wmicrosoft- unqualified-friend in external/boost", necessary since 653736fb23346e07e8c0e6e0125689ae1f49f0f7 "pdf: use bimap for GraphicsContext-id map" Change-Id: Ied377274d355f27af5d97d7bea89e3b598d9b7d0 Reviewed-on: https://gerrit.libreoffice.org/47688 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-01-09Silence clang-cl -Werror,-Wmicrosoft-unqualified-friend in external/boostStephan Bergmann
...messages like: > workdir/UnpackedTarball/boost\boost/bimap/detail/map_view_iterator.hpp(138,18): error: unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier [-Werror,-Wmicrosoft-unqualified-friend] > friend class iterator_core_access; > ^ > ::boost::iterators:: Change-Id: I393b7c95943a55d5f755cfed41e0b7bc3306c568 Reviewed-on: https://gerrit.libreoffice.org/47673 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-20Remove Clang -Wunknown-pragmas workaroundStephan Bergmann
...that appears to only be necessary for Clang <= 3.4, so no longer needed since fa7b7f73938e837af2765f8a03f07e404046877b "Document that Clang 3.4.2 is known to be too old" Change-Id: I09361f6ffc23b8d20d65d3c84d9003719e2159f8 Reviewed-on: https://gerrit.libreoffice.org/46787 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-15Enable C++17 for clang-cl, tooStephan Bergmann
Similar to libc++ in C++17 mode, some types like std::auto_ptr are indeed removed in C++17 mode by default, and need _HAS_AUTO_PTR_ETC=1 to be enabled (see <https://blogs.msdn.microsoft.com/vcblog/2017/12/08/c17-feature-removals- and-deprecations/>). Unlike libc++, also std::binary_function and std::unary_function are removed (and need the same _HAS_AUTO_PTR_ETC=1 to enable). So either set that flag to make external code build, or use patches (for external/mdds) to make externals' files included in LO proper still work there. Change-Id: I886cc0de8196255334ee03ec48cb4bc54d460afd Reviewed-on: https://gerrit.libreoffice.org/46514 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-06Work around latest Boost 1.65.1 still using deprecated std::auto_ptrStephan Bergmann
...in various places, which is gone by default at least from recent libc++ in C++17 mode. So bring it back there for now, until Boost is fixed. Change-Id: I0b3128d114ab2b5693a84bdc7d2b9b9b9b5c3c76 Reviewed-on: https://gerrit.libreoffice.org/45910 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-09-19Better update of external/boost/boost_1_60_0.undef.warning.patchStephan Bergmann
follow-up to 9d837f19d1bf4cfbdee528e027f5b72d9b1da73d "Upgrade to Boost 1.65.1", in accordance with <https://github.com/boostorg/config/commit/ 2dfd1a95bab49afcc374aadb1491d8fde189db74> "Move workaround.hpp out of detail (used by more than Config)" Change-Id: I666911ef89e94b4ab717c23394b76dd0662dd9ef Reviewed-on: https://gerrit.libreoffice.org/42443 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-09-18Upgrade to Boost 1.65.1Stephan Bergmann
...<https://dl.bintray.com/boostorg/release/1.65.1/source/boost_1_65_1.tar.bz2>. One reason to upgrade is that with 1.63 CppunitTest_tools_test started to fail with -fsanitize=signed-integer-overflow after 331e2e5ed3bf4e0b2c1fab3b7bca836170317827 "long->sal_Int32 in Fraction", > workdir/UnpackedTarball/boost/boost/integer/common_factor_rt.hpp:300:5: runtime error: negation of -2147483648 cannot be represented in type 'int'; cast to an unsigned type to negate this value to itself > #0 0x7f0f99bea71b in boost::integer::detail::gcd_optimal_evaluator<int>::operator()(int, int) const workdir/UnpackedTarball/boost/boost/integer/common_factor_rt.hpp:300:5 > #1 0x7f0f99bea52a in int boost::integer::detail::gcd_optimal<int>(int const&, int const&) workdir/UnpackedTarball/boost/boost/integer/common_factor_rt.hpp:372:16 > #2 0x7f0f99be7d70 in int boost::integer::gcd<int>(int const&, int const&) workdir/UnpackedTarball/boost/boost/integer/common_factor_rt.hpp:435:12 > #3 0x7f0f99be7620 in boost::rational<int>::normalize() workdir/UnpackedTarball/boost/boost/rational.hpp:559:17 > #4 0x7f0f99bdff29 in rational_FromDouble(double) tools/source/generic/fract.cxx:449:12 > #5 0x7f0f99bdf8b4 in Fraction::Fraction(double) tools/source/generic/fract.cxx:93:25 > #6 0x7f0f9a1bb987 in tools::FractionTest::testMinLongDouble() tools/qa/cppunit/test_fract.cxx:79:18 > #7 0x7f0f9a1bddd2 in void std::_Bind<std::_Mem_fn<void (tools::FractionTest::*)()> (tools::FractionTest*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:933:11 > #8 0x7f0f9a1bdbe9 in void std::_Bind<std::_Mem_fn<void (tools::FractionTest::*)()> (tools::FractionTest*)>::operator()<, void>() /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:991:17 > #9 0x7f0fa5eb53b0 in CppUnit::TestCaseMethodFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:32:5 > #10 0x7f0fa5e1bd1b in CppUnit::DefaultProtector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/DefaultProtector.cpp:15:12 > #11 0x7f0fa5e8653d in CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 > #12 0x7f0fa5e7fb7c in CppUnit::ProtectorChain::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:86:18 > #13 0x7f0fa5f17fe0 in CppUnit::TestResult::protect(CppUnit::Functor const&, CppUnit::Test*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:182:28 > #14 0x7f0fa5eb398c in CppUnit::TestCase::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:91:13 > #15 0x7f0fa5eb7887 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 > #16 0x7f0fa5eb6a78 in CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 > #17 0x7f0fa5eb7887 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 > #18 0x7f0fa5eb6a78 in CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 > #19 0x7f0fa5f46655 in CppUnit::TestRunner::WrappingSuite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:47:27 > #20 0x7f0fa5f16a66 in CppUnit::TestResult::runTest(CppUnit::Test*) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:149:9 > #21 0x7f0fa5f475c6 in CppUnit::TestRunner::run(CppUnit::TestResult&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:96:14 > #22 0x534a01 in (anonymous namespace)::ProtectedFixtureFunctor::run() const sal/cppunittester/cppunittester.cxx:316:20 > #23 0x532ac4 in sal_main() sal/cppunittester/cppunittester.cxx:466:20 > #24 0x5324f2 in main sal/cppunittester/cppunittester.cxx:373:1 > #25 0x7f0fa436e430 in __libc_start_main /usr/src/debug/glibc-2.24-66-gd5a4092c36/csu/../csu/libc-start.c:289 > #26 0x4387b9 in _start (workdir/LinkTarget/Executable/cppunittester+0x4387b9) Change-Id: Id1c3b216ee18c1d622768dc960ac257d5415c664 Reviewed-on: https://gerrit.libreoffice.org/42427 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-09-06Boost: Update last known MSVC version to VS2017.3David Ostrovsky
Change-Id: I41952279cc9d40769bfc51dd0f03c0b0624815d2 Reviewed-on: https://gerrit.libreoffice.org/41961 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Grzegorz Araminowicz <g.araminowicz@gmail.com> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-08-16Silence further warnings in external/boost/include wrappersStephan Bergmann
...as required by clang-cl: > [build CXX] avmedia/source/framework/modeltools.cxx > In file included from C:/lo64/core/avmedia/source/framework/modeltools.cxx:29: > In file included from C:/lo64/core/external/boost/include\boost/exception/diagnostic_information.hpp:23: > In file included from C:/lo64/core/workdir/UnpackedTarball/boost\boost/exception/diagnostic_information.hpp:17: > C:/lo64/core/workdir/UnpackedTarball/boost\boost/exception/info.hpp(103,13): error: 'boost::exception_detail::error_info_container_impl' has virtual functions but non-virtual destructor [-Werror,-Wnon-virtual-dtor] > ~error_info_container_impl() throw() > ^ > C:/lo64/core/workdir/UnpackedTarball/boost\boost/exception/info.hpp(172,21): error: delete called on non-final 'boost::exception_detail::error_info_container_impl' that has virtual functions but non-virtual destructor [-Werror,-Wdelete-non-virtual-dtor] > delete this; > ^ > 2 errors generated. Change-Id: I026f7e72d027becb68ac9118616ed6d8f2ecbf80 Reviewed-on: https://gerrit.libreoffice.org/41225 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-08-16Re-ran bin/gen-boost-headersStephan Bergmann
(missing external/boost/include/boost/exception/diagnostic_information.hpp had caused errors with clang-cl) Change-Id: Ibb84960e5da8fe73cb67aa5ad32a2c249ff921e6
2017-07-05external/boost: Avoid -fsanitize=pointer-overflowStephan Bergmann
...as seen during e.g. CppunitTest_sw_ooxmlexport8, when (n < (m_end - p) ? n : n - capacity()) is promoted to unsigned type size_t: > workdir/UnpackedTarball/boost/boost/circular_buffer/base.hpp:2358:18: runtime error: unsigned pointer index expression result is 0x602000b97110, preceding its base 0x602000b97118 > #0 0x7f77c69a7721 in SwFrameFormat** boost::circular_buffer<SwFrameFormat*, std::allocator<SwFrameFormat*> >::add<SwFrameFormat**>(SwFrameFormat**, long) const workdir/UnpackedTarball/boost/boost/circular_buffer/base.hpp:2358:18 > #1 0x7f77c69a7635 in boost::circular_buffer<SwFrameFormat*, std::allocator<SwFrameFormat*> >::destroy_content(boost::integral_constant<bool, true> const&) workdir/UnpackedTarball/boost/boost/circular_buffer/base.hpp:2460:19 > #2 0x7f77c69a7493 in boost::circular_buffer<SwFrameFormat*, std::allocator<SwFrameFormat*> >::destroy_content() workdir/UnpackedTarball/boost/boost/circular_buffer/base.hpp:2454:9 > #3 0x7f77c69a7369 in boost::circular_buffer<SwFrameFormat*, std::allocator<SwFrameFormat*> >::destroy() workdir/UnpackedTarball/boost/boost/circular_buffer/base.hpp:2471:9 > #4 0x7f77c699d386 in boost::circular_buffer<SwFrameFormat*, std::allocator<SwFrameFormat*> >::~circular_buffer() workdir/UnpackedTarball/boost/boost/circular_buffer/base.hpp:1193:9 > #5 0x7f77c6971187 in AppendAllObjs(SwFrameFormats const*, SwFrame const*) sw/source/core/layout/frmtool.cxx:1125:1 > #6 0x7f77c6976f7b in InsertCnt_(SwLayoutFrame*, SwDoc*, unsigned long, bool, unsigned long, SwFrame*) sw/source/core/layout/frmtool.cxx:1514:13 > #7 0x7f77c6a65698 in SwRootFrame::Init(SwFrameFormat*) sw/source/core/layout/newfrm.cxx:552:5 > #8 0x7f77c7ba0d86 in SwViewShell::Init(SwViewOption const*) sw/source/core/view/vnew.cxx:126:23 > #9 0x7f77c7ba29ff in SwViewShell::SwViewShell(SwDoc&, vcl::Window*, SwViewOption const*, OutputDevice*, long) sw/source/core/view/vnew.cxx:183:5 > #10 0x7f77c57a75fe in SwCursorShell::SwCursorShell(SwDoc&, vcl::Window*, SwViewOption const*) sw/source/core/crsr/crsrsh.cxx:2672:7 > #11 0x7f77c657a0af in SwEditShell::SwEditShell(SwDoc&, vcl::Window*, SwViewOption const*) sw/source/core/edit/edws.cxx:43:7 > #12 0x7f77c67602f1 in SwFEShell::SwFEShell(SwDoc&, vcl::Window*, SwViewOption const*) sw/source/core/frmedt/fews.cxx:687:7 > #13 0x7f77c8e9758b in SwWrtShell::SwWrtShell(SwDoc&, vcl::Window*, SwView&, SwViewOption const*) sw/source/uibase/wrtsh/wrtsh1.cxx:1643:7 > #14 0x7f77c8a797f0 in SwView::SwView(SfxViewFrame*, SfxViewShell*) sw/source/uibase/uiview/view.cxx:811:27 > #15 0x7f77c8aa4ab6 in SwView::CreateInstance(SfxViewFrame*, SfxViewShell*) sw/source/uibase/uiview/view0.cxx:78:1 > #16 0x7f77d0e688c4 in SfxBaseModel::createViewController(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&) sfx2/source/doc/sfxbasemodel.cxx:4094:46 > #17 0x7f77d0e6a08f in non-virtual thunk to SfxBaseModel::createViewController(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&) sfx2/source/doc/sfxbasemodel.cxx > #18 0x7f77d11ab1e3 in (anonymous namespace)::SfxFrameLoader_Impl::impl_createDocumentView(com::sun::star::uno::Reference<com::sun::star::frame::XModel2> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&, comphelper::NamedValueCollection const&, rtl::OUString const&) sfx2/source/view/frmload.cxx:590:60 > #19 0x7f77d11a71ca in (anonymous namespace)::SfxFrameLoader_Impl::load(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&) sfx2/source/view/frmload.cxx:717:13 > #20 0x7f779960c3d1 in framework::LoadEnv::impl_loadContent() framework/source/loadenv/loadenv.cxx:1083:37 > #21 0x7f77996054f4 in framework::LoadEnv::startLoading() framework/source/loadenv/loadenv.cxx:372:20 > #22 0x7f7799603759 in framework::LoadEnv::loadComponentFromURL(com::sun::star::uno::Reference<com::sun::star::frame::XComponentLoader> const&, com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) framework/source/loadenv/loadenv.cxx:158:14 > #23 0x7f77996ba887 in framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) framework/source/services/desktop.cxx:624:12 > #24 0x7f77996baa8c in non-virtual thunk to framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) framework/source/services/desktop.cxx > #25 0x7f77d2f9abed in unotest::MacrosTest::loadFromDesktop(rtl::OUString const&, rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) unotest/source/cpp/macros_test.cxx:50:60 > #26 0x7f77d3b286d6 in SwModelTestBase::loadURL(rtl::OUString const&, char const*, char const*) sw/qa/extras/inc/swmodeltestbase.hxx:648:23 > #27 0x7f77d3b27de2 in SwModelTestBase::load(char const*, char const*, char const*) sw/qa/extras/inc/swmodeltestbase.hxx:619:16 > #28 0x7f77d3b277b7 in SwModelTestBase::executeImportTest(char const*, char const*) sw/qa/extras/inc/swmodeltestbase.hxx:224:13 > #29 0x7f77d3cec8e6 in void std::_Bind<std::_Mem_fn<void (testFdo78939::*)()> (testFdo78939*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) /usr/lib/gcc/x86_64-redhat-linux/6.3.1/../../../../include/c++/6.3.1/functional:933:11 > #30 0x7f77d3cec6ed in void std::_Bind<std::_Mem_fn<void (testFdo78939::*)()> (testFdo78939*)>::operator()<, void>() /usr/lib/gcc/x86_64-redhat-linux/6.3.1/../../../../include/c++/6.3.1/functional:991:17 > #31 0x7f7808612258 in CppUnit::TestCaseMethodFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:32:5 > #32 0x7f78085e30d5 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 > #33 0x7f78085e30d5 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 > #34 0x7f77fc7fe014 in (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) unotest/source/cpp/unoexceptionprotector/unoexceptionprotector.cxx:63:16 > #35 0x7f78085e30d5 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 > #36 0x7f780857932d in CppUnit::DefaultProtector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/DefaultProtector.cpp:15:12 > #37 0x7f78085e30d5 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 > #38 0x7f78085dc5fa in CppUnit::ProtectorChain::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:86:18 > #39 0x7f7808674598 in CppUnit::TestResult::protect(CppUnit::Functor const&, CppUnit::Test*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:182:28 > #40 0x7f7808610859 in CppUnit::TestCase::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:91:13 > #41 0x7f7808614624 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 > #42 0x7f780861387c in CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 > #43 0x7f7808614624 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 > #44 0x7f780861387c in CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 > #45 0x7f78086a2f5c in CppUnit::TestRunner::WrappingSuite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:47:27 > #46 0x7f780867304e in CppUnit::TestResult::runTest(CppUnit::Test*) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:149:9 > #47 0x7f78086a3e7e in CppUnit::TestRunner::run(CppUnit::TestResult&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:96:14 > #48 0x532f3d in (anonymous namespace)::ProtectedFixtureFunctor::run() const sal/cppunittester/cppunittester.cxx:316:20 > #49 0x53101c in sal_main() sal/cppunittester/cppunittester.cxx:466:20 > #50 0x530a36 in main sal/cppunittester/cppunittester.cxx:373:1 > #51 0x7f7806bc4400 in __libc_start_main /usr/src/debug/glibc-2.24-59-g86ac4a7/csu/../csu/libc-start.c:289 > #52 0x4385a9 in _start (workdir/LinkTarget/Executable/cppunittester+0x4385a9) Change-Id: I4f32ce04daa61cc05dd6b8ef7c84c238c927056c
2017-05-09Use BOOST_USE_WINDOWS_H to avoid errors when building with clang-clStephan Bergmann
> [build CXX] workdir/UnpackedTarball/boost/libs/locale/src/shared/date_time.cpp [...] > In file included from C:/lo64/core/workdir/UnpackedTarball/boost/libs/locale/src/shared/date_time.cpp:11: > In file included from C:/lo64/core/workdir/UnpackedTarball/boost\boost/thread/mutex.hpp:14: > In file included from C:/lo64/core/workdir/UnpackedTarball/boost\boost/thread/win32/mutex.hpp:9: > In file included from C:/lo64/core/workdir/UnpackedTarball/boost\boost/thread/win32/basic_timed_mutex.hpp:14: > C:/lo64/core/workdir/UnpackedTarball/boost\boost/thread/win32/thread_primitives.hpp(172,55): error: conflicting types for 'CreateMutexA' > __declspec(dllimport) void* __stdcall CreateMutexA(_SECURITY_ATTRIBUTES*,int,char const*); > ^ > C:/PROGRA~2/WI3CF2~1/10/Include/10.0.15063.0/um\synchapi.h(489,1): note: previous declaration is here > CreateMutexA( > ^ [...] Change-Id: I141ea196250dc855c780f237436c0f19f0594cb1
2017-05-02Adapt bin/gen-boost-headers to Clang 5Stephan Bergmann
...since <http://llvm.org/viewvc/llvm-project?view=revision&revision=301647> "Use the -Wunknown-warning-option group for the 'unknown warning group' diagnostic in #pragma diagnostic". * external/boost/include/boost/{locale.hpp,locale/gnu_gettext.hpp} would have been removed by 'make cmd cmd=bin/gen-boost-headers' as they are still unused from c25eee44966703cb27d632bccb39b20978341ffd "build boost::locale library", but there's reportedly a patch in Gerrit to actually use them, so I fixed them manually for now. * The deviating comment style is to keep lines no wider than 80 characters. Change-Id: I64603ae8d8a82781eda46f12c9dd5c68dcf395b9