Universal Binaries

Jordan K. Hubbard jkh at brierdr.com
Fri Feb 23 13:46:04 PST 2007


On Feb 23, 2007, at 11:36 AM, Ryan Schmidt wrote:

> Now, what we could think about doing is providing some kind of  
> default, where +universal would use the standard CFLAGS, LDFLAGS  
> and --disable-dependency-tracking, unless the port itself defines a  
> +universal variant. This would allow many ports to build universal.  
> However, those for which is doesn't would then be broken. Either  
> building with +universal would cause compilation or configuration  
> errors, which the user could then report to the maintainer, or the  
> software would seem to compile and build properly, but then not  
> actually run properly on the non-native architecture. It's hard to  
> know until you try it, separately for each software package.

I think this is a good idea.  Yes, software will break, but if you  
make it a goal to build everything universal, it will also quickly  
get fixed and then you're over the hump and don't have to think about  
it anymore.   Getting this done will also make the 32->64 bit Intel  
shift easier to deal with since you want to build i386/x86_64  
versions universal as well (running apps as 64 bit on Core2 Duo  
systems is starting to become more attractive due to the extra  
registers you get and, of course, the larger address space).  That's  
probably not a short-term goal, but it's somewhere on the horizon and  
this is one more step in the right direction.

As I said before, Apple has already gone through this for hundreds of  
apps and it's not as painful as many people think.  A consistent  
build harness like MacPorts makes it even easier, since you can deal  
with issues like broken configure scripts (which make static  
determinations of endian-ness or arch) by post-processing their  
output before starting the build phase.

- Jordan

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macports-users/attachments/20070223/8ac9b01b/attachment.html


More information about the macports-users mailing list