New install, how should I set my macports.conf

Jim Busser jbusser at interchange.ubc.ca
Fri Jan 22 16:57:12 PST 2010


On 2010-01-22, at 4:20 PM, Scott Haneda wrote:

> I will be installing all my ports new and clean.

I have been struggling with the same general questions as Scott and only hoping them to remain a reflection an asynchronous community's transition to x86_64 where many ports -- whether for reasons of portfile configuration or deeper limitations -- can only run in 32-bit.

> In macports.conf I see:
>    # CPU architecture to compile for. Defaults to i386 or ppc on Mac OS X 10.5
>    # and earlier, depending on the CPU type detected at runtime. On Mac OS X 10.6
>    # the default is x86_64 if the CPU supports it, i386 otherwise.
>    #build_arch                     i386


The build_arch appears commented-out to allow for what are (contended to be) usually-suitable defaults.

I too use a MacBook and account of the following line for me returns EFI32

	ioreg -l -p IODeviceTree | awk -F'"' '/firmware-abi/{print $4}'

I am wondering if it means that --- despite that I am running 10.6 -- my ports will only build i386 anyway so I wonder whether the admonitions to build universal (under Snow Leopard) as x86_64 i386 are, for me and people running similar machines, simply a waste of time. Unless what it is, is that Snow Leopard through "Apple Magic" is able to run 64-bit applications despite that the processor is unable to run a 32-bit kernel and whether that is the reason it still makes sense to compile x86_64 under a limited processor. But the x86_64 will be insufficient for some depedent ports if they had been either unable to also be compiled under 64-bit, or happened not to be.

> I am still at a loss as to what is generating the "Variants: darwin_10, universal" line.

Evidently a portfile's "platform(s)" even despite absence from the portfile's "variants" clauses get treated in the MacPorts web site listing (I am not sure about the guide) as a "variant" despite that if you would specify in the port command line, you get chastised by the console as well as on-list by the non-newbies :-)

>    # machine architectures
>    universal_archs         x86_64 i386

Based on my own attempts to learn mainly from Ryan's answers, :-)

- I think universal_archs is not enough by itself... it is accessed on demand when explicitly asked for in the command line whether by +universal or

	sudo port upgrade --enforce-variants installed +universal

or (in variants.conf, to make it automatic when possible) add

	+universal

except when circumvented by a portfile usage of
	"use_configure no" – see macports ticket 12170
or
	"universal_variant no"

and (I think) extraneous to those portgroups (e.g. cmake, xcode) which provide their own universal variants.




More information about the macports-users mailing list