summaryrefslogtreecommitdiffstats
path: root/Source/cmVisualStudio10TargetGenerator.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2018-04-26 12:55:06 (GMT)
committerKitware Robot <kwrobot@kitware.com>2018-04-26 12:55:19 (GMT)
commite52cf1034f1cb712dca28131fc113db0fb580db9 (patch)
tree69dd7745865841642522015ef1e96c2021355902 /Source/cmVisualStudio10TargetGenerator.h
parent6fd60c6ef0053406b4a88fc2b79c00f49c5bac7a (diff)
parentde549083e34906e4778a709497adc99f7f0dccbb (diff)
downloadCMake-e52cf1034f1cb712dca28131fc113db0fb580db9.zip
CMake-e52cf1034f1cb712dca28131fc113db0fb580db9.tar.gz
CMake-e52cf1034f1cb712dca28131fc113db0fb580db9.tar.bz2
Merge topic 'csharp_reference_imported_targets'
de549083e3 cmVisualStudio10TargetGenerator: warn if /clr flag is set manually 59ec7d50bd cmVisualStudio10TargetGenerator: fix for backward compatibility 663f5120f4 cmGlobalVisualStudioGenerator: remove TargetCanBeReferenced() 359544a907 add tests for using target_link_libraries() with imported managed targets 43571073e0 cmVisualStudio10TargetGenerator: store managed reference information in maps 16fec7e2fc cmVisualStudio10TargetGenerator: make some methods config aware f3c6828876 cmVisualStudio10TargetGenerator: /clr compatible flags for managed tgt f9042d807d remove TargetIsCSharpOnly() and use methods from cmGeneratorTarget ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1805
Diffstat (limited to 'Source/cmVisualStudio10TargetGenerator.h')
-rw-r--r--Source/cmVisualStudio10TargetGenerator.h17
1 files changed, 14 insertions, 3 deletions
diff --git a/Source/cmVisualStudio10TargetGenerator.h b/Source/cmVisualStudio10TargetGenerator.h
index 4d74afd..c8ca035 100644
--- a/Source/cmVisualStudio10TargetGenerator.h
+++ b/Source/cmVisualStudio10TargetGenerator.h
@@ -73,7 +73,8 @@ private:
std::vector<size_t> const& exclude_configs);
void WriteAllSources();
void WriteDotNetReferences();
- void WriteDotNetReference(std::string const& ref, std::string const& hint);
+ void WriteDotNetReference(std::string const& ref, std::string const& hint,
+ std::string const& config);
void WriteDotNetReferenceCustomTags(std::string const& ref);
void WriteEmbeddedResourceGroup();
void WriteWinRTReferences();
@@ -148,9 +149,10 @@ private:
void WriteProjectReferences();
void WriteApplicationTypeSettings();
void OutputSourceSpecificFlags(Elem&, cmSourceFile const* source);
- void AddLibraries(cmComputeLinkInformation& cli,
+ void AddLibraries(const cmComputeLinkInformation& cli,
std::vector<std::string>& libVec,
- std::vector<std::string>& vsTargetVec);
+ std::vector<std::string>& vsTargetVec,
+ const std::string& config);
void AddTargetsFileAndConfigPair(std::string const& targetsFile,
std::string const& config);
void WriteLibOptions(std::string const& config);
@@ -214,6 +216,15 @@ private:
bool IsMissingFiles;
std::vector<std::string> AddedFiles;
std::string DefaultArtifactDir;
+ // managed C++/C# relevant members
+ typedef std::pair<std::string, std::string> DotNetHintReference;
+ typedef std::vector<DotNetHintReference> DotNetHintReferenceList;
+ typedef std::map<std::string, DotNetHintReferenceList>
+ DotNetHintReferenceMap;
+ DotNetHintReferenceMap DotNetHintReferences;
+ typedef std::set<std::string> UsingDirectories;
+ typedef std::map<std::string, UsingDirectories> UsingDirectoriesMap;
+ UsingDirectoriesMap AdditionalUsingDirectories;
typedef std::map<std::string, ToolSources> ToolSourceMap;
ToolSourceMap Tools;