[MacPorts] #40231: mkvtoolnix: fix build with clang
MacPorts
noreply at macports.org
Fri Sep 6 14:11:57 PDT 2013
#40231: mkvtoolnix: fix build with clang
---------------------------+--------------------------------
Reporter: ryandesign@… | Owner: macports-tickets@…
Type: enhancement | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.2.0
Resolution: | Keywords:
Port: mkvtoolnix |
---------------------------+--------------------------------
Comment (by jeremyhu@…):
Replying to [comment:16 ecronin@…]:
> Replying to [comment:14 jeremyhu@…]:
> > Replying to [comment:12 ecronin@…]:
> >
> > > except maybe ditching the system compilers completely and using a
newer FSF g++ for all of macports.
> >
> > NO! That will not be done. We will not be going to FSF for
compilers. The goal is to use the host C++ runtime, not a conflicting
one.
> >
>
> I only meant on PPC where clang isn't viable. There's no good option
there, but most macports software probably doesn't touch C++ system-
provided libraries, so as long as everything in macports uses new
libstdc++ and gcc it should be internally consistent.
Yes, until clang has much better support for darwin/ppc, the only viable
C++11 option for darwin/ppc is from gcc. That unfortunately presents a
problem as macports-gcc-X.Y cannot be used for most +universal builds, so
you'd be pinning yourself into -universal (but hopefully that is OK).
I suggest trying to set configure.compiler to macports-gcc-4.8 in
macports.conf and seeing what breaks. Given how ignored ppc is at this
point in general, you may be in for a ride, but please do provide patches.
> Software that depends on OS X frameworks and would have conflicting
runtimes probably doesn't work on something that old to begin with, but
more general cross-platform software could probably still work with newer
compilers than gcc4.0 and gcc4.2. I know you'd like to axe everything
older than Lion but there are still a lot of people with PPCs out there
and macports is one of the few options for them. I don't know if there's
anybody unofficially maintaining the older PPC OSs in base, this would be
something for them to look into not you...
I'm not suggesting axing everything older than Lion. I've never said
that, so please don't misunderstand me. I think that SL is an amazing OS,
and there are plenty of reasons that people can't or won't update to a
newer OS. To be honest, I think we may eventually face the question of
whether or not to drop support for Lion while keeping support for SL, and
I think we may need to eventually roll up a modern toolchain package for
SL users to help them bootstrap. Such a package would likely contain the
ld64, cctools, clang-3.3, libc++, and libc++abi ports.
> > If *everything* is using libc++, we will have issues when using the
host C++ frameworks that are using libstdc++, but I don't think any of our
ports actually do that.
>
> Accelerate.framework is linked against libstdc++ on Lion at least, and I
know there are ports that use it.
Yes, Accelerate.framework links against a C++ runtime, but it doesn't
expose any C++ APIs that I'm aware of, so that's ok. The issue is that if
you have a C++ API usage that crosses images, both sides of that boundary
need to be using the same runtime. You can have a portion of your process
using libstdc++ and another portion using libc++ just as long as they
don't try to share objects.
--
Ticket URL: <https://trac.macports.org/ticket/40231#comment:17>
MacPorts <http://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list