From f4196f1638ad41cd640f4a57cefbcdb422724133 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Fri, 23 Sep 2016 14:25:17 -0700 Subject: [vcpkg] Move find_available_package, find_available_port_file into vcpkg_paths. `vcpkg_paths` is responsible for binding the concrete filesystem representation to the abstract `package_spec`. --- toolsrc/src/commands_installation.cpp | 2 +- toolsrc/src/lib.cpp | 21 +++------------------ toolsrc/src/vcpkg_paths.cpp | 11 +++++++++++ 3 files changed, 15 insertions(+), 19 deletions(-) (limited to 'toolsrc/src') diff --git a/toolsrc/src/commands_installation.cpp b/toolsrc/src/commands_installation.cpp index 35e1ba28c..f0e963bb6 100644 --- a/toolsrc/src/commands_installation.cpp +++ b/toolsrc/src/commands_installation.cpp @@ -80,7 +80,7 @@ namespace vcpkg continue; } - fs::path package_path = find_available_package(paths, spec); + fs::path package_path = paths.find_available_package(spec); expected file_contents = Files::get_contents(package_path / "CONTROL"); diff --git a/toolsrc/src/lib.cpp b/toolsrc/src/lib.cpp index 2a3b95182..780067870 100644 --- a/toolsrc/src/lib.cpp +++ b/toolsrc/src/lib.cpp @@ -133,24 +133,9 @@ static std::string get_fullpkgname_from_listfile(const fs::path& path) return ret; } -fs::path vcpkg::control_file_for_package(const fs::path& package) -{ - return package / "CONTROL"; -} - -fs::path vcpkg::find_available_package(const vcpkg_paths& paths, const package_spec& spec) -{ - return paths.packages / Strings::format("%s_%s", spec.name, spec.target_triplet); -} - -fs::path vcpkg::find_available_port_file(const vcpkg_paths& paths, const package_spec& spec) -{ - return paths.ports / spec.name; -} - static fs::path prefix_path_for_package(const vcpkg_paths& paths, const BinaryParagraph& pgh) { - return find_available_package(paths, {pgh.name, pgh.target_triplet}); + return paths.find_available_package({pgh.name, pgh.target_triplet}); } static void write_update(const vcpkg_paths& paths, const StatusParagraph& p) @@ -228,7 +213,7 @@ static void install_and_write_listfile(const vcpkg_paths& paths, const BinaryPar std::vector vcpkg::get_unmet_package_dependencies(const vcpkg_paths& paths, const package_spec& spec, const StatusParagraphs& status_db) { std::vector> pghs; - const fs::path packages_dir_control_file_path = find_available_package(paths, spec) / "CONTROL"; + const fs::path packages_dir_control_file_path = paths.find_available_package(spec) / "CONTROL"; if (fs::exists(packages_dir_control_file_path)) { @@ -245,7 +230,7 @@ std::vector vcpkg::get_unmet_package_dependencies(const vcpkg_paths return BinaryParagraph(pghs[0]).depends; } - const fs::path ports_dir_control_file_path = find_available_port_file(paths, spec) / "CONTROL"; + const fs::path ports_dir_control_file_path = paths.find_available_port_file(spec) / "CONTROL"; try { pghs = get_paragraphs(ports_dir_control_file_path); diff --git a/toolsrc/src/vcpkg_paths.cpp b/toolsrc/src/vcpkg_paths.cpp index 10b6d992a..dfcfd5eca 100644 --- a/toolsrc/src/vcpkg_paths.cpp +++ b/toolsrc/src/vcpkg_paths.cpp @@ -3,6 +3,7 @@ #include "vcpkg_paths.h" #include "metrics.h" #include "vcpkg_System.h" +#include "package_spec.h" namespace fs = std::tr2::sys; @@ -45,4 +46,14 @@ namespace vcpkg paths.ports_cmake = paths.root / "scripts" / "ports.cmake"; return paths; } + + fs::path vcpkg_paths::find_available_package(const package_spec& spec) const + { + return this->packages / Strings::format("%s_%s", spec.name, spec.target_triplet); + } + + fs::path vcpkg_paths::find_available_port_file(const package_spec& spec) const + { + return this->ports / spec.name; + } } -- cgit v1.2.3