OK, sounds like I have to figure out how to make fat binaries... (I don't think the subdirectory idea is all that great because I'd have to change Pd to look in them and then new externs wouldn't work in old versions of Pd.)
On the other hand, if I can figure out fat binaries I can get away without releasing separate "apps" for the two architectures. So this would be a Good Thing.
cheers Miller
On Sun, May 28, 2006 at 12:34:57AM +0200, Hans-Christoph Steiner wrote:
On May 28, 2006, at 12:22 AM, Miller Puckette wrote:
Yep... I thought 'imac' meant 'intel-mac' but I guess it doesn't.
Anyway, I think that if someone wants to publish an extern that works on either mips or i86 macs, they would have to include both
"dylib"s... unless there's a way to make a fat dylib with binaries for both
architectures.Apple provides two mechanisms for this, one is fat binaries, which
have been supported since NeXTSTEP 3.2 (Mac OS X 10.4 == NeXTSTEP
6.4), and the other is Rosetta, which runs PPC code in emulation.
NeXTSTEP/Apple uses gcc for everything, so building fat binaries is
just a matter of figuring out the gcc options.Even so, it's easier to figure out what's what if the name reflects
the architecture so you know what targets the extern is compiled for. So perhaps on intel macs, it should just be "pd_macintel" (more
mellifluous than "pd_intelmac"?)The .pd_linux extension has been working fine for 10+ architectures,
I don't see why Mac OS X needs more than one. If people want to
distribute binaries for the different architectures, I think it will
be easier to just put the files in properly labeled directories (ie.
x86/object.pd_darwin ppc/object.pd_darwin).Having more file extensions will mean I will have to modify the Pd- extended build system quite a bit to make it work for that new
extension. This will take a lot of time, and probably introduce some
bugs, and I can't see any benefit..hc
cheers Miller
On Sun, May 28, 2006 at 12:05:12AM +0200, Hans-Christoph Steiner
wrote:I am guessing that you mean x86 Mac OS X when you say iMac. If so, then actually, all of Apple's new computers will be x86 based, not just the iMac. I personally don't see any benefit to having different file extensions for different platforms. .so and .a are cross-platform and cross-architecture, for example. .dll and .dylib are OS-specific, but not architecture specific.
I think something like .pdclass for all platforms would work best. Or maybe just use platform-native for each platform, like Thomas suggested:
http://lists.puredata.info/pipermail/pd-dev/2006-01/005720.html
.hc
On May 27, 2006, at 6:53 PM, Miller Puckette wrote:
I've got an experimental version of Pd compiled for imac
available on http://crca.ucsd.edu/~msp/software.html ... unfortunately, since it seemed advisable to update portaudio to the new, completely rewritten one, it would be unwise to retrofit this to Pd 0.39 (might change
latencies or other things for pre-existing platforms).I made up a new file extension for externs (pd_imac) ... we could always go to a "sensible" naming convention in the future and stay back compatible, if people think it's too ad hoc. In the long term, the set of architectures/ OSes seems set to stay at around hald a dozen active ones, so there's no big problem just making up names unsystematically.
The only other policy implication is this: I'm using files from the supplied "Wish shell.app" on Imac, which seems a reasonable thing to do, but strictly speaking it's probably more correct to download a bsd-licensed wish shell or recompile it from source. That shouldn't be too difficult to do, I hope.
cheers Miller
PD-announce mailing list PD-announce@iem.at http://lists.puredata.info/listinfo/pd-announce
"If nature has made any one thing less susceptible than all others of exclusive property, it is the action of the thinking power called an idea, which an individual may exclusively possess as long as he keeps it to himself; but the moment it is divulged, it forces itself into the possession of everyone, and the receiver cannot dispossess himself of it." - Thomas Jefferson
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
"The arc of history bends towards justice." - Dr. Martin Luther King,
Jr.