Joshua Root <j...@macports.org> wrote: > On 2022-10-22 21:56 , Kirill A. Korinsky wrote: >> I'm asking is there a way to support specified arch inside platform block's >> condition. Like: >> platform {aarch64} { >> ... >> } > > You can certainly do things like: > > platform darwin arm { > ... > }
I wasn’t aware of this platform variants syntax (https://guide.macports.org/#reference.variants.platform) yet, so today I learned. I maintain some ports that contain sections that look like this: ---- if {${configure.build_arch} eq "x86_64"} { distname microsoft-jdk-${version}-macOS-x64 checksums rmd160 2fc1a89b2310905e0891bb2b1519c8df86998ab7 \ sha256 22697e9bbf3135c0ef843e7f371fe563ea948c6d464dfc532a7995fe32aebb09 \ size 187094964 } elseif {${configure.build_arch} eq "arm64"} { distname microsoft-jdk-${version}-macOS-aarch64 checksums rmd160 feb696c4ba65ea42b68bb578e5e2de7b41e56669 \ sha256 c50a20ca8764a5aa54dc0a0cf681d891dadbdccc1051792806d797206d59ba34 \ size 184695872 } ---- I thought I’d replace such if-elseif sections with declarative platform variant blocks, but I noticed that the arch argument for the platform variant needs to be ‘arm’ instead of ‘arm64’: ---- platform darwin arm { distname microsoft-jdk-${version}-macOS-aarch64 checksums rmd160 feb696c4ba65ea42b68bb578e5e2de7b41e56669 \ sha256 c50a20ca8764a5aa54dc0a0cf681d891dadbdccc1051792806d797206d59ba34 \ size 184695872 } ---- Why is the arch value for a platform variant not the same as ${configure.build_arch}? What are the valid values for the arch argument of a platform variant block? Can I use ‘platform darwin x86_64 { … }’ for the 64-bit Intel case or is that value also different from ${configure.build_arch}? I don’t have a x86_64 Mac I can use to test this myself. Nils.