public int Run (string[] arguments)
		{
			Monitor = new ConsoleProgressMonitor ();
			Options = new MonoMacPackagingToolOptions (arguments);
			
			switch (Options.Parse ()) {
			case MonoMacPackagingToolOptions.ParseResult.Failure:
				Console.WriteLine ("{0}: {1}", Name, Options.ParseFailureMessage);
				Console.WriteLine ("Try `{0} --help' for more information.", Name);
				return 1;
			case MonoMacPackagingToolOptions.ParseResult.Success:
				break;
			}
			
			if (Options.ShowHelp) {
				ShowUsage ();
				return 0;
			}
			
			var project = MaybeFindMonoMacProject ();
			if (project == null) {
				Console.WriteLine ("Error: Could not find MonoMac project.");
				return 1;
			}
			
			var config = project.Configurations.FirstOrDefault<ItemConfiguration> (c => c.Name == Options.Configuration);
			if (config == null) {
				Console.WriteLine ("Error: Could not find configuration: {0}", Options.Configuration);
				return 1;
			}
			
			MonoMacPackaging.BuildPackage (Monitor, project, config.Selector, Options.PackagingSettings, GetTarget (project));			
			return 0;
		}
        public int Run(string[] arguments)
        {
            Monitor = new ConsoleProgressMonitor();
            Options = new MonoMacPackagingToolOptions(arguments);

            switch (Options.Parse())
            {
            case MonoMacPackagingToolOptions.ParseResult.Failure:
                Console.WriteLine("{0}: {1}", Name, Options.ParseFailureMessage);
                Console.WriteLine("Try `{0} --help' for more information.", Name);
                return(1);

            case MonoMacPackagingToolOptions.ParseResult.Success:
                break;
            }

            if (Options.ShowHelp)
            {
                ShowUsage();
                return(0);
            }

            var project = MaybeFindMonoMacProject();

            if (project == null)
            {
                Console.WriteLine("Error: Could not find MonoMac project.");
                return(1);
            }

            var config = project.Configurations.FirstOrDefault <ItemConfiguration> (c => c.Name == Options.Configuration);

            if (config == null)
            {
                Console.WriteLine("Error: Could not find configuration: {0}", Options.Configuration);
                return(1);
            }

            MonoMacPackaging.BuildPackage(Monitor, project, config.Selector, Options.PackagingSettings, GetTarget(project));
            return(0);
        }