Universal and binary builds (was: Re: Is isysroot useful for non-universal?)

Anders F Björklund afb at macports.org
Tue Mar 24 03:26:45 PDT 2009


Ryan Schmidt wrote:

>>>> Since rosetta doesn't handle ppc64, we can't narrow this down to  
>>>> a single x86_64 box.
>>>
>>> We can't narrow it down to a single Intel Mac per OS anyway  
>>> because one of the problems is that some software doesn't cross- 
>>> compile correctly. The point is to eliminate the need for cross- 
>>> compiling by compiling natively on each type of Mac.
>>
>> Right, but with rosetta, you *should* (I haven't tried it) be able  
>> to setup a ppc chroot and within that chroot it'll look and feel  
>> like ppc as far as your build train is concerned (thus it's not  
>> "cross" compiling specifically).  But still, the lack of ppc64  
>> support within rosetta is probably the bigger issue (atleast in my  
>> mind)
>
> Ah, well that would be somewhat entertaining, but unless Rosetta is  
> going to grow ppc64 emulation soon, I don't think we need to expend  
> any energy implementing that.

I used virtualization (x86) or emulation (ppc) to build packages for  
"Pure" Darwin...

  47M    /opt/local/var/db/dports/packages/darwin/x86/XFree86-4.5.0_2 
+puredarwin.x86.tgz

  49M    /opt/local/var/db/dports/packages/darwin/powerpc/ 
XFree86-4.5.0_2+puredarwin.powerpc.tgz

It took ages or eons, but did "work". For Mac OS X, I think there's  
licensing issues.


While cross-compiling and virtual build machines does have some  
entertaining value,
you would probably be better off with one hardware node per OS/arch  
and a chroot ?

Assuming that you're even going to build PowerPC binaries, it  
shouldn't be so hard
finding cheap used hardware for it. The new machines available only  
use Intel anyway.

--anders



More information about the macports-dev mailing list