First off thanks again for all the work you guys put into ninja. It is an amazing tool. I am currently using the “graph” tool to produce dependency graphs in dot. It works great except for the fact that there are a large number of seemingly fake nodes in the graph that I can’t explain. They seem to simply be hex values. Below is a picture. I was wondering if anyone knows what is going on here? This is a ninja build generated from cmake. Also, those values do not appear anywhere in rules.ninja, build.ninja, or the output of “ninja –t targets all “either. Any clue? I am more concerned that I have some sort of rouge targets or dependencies in my builds that this is a warning off.
Thanking you in advance,
Kris

--
You received this message because you are subscribed to the Google Groups "ninja-build" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ninja-build+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Thank you for taking a look. If I get a chance I will try and take a look to see if I can narrow it down further. I did want to say that I found this tool super useful in getting my build dependencies / rules so even if it is just a one-off tool, I would love to see it stick around.
-Kris
--
To unsubscribe from this group and stop receiving emails from it, send an email to ninja-build...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
I did finally figure this out. The unresolved labels are my CMakeLists.txt files and a few files that are all dependencies of the build.ninja target. The reason they are included in my graph are that some of the “few files” that are dependencies of the build.ninja target are also used as dependencies during the build. For instance, I have a python module that both dynamically figures out “what to build” during configure time and dynamically code generates the source code during the build step. So the fact that it was a dependency of my target is what brought it into my build graph. Still not entirely sure why it adds the edges from dependencies to the phony node though. If I add build.ninja to the target list of what to graph on the command line the labels do get set properly. Or if I remove the dependency to build.ninja they do not appear in the graph at all.
Now that I know what they are I can both rest easy and either give them proper labels or exclude them in the graph output. Thanks again for all the great work on ninja.
-Kris