[Scummvm-devel] ScummVM goes buildbot

Max Horn max at quendi.de
Tue Mar 17 17:44:26 CET 2009


Am 16.03.2009 um 20:32 schrieb Andre Heider:

[...]
>
> Now, there's 2 kinds of builds. Both use the same build dir:
>
> 1) Nightly builds. These call the configure script from the checkout
> dir every night. That in return means that every single file is going
> to be recompiled (a feature of our build system, as Max mentioned),

Uh? No, a configure run does *not* force a full rebuild. It does  
recreate config.h, so all files #including that should be rebuilt, but  
that does not guarantee a full rebuild.

If you want a full rebuild, either do a "make clean" (or even "make  
distclean"), or just delete the whole build dir and start from scratch.

[...]

> About the configure topic:
> I'm not saying that its impossible to add support for ports with
> custom Makefiles. Of course it is, but the configure system takes care
> of a few things which unify the build behaviour across ports. For
> example, I can force a full rebuild with a configure run.

See above: Nope. But it is easy to force a full rebuild with a single  
command for our default and any custom Makefile build systems:
   make clean && make
;-)

> And if a
> change to that script is commited, our build system takes care of it
> and rebuilds everything too.

If "configure" is changed, then it gets re-run with the last command  
line when you run "make", and all files #including config.h thus get  
updated, but still not necessarily a full rebuid.


> The current setup is built around that.
> With Makefiles in the backend/ folder we basically duplicate a subset
> of that behaviour. It's just that I think adding non-configure-ports
> is error-prone for this buildbot setup.

Well, with a "configure" based approach things are certainly more  
uniform, but in general, I still don't see why using custom Makefiles  
(based on our master Makefile, and still using Makefile.common etc.)  
should be more error prone.


[...]

> If there are technical problems for some ports, thats of course
> another story. But I currently can't think of anything that's not
> solvable in the configure script and extensions to the build system if
> required.

Well, my view is this: I prefer a port to get "configured" ;-). But if  
a porter can get his port building using the existing Makefile with 10  
minutes work, then by all means let's do that!

If he has the time and interest, he can still work on a proper  
configure based approach -- but this could take a lot longer,  
depending on how many problems crop up, how good his shell script  
skills are (you do have to grok the configure script to be able to do  
this), how easy it is to adapt the existing build system for his port,  
etc. etc.

Anyway, it seems we can hope for at least these ports:
Wii - Andre
WinCE - Kostas
PSP - Joost
OSX & iPhone - vinterstum
Windows, Debian - already work


others? :)



Bye,
Max




More information about the Scummvm-devel mailing list