diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2015-09-28 09:34:27 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2015-09-28 09:34:27 +0200 |
commit | bbc1acd6e9e086c5bcfccac971c8ca4edd192765 (patch) | |
tree | cafee6b8011ee3e2d72c77e8858473bf425a5e79 /bpkg/rep-info.cxx | |
parent | 08a439c5d4e4f8c6a448f4f85b60b5fef6d7ca15 (diff) |
Handle complement repositories
Diffstat (limited to 'bpkg/rep-info.cxx')
-rw-r--r-- | bpkg/rep-info.cxx | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/bpkg/rep-info.cxx b/bpkg/rep-info.cxx index 224866c..8bb3c7d 100644 --- a/bpkg/rep-info.cxx +++ b/bpkg/rep-info.cxx @@ -61,14 +61,25 @@ namespace bpkg { for (const repository_manifest& rm: rms) { - if (rm.location.empty ()) - continue; // Itself. + repository_role rr (rm.effective_role ()); - repository_location l (rm.location, rl); // Complete. + if (rr == repository_role::base) + continue; // Entry for this repository. - //@@ Handle complements. - // - cout << "prerequisite " << l.canonical_name () << " " << l << endl; + repository_location l (rm.location, rl); // Complete. + const string& n (l.canonical_name ()); + + switch (rr) + { + case repository_role::complement: + cout << "complement " << n << " " << l << endl; + break; + case repository_role::prerequisite: + cout << "prerequisite " << n << " " << l << endl; + break; + case repository_role::base: + assert (false); + } } } } |