mirror of
https://github.com/Kitware/CMake.git
synced 2026-04-30 11:10:06 -05:00
VS: Do not accumulate configurations globally (#15577)
Drop the VS >= 7 generator's global Configurations member and instead lookup configurations using cmMakefile::GetConfigurations where needed. This avoids accumulating all CMAKE_CONFIGURATION_TYPES values ever encountered by a project() or enable_language() command and allows the final value to be used in each directory. We don't officially support per-directory CMAKE_CONFIGURATION_TYPES values but we certainly should not generate configurations not in the final value in the top level directory.
This commit is contained in:
@@ -77,6 +77,7 @@ private:
|
||||
void WriteVCProjFile(std::ostream& fout, const std::string& libName,
|
||||
cmTarget &tgt);
|
||||
void WriteConfigurations(std::ostream& fout,
|
||||
std::vector<std::string> const& configs,
|
||||
const std::string& libName, cmTarget &tgt);
|
||||
void WriteConfiguration(std::ostream& fout,
|
||||
const std::string& configName,
|
||||
@@ -101,6 +102,7 @@ private:
|
||||
void WriteVCProjEndGroup(std::ostream& fout);
|
||||
|
||||
void WriteCustomRule(std::ostream& fout,
|
||||
std::vector<std::string> const& configs,
|
||||
const char* source,
|
||||
const cmCustomCommand& command,
|
||||
FCInfo& fcinfo);
|
||||
@@ -109,7 +111,7 @@ private:
|
||||
bool WriteGroup(const cmSourceGroup *sg,
|
||||
cmTarget& target, std::ostream &fout,
|
||||
const std::string& libName,
|
||||
std::vector<std::string> *configs);
|
||||
std::vector<std::string> const& configs);
|
||||
|
||||
friend class cmLocalVisualStudio7GeneratorFCInfo;
|
||||
friend class cmLocalVisualStudio7GeneratorInternals;
|
||||
|
||||
Reference in New Issue
Block a user