resolve cyclic dependency with zstd
[platform/upstream/cmake.git] / Source / cmBinUtilsLinker.h
1 /* Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
2    file Copyright.txt or https://cmake.org/licensing for details.  */
3
4 #pragma once
5
6 #include <string>
7
8 #include "cmStateTypes.h"
9
10 class cmRuntimeDependencyArchive;
11
12 class cmBinUtilsLinker
13 {
14 public:
15   cmBinUtilsLinker(cmRuntimeDependencyArchive* archive);
16   virtual ~cmBinUtilsLinker() = default;
17
18   virtual bool Prepare() { return true; }
19
20   virtual bool ScanDependencies(std::string const& file,
21                                 cmStateEnums::TargetType type) = 0;
22
23 protected:
24   cmRuntimeDependencyArchive* Archive;
25
26   void SetError(const std::string& e);
27 };