On Friday, Nov 21, 2003, at 23:47 Europe/Brussels, chris clepper wrote:
At 11:37 AM -0800 11/21/03, Hans-Christoph Steiner wrote:
The build system for MacOSX is all Makefiles, so it makes sense to
have a Makefile for GEM too, instead of completely redoing the package
building in a different way. The Makefile for GEM doesn't have to do anything
but make the .pkg. This way, its just a matter of copying the packaging stuff from another Makefile and with a few minor changes, it'll work
with GEM.So you don't want to build GEM from source, but rather incorporate it
into the packaging system? How are you doing this now with the > binary?
The packaging system builds everything from source from the CVS. Right
now for GEM, I have been semi-manually packaging and including it, but
that takes too long.
I know very little about .pkg building at this point, but I'm guessing
the OSX installer is a meta-package and all the externals are packages
inside it?
correct.
Is there any reason why PackageMaker can't be used to build the
installer?
When I started with this build system, Apple hadn't released info on
the command line options for PackageMaker.app. They have now, so a
Makefile can now make a .pkg from a file created by PackageMaker. But
the current method, using /usr/bin/package, works well and is easy to
imitate so I don't plan on changing the Makefiles, unless
/usr/bin/package disappears.
One note about the GEM builds: you will have to figure out a way to
distribute all three builds for each processor type. The G4 or G5
build cannot be run on G3 CPUs or GEM will crash will illegal
instruction exceptions.
I think that CPU optimization needs to be tackled on a Pd-wide level.
Pd would benefit from optimizations on all of the platforms, and all of
the code. But to make CPU-optimized releases workable, there needs to
be one place where you set the target CPU, and everything else checks
that one place when compiling.
Currently, I am using the G4 version of GEM in the install, since
that's what I have. But I haven't compiled GEM in a while. IIRC, you
have to use the GUI to enable the G4/Altivec optimiations. If/when I do
the GEM package, it would only use whatever works from a Makefile. The
idea here is to make building installers take up a little of my (or
anyone's) time as possible, thereby making frequent releases much more
likely.
.hc
cgc
.hc
"[W]e have invented the technology to eliminate scarcity, but we are
deliberately throwing it away
to benefit those who profit from scarcity."
-John Gilmore