SDL2 for older systems: which components we need enabled? Cocoa vs X11

Ken Cunningham ken.cunningham.webuse at gmail.com
Wed Jul 19 23:15:40 UTC 2023


As far as I know, we don't have any ports that use SDL2 via X11/Xquartz. All the ports use the Cocoa interface.

The modifications that were made to SDL2 by miniupnp to run on Tiger and Leopard were fairly extensive, to an older version of SDL2, but they worked to allow a number of ports that required libsdl2 to work on those systems. I have those mods tucked away in the archives of the TigerPorts and LeopardPorts repos.

Any newer version of libsdl2/SDL2 was not able to be adjusted to be useful on those older systems. We did have one newer version that would build, but was so broken by the hacks needed to make it build that it was useless in practical use.

Which brings me to the next point.

It is quite possible to make hacks/patches to software that will allow it to build -- at an extreme, you and #if 0 / #endif out that entire source, and it will compile just fine.

But especially for things like SDL2, what is needed is more than that -- you have to see if software built against such patched versions will actually work, and this sometimes takes some fairly extensive testing to see what the warts might be.



Ken



> On Jul 19, 2023, at 8:32 AM, Sergey Fedorov <vital.had at gmail.com> wrote:
> 
> libsdl 2.0.22 (our Snow Leopard port) builds on PowerPC with unoffensive fixes, however I had to disable cocoa video and joystick for that.
> They are likely fixable (though no idea whether and how they gonna work), but at least cocoa video gonna require a massive rewrite – or perhaps falling back to an earlier implementation. (Well, this is not a kind of code I can genuinely rewrite – only adapt patches and maybe improve something a bit.)
> 
> However, if X11 implementation is a meaningful replacement, it builds fine with no trickery.
> 
> Any thoughts?
> 
> P. S. ICE on hidapi is trivially fixable – I just reverted a commit which has broken that. After that, hidapi builds fine.



More information about the macports-dev mailing list