Difference between mpbb and local builds

Link Dupont link.dupont at mac.com
Fri Feb 2 20:54:22 UTC 2024



> On Feb 2, 2024, at 15:52, Clemens Lang <cal at macports.org> wrote:
> 
> Hi,
> 
> On Fri, Feb 02, 2024 at 01:40:45PM -0500, Link Dupont via macports-dev wrote:
>> I submitted a new port[1] recently. I ensured that it compiled and
>> runs locally, but when I the commit was merged, I noticed that the
>> buildbot builds are failing[2] with an error:
>> 
>>> cli.c:8:10: fatal error: 'availability.h' file not found
>> 
>> I’m puzzled why this doesn’t seem to be a problem locally. How can I
>> go about reproducing this build failure locally so that I can figure
>> out a fix? What sort of differences are there between ports built
>> locally and ports built by the build bot?
> 
> Apart from the differences that others have mentioned, the build
> machines also run a case-sensitive filesystem. That seems to be the
> issue here, since the default installation of macOS (which yours likely
> is) is case-preserving, but not case-sensitive, but the header is
> actually
> 
>  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h
> 
> i.e. with a capital Availability.h, but you're including it all lower
> case. That would work on a standard install, but fail on the buildbots.
> 
> -- 
> Clemens
> 

I just found this too. socket_vmnet/cli.c appears to be using the macro __MAC_OS_X_VERSION_MAX_ALLOWED. Searching the MacOS14.sdk for that macro, I found it defined in “/usr/include/Availability.h” (note the capital A).

I suppose the solution here is to patch it in the Port to inlclude “Availability.h” instead?

Link


More information about the macports-dev mailing list