[Scummvm-devel] ScummVM goes buildbot
Max Horn
max at quendi.de
Mon Mar 16 15:54:18 CET 2009
Am 16.03.2009 um 03:10 schrieb Kostas Nakos:
> Hello,
>
> Great work!
>
> Andre Heider wrote:
>> We hope that porters help out to add their build environment to the
>> buildbot server. I wrote down the toolchain/port requirements on the
>> wiki page, please take a look.
>
> I'll be happy to do so. I'll get in touch.
>
>> The ./configure script requirement is probably the biggest hurdle for
>> some ports (my Wii one included). Once a port is ready to be added -
>> or it already is - please ask for an account on the buildbot server.
>> Then we can set up the used tools and add it to the buildbot config.
>
> So, the problem is (and correct me if I get this wrong) that the
> source
> gets checked out once at a specific dir A, then the configure is run
> from the target dir B. All build by-products are saved in dir B.
Yes. A is the "srcdir", and "B" is the current dir (we could define a
"builddir" var I guess, but where's the point...)
As you probably know, this is a feature which our configure script
supported for many years now :).
> If that is so, then perhaps we can slightly modify the custom
> Makefiles
> to cope with that? Setting up 'srcdir', VPATH, and the includes in an
> absolute fashion, referring to the wince makefile should do the trick?
> Adding a variable override such as: 'make dist srcdir=path_to_A' is
> no good?
> I haven't tried build for ce outside the tree yet, but is it worth
> taking a look at it, or we have given up completely on the idea of
> backends/* makefile builds for buildbot?
Andre should have the final word on this, and I mailed him a similar
question last night. But I think that it should be possible to support
build systems that don't use configure in principle; it's just a bit
more work to support these extra setups compared to using configure
everywhere. So on the long run, it still would still be nice to use
configure for as many ports as possible. But for now, we should try to
go for the most pragmatic solution.
So yes, if you enhance your Makefile in such a way that it sets up the
required vpath data, and it allows specifying the src location, then
we *should* be able to use that (pending Andre's agreement ;).
Buildbot cold then skip the configure phase and compile it via "make -
f backends/platform/wince/Makefil srcdir=PATH".
Here is what the custom Makefiles generated by configure look like --
duplicating that should do (most of?) the trick:
# -------- Generated by configure -----------
srcdir = ../..
vpath %.h $(srcdir)
vpath %.cpp $(srcdir)
vpath %.c $(srcdir)
vpath %.m $(srcdir)
vpath %.asm $(srcdir)
vpath %.s $(srcdir)
include $(srcdir)/Makefile
Note that you could change the srcdir line to
srcdir ?= .
to let it default to the current dir but be easily overridable.
Cheers,
Max
More information about the Scummvm-devel
mailing list