[gs-devel] supporting COMPILE_INITS when cross-compiling

Ralph Giles ralph.giles at artifex.com
Wed Feb 22 15:17:36 PST 2006


Ray recently completed an implementation of a '%rom%' iodevice
in Ghostscript, backed by a compressed filesystem image linked
into the binary as static data. This lets us replace the tedious
old way of doing COMPILE_INITS and compiled-in fonts with a
much cleaner unified tree.

Unfortunately, it's been written using existing code from Ghostscript
which breaks cross compiles since zlib and a fair subset of of the gp_*
infrastucture must be compiled for the host so mkromfs can be linked
and executed to generate a gsromfs.c for the target. This also won't
work with the MacOS CodeWarrior build, which uses a similar distinction
between host and target compilation to generate a project file.

I think the dependence on other gs source code can be removed without
too much pain, but we still need zlib. One option is to insert duplicate
makefile rules for all the dependent sources using $(CCAUX) instead of
the usual $(CC). I don't really like that; it seems painful even by the 
standards of our build system.

Not supporting this on the CodeWarrior build would be reasonable, but 
half the point of the feature is embedded deployments where cross
is the norm, so I think we have to do something. Opinions?


More information about the gs-devel mailing list