Proper value for os.arch on Apple Silicon

Ryan Schmidt ryandesign at macports.org
Tue Jun 23 04:50:11 UTC 2020


Now that Apple has announced that Macs will have ARM processors [1], what is the proper value for ${os.arch} on such systems?

MacPorts base currently knows two values of ${os.arch}: "powerpc" is used on all 32-bit and 64-bit PowerPC systems while "i386" is used on all 32-bit and 64-bit Intel systems.

I'm not necessarily asking what value MacPorts currently prints for this variable on an Apple Silicon Developer Transition Kit machine, but rather what value it should print. We may need add code to MacPorts base to make this happen, just as there is already code to produce the two existing values:


    # set up platform info variables
    set os_arch $tcl_platform(machine)
    if {$os_arch eq "Power Macintosh"} {set os_arch "powerpc"}
    if {$os_arch eq "i586" || $os_arch eq "i686" || $os_arch eq "x86_64"} {set os_arch "i386"}


Should it be "arm"?

Whatever we choose will impact how ports are written so we need to make a choice and then stick to it.

I also need to know so that I can modify mprsyncup to start generating a portindex on our server for such systems.


[1] https://www.apple.com/newsroom/2020/06/apple-announces-mac-transition-to-apple-silicon/



More information about the macports-dev mailing list