This also backports a change from upstream to fix the build with new boost.f41
parent
50060a9e02
commit
735ab2caf6
@ -0,0 +1,74 @@
|
||||
From 23a8d5ffbbe58761b89f590f0735abccd69a3681 Mon Sep 17 00:00:00 2001
|
||||
From: Stephan Bergmann <sbergman@redhat.com>
|
||||
Date: Fri, 11 Jan 2019 17:40:17 +0100
|
||||
Subject: [PATCH] Upgrade external/boost to Boost 1.69.0
|
||||
|
||||
<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>
|
||||
---
|
||||
sfx2/source/appl/shutdownicon.cxx | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/sfx2/source/appl/shutdownicon.cxx b/sfx2/source/appl/shutdownicon.cxx
|
||||
index a24e254c7948..65c73de125d9 100644
|
||||
--- a/sfx2/source/appl/shutdownicon.cxx
|
||||
+++ b/sfx2/source/appl/shutdownicon.cxx
|
||||
@@ -144,7 +144,7 @@ bool LoadModule()
|
||||
#endif // ENABLE_QUICKSTART_APPLET
|
||||
}
|
||||
assert(!boost::logic::indeterminate(loaded));
|
||||
- return loaded;
|
||||
+ return bool(loaded);
|
||||
}
|
||||
|
||||
}
|
||||
--
|
||||
2.20.1
|
||||
|
Loading…
Reference in new issue