diff options
author | Brad King <brad.king@kitware.com> | 2016-11-11 15:44:20 (GMT) |
---|---|---|
committer | CMake Topic Stage <kwrobot@kitware.com> | 2016-11-11 15:44:20 (GMT) |
commit | a0b159685ea4383255e46de5456d6a9204457c1f (patch) | |
tree | 81f89a516293c1e47ce9f0426f58d01a1fa996a5 /Source/cmVisualStudio10TargetGenerator.h | |
parent | 5733d3fbb96a0f48b58b44e5b256ec1978cbbf61 (diff) | |
parent | 883bd34a1fa31273929c7baf2f43b3c6f5ec0c01 (diff) | |
download | CMake-a0b159685ea4383255e46de5456d6a9204457c1f.zip CMake-a0b159685ea4383255e46de5456d6a9204457c1f.tar.gz CMake-a0b159685ea4383255e46de5456d6a9204457c1f.tar.bz2 |
Merge topic 'vs_targets_file_as_library'
883bd34a VS: Treat libraries ending in `.targets` as msbuild imports
Diffstat (limited to 'Source/cmVisualStudio10TargetGenerator.h')
-rw-r--r-- | Source/cmVisualStudio10TargetGenerator.h | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/Source/cmVisualStudio10TargetGenerator.h b/Source/cmVisualStudio10TargetGenerator.h index 54b9569..1fa844c 100644 --- a/Source/cmVisualStudio10TargetGenerator.h +++ b/Source/cmVisualStudio10TargetGenerator.h @@ -41,6 +41,12 @@ private: { }; + struct TargetsFileAndConfigs + { + std::string File; + std::vector<std::string> Configs; + }; + std::string ConvertPath(std::string const& path, bool forceRelative); void ConvertToWindowsSlash(std::string& s); void WriteString(const char* line, int indentLevel); @@ -77,6 +83,7 @@ private: std::string const& version); void WriteCommonMissingFiles(const std::string& manifestFile); void WriteTargetSpecificReferences(); + void WriteTargetsFileReferences(); bool ComputeClOptions(); bool ComputeClOptions(std::string const& configName); @@ -92,6 +99,8 @@ private: std::vector<std::string> const& includes); bool ComputeLinkOptions(); bool ComputeLinkOptions(std::string const& config); + bool ComputeLibOptions(); + bool ComputeLibOptions(std::string const& config); void WriteLinkOptions(std::string const& config); void WriteMidlOptions(std::string const& config, std::vector<std::string> const& includes); @@ -106,7 +115,10 @@ private: void WriteApplicationTypeSettings(); bool OutputSourceSpecificFlags(cmSourceFile const* source); void AddLibraries(cmComputeLinkInformation& cli, - std::vector<std::string>& libVec); + std::vector<std::string>& libVec, + std::vector<std::string>& vsTargetVec); + void AddTargetsFileAndConfigPair(std::string const& targetsFile, + std::string const& config); void WriteLibOptions(std::string const& config); void WriteManifestOptions(std::string const& config); void WriteEvents(std::string const& configName); @@ -132,6 +144,7 @@ private: OptionsMap LinkOptions; std::string PathToVcxproj; std::vector<std::string> Configurations; + std::vector<TargetsFileAndConfigs> TargetsFileAndConfigsVec; cmGeneratorTarget* GeneratorTarget; cmMakefile* Makefile; std::string Platform; |