summaryrefslogtreecommitdiff
path: root/src/other_tools/root_maps/commit_git_map.hpp
diff options
context:
space:
mode:
authorPaul Cristian Sarbu <paul.cristian.sarbu@huawei.com>2023-05-25 13:03:02 +0200
committerPaul Cristian Sarbu <paul.cristian.sarbu@huawei.com>2023-05-31 15:21:02 +0200
commitee15c997efce81d0203757eb5fd9db80aeb610f9 (patch)
tree14110b532e29865c00419b8667fb0037b371a9a3 /src/other_tools/root_maps/commit_git_map.hpp
parentc5f89b54c65e7ad5f1cda8ba924600d8061ab1a7 (diff)
downloadjustbuild-ee15c997efce81d0203757eb5fd9db80aeb610f9.tar.gz
git repos: Add option for ignore-special root
Diffstat (limited to 'src/other_tools/root_maps/commit_git_map.hpp')
-rw-r--r--src/other_tools/root_maps/commit_git_map.hpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/other_tools/root_maps/commit_git_map.hpp b/src/other_tools/root_maps/commit_git_map.hpp
index 352c094e..1e702e3a 100644
--- a/src/other_tools/root_maps/commit_git_map.hpp
+++ b/src/other_tools/root_maps/commit_git_map.hpp
@@ -31,9 +31,12 @@ struct GitRepoInfo {
std::string subdir{}; /* key */
// name of repository for which work is done; used in progress reporting
std::string origin{};
+ // create root that ignores symlinks
+ bool ignore_special{}; /* key */
[[nodiscard]] auto operator==(const GitRepoInfo& other) const -> bool {
- return hash == other.hash and subdir == other.subdir;
+ return hash == other.hash and subdir == other.subdir and
+ ignore_special == other.ignore_special;
}
};
@@ -45,6 +48,7 @@ struct hash<GitRepoInfo> {
size_t seed{};
hash_combine<std::string>(&seed, ct.hash);
hash_combine<std::string>(&seed, ct.subdir);
+ hash_combine<bool>(&seed, ct.ignore_special);
return seed;
}
};