| 560 | } |
| 561 | |
| 562 | void cmComputeTargetDepends::DisplayComponents( |
| 563 | cmComputeComponentGraph const& ccg, std::string const& name) |
| 564 | { |
| 565 | fprintf(stderr, "The strongly connected components for the %s graph are:\n", |
| 566 | name.c_str()); |
| 567 | std::vector<NodeList> const& components = ccg.GetComponents(); |
| 568 | size_t n = components.size(); |
| 569 | for (size_t c = 0; c < n; ++c) { |
| 570 | NodeList const& nl = components[c]; |
| 571 | fprintf(stderr, "Component (%zu):\n", c); |
| 572 | for (size_t i : nl) { |
| 573 | fprintf(stderr, " contains target %zu [%s]\n", i, |
| 574 | this->Targets[i]->GetName().c_str()); |
| 575 | } |
| 576 | } |
| 577 | fprintf(stderr, "\n"); |
| 578 | } |
| 579 | |
| 580 | bool cmComputeTargetDepends::CheckComponents( |
| 581 | cmComputeComponentGraph const& ccg) |