Here are some first thoughts about how to use "universal" (aka "fat")
binaries with fink.
By default, we would assume that most packages will work with both
architectures. A new flag would let a package specify that it is
only suitable for a single architecture. Perhaps we will need to use
a version of the "variants" mechanism to allow for architecture-
dependent differences, if for some reason a package can be compiled
for both architectures but cannot be compiled "fat".
We would give users the option to either build a universal binary, or
a binary for their platform only. We store the .deb file for a
universal binary in a (subdirectory of a) "binary-darwin-universal"
directory and put symlinks into the architecture-dependent
directories. This works with current tools, even for an apt
repository. It might be nice to teach apt about universal binaries,
but even if it doesn't know about them, it will just grab what it
needs through the symlink and store it in a local cache as if it were
a deb for only one platform. (I'm assuming that we will have put
universal binaries in the apt repository.)
Ah. I guess one question we need answered is: is the .deb format
itself platform-independent? (presumably so...)
As msachs suggested this afternoon, we can use the default values of
CFLAGS and LDFLAGS to pass the appropriate "fat-enabling" flags to
gcc and ld. Of course, some packages will need more work than that,
to accomodate their build systems.
Further thoughts and discussion are most welcome. This is brand new
territory, folks!
-- Dave
-------------------------------------------------------
This SF.Net email is sponsored by: NEC IT Guy Games. How far can you shotput
a projector? How fast can you ride your desk chair down the office luge track?
If you want to score the big prize, get to know the little guy.
Play to win an NEC 61" plasma display: http://www.necitguy.com/?r=20
_______________________________________________
Fink-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/fink-devel