Esempio n. 1
0
 ResolveDeferredSetup()
 {
     // any per-configuration files excluded from the build
     foreach (var target in this.Targets.Values)
     {
         if (null == target.SourcesBuildPhase)
         {
             continue;
         }
         foreach (var config in target.ConfigurationList)
         {
             var diff = target.SourcesBuildPhase.BuildFiles.Complement(config.BuildFiles);
             if (diff.Count > 0)
             {
                 var excluded = new MultiConfigurationValue();
                 foreach (var file in diff)
                 {
                     var fullPath = file.FileRef.Path.Parse();
                     var filename = System.IO.Path.GetFileName(fullPath);
                     excluded.Add(filename);
                 }
                 config["EXCLUDED_SOURCE_FILE_NAMES"] = excluded;
             }
         }
     }
     // any target dependencies (now that all projects have been filled out)
     foreach (var target in this.Targets.Values)
     {
         target.ResolveTargetDependencies();
     }
 }
Esempio n. 2
0
 ResolveDeferredSetup()
 {
     // any per-configuration files excluded from the build
     foreach (var target in this.Targets.Values)
     {
         if (null == target.SourcesBuildPhase)
         {
             continue;
         }
         foreach (var config in target.ConfigurationList)
         {
             if (!target.SourcesBuildPhase.IsValueCreated)
             {
                 continue;
             }
             var diff = target.SourcesBuildPhase.Value.BuildFiles.Complement(config.BuildFiles);
             if (diff.Any())
             {
                 var excluded = new MultiConfigurationValue();
                 foreach (var file in diff)
                 {
                     var fullPath          = file.FileRef.Path.ToString();
                     var package_build_dir = this.Module.Macros["packagebuilddir"].ToString();
                     var srcRoot           = this.Module.Macros["packagedir"].ToString();
                     if (fullPath.StartsWith(package_build_dir))
                     {
                         var excluded_path = "$(SYMROOT)" + fullPath.Replace(package_build_dir, "");
                         excluded.Add(excluded_path);
                     }
                     else if (fullPath.StartsWith(srcRoot))
                     {
                         var excluded_path = "$(SRCROOT)" + fullPath.Replace(srcRoot, "");
                         excluded.Add(excluded_path);
                     }
                     else
                     {
                         var excluded_path = System.IO.Path.GetFileName(fullPath);
                         excluded.Add(excluded_path);
                     }
                 }
                 config["EXCLUDED_SOURCE_FILE_NAMES"] = excluded;
             }
         }
     }
     // any target dependencies (now that all projects have been filled out)
     foreach (var target in this.Targets.Values)
     {
         target.ResolveTargetDependencies();
     }
 }
Esempio n. 3
0
 FixupPerConfigurationData()
 {
     foreach (var target in this.Targets.Values)
     {
         if (null == target.SourcesBuildPhase)
         {
             continue;
         }
         foreach (var config in target.ConfigurationList)
         {
             var diff = target.SourcesBuildPhase.BuildFiles.Complement(config.BuildFiles);
             if (diff.Count > 0)
             {
                 var excluded = new MultiConfigurationValue();
                 foreach (var file in diff)
                 {
                     excluded.Add(file.FileRef.Path.Parse());
                 }
                 config["EXCLUDED_SOURCE_FILE_NAMES"] = excluded;
             }
         }
     }
 }
Esempio n. 4
0
 public void FixupPerConfigurationData()
 {
     foreach (var target in this.Targets.Values)
     {
         if (null == target.SourcesBuildPhase)
         {
             continue;
         }
         foreach (var config in target.ConfigurationList)
         {
             var diff = target.SourcesBuildPhase.BuildFiles.Complement(config.BuildFiles);
             if (diff.Count > 0)
             {
                 var excluded = new MultiConfigurationValue();
                 foreach (var file in diff)
                 {
                     excluded.Add(file.FileRef.Path.Parse());
                 }
                 config["EXCLUDED_SOURCE_FILE_NAMES"] = excluded;
             }
         }
     }
 }