diff options
author | Brad King <brad.king@kitware.com> | 2010-10-05 19:29:20 (GMT) |
---|---|---|
committer | CMake Topic Stage <kwrobot@kitware.com> | 2010-10-05 19:29:20 (GMT) |
commit | 54a3bf001c2a6ed4ddda28e779f7515fbd4c2edf (patch) | |
tree | 9044b8a4fddb2c575a38258b70cdb4008b27a704 /Source | |
parent | 46bc165c36f166923dab2a829989a697221b69e5 (diff) | |
parent | 448661fbe5c93fb1f59ea45847b3eef75e7b4a8a (diff) | |
download | CMake-54a3bf001c2a6ed4ddda28e779f7515fbd4c2edf.zip CMake-54a3bf001c2a6ed4ddda28e779f7515fbd4c2edf.tar.gz CMake-54a3bf001c2a6ed4ddda28e779f7515fbd4c2edf.tar.bz2 |
Merge topic 'vs10-empty-target'
448661f VS10: Skip targets with no linker language (#11230)
Diffstat (limited to 'Source')
-rw-r--r-- | Source/cmVisualStudio10TargetGenerator.cxx | 18 | ||||
-rw-r--r-- | Source/cmVisualStudio10TargetGenerator.h | 4 |
2 files changed, 15 insertions, 7 deletions
diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx index 8dfafff..a92e56f 100644 --- a/Source/cmVisualStudio10TargetGenerator.cxx +++ b/Source/cmVisualStudio10TargetGenerator.cxx @@ -125,7 +125,10 @@ void cmVisualStudio10TargetGenerator::Generate() ".vcxproj"); if(this->Target->GetType() <= cmTarget::MODULE_LIBRARY) { - this->ComputeClOptions(); + if(!this->ComputeClOptions()) + { + return; + } } cmMakefile* mf = this->Target->GetMakefile(); std::string path = mf->GetStartOutputDirectory(); @@ -949,19 +952,23 @@ OutputLinkIncremental(std::string const& configName) } //---------------------------------------------------------------------------- -void cmVisualStudio10TargetGenerator::ComputeClOptions() +bool cmVisualStudio10TargetGenerator::ComputeClOptions() { std::vector<std::string> const* configs = this->GlobalGenerator->GetConfigurations(); for(std::vector<std::string>::const_iterator i = configs->begin(); i != configs->end(); ++i) { - this->ComputeClOptions(*i); + if(!this->ComputeClOptions(*i)) + { + return false; + } } + return true; } //---------------------------------------------------------------------------- -void cmVisualStudio10TargetGenerator::ComputeClOptions( +bool cmVisualStudio10TargetGenerator::ComputeClOptions( std::string const& configName) { // much of this was copied from here: @@ -984,7 +991,7 @@ void cmVisualStudio10TargetGenerator::ComputeClOptions( cmSystemTools::Error ("CMake can not determine linker language for target:", this->Name.c_str()); - return; + return false; } if(strcmp(linkLanguage, "C") == 0 || strcmp(linkLanguage, "CXX") == 0 || strcmp(linkLanguage, "Fortran") == 0) @@ -1044,6 +1051,7 @@ void cmVisualStudio10TargetGenerator::ComputeClOptions( } this->ClOptions[configName] = pOptions.release(); + return true; } //---------------------------------------------------------------------------- diff --git a/Source/cmVisualStudio10TargetGenerator.h b/Source/cmVisualStudio10TargetGenerator.h index 64b2361..c3c27f4 100644 --- a/Source/cmVisualStudio10TargetGenerator.h +++ b/Source/cmVisualStudio10TargetGenerator.h @@ -50,8 +50,8 @@ private: void WriteObjSources(); void WritePathAndIncrementalLinkOptions(); void WriteItemDefinitionGroups(); - void ComputeClOptions(); - void ComputeClOptions(std::string const& configName); + bool ComputeClOptions(); + bool ComputeClOptions(std::string const& configName); void WriteClOptions(std::string const& config, std::vector<std::string> const & includes); void WriteRCOptions(std::string const& config, |