[Ardour-Dev] important bug fix for waf (ardour 3)

Paul Davis paul at linuxaudiosystems.com
Wed Dec 1 19:09:48 PST 2010


i've just committed a fix for a fairly serious error in waf 1.5.18
that prevented waf from correctly tracking dependencies. you don't
*need* to do anything dramatic to pick up this fix, but to be better
safe than sorry:

	cd $TOP_OF_MY_ARDOUR3_SOURCE_TREE
	svn update
	rm -rf .waf-*
	./waf clean
	./waf configure --debug <YOUR EXTRA OPTIONS HERE>
	./waf

for the curious, the bug was that waf was tracking its recursive
processing of #include files by incrementing a counter every time it
descended into a new one while processing an existing source file.
however, it never decremented the counter when it was done, and as a
result, in the case of a number of files with many deeply nested
header files, the counter would simply grow during processing till it
hit waf's recursion limit (100 files). at this point, it would
silently stop processing any more include files, and as a result would
have an incomplete notion of the dependencies between files. this then
led to broken builds because it would not correctly rebuild certain
targets even though they should have been.

i will pass the fix into waf's lead developer.

--p


More information about the Ardour-Dev mailing list