On May 13, 2016, at 3:48 AM, Joshua Root wrote:

> On 2016-5-13 18:13 , Ryan Schmidt wrote:
>> 
>> On May 13, 2016, at 3:07 AM, René J.V. Bertin wrote:
>> 
>>> On Friday May 13 2016 15:21:53 Joshua Root wrote:
>>> 
>>>>>> Side-ways related: why is os_arch reset to i386 from x86_64 on line 636? 
>>>>>> >From what I've seen that causes packages to be labelled and registered 
>>>>>> as i386 (i.e. 32bit) when built on 64bit linux.
>>>>> 
>>>>> In MacPorts, os_arch is i386 on all Intel Macs (32-bit and 64-bit), and 
>>>>> ppc on all PowerPC Macs (32-bit and 64-bit). Changing that now would 
>>>>> break all ports that rely on the existing long-standing behavior.
>>> 
>>> I was just asking why, apparently that's a historic choice that was made 
>>> when 64-bit Intel Macs weren't on the horizon yet?
>> 
>> os_arch is the way ports and probably MacPorts base differentiates an Intel 
>> computer from a PowerPC computer. It is not a mechanism to determine the 
>> bitness; if you need to determine bitness, use other methods, such as 
>> build_arch and universal_archs. build_arch and universal_arch determines how 
>> a package is registered when installed; os_arch doesn't enter into it, as 
>> far as I know.
> 
> If build_arch is not set then os.arch is used as a fallback. No doubt we 
> don't detect an appropriate default for build_arch on Linux.

Yes I see in get_canonical_archs in src/port1.0/portutil.tcl where it uses 
os.arch if build_arch is empty.

And I see in src/macports1.0/macports.tcl where it sets defaults for build_arch 
only on Darwin.


_______________________________________________
macports-dev mailing list
[email protected]
https://lists.macosforge.org/mailman/listinfo/macports-dev

Reply via email to