tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Darwin bulk build machines: clang too old



* On 2026-08-07 at 18:56 BST, Thomas Klausner wrote:

After noticing that mame doesn't build in the Darwin bulk builds, I've
filed an upstream bug report and got told that the clang used is too
old.

https://github.com/mamedev/mame/issues/15850

We don't have CLANG_REQD, so I'm not quite sure what to do with this
information, but perhaps the bulk build machine can be upgraded to a
newer clang?

Yeh I was already strongly considering this, as it's also preventing any nodejs newer than 22.x. There are a couple of issues:

 - Mixing clang from one Xcode release and building against a different SDK
   is just bleurgh.  I ran into many issues over the years, and by far the
   most stable configuration is a single Xcode for the target SDK, which
   means a really old clang in this case.

 - There are still some users stuck on my current target SDK (14.5, Sonoma)
   according to https://federate.me.uk/@jperkin/116435910865723826

Now that I have a much more automated setup, and bob's scheduler ensures builds are as fast as possible, what I might do is set up new Xcode 16.4 / SDK 15.5 builds, and then alternate between the current 15.4/14.5 and the newer 16.4/15.5. That will hopefully gain enough C fixes and C++26 support to fix the current issues, at least for the 15.5 builds.

The main limiting factor here will be disk space on the build host, so I'm going to need to automate a lintpkgsrc run to prune old binary packages (or maybe that's a new feature I can implement in bob...)

Oh, and I'll also have to update the build host from Sonoma to Sequoia, which will mean finding out all of the ways that Apple have broken macfuse, bindfs, and chroot this time. Who knows, maybe they'll have fixed the bug where unmounting /chroot/System takes 2 minutes...

--
Jonathan Perkin                    pkgsrc.smartos.org
Open Source Complete Cloud   www.tritondatacenter.com


Home | Main Index | Thread Index | Old Index