Date: prev next · Thread: first prev next last
2014 Archives by date, by thread · List index


On 01/17/2014 10:02 AM, Stephan Bergmann wrote:
The first appearance of LO for a new platform, like happens with 64-bit
builds of LO 4.2 for Mac OS X now, is always a good time to revisit any
decisions that may bite us later for backwards-compatibility.

In the case of Mac OS X 64-bit, the natural thing to revisit is whether
to use libstdc++ or libc++.  libstdc++ is the tried-and-tested GCC 4.2
thing that we've been using ever since, but it is a dead end (due to
Apple not upgrading past GCC 4.2 for license reasons) that will likely
block future progress of using C++11 in LO (and I'd not be surprised if
Apple drops it from a future OS X version).  On the other hand, libc++
is clearly the way ahead on OS X, but somewhat less well tested with LO
for now (only some individual developer builds having been configured to
use it in the past).

Now, the good news appears to be that "Libc++ is specifically designed
so that you can use it in the same process as libstdc++."
[<http://clang-developers.42468.n3.nabble.com/Adopting-libc-hitting-problems-on-Mac-OS-X-td4027011.html>]
  That means that it hopefully works to stick with libstdc++ for LO 4.2
(and avoid any trouble switching this late in the release schedule),
switch to libc++ for LO 4.3 say, and expect any native extensions using
either of the two libraries to work with both flavors of LO.  (And,
given the assumption that Apple will eventually discontinue the support
of libstdc++, recommend that native extensions---which there are none
yet for Mac OS X 64-bit---use libc++.)

With <http://cgit.freedesktop.org/libreoffice/core/commit/?id=ab819ab4f49ec7e0d57dcf8bf77beb8cd323ceb1> "Default to MAC_OS_X_VERSION_MIN_REQUIRED=1080 for Mac OS X SDK >= 10.8" on master towards LO 4.4, a build on Mac OS X against SDK >= 10.8 and with no explicit --with-macosx-version-min-required will now use libc++ instead of libstdc++, and I expect TDF Mac OS X builds towards LO 4.4 to in fact use libc++.

Stepahn

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.