GameBundle/GameBundle/Options.cs
2020-04-23 23:41:27 +02:00

34 lines
1.6 KiB
C#

using System;
using System.Collections.Generic;
using CommandLine;
namespace GameBundle {
public class Options {
[Option('s', "source", HelpText = "The location of the .csproj file that should be built and bundled. By default, the current directory is scanned for one")]
public string SourceFile { get; set; }
[Option('o', "output", Default = "bin/Bundled", HelpText = "The location of the directory that the bundles should be stored in")]
public string OutputDirectory { get; set; }
[Option('v', "verbose")]
public bool Verbose { get; set; }
[Option('w', "win", HelpText = "Bundle for windows")]
public bool BuildWindows { get; set; }
[Option('l', "linux", HelpText = "Bundle for linux")]
public bool BuildLinux { get; set; }
[Option('m', "mac", HelpText = "Bundle for mac")]
public bool BuildMac { get; set; }
[Option('e', "exclude", HelpText = "Files that should not be moved to the library folder")]
public IEnumerable<string> ExcludedFiles { get; set; }
[Option("32-bit", HelpText = "Publish for 32 bit instead of 64 bit. Note that this is only possible on Windows")]
public bool Publish32Bit { get; set; }
[Option('t', "no-trim", HelpText = "Skip trimming the application when publishing")]
public bool NoTrim { get; set; }
[Option('c', "config", Default = "Release", HelpText = "The build configuration to use")]
public string BuildConfig { get; set; }
[Option("lib-name", Default = "Lib", HelpText = "The name of the library folder that is created")]
public string LibFolder { get; set; }
}
}