aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/include
diff options
context:
space:
mode:
authorRobert Schumacher <roschuma@microsoft.com>2017-04-23 01:30:43 -0700
committerRobert Schumacher <roschuma@microsoft.com>2017-04-23 01:30:43 -0700
commitee0201cfae196c175d58064b2e62a91c033ec038 (patch)
tree76690e3d383237ee50247c9b56c8908d7148f62f /toolsrc/include
parente48fdb66a5be01321e68b371c6c171ed0fec3054 (diff)
downloadvcpkg-ee0201cfae196c175d58064b2e62a91c033ec038.tar.gz
vcpkg-ee0201cfae196c175d58064b2e62a91c033ec038.zip
[vcpkg-build] Fix regression in build command.
Missing dependencies were not being computed correctly after the internal call to build failed. Solution is to return the already-computed list from build.
Diffstat (limited to 'toolsrc/include')
-rw-r--r--toolsrc/include/vcpkg_Commands.h21
1 files changed, 19 insertions, 2 deletions
diff --git a/toolsrc/include/vcpkg_Commands.h b/toolsrc/include/vcpkg_Commands.h
index 68689bf1e..4c1970219 100644
--- a/toolsrc/include/vcpkg_Commands.h
+++ b/toolsrc/include/vcpkg_Commands.h
@@ -31,8 +31,25 @@ namespace vcpkg::Commands
std::wstring make_build_env_cmd(const Triplet& triplet, const Toolset& toolset);
- BuildResult build_package(const SourceParagraph& source_paragraph, const PackageSpec& spec, const VcpkgPaths& paths, const fs::path& port_dir, const StatusParagraphs& status_db);
- void perform_and_exit(const PackageSpec& spec, const fs::path& port_dir, const std::unordered_set<std::string>& options, const VcpkgPaths& paths);
+ struct ExtendedBuildResult
+ {
+ BuildResult code;
+ std::vector<PackageSpec> unmet_dependencies;
+ };
+
+ ExtendedBuildResult build_package(
+ const SourceParagraph& source_paragraph,
+ const PackageSpec& spec,
+ const VcpkgPaths& paths,
+ const fs::path& port_dir,
+ const StatusParagraphs& status_db);
+
+ void perform_and_exit(
+ const PackageSpec& spec,
+ const fs::path& port_dir,
+ const std::unordered_set<std::string>& options,
+ const VcpkgPaths& paths);
+
void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths, const Triplet& default_triplet);
}