summaryrefslogtreecommitdiff
path: root/external
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2017-12-05 21:40:04 +0100
committerStephan Bergmann <sbergman@redhat.com>2017-12-06 07:26:31 +0100
commit90d2155912bcee40377620d4836726041a72d537 (patch)
tree4a83922ab7dd3a15bfccf0ad48ffd41651785742 /external
parente754d0931ca75403647cc16100edd98e7e5ceadb (diff)
Work around latest Boost 1.65.1 still using deprecated std::auto_ptr
...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>
Diffstat (limited to 'external')
-rw-r--r--external/boost/StaticLibrary_boost_locale.mk6
-rw-r--r--external/libmspub/ExternalProject_libmspub.mk7
2 files changed, 12 insertions, 1 deletions
diff --git a/external/boost/StaticLibrary_boost_locale.mk b/external/boost/StaticLibrary_boost_locale.mk
index 6c185644569a..b6734d149c14 100644
--- a/external/boost/StaticLibrary_boost_locale.mk
+++ b/external/boost/StaticLibrary_boost_locale.mk
@@ -18,6 +18,12 @@ $(eval $(call gb_StaticLibrary_add_defs,boost_locale,\
-DBOOST_ALL_NO_LIB -DBOOST_LOCALE_NO_WINAPI_BACKEND -DBOOST_LOCALE_NO_POSIX_BACKEND -DBOOST_USE_WINDOWS_H \
))
+# Needed when building against libc++ in C++17 mode, as Boost 1.65.1
+# workdir/UnpackedTarball/boost/boost/locale/generator.hpp contains "std::auto_ptr<data> d;":
+$(eval $(call gb_StaticLibrary_add_defs,boost_locale, \
+ -D_LIBCPP_ENABLE_CXX17_REMOVED_AUTO_PTR \
+))
+
$(eval $(call gb_StaticLibrary_use_external,boost_locale,boost_headers))
$(eval $(call gb_StaticLibrary_set_generated_cxx_suffix,boost_locale,cpp))
diff --git a/external/libmspub/ExternalProject_libmspub.mk b/external/libmspub/ExternalProject_libmspub.mk
index 40ba3dc6e56e..b374c0483466 100644
--- a/external/libmspub/ExternalProject_libmspub.mk
+++ b/external/libmspub/ExternalProject_libmspub.mk
@@ -22,6 +22,10 @@ $(eval $(call gb_ExternalProject_use_externals,libmspub,\
zlib \
))
+# -D_LIBCPP_ENABLE_CXX17_REMOVED_AUTO_PTR is needed when building against libc++ in C++17 mode, as
+# libmspub configure checking for boost/ptr_container/ptr_vector.hpp can (indirectly) include
+# Boost 1.65.1 workdir/UnpackedTarball/boost/boost/ptr_container/detail/reversible_ptr_container.hpp
+# which mentions std::auto_ptr:
$(call gb_ExternalProject_get_state_target,libmspub,build) :
$(call gb_ExternalProject_run,build,\
export PKG_CONFIG="" \
@@ -37,7 +41,8 @@ $(call gb_ExternalProject_get_state_target,libmspub,build) :
$(if $(verbose),--disable-silent-rules,--enable-silent-rules) \
CXXFLAGS="$(gb_CXXFLAGS) $(if $(ENABLE_OPTIMIZED),$(gb_COMPILEROPTFLAGS),$(gb_COMPILERNOOPTFLAGS))" \
CPPFLAGS="$(CPPFLAGS) $(ICU_UCHAR_TYPE) $(BOOST_CPPFLAGS) \
- -DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_SYSTEM_NO_DEPRECATED" \
+ -DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_SYSTEM_NO_DEPRECATED \
+ -D_LIBCPP_ENABLE_CXX17_REMOVED_AUTO_PTR" \
$(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
&& $(MAKE) \
)