[Scummvm-devel] New CVS module, please test it
Max Horn
max at quendi.de
Wed Aug 21 10:51:09 CEST 2002
As you may have seen, I added a new CVS module, "scummvm-new" which
implements my proposed source tree layout changes. It builds just
fine on my system, but obviously the Win32/BeOS/Dreamcast/Morhpos...
targets will have to be fixed up.
Please everybody who can, check it out and try. If you are a porter,
please try to fix your build system, and if that is not possible,
let's discuss here what we can do about it.
Another important set of changes was applied to the build system
(this applies only to the default build system in Makefile &
Makefile.common, but if you are one of the ports that used a custom
Makefile so far, please read on anyway):
1) The "simon" and "scumm" subdirst are linked into static libs
first, before they are linked into the app. This is another step
towards properly seperating them from the reast of the code (the
first was to introduce a generic Engine superclass for them).
2) I modifed the GCC build rules to work with the new nested layout.
I also made it default for now - if you are using GCC, it greatly
improves the compile experiences as it recompiles *exactly* those
files that have to be recompiled, not more and not less. Anybody w/o
GCC can simply switch to the default build rule again.
3) There is now a file "build.rules" which is included by the master
Makefile and which contains backend specific rules - I added these
for the x11, SDL and morphos targets, but only tested it for the SDL
target. The idea is that we keep these seperate from the master
Makefile, thus reducing the need to modifying it (which IMHO was
always a PITA when it came to making checkins)
It would be nice if as many platforms as possibly could be based on
the master Makefile instead of making their own ones, as this will
make it easier to maintain the build systems in a working state. If
there are issues with this which prevents you to use the master
Makefile for your backend, please tell us so that we can fix these,
if possible.
Some of the things I'd like to see in the future:
* Our own small configure script (no this doesn't mean autoconf :-)
which allows one to comfortably selet the backend, whether to use
MAD/ALSA, whether to dump scripts and stuff like that. Ideall it'd do
this all automatically, detecting the current platform, whether
mad/ALSA are present etc. (with switch to force them being on/off of
course).
-> added comfort
* configure script would also detect the available compiler
* The configure script could also do stuff like detecing the
endianess and writing that into a config.h header file, and detecting
the sizes of various data types (short, int, long, etc..), by
compiling & running a small C programm
* merge sdl.cpp and sdl_gl.cpp via a shared superclass
* implement clean interfaces between the simon/scumm implementations
and the rest of ScummVM -> implies for example a cleanup of the
MIDI/SFX code
* remove the Scumm dependencies from the NewGUI code as far as
possible (the 16bit overlay stuff, should it ever been implemented,
will help greatly for this)
Max
--
-----------------------------------------------
Max Horn
Software Developer
email: <mailto:max at quendi.de>
phone: (+49) 6151-494890
More information about the Scummvm-devel
mailing list