summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--misc/libreoffice/distinfo3
-rw-r--r--misc/libreoffice/patches/patch-bridges_source_cpp__uno_gcc3__linux__x86-64_share.hxx56
2 files changed, 58 insertions, 1 deletions
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(