/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying file Copyright.txt or https://cmake.org/licensing for details. */ #pragma once #include #include #include #include "cmInstallGenerator.h" #include "cmScriptGenerator.h" class cmListFileBacktrace; class cmLocalGenerator; class cmInstallRuntimeDependencySet; class cmInstallGetRuntimeDependenciesGenerator : public cmInstallGenerator { public: cmInstallGetRuntimeDependenciesGenerator( cmInstallRuntimeDependencySet* runtimeDependencySet, std::vector directories, std::vector preIncludeRegexes, std::vector preExcludeRegexes, std::vector postIncludeRegexes, std::vector postExcludeRegexes, std::vector postIncludeFiles, std::vector postExcludeFiles, std::string libraryComponent, std::string frameworkComponent, bool noInstallRPath, const char* depsVar, const char* rpathPrefix, std::vector const& configurations, MessageLevel message, bool exclude_from_all, cmListFileBacktrace backtrace); bool Compute(cmLocalGenerator* lg) override; protected: void GenerateScript(std::ostream& os) override; void GenerateScriptForConfig(std::ostream& os, const std::string& config, Indent indent) override; private: cmInstallRuntimeDependencySet* RuntimeDependencySet; std::vector Directories; std::vector PreIncludeRegexes; std::vector PreExcludeRegexes; std::vector PostIncludeRegexes; std::vector PostExcludeRegexes; std::vector PostIncludeFiles; std::vector PostExcludeFiles; std::string LibraryComponent; std::string FrameworkComponent; bool NoInstallRPath; const char* DepsVar; const char* RPathPrefix; cmLocalGenerator* LocalGenerator = nullptr; };