[MacPorts] #47189: submission: audacity
MacPorts
noreply at macports.org
Tue Mar 31 14:16:30 PDT 2015
#47189: submission: audacity
--------------------------+--------------------------------
Reporter: rjvbertin@… | Owner: macports-tickets@…
Type: submission | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords:
Port: audacity |
--------------------------+--------------------------------
Comment (by mojca@…):
Replying to [comment:11 rjvbertin@…]:
>
> > The changes from `#ifdef __WXMAC__` to `#ifdef __APPLE__` only affect
wxgtk (but yes, that includes wxgtk-3.0; and if they accept patches, it
might be helpful to try to send those patches to them).
>
> I must (already...) have forgotten the implications of `__WXMAC__`: why
would those changes only affect wxgtk? Because the changes I made do
(which would be kind of logical given that I was building against wxgtk
...) or because wxgtk doesn't define the token?
wxGTK doesn't define `__WXMAC__`. But developers assumed that every Mac
user should be using Carbon (now Cocoa) and that GTK backend was just for
Linux, so as a consequence they used `"ifdef __WXMAC__` everywhere to test
for a Mac. Truth to be told ... it's almost impossible to write the code
properly without actually testing wxGTK on Mac.
Examples:
- wxWidgets on Mac define `__WXOSX__`
- wxWidgets with a GTK backend define `__WXGTK___`, different definitions
for the Windows backend, the X11 backend etc.
- `__WXMAC__` is an outdated definition (newer versions define both
`__WXMAC__` and `__WXOSX__`; the latter should be used for new software,
`__WXMAC__` is there just for compatibility)
- there are a few other definitions like `wxOSX_USE_COCOA`,
`wxOSX_USE_IPHONE` etc.
Any "sane Mac user" would want to use Carbon/Cocoa. (Who on earth would
want to install `wxGTK`? I mean: who would even be crazy enough to install
it if we forget about package managers like MacPorts. And even in
MacPorts wxGTK has almost never been used until the big split, except in a
port or two that were supposed to work on FreeBSD or Linux or something.)
This changed a while after Apple stopped supporting Carbon and when people
realized that using wxGTK 2.8 was the only way to be able to use apps
depending on wxWidgets 2.8.
--
Ticket URL: <https://trac.macports.org/ticket/47189#comment:12>
MacPorts <https://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list