[vtk-developers] Moved Mirkwood ninja dashboards to nightly

David Cole dlrdave at aol.com
Mon Apr 1 15:50:22 EDT 2013

I think this is possibly due to an interaction between POST BUILD 
custom commands and pure rule-based input-changed custom commands...

The generation of the hierarchy files are POST BUILD commands on the 
"unwrapped" pure module library targets.

The usage of the hierarchy files, to generate *Python.cxx files are 
used in pure input-changed style custom commands, whose output, the 
*.cxx files are built into the "*Python" and "*PythonD" libraries.

Those python libs already depend on the pure module library targets via 
target_link_libraries, but it seems like there is no target-ordering 
inferred all the way through to the rules that generate the sources...

So... ninja complains that there's no rule to build a hierarchy file as 
it's trying to generate a Python.cxx file, since it has nothing else to 
do in parallel. (Not sure why this problem is never seen with parallel 
make, or maybe with jom...)

My latest patch set attempts to fix the issue by using add_dependencies 
in addition to target_link_libraries. And addresses David Gobbi's 
proper concern with the previous patch set.

I will run some Experimental dashboards right now to verify (or 
disprove) that it "works."

Stay tuned,

-----Original Message-----
From: Brad King <brad.king at kitware.com>
To: VTK Developers <vtk-developers at vtk.org>
Cc: Bill Lorensen <bill.lorensen at gmail.com>; David Cole 
<dlrdave at aol.com>; Berk Geveci <berk.geveci at kitware.com>
Sent: Mon, Apr 1, 2013 2:46 pm
Subject: Re: [vtk-developers] Moved Mirkwood ninja dashboards to nightly

On 04/01/2013 02:03 PM, Bill Lorensen wrote:
> Should we ask the cmake folks if ninja is supported? Perhaps they can 

CMake's Ninja generator was contributed and is maintained along with
the other generators.  It is tested on CMake's dashboard just like
any other generator.  Of course there could be bugs in the generator
or in ninja that are not covered by either test suite.  VTK may
encounter such bugs but should not be required to work around them
in order to "support" ninja-based builds (but may optionally do
so as a temporary solution).

We should not ask ninja developers or those who contributed and
maintain CMake's Ninja generator to build all of VTK to find the
problem.  We need a minimal example to provide to them.

If someone encountering the problem can narrow down a dependency
failure to an example test case then the problem can be reported,
diagnosed, and addressed in CMake or ninja itself.



More information about the vtk-developers mailing list