On 2022-11-1 11:45 , Nils Breunese wrote:
Joshua Root <j...@macports.org> wrote:
On 2022-11-1 11:14 , Nils Breunese wrote:
Joshua Root <j...@macports.org> wrote:
There is another way that platforms can be used:
platforms any
platforms {darwin any}
The first one indicates that the port will install identical files no matter what platform it is
built on, and will set the platform in the archive filename to "any_any". The second one
indicates that the port will install identical files when built on any version of Darwin, but may
install different files when built on other platforms, and sets the platform in the archive
filename to "darwin_any" when on Darwin.
These will usually only be applicable to noarch ports, though rare exceptions may exist. Ports that
install only data files or scripts will often be able to use "any". Python scripts are an
exception because Python uses a framework layout on Darwin only, so they will be "{darwin
any}".
So setting ‘platforms {darwin any}’ is not appropriate when a port installs
identical files on any Darwin version, but does install different files based
on arch?
That would be uncommon but it is possible.
So when a port installs one pre-built binary on x86_64 and another on arm64,
regardless of OS version, setting 'platforms {darwin any}’ would be appropriate
and correct?
Sure. Unless the x86_64 binary was built targeting 10.5 though, you
probably also need to restrict the versions. E.g. if the binary works on
10.12 and later:
platforms {darwin any} {darwin >= 16}
- Josh