public static void AddAdditionalPlatformSupportData(ICompilationExtension compilationExtension, ref ScriptAssembly scriptAssembly) { if (compilationExtension == null) { return; } scriptAssembly.Defines = AddAdditionalToArray(scriptAssembly.Defines, compilationExtension.GetAdditionalDefines().ToArray()); scriptAssembly.References = AddAdditionalToArray(scriptAssembly.References, compilationExtension.GetAdditionalAssemblyReferences() .Concat(compilationExtension.GetWindowsMetadataReferences()).ToArray()); scriptAssembly.Files = AddAdditionalToArray(scriptAssembly.Files, compilationExtension.GetAdditionalSourceFiles().ToArray()); }
private void FillCompilerOptions(List <string> arguments, out string argsPrefix) { argsPrefix = "/noconfig "; arguments.Add("/nostdlib+"); arguments.Add("/preferreduilang:en-US"); IPlatformSupportModule platformSupportModule = ModuleManager.FindPlatformSupportModule(ModuleManager.GetTargetStringFromBuildTarget(this.BuildTarget)); ICompilationExtension compilationExtension = platformSupportModule.CreateCompilationExtension(); arguments.AddRange(from r in this.GetClassLibraries() select "/reference:\"" + r + "\""); arguments.AddRange(from r in compilationExtension.GetAdditionalAssemblyReferences() select "/reference:\"" + r + "\""); arguments.AddRange(from r in compilationExtension.GetWindowsMetadataReferences() select "/reference:\"" + r + "\""); arguments.AddRange(from d in compilationExtension.GetAdditionalDefines() select "/define:" + d); arguments.AddRange(compilationExtension.GetAdditionalSourceFiles()); }