From owner-freebsd-current@FreeBSD.ORG Thu Sep 19 00:02:46 2013 Return-Path: Delivered-To: freebsd-current@FreeBSD.org Received: from hammer.pct.niksun.com (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by hub.freebsd.org (Postfix) with ESMTP id 401B57F0; Thu, 19 Sep 2013 00:02:46 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Message-ID: <523A3E89.5020608@FreeBSD.org> Date: Wed, 18 Sep 2013 20:00:09 -0400 From: Jung-uk Kim User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130911 Thunderbird/17.0.8 MIME-Version: 1.0 To: David Chisnall Subject: Re: libreoffice build error References: <104781379415439@web14h.yandex.ru> <20130917162045.5b0fc356@thor.walstatt.dyndns.org> <20130917154914.GD31894@ithaqua.etoilebsd.net> <20130917155245.GE31894@ithaqua.etoilebsd.net> <52389059.8000200@FreeBSD.org> <5238FC0E.9090004@FreeBSD.org> <20130918172615.42270918@kalimero.tijl.coosemans.org> <95159E17-E700-464F-BBEE-C7C97355B8EB@FreeBSD.org> <5239E0DB.20400@FreeBSD.org> In-Reply-To: <5239E0DB.20400@FreeBSD.org> X-Enigmail-Version: 1.5.1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Baptiste Daroussin , Shawn Webb , "S.N.Grigoriev" , FreeBSD-current , Tijl Coosemans , "O. Hartmann" X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Sep 2013 00:02:47 -0000 -----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 >> 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-----