Mark Bestley wrote:
I have just got an Apple Silicon Mac Mini and am trying to install some ports

I am trying to use just arm code. However some ports put a +universal variant 
as the default. This would not be a problem except some ports do not build if 
universal e.g. python38 and icu.

Example ports that force unwanted +universal on are

llvm-9.0 - which I managed to build using the manual fix in the icu ticket

cargo which depends on python38. Now python38 works if arm build only.

How do I force things to build for arm only.

Why are +universal variants set as the default and how can you see which 
depenents are set this way (you can then force those to be single architecture)

This is happening when you install a port that does not support the arm64 architecture, which means the only way to proceed on arm64 hardware is to install an x86_64 version. This means that the dependencies need to support x86_64 as well, which results in them being installed with +universal.

If you don't want this to happen, you could set universal_archs to just 'arm64' in macports.conf. This will cause an error when you try to install any port that would normally trigger installation of a universal dependency.

- Josh

Reply via email to