From 66a4c255e7e20554fccd3b7d048d6cb1a1a5b1fd Mon Sep 17 00:00:00 2001 From: tnn Date: Fri, 12 Feb 2016 19:34:29 +0000 Subject: restore patch that fixes build w/ clang --- misc/libreoffice/distinfo | 3 +- ...s_source_cpp__uno_gcc3__linux__x86-64_share.hxx | 56 ++++++++++++++++++++++ 2 files changed, 58 insertions(+), 1 deletion(-) create mode 100644 misc/libreoffice/patches/patch-bridges_source_cpp__uno_gcc3__linux__x86-64_share.hxx (limited to 'misc') diff --git a/misc/libreoffice/distinfo b/misc/libreoffice/distinfo index ec68a6a2f84..ec857937b86 100644 --- a/misc/libreoffice/distinfo +++ b/misc/libreoffice/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.15 2016/02/11 09:45:26 ryoon Exp $ +$NetBSD: distinfo,v 1.16 2016/02/12 19:34:29 tnn Exp $ SHA1 (libreoffice/0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz) = 452eba922e4f41603539c9dc39947d2271e47093 RMD160 (libreoffice/0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz) = dbeb7a7f8c89961ca2e544b810345d025561866b @@ -168,6 +168,7 @@ SHA1 (libreoffice/libreoffice-translations-5.1.0.3.tar.xz) = c9a1016b29e6a329458 RMD160 (libreoffice/libreoffice-translations-5.1.0.3.tar.xz) = e2c808300cb5d8d3707dafd3b29bdb8b04f35a2b SHA512 (libreoffice/libreoffice-translations-5.1.0.3.tar.xz) = 156aee6cbcd65a5b375a7cc436adb094989a3b2ce1a3869b7f6504806c3bce00cecc8c4a8cbe17e3f37d5f416e2d2aeaf7b9635627f504bd292d49c9d34cc6af Size (libreoffice/libreoffice-translations-5.1.0.3.tar.xz) = 131527452 bytes +SHA1 (patch-bridges_source_cpp__uno_gcc3__linux__x86-64_share.hxx) = e3223111488a6ebabf66ae74c3b6c30095fd2294 SHA1 (patch-configure.ac) = 590ede1fc2369171edc7703d25ae42d9f29b8b3b SHA1 (patch-solenv_gbuild_AllLangResTarget.mk) = 75af6e02b29bf1dfc619bda9cd5674f19adf2c95 SHA1 (patch-solenv_gbuild_Module.mk) = 45d5b2c41b468bb071253ae0f78d01d535662c40 diff --git a/misc/libreoffice/patches/patch-bridges_source_cpp__uno_gcc3__linux__x86-64_share.hxx b/misc/libreoffice/patches/patch-bridges_source_cpp__uno_gcc3__linux__x86-64_share.hxx new file mode 100644 index 00000000000..92b3dcefb4b --- /dev/null +++ b/misc/libreoffice/patches/patch-bridges_source_cpp__uno_gcc3__linux__x86-64_share.hxx @@ -0,0 +1,56 @@ +$NetBSD: patch-bridges_source_cpp__uno_gcc3__linux__x86-64_share.hxx,v 1.3 2016/02/12 19:34:29 tnn Exp $ + +Deal with more non-standard introspection requirements from cxxabi.h. (fixes build w/ clang) + +--- bridges/source/cpp_uno/gcc3_linux_x86-64/share.hxx.orig 2015-08-13 17:21:26.000000000 +0000 ++++ bridges/source/cpp_uno/gcc3_linux_x86-64/share.hxx +@@ -40,6 +40,14 @@ namespace __cxxabiv1 + { + explicit __class_type_info( const char *__n ) : type_info( __n ) { } + virtual ~__class_type_info(); ++ ++ enum __offset_flags_masks ++ { ++ __virtual_mask = 0x1, ++ __public_mask = 0x2, ++ __hwm_bit = 2, ++ __offset_shift = 8 ++ }; + }; + + struct __si_class_type_info : public __class_type_info +@@ -50,6 +58,34 @@ namespace __cxxabiv1 + const __class_type_info *__base_type; + }; + ++ struct __base_class_type_info { ++ const __class_type_info *__base_type; ++ uintptr_t __offset_flags; ++ ++ enum __offset_flags_masks { ++ __virtual_mask = 0x1, ++ __public_mask = 0x2, ++ __hwm_bit = 2, ++ __offset_shift = 8 ++ }; ++ }; ++ ++ struct __vmi_class_type_info : public __class_type_info { ++ unsigned int __flags; ++ unsigned int __base_count; ++ __base_class_type_info __base_info[0]; ++ ++ explicit __vmi_class_type_info(const char *__n, int ___flags) : ++ __class_type_info(__n), __flags(___flags), __base_count(0) {} ++ ++ enum __flags_masks ++ { ++ __non_diamond_repeat_mask = 0x1, ++ __diamond_shaped_mask = 0x2, ++ __flags_unknown_mask = 0x10 ++ }; ++ }; ++ + extern "C" void *__cxa_allocate_exception( std::size_t thrown_size ) _NOEXCEPT; + + extern "C" _LIBCPP_NORETURN void __cxa_throw( -- cgit v1.2.3