On Thursday, 28 September 2006 at 19:39, Dennis Schridde wrote:
> Am Donnerstag, 28. September 2006 17:57 schrieb Christian Ohm:
> > - A (hopefully attached) patch for waf so the patch to Warzone isn't
> > needed anymore.
> The patch should not be needed.
> Instead you should set conf.env['EXT_BISON_H'] = '.h'
But you can't override the bison_str in the wscript, can you? Without
that, waf doesn't find the files.
(After an svn up for waf):
OK, the bison_str now includes -o, so overriding the variables in the
wscript should be enough.
(Very nice to have your own private build system developer ;)
> But this is currently broken for Bison. :(
> (Flex works, but we don't need it. *grml*)
> I think I told Thomas some time ago, but apparently he forgot.
> I just filed in a BR.
>
> > - Speed seems better than before.
> > - 0.9.1: 1:17
> > - current svn: 1:07
> > - make: 0:57
> > I guess the make build is faster because of different options to gcc,
> > though I tried to use the same. Or perhaps something else in the
> > wscript file. On my last test, waf and make were roughly the same
> > speed.
> Is that when compiling? Or with allready built targets?
Complete recompile including the dependency checking (contrary to the
last time - so dependency checking got about twice as fast on my machine
since 0.9.1). The current SVN does it not at the beginning but
interspersed with compilation, so I missed that.
> > - Sometimes there's some kind of deadlock when using -j3 (I haven't
> > noticed it without yet, but I usually use -j3), the last file shown
> > is src/aiexperience.c. Then waf hangs and even ctrl-C doesn't end it,
> > I have to use ctrl-\ to kill waf. I guess I have to investigate that
> > further if it's not a know problem. (Using the current svn waf)
> I didn't try -j3 yet. I'll do that in the future.
Very useful for an SMP machine - without that, the complete build takes
2:00 minutes instead of 1:07 here.
I think I got something here... hangs at aiexperience.c again (-j2 this
time), with no other error message, the traceback occurred a few files
before aiexperience.c (which, incidentally, is the last file to be
compiled), I guess with -j3 it was even farther up so I didn't see it:
Exception in thread Thread-1:
Traceback (most recent call last):
File "threading.py", line 442, in __bootstrap
self.run()
File "/home/co/.waf-0.9.3/wafadmin/Runner.py", line 355, in run
ret = proc.run()
File "/home/co/.waf-0.9.3/wafadmin/Task.py", line 283, in run
return self.m_action.run(self)
File "/home/co/.waf-0.9.3/wafadmin/Action.py", line 54, in run
return self.m_function_to_run(task)
File "<string>", line 17, in f
File "/home/co/.waf-0.9.3/wafadmin/Runner.py", line 98, in
exec_command_interact
stat = proc.wait()
File "/home/co/.waf-0.9.3/wafadmin/pproc.py", line 544, in wait
pid, sts = os.waitpid(self.pid, 0)
OSError: [Errno 10] No child processes
> > - The working of the waf script is a bit tricky: It carries the
> > wafadmin directory attached to it, and puts that into ~/.waf-x.y.z,
> > but only if this directory doesn't exist yet. So when modifying it
> > you have to delete ~/.waf-x.y.z first, else you get the old version
> > and thus the modifications are not used.
> That's intended.
> You can export WAFDIR to /waf/svn/version/wafadmin or use ./waf --nocache
Hm, OK... but it's a bit counterintuitive having the single waf script
which effectively is not used if there's an older version in
~/.waf-x.y.z... Imagine we strip waf of some unneeded stuff like OCAML,
and someone uses the same waf version in another project and needs it.
Then waf will break in a totally opaque way.
> > - Is there an easy way to use several build directories with different
> > compiler settings? With the autostuff I can do for example:
> > mkdir debug; cd debug
> > ../configure --enable-debug
> > make
> > cd ..
> > mkdir release; cd release
> > ../configure
> > make
> > mkdir cpp; cd cpp
> > ../configure CC="g++ -fpermissive"
> > make
> > and I can build a debug version, a release version and test g++
> > compilation, all from the same source tree. Is that possible with
> > waf? It seems blddir is defined in wscript without a way to override
> > it.
> The intention of the author was not to change the builddir.
> Instead you should use variants. Have a look at the build and configure
> functions of the attached wscript.
> Thomas proposed an easier way to handle variants as soon as he has an
> overview
> of how developers expect them to behave.
Hmm... the big difference I see here is: The waf variants have to be
defined in the wscript, while the autostuff can have any number of
different configurations just by running ./configure in a different
directory. I really came to like that feature of autoconf, that's the
only thing I really miss in waf right now.
--
Nothing shortens a journey so pleasantly as an account of misfortunes at
which the hearer is permitted to laugh.
-- Quentin Crisp
_______________________________________________
Warzone-dev mailing list
[email protected]
https://mail.gna.org/listinfo/warzone-dev