diff options
author | Marek Safar <marek.safar@gmail.com> | 2004-10-02 02:12:13 +0400 |
---|---|---|
committer | Marek Safar <marek.safar@gmail.com> | 2004-10-02 02:12:13 +0400 |
commit | bfd8b9f4b37f14e78557542d7b24450c1d467c1d (patch) | |
tree | 80338e153a6fe64908f9abe9eb9fab0ae9a785f8 /mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs | |
parent | b033610375f786caac6047db55ee7a1c843ea2d0 (diff) |
2004-10-02 Marek Safar <marek.safar@seznam.cz>
* CSharpCodeCompiler.cs: Fix #65722.
svn path=/trunk/mcs/; revision=34601
Diffstat (limited to 'mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs')
-rw-r--r-- | mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs b/mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs index bd381f81145..7e5627941b7 100644 --- a/mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs +++ b/mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs @@ -198,30 +198,41 @@ namespace Mono.CSharp } return CompileAssemblyFromFileBatch (options, fileNames); } - private static string BuildArgs( - CompilerParameters options,string[] fileNames) + + + private static string BuildArgs(CompilerParameters options,string[] fileNames) { StringBuilder args=new StringBuilder(); if (options.GenerateExecutable) - args.AppendFormat("/target:exe "); + args.Append("/target:exe "); else - args.AppendFormat("/target:library "); + args.Append("/target:library "); + if (options.IncludeDebugInformation) - args.AppendFormat("/debug "); + args.Append("/debug+ /optimize- "); + else + args.Append("/debug- /optimize+ "); + if (options.TreatWarningsAsErrors) - args.AppendFormat("/warnaserror "); + args.Append("/warnaserror "); - if (options.WarningLevel != -1) + if (options.WarningLevel >= 0) args.AppendFormat ("/warn:{0} ", options.WarningLevel); if (options.OutputAssembly==null) options.OutputAssembly = GetTempFileNameWithExtension (options.TempFiles, "dll"); args.AppendFormat("/out:\"{0}\" ",options.OutputAssembly); + if (null != options.ReferencedAssemblies) { foreach (string import in options.ReferencedAssemblies) args.AppendFormat("/r:\"{0}\" ",import); } + + if (options.CompilerOptions != null) { + args.Append (options.CompilerOptions); + args.Append (" "); + } args.Append (" -- "); foreach (string source in fileNames) |