aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/include
diff options
context:
space:
mode:
authorLRFLEW <LRFLEW@aol.com>2018-10-17 12:46:27 -0600
committerRobert Schumacher <roschuma@microsoft.com>2018-10-17 11:46:27 -0700
commit3d12e5ca72d948121463beec6e48290877684471 (patch)
tree74d1edb1de757c0d0ce7adbaa99e376bc4adb336 /toolsrc/include
parente7a37f14a82aaead89447c029f62c3427e07373c (diff)
downloadvcpkg-3d12e5ca72d948121463beec6e48290877684471.tar.gz
vcpkg-3d12e5ca72d948121463beec6e48290877684471.zip
Handle symlink when installing or removing a library (#4479)
Diffstat (limited to 'toolsrc/include')
-rw-r--r--toolsrc/include/vcpkg/base/files.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/toolsrc/include/vcpkg/base/files.h b/toolsrc/include/vcpkg/base/files.h
index ed12ffd74..b07ff25b3 100644
--- a/toolsrc/include/vcpkg/base/files.h
+++ b/toolsrc/include/vcpkg/base/files.h
@@ -20,6 +20,7 @@ namespace fs
inline bool is_regular_file(file_status s) { return stdfs::is_regular_file(s); }
inline bool is_directory(file_status s) { return stdfs::is_directory(s); }
+ inline bool is_symlink(file_status s) { return stdfs::is_symlink(s); }
}
namespace vcpkg::Files
@@ -54,7 +55,9 @@ namespace vcpkg::Files
const fs::path& newpath,
fs::copy_options opts,
std::error_code& ec) = 0;
+ virtual void copy_symlink(const fs::path& oldpath, const fs::path& newpath, std::error_code& ec) = 0;
virtual fs::file_status status(const fs::path& path, std::error_code& ec) const = 0;
+ virtual fs::file_status symlink_status(const fs::path& path, std::error_code& ec) const = 0;
virtual std::vector<fs::path> find_from_PATH(const std::string& name) const = 0;