This commit is contained in:
jfrijters 2012-03-22 13:17:04 +00:00
Родитель b3daaa5112
Коммит 83a0bee612
1 изменённых файлов: 76 добавлений и 62 удалений

Просмотреть файл

@ -287,78 +287,92 @@ class IkvmcCompiler
private static void PrintHelp()
{
PrintHeader();
Console.Error.WriteLine("usage: ikvmc [-options] <classOrJar1> ... <classOrJarN>");
Console.Error.WriteLine("Usage: ikvmc [-options] <classOrJar1> ... <classOrJarN>");
Console.Error.WriteLine();
Console.Error.WriteLine("options:");
Console.Error.WriteLine(" @<filename> Read more options from file");
Console.Error.WriteLine(" -out:<outputfile> Specify the output filename");
Console.Error.WriteLine(" -assembly:<name> Specify assembly name");
Console.Error.WriteLine(" -target:exe Build a console executable");
Console.Error.WriteLine(" -target:winexe Build a windows executable");
Console.Error.WriteLine(" -target:library Build a library");
Console.Error.WriteLine(" -target:module Build a module for use by the linker");
Console.Error.WriteLine(" -platform:<string> Limit which platforms this code can run on:");
Console.Error.WriteLine("Compiler Options:");
Console.Error.WriteLine();
Console.Error.WriteLine(" - OUTPUT FILES -");
Console.Error.WriteLine("-out:<outputfile> Specify the output filename");
Console.Error.WriteLine("-assembly:<name> Specify assembly name");
Console.Error.WriteLine("-version:<M.m.b.r> Specify assembly version");
Console.Error.WriteLine("-target:exe Build a console executable");
Console.Error.WriteLine("-target:winexe Build a windows executable");
Console.Error.WriteLine("-target:library Build a library");
Console.Error.WriteLine("-target:module Build a module for use by the linker");
Console.Error.WriteLine("-platform:<string> Limit which platforms this code can run on:");
Console.Error.WriteLine(" x86, x64, arm, anycpu32bitpreferred, or");
Console.Error.WriteLine(" anycpu. The default is anycpu.");
Console.Error.WriteLine(" -keyfile:<keyfilename> Use keyfile to sign the assembly");
Console.Error.WriteLine(" -key:<keycontainer> Use keycontainer to sign the assembly");
Console.Error.WriteLine(" -delaysign Delay-sign the assembly");
Console.Error.WriteLine(" -version:<M.m.b.r> Assembly version");
Console.Error.WriteLine(" -fileversion:<version> File version");
Console.Error.WriteLine(" -win32icon:<file> Embed specified icon in output");
Console.Error.WriteLine(" -win32manifest:<file> Specify a Win32 manifest file (.xml)");
Console.Error.WriteLine(" -main:<class> Specify the class containing the main method");
Console.Error.WriteLine(" -reference:<filespec> Reference an assembly (short form -r:<filespec>)");
Console.Error.WriteLine(" -recurse:<filespec> Recurse directory and include matching files");
Console.Error.WriteLine(" -nojni Do not generate JNI stub for native methods");
Console.Error.WriteLine(" -resource:<name>=<path> Include file as Java resource");
Console.Error.WriteLine(" -externalresource:<name>=<path>");
Console.Error.WriteLine("-keyfile:<keyfilename> Use keyfile to sign the assembly");
Console.Error.WriteLine("-key:<keycontainer> Use keycontainer to sign the assembly");
Console.Error.WriteLine("-delaysign Delay-sign the assembly");
Console.Error.WriteLine();
Console.Error.WriteLine(" - INPUT FILES -");
Console.Error.WriteLine("-reference:<filespec> Reference an assembly (short form -r:<filespec>)");
Console.Error.WriteLine("-recurse:<filespec> Recurse directory and include matching files");
Console.Error.WriteLine("-exclude:<filename> A file containing a list of classes to exclude");
Console.Error.WriteLine();
Console.Error.WriteLine(" - RESOURCES -");
Console.Error.WriteLine("-fileversion:<version> File version");
Console.Error.WriteLine("-win32icon:<file> Embed specified icon in output");
Console.Error.WriteLine("-win32manifest:<file> Specify a Win32 manifest file (.xml)");
Console.Error.WriteLine("-resource:<name>=<path> Include file as Java resource");
Console.Error.WriteLine("-externalresource:<name>=<path>");
Console.Error.WriteLine(" Reference file as Java resource");
Console.Error.WriteLine(" -exclude:<filename> A file containing a list of classes to exclude");
Console.Error.WriteLine(" -debug Generate debug info for the output file");
Console.Error.WriteLine("-compressresources Compress resources");
Console.Error.WriteLine();
Console.Error.WriteLine(" - CODE GENERATION -");
Console.Error.WriteLine("-debug Generate debug info for the output file");
Console.Error.WriteLine(" (Note that this also causes the compiler to");
Console.Error.WriteLine(" generated somewhat less efficient CIL code.)");
Console.Error.WriteLine(" -srcpath:<path> Prepend path and package name to source file");
Console.Error.WriteLine(" -apartment:sta (default) Apply STAThreadAttribute to main");
Console.Error.WriteLine(" -apartment:mta Apply MTAThreadAttribute to main");
Console.Error.WriteLine(" -apartment:none Don't apply STAThreadAttribute to main");
Console.Error.WriteLine(" -noglobbing Don't glob the arguments");
Console.Error.WriteLine(" -D<name>=<value> Set system property (at runtime)");
Console.Error.WriteLine(" -ea[:<packagename>...|:<classname>]");
Console.Error.WriteLine(" -enableassertions[:<packagename>...|:<classname>]");
Console.Error.WriteLine(" Set system property to enable assertions");
Console.Error.WriteLine(" -da[:<packagename>...|:<classname>]");
Console.Error.WriteLine(" -disableassertions[:<packagename>...|:<classname>]");
Console.Error.WriteLine(" Set system property to disable assertions");
Console.Error.WriteLine(" -removeassertions Remove all assert statements");
Console.Error.WriteLine(" -nostacktraceinfo Don't create metadata to emit rich stack traces");
Console.Error.WriteLine(" -opt:fields Remove unused private fields");
Console.Error.WriteLine(" -Xtrace:<string> Displays all tracepoints with the given name");
Console.Error.WriteLine(" -Xmethodtrace:<string> Build tracing into the specified output methods");
Console.Error.WriteLine(" -compressresources Compress resources");
Console.Error.WriteLine(" -strictfinalfieldsemantics Don't allow final fields to be modified outside");
Console.Error.WriteLine("-noautoserialization Disable automatic .NET serialization support");
Console.Error.WriteLine("-noglobbing Don't glob the arguments passed to main");
Console.Error.WriteLine("-nojni Do not generate JNI stub for native methods");
Console.Error.WriteLine("-opt:fields Remove unused private fields");
Console.Error.WriteLine("-removeassertions Remove all assert statements");
Console.Error.WriteLine("-strictfinalfieldsemantics Don't allow final fields to be modified outside");
Console.Error.WriteLine(" of initializer methods");
Console.Error.WriteLine(" -privatepackage:<prefix> Mark all classes with a package name starting");
Console.Error.WriteLine(" with <prefix> as internal to the assembly");
Console.Error.WriteLine(" -nowarn:<warning[:key]> Suppress specified warnings");
Console.Error.WriteLine(" -warnaserror[:<warning[:key]>]");
Console.Error.WriteLine(" Treat (specified) warnings as errors");
Console.Error.WriteLine(" -writeSuppressWarningsFile:<file>");
Console.Error.WriteLine();
Console.Error.WriteLine(" - ERRORS AND WARNINGS -");
Console.Error.WriteLine("-nowarn:<warning[:key]> Suppress specified warnings");
Console.Error.WriteLine("-warnaserror Treat all warnings as errors");
Console.Error.WriteLine("-warnaserror:<warning[:key]> Treat specified warnings as errors");
Console.Error.WriteLine("-writeSuppressWarningsFile:<file>");
Console.Error.WriteLine(" Write response file with -nowarn:<warning[:key]>");
Console.Error.WriteLine(" options to suppress all encountered warnings");
Console.Error.WriteLine(" -time Display timing statistics");
Console.Error.WriteLine(" -classloader:<class> Set custom class loader class for assembly");
Console.Error.WriteLine(" -sharedclassloader All targets below this level share a common");
Console.Error.WriteLine();
Console.Error.WriteLine(" - MISCELLANEOUS -");
Console.Error.WriteLine("@<filename> Read more options from file");
Console.Error.WriteLine("-help Display this usage message (Short form: -?)");
Console.Error.WriteLine("-nologo Suppress compiler copyright message");
Console.Error.WriteLine();
Console.Error.WriteLine(" - ADVANCED -");
Console.Error.WriteLine("-main:<class> Specify the class containing the main method");
Console.Error.WriteLine("-srcpath:<path> Prepend path and package name to source file");
Console.Error.WriteLine("-apartment:sta (default) Apply STAThreadAttribute to main");
Console.Error.WriteLine("-apartment:mta Apply MTAThreadAttribute to main");
Console.Error.WriteLine("-apartment:none Don't apply STAThreadAttribute to main");
Console.Error.WriteLine("-D<name>=<value> Set system property (at runtime)");
Console.Error.WriteLine("-ea[:<packagename>...|:<classname>]");
Console.Error.WriteLine("-enableassertions[:<packagename>...|:<classname>]");
Console.Error.WriteLine(" Set system property to enable assertions");
Console.Error.WriteLine("-da[:<packagename>...|:<classname>]");
Console.Error.WriteLine("-disableassertions[:<packagename>...|:<classname>]");
Console.Error.WriteLine(" Set system property to disable assertions");
Console.Error.WriteLine("-nostacktraceinfo Don't create metadata to emit rich stack traces");
Console.Error.WriteLine("-Xtrace:<string> Displays all tracepoints with the given name");
Console.Error.WriteLine("-Xmethodtrace:<string> Build tracing into the specified output methods");
Console.Error.WriteLine("-privatepackage:<prefix> Mark all classes with a package name starting");
Console.Error.WriteLine(" with <prefix> as internal to the assembly");
Console.Error.WriteLine("-time Display timing statistics");
Console.Error.WriteLine("-classloader:<class> Set custom class loader class for assembly");
Console.Error.WriteLine("-sharedclassloader All targets below this level share a common");
Console.Error.WriteLine(" class loader");
Console.Error.WriteLine(" -baseaddress:<address> Base address for the library to be built");
Console.Error.WriteLine(" -filealign:<n> Specify the alignment used for output file");
Console.Error.WriteLine(" -nopeercrossreference Do not automatically cross reference all peers");
Console.Error.WriteLine(" -nostdlib Do not reference standard libraries");
Console.Error.WriteLine(" -lib:<dir> Additional directories to search for references");
Console.Error.WriteLine(" -noautoserialization Disable automatic .NET serialization support");
Console.Error.WriteLine(" -highentropyva Enable high entropy ASLR");
Console.Error.WriteLine(" -help Display this usage message (Short form: -?)");
Console.Error.WriteLine(" -nologo Suppress compiler copyright message");
Console.Error.WriteLine("-baseaddress:<address> Base address for the library to be built");
Console.Error.WriteLine("-filealign:<n> Specify the alignment used for output file");
Console.Error.WriteLine("-nopeercrossreference Do not automatically cross reference all peers");
Console.Error.WriteLine("-nostdlib Do not reference standard libraries");
Console.Error.WriteLine("-lib:<dir> Additional directories to search for references");
Console.Error.WriteLine("-highentropyva Enable high entropy ASLR");
}
int ParseCommandLine(IEnumerator<string> arglist, List<CompilerOptions> targets, CompilerOptions options)