+universal for x864+arm64 on Macintel

Ryan Schmidt ryandesign at macports.org
Mon Jun 13 09:34:46 UTC 2022

On Jun 13, 2022, at 04:29, René J.V. Bertin wrote:
> On Monday June 13 2022 02:48:06 Ryan Schmidt wrote:
>> (and if MacPorts does not create a universal variant automatically in this case then the port should do so itself)
> Doh, I should have thought about that. Still, it would be more elegant to handle that situation with something like `universal_variant force` (admitting that the logic isn't perfect).

The standard universal variant has no content. (Universal support is implemented by adding the return value of procedures like [get_canonical_archflags cc] to CFLAGS.) Many ports implement their own universal variant by manually creating this empty universal variant ("variant universal {}") and using get_canonical_archflags where needed.

> I suppose pre-10.11 installs should still be able to cross-compile for arm64, with the right compiler and libraries installed, no?

As far as I know, the SDK would also need to support arm64, which SDKs prior to macOS 11 don't. Therefore MacPorts doesn't support compiling for macOS for arm64 prior to macOS 11.

> (Link step included btw, as all normally built clang compilers are cross-compilers so a new-enough clang should be able to generate the correct object code for Apple silicon.)

More information about the macports-dev mailing list