danomatika@danomatika helloworld % file helloworld.pd_darwin
helloworld.pd_darwin: Mach-O universal binary with 2 architectures: [x86_64:Mach-O 64-bit bundle x86_64] [arm64:Mach-O 64-bit bundle arm64]
helloworld.pd_darwin (for architecture x86_64):
Mach-O 64-bit bundle x86_64
helloworld.pd_darwin (for architecture arm64):
Mach-O 64-bit bundle arm64
As to which versions of macOS (that's the official name for some years now) to build on, I believe you can still build the i386 arch with Xcode on macOS 10.15, so judging from the following it may be Xcode 11 or 12:
https://xcodereleases.com. I think Alex Porres is using this set up, so maybe he can chime in with his combo of OS and Xcode. The irony is that you can't run the 32 bit arch on 10.15, but at least you can build for it. Xcode on macOS 11 (version after 10.15) only allows for building x64_64 and arm64.
I did add an "automatic" fat lib checker which determines which arch are available for the Xcode version but it's sitting in a PR right now. IN the end, I think I agree with IOhannes that it's maybe better to document and ask the user to set the required arch manually. It certainly keeps things simpler to maintain.
The readme should probably be updated with this info as these questions keep resurfacing.
Message: 1Date: Wed, 8 Jun 2022 01:18:39 +0200From: Thomas Mayer <thomas@residuum.org>To: pd-dev <pd-dev@lists.iem.at>Subject: [PD-dev] Compiling fat external binaries for Mac OS XMessage-ID: <7fd6ada6-3f36-316b-9000-30e0cd64118a@residuum.org>Content-Type: text/plain; charset=UTF-8; format=flowedHi,I am currently working on the last steps for releasing a new version of PuREST JSON.My main concern is now building fat binaries for Mac OS X.When I look at the list at the different versions for 0.52-2 at https://puredata.info/downloads/pure-data there is a version labeled "M1 and Intel/64bit". I guess, I should link to it.Is there any environment variable I have to set for building building?I am using the current master version of pd-lib-builder, and I do not see any reference to M1 in the block there:https://github.com/pure-data/pd-lib-builder/blob/e6cff665a3a30a967c72c382c6fe92bcdedd7b44/Makefile.pdlibbuilder#L506Also, what should be in the filename for deken zips?Any other version of Mac OS X that I should compile the external as well, since there are downloads for 32 and 64 bit Intel as well? Especially, because the 64 bit version is labeled as OS X 10.7 - 10.9.The question about filename of deken zips applies to these as well.Thanks,Thomas-- "As long as people kept worrying that the machines were taking over,they wouldn't notice what was really happening. Which was that theprogrammers were taking over." (Robert Anton Wilson - The Homing Pidgeons)http://www.residuum.org/