libreoffice build error
Jung-uk Kim
jkim at FreeBSD.org
Thu Sep 19 00:02:47 UTC 2013
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 2013-09-18 13:20:27 -0400, Jung-uk Kim wrote:
2013년 9월 18일 13:20, Jung-uk Kim 쓴 글:> On 2013-09-18 12:39:46
- -0400, David Chisnall wrote:
>> On 18 Sep 2013, at 16:26, Tijl Coosemans <tijl at freebsd.org>
>> wrote:
>
>>> On Tue, 17 Sep 2013 21:04:14 -0400 Jung-uk Kim wrote:
>>>> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
>>>>
>>>> On 2013-09-17 13:24:41 -0400, Jung-uk Kim wrote:
>>>>> I am still working on libc++ issues but it is much more
>>>>> complicated. :-(
>>>>
>>>> I fixed almost everything except for exception handling
>>>> issues. Unfortunately, libc++/libcxxrt's exception handling
>>>> is not 100% compatible with libstdc++'s and I couldn't find
>>>> a proper fix. :-(
>>>>
>>>> Basically, C++/UNO bridge for LibreOffice/OpenOffice does
>>>> some clever hacks, somewhat similar to the example on this
>>>> blog page:
>>>>
>>>> http://zbigg.blogspot.com/2009/03/catch-on-g.html
>>>
>>> The definition of struct __cxa_exception doesn't match the one
>>> in /usr/include/c++/v1/cxxabi.h. There's an extra field at
>>> the start in the __LP64__ case: uintptr_t referenceCount.
>
>> This field is present in newer versions of the ABI spec and is
>> also there in new versions of libsupc++. It's required for
>> implementing C++11 dependent exceptions.
>
>> It shouldn't matter for code that doesn't allocate the structure
>> (and nothing outside of libsupc++ / libcxxrt should be
>> allocating them), because these structures are always passed
>> around by pointers to their ends (where the _Unwind_Exception
>> structure lives).
>
> Ah, I see. Now I wrote a proper fix and it looks very promising.
> :-)
Committed:
http://svnweb.freebsd.org/changeset/ports/327589
Thanks!
Jung-uk Kim
* PS: IMHO, the ABI compatibility issue must be fixed before 10.0.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.21 (FreeBSD)
iQEcBAEBAgAGBQJSOj6JAAoJECXpabHZMqHOlhgIAJg0fAXSLdqR+otyUrvgcfDg
fuyYMfbcaVk1yGdPuUwppFb8/hZCP0YDKRCf8JmCpisz5yEcUTQYCVmvWCfjBMTa
2Caelx2Cof2ao6o4IAaDd+qVP16Mdio3e8iAb2Kh8tbj08eLIpn5GvmEOOkNGnVN
HYAONN8e5x3PJN7N+vWcNR1uYw1PZHww44KImZeQ7ejbWQwE28NBbkCwLeddB4he
bafcFPXJccngoW2c9RUIm81sRycZP5vP9dwhJicBHUEK46/x0TW0SQRavH5d0Wnx
E4FxksUen9lQOYtbwFPEfDTH4NnHB+zlwA7SwQgqGFXHqOBn81r3+YTzNmH4rd0=
=t0tP
-----END PGP SIGNATURE-----
More information about the freebsd-current
mailing list