Browse Source

Unity: Generic source file handling for all generators

Cristian Adam 5 years ago
parent
commit
5ae07e7166
2 changed files with 2 additions and 7 deletions
  1. 1 6
      Source/cmLocalGenerator.cxx
  2. 1 1
      Source/cmVisualStudio10TargetGenerator.cxx

+ 1 - 6
Source/cmLocalGenerator.cxx

@@ -2519,12 +2519,7 @@ void cmLocalGenerator::AddUnityBuild(cmGeneratorTarget* target)
         for (; begin != end; ++begin) {
         for (; begin != end; ++begin) {
           cmSourceFile* sf = filtered_sources[begin];
           cmSourceFile* sf = filtered_sources[begin];
 
 
-          // Only in Visual Studio generator we keep the source files
-          // for explicit processing.
-          if (!this->GetGlobalGenerator()->IsMultiConfig() ||
-              this->GetGlobalGenerator()->IsXcode()) {
-            target->AddSourceFileToUnityBatch(sf->ResolveFullPath());
-          }
+          target->AddSourceFileToUnityBatch(sf->ResolveFullPath());
           sf->SetProperty("UNITY_SOURCE_FILE", filename.c_str());
           sf->SetProperty("UNITY_SOURCE_FILE", filename.c_str());
 
 
           if (beforeInclude) {
           if (beforeInclude) {

+ 1 - 1
Source/cmVisualStudio10TargetGenerator.cxx

@@ -2141,7 +2141,6 @@ void cmVisualStudio10TargetGenerator::WriteAllSources(Elem& e0)
         this->WriteExtraSource(e1, si.Source);
         this->WriteExtraSource(e1, si.Source);
         break;
         break;
       case cmGeneratorTarget::SourceKindHeader:
       case cmGeneratorTarget::SourceKindHeader:
-      case cmGeneratorTarget::SourceKindUnityBatched:
         this->WriteHeaderSource(e1, si.Source);
         this->WriteHeaderSource(e1, si.Source);
         break;
         break;
       case cmGeneratorTarget::SourceKindIDL:
       case cmGeneratorTarget::SourceKindIDL:
@@ -2153,6 +2152,7 @@ void cmVisualStudio10TargetGenerator::WriteAllSources(Elem& e0)
       case cmGeneratorTarget::SourceKindModuleDefinition:
       case cmGeneratorTarget::SourceKindModuleDefinition:
         tool = "None";
         tool = "None";
         break;
         break;
+      case cmGeneratorTarget::SourceKindUnityBatched:
       case cmGeneratorTarget::SourceKindObjectSource: {
       case cmGeneratorTarget::SourceKindObjectSource: {
         const std::string& lang = si.Source->GetLanguage();
         const std::string& lang = si.Source->GetLanguage();
         if (lang == "C" || lang == "CXX") {
         if (lang == "C" || lang == "CXX") {