summaryrefslogtreecommitdiff
path: root/tools/minicargo/build.h
diff options
context:
space:
mode:
Diffstat (limited to 'tools/minicargo/build.h')
-rw-r--r--tools/minicargo/build.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/tools/minicargo/build.h b/tools/minicargo/build.h
index a1b428a6..ac3e14ee 100644
--- a/tools/minicargo/build.h
+++ b/tools/minicargo/build.h
@@ -35,4 +35,19 @@ private:
Timestamp get_timestamp(const ::helpers::path& path) const;
};
+class BuildList2
+{
+ struct Entry
+ {
+ const PackageManifest* package;
+ ::std::vector<unsigned> dependents; // Indexes into the list
+ };
+ const PackageManifest& m_root_manifest;
+ // List is sorted by build order
+ ::std::vector<Entry> m_list;
+public:
+ BuildList2(const PackageManifest& manifest, const BuildOptions& opts);
+ bool build(BuildOptions opts, unsigned num_jobs); // 0 = 1 job
+};
+
extern bool MiniCargo_Build(const PackageManifest& manifest, BuildOptions opts);