[cairo] patches for configure errors under MinGW, OS X deprecation warnings

Ryan Schmidt cairo-2015 at ryandesign.com
Mon Feb 9 10:13:47 PST 2015

On Feb 9, 2015, at 8:26 AM, Andrea Canciani wrote:

> What is the policy for supporting old MacOS X versions in MacPorts?
> The homepage seems to state that the main targets are the latest 3 versions, but it looks like over time the support for older versions was preserved (at least based on the news here: https://trac.macports.org/news/ ).

"Support" is different from "works" or "doesn't work". We "support" the last few versions of OS X, meaning if something in MacPorts doesn't work on those systems, we intend to fix it. MacPorts itself "works" on 10.4 and later; there is no reason to artificially break MacPorts on older systems that it still works fine on. MacPorts "doesn't work" on 10.3 and earlier (it doesn't compile, and hasn't for many years). Whether any individual port works on any particular system is another matter entirely. Many ports still work on 10.4, just as many others do not. Over time, as software is updated and developers stop testing on older systems, the number of ports failing to compile or run on older systems inevitably increases.

> Would it be possible to keep cairo 1.14 on 10.4 and to only upgrade on other MacPorts targets?

Possibly. MacPorts was never designed to have a port whose version number can change based on OS version or other criteria, but it has been done once or twice before. As long as newer versions of cairo don't fix bugs or introduce new features that other software relies on, this could work. It would add a lot of code to the cairo Portfile -- more code, I'm guessing, than if the problem were just fixed correctly.

> What is the usual approach in MacPorts for software that depends on modern systems (example: latest LLVM versions)?

The usual approach for ports that cannot be installed on a user's system is for them to print a message explaining why. In the case of llvm, we maintain multiple ports, one for each major version of llvm, so that users on older systems can still install the latest version that works for them.

> I can write a patch that implements the dynamic discovery of the available API, which should restore support for 10.4, but I expect cairo to eventually drop support for 10.4 (currently Cairo has no explicit support timelines, but I think that keeping in sync with Firefox requirements would make sense).

Well Firefox already requires 10.6 or later. 10.4 support was dropped years ago, leading to the creation of TenFourFox to fill the gap. I don't see a reason to arbitrarily drop support for older systems, but if you choose to require 10.6 or later, that means you'll be dropping support for all Macs having PowerPC processors; 10.6 and later require an Intel processor.

More information about the cairo mailing list