diff options
Diffstat (limited to 'mcs/tools/cil-strip/cilstrip.cs')
-rw-r--r-- | mcs/tools/cil-strip/cilstrip.cs | 29 |
1 files changed, 20 insertions, 9 deletions
diff --git a/mcs/tools/cil-strip/cilstrip.cs b/mcs/tools/cil-strip/cilstrip.cs index ec80b178ca6..97cd4669eec 100644 --- a/mcs/tools/cil-strip/cilstrip.cs +++ b/mcs/tools/cil-strip/cilstrip.cs @@ -8,6 +8,7 @@ // using System; +using System.Collections.Generic; using System.Reflection; using Mono.Cecil; @@ -15,25 +16,32 @@ using Mono.Cecil; namespace Mono.CilStripper { class Program { - - static int Main (string [] args) + static bool quiet; + static int Main (string [] arguments) { + var args = new List<string> (arguments); + if (args.Count > 0 && args [0] == "-q") { + quiet = true; + args.RemoveAt (0); + } Header (); - if (args.Length == 0) + if (args.Count == 0) Usage (); string file = args [0]; - string output = args.Length > 1 ? args [1] : file; + string output = args.Count > 1 ? args [1] : file; try { AssemblyDefinition assembly = AssemblyFactory.GetAssembly (file); StripAssembly (assembly, output); - if (file != output) - Console.WriteLine ("Assembly {0} stripped out into {1}", file, output); - else - Console.WriteLine ("Assembly {0} stripped", file); + if (!quiet) { + if (file != output) + Console.WriteLine ("Assembly {0} stripped out into {1}", file, output); + else + Console.WriteLine ("Assembly {0} stripped", file); + } return 0; } catch (TargetInvocationException tie) { Console.WriteLine ("Error: {0}", tie.InnerException); @@ -50,13 +58,16 @@ namespace Mono.CilStripper { static void Header () { + if (quiet) + return; Console.WriteLine ("Mono CIL Stripper"); Console.WriteLine (); } static void Usage () { - Console.WriteLine ("Usage: mono-cil-strip file [output]"); + Console.WriteLine ("Usage: mono-cil-strip [options] file [output]"); + Console.WriteLine (" -q Only output errors."); Environment.Exit (1); } } |