[Clam-devel] how ardour does osx their univeral binaries

Volker Schumacher volker at photone.de
Sun Dec 31 11:00:44 PST 2006


On Dec 30, 2006, at 11:39 PM, Pau Arumi wrote:

> about osx. basically they do not crosscompile but use two boxes!

I tried to crosscompile the clam dependencies some time ago from the  
source distributions (not darwinports) following the instructions at  
the URL taybin send (http://developer.apple.com/technotes/tn2005/ 
tn2137.html). I didn't get it work for most of the projects,  
especially not if they were using g++ (usually also forcing gcc  
didn't help). For some it worked but I can't remember which. However,  
I gave up working on this that time and started building everything  
with xcode.

for me it feels more save the way the adour people are doing (no  
crosscompiling but using two boxes instead), because even if  
crosscompiling would succeed I don't know if I can trust that the  
binaries behave as expected at runtime for both architectures. of  
course some projects provides tests to proof runtime behavior.
it is also not clear to me what happens if architecture dependent  
issues such as endianess are determined at configuration time instead  
of compile time. maybe forcing the compiler to build for multiple  
architectures will not be enough then, and the configuration process  
should be applied for each archtecture seperately.
But I think it would be possible to go through the dependency  
projects and make sure that all the architecture sensitive  
configuration is done at compile time. I had to do this in order to  
use xcode, and I had to make little changes on the dependency  
projects. in most cases I basically looked at the generated config.h  
files and its usage. i have to diff my changes against the clean  
distributions and make patches, to point out what exactly I changed.  
maybe it ts possible to crosscompile all projects if architecture  
issues don't depend on the configuration process.

with darwinports, i don't know if it is meant to build for multiple  
architectures in general. ususally everything is native, and i didn't  
understand yet how i can make it build for multiple archtectures when  
i needed it. but since clam is a developer product, and developers  
want to build universal binaries, it would be cool if the clam  
project could be easily build as UB with darwinports, and this will  
be possible if it can be crosscompiled.

ok, have to go to new year party now! more next year!
wish you all a good start!

volker
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.clam-project.org/pipermail/clam-devel-clam-project.org/attachments/20061231/dfd65d17/attachment.html>


More information about the clam-devel mailing list