summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tools/minicargo/build.cpp8
-rw-r--r--tools/minicargo/repository.cpp6
2 files changed, 10 insertions, 4 deletions
diff --git a/tools/minicargo/build.cpp b/tools/minicargo/build.cpp
index d0c31db8..b6096b30 100644
--- a/tools/minicargo/build.cpp
+++ b/tools/minicargo/build.cpp
@@ -201,17 +201,20 @@ void MiniCargo_Build(const PackageManifest& manifest, ::helpers::path override_p
void BuildList::add_dependencies(const PackageManifest& p, unsigned level)
{
+ TRACE_FUNCTION_F(p.name());
for (const auto& dep : p.dependencies())
{
if( dep.is_optional() )
{
continue ;
}
+ DEBUG("Depenency " << dep.name());
add_package(dep.get_package(), level+1);
}
}
void BuildList::add_package(const PackageManifest& p, unsigned level)
{
+ TRACE_FUNCTION_F(p.name());
// If the package is already loaded
for(auto& ent : m_list)
{
@@ -223,10 +226,7 @@ void BuildList::add_package(const PackageManifest& p, unsigned level)
// Keep searching (might already have a higher entry)
}
m_list.push_back({ &p, level });
- for (const auto& dep : p.dependencies())
- {
- add_package(dep.get_package(), level+1);
- }
+ add_dependencies(p, level);
}
void BuildList::sort_list()
{
diff --git a/tools/minicargo/repository.cpp b/tools/minicargo/repository.cpp
index 09aa0bad..515a61b6 100644
--- a/tools/minicargo/repository.cpp
+++ b/tools/minicargo/repository.cpp
@@ -110,6 +110,7 @@ void Repository::load_vendored(const ::helpers::path& path)
}
::std::shared_ptr<PackageManifest> Repository::find(const ::std::string& name, const PackageVersionSpec& version)
{
+ DEBUG("FIND " << name << " matching " << version);
auto itp = m_cache.equal_range(name);
Entry* best = nullptr;
@@ -117,11 +118,16 @@ void Repository::load_vendored(const ::helpers::path& path)
{
if( version.accepts(i->second.version) )
{
+ DEBUG("Accept " << i->second.version);
if( !best || best->version < i->second.version )
{
best = &i->second;
}
}
+ else
+ {
+ DEBUG("Ignore " << i->second.version);
+ }
}
if( best )