void set_debug(bool value);
void set_depend_mode(bool value);
void set_direct_mode(bool value);
+ void set_file_clone(bool value);
+ void set_hard_link(bool value);
void set_ignore_options(const std::string& value);
void set_inode_cache(bool value);
void set_max_files(uint64_t value);
m_direct_mode = value;
}
+inline void
+Config::set_file_clone(const bool value)
+{
+ m_file_clone = value;
+}
+
+inline void
+Config::set_hard_link(const bool value)
+{
+ m_hard_link = value;
+}
+
inline void
Config::set_ignore_options(const std::string& value)
{
ctx.config.set_depend_mode(false);
}
+ if (ctx.storage.has_secondary_storage()) {
+ if (ctx.config.file_clone()) {
+ LOG_RAW("Disabling file clone mode since secondary storage is enabled");
+ ctx.config.set_file_clone(false);
+ }
+ if (ctx.config.hard_link()) {
+ LOG_RAW("Disabling hard link mode since secondary storage is enabled");
+ ctx.config.set_hard_link(false);
+ }
+ }
+
LOG("Source file: {}", ctx.args_info.input_file);
if (ctx.args_info.generating_dependencies) {
LOG("Dependency file: {}", ctx.args_info.output_dep);
remove_from_secondary_storage(key);
}
+bool
+Storage::has_secondary_storage() const
+{
+ return !m_secondary_storages.empty();
+}
+
std::string
Storage::get_secondary_storage_config_for_logging() const
{
void remove(const Digest& key, core::CacheEntryType type);
+ bool has_secondary_storage() const;
std::string get_secondary_storage_config_for_logging() const;
private: