Am 22. Juni 2020 23:24:04 MESZ schrieb Dan Wilcox danomatika@gmail.com:
Howdy all,
Apple announced today that it will transition from Intel to its own Arm processors.
oh. i thought they made that switch in 2007.
What this will bring is:
- Universal 2: x86_64 & arm fat binaries
Building Pd itself for macOS arm should be relatively easy, just a different arch target. For externals, this would may require an additional fat lib type, perhaps dfat_2? Note, I believe the distinction will be important for us since we still have "Universal 1" builds.
hmm. why? the original d_fat externals for Pd won't run on modern mac(hine)s at all, as they contained ppc and i386, which are both unsupported these days. yet the file format ( the container) stays the same, and it is totally possible to have a d_fat that runs on ppc, ppc64 (an arch that was never officially supported by PD), i386 and x86_64, so running on all architectures ever supported by OSX (modulo system libraries...). why not just add arm64 to that list?
so initially, I was going to rebuke the idea oft a d_fat2 format.
apple's labelling as "Universal 2" is a bit concerning though...
anyhow, I don't really see why apple should make a 2nd universal format. iirc, "fat" is a technology from NextStep, so its well aged, and has proven itself. this of course is no reason to not drop it.
more important: can you (well: they) make money with a new format? i'm having a hard time here to imagine how (but then: i'm not very good in imagining how to make money in general).
i don't think there are still enough ppc users left for apple to care about them. thinkgs might be different with i386 though.
however, i guess the biggest issue is for the developers it's getting really hard to create fat binaries that cover more architectures than x86_64 and i-arm64. that's because there's no reasonable toolchains available that allow you to do so. to build binaries for the new arm architecture, you probably need XCode12, which - like XCode10 and XCode11 - won't support x86_64 (and PPC has been dropped around XCode4, if my wikipedia foo is correct). so the only way to produce fat binaries (that include mor ethan x86_&4 and amd64) is to have multiple build systems (parts of them unsupported by now) and combine the artifacts into a single binary in a second step.
that sounds like a big enough hurdle to be a rather plump nudge for most applications to support only "recent" architecture. no need to invent a new format.
fgmasd IOhannes