diff --git a/ikvmc/Compiler.cs b/ikvmc/Compiler.cs index e2c97a56..f57d2394 100644 --- a/ikvmc/Compiler.cs +++ b/ikvmc/Compiler.cs @@ -287,78 +287,92 @@ class IkvmcCompiler private static void PrintHelp() { PrintHeader(); - Console.Error.WriteLine("usage: ikvmc [-options] ... "); + Console.Error.WriteLine("Usage: ikvmc [-options] ... "); Console.Error.WriteLine(); - Console.Error.WriteLine("options:"); - Console.Error.WriteLine(" @ Read more options from file"); - Console.Error.WriteLine(" -out: Specify the output filename"); - Console.Error.WriteLine(" -assembly: 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: 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: Specify the output filename"); + Console.Error.WriteLine("-assembly: Specify assembly name"); + Console.Error.WriteLine("-version: 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: 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: Use keyfile to sign the assembly"); - Console.Error.WriteLine(" -key: Use keycontainer to sign the assembly"); - Console.Error.WriteLine(" -delaysign Delay-sign the assembly"); - Console.Error.WriteLine(" -version: Assembly version"); - Console.Error.WriteLine(" -fileversion: File version"); - Console.Error.WriteLine(" -win32icon: Embed specified icon in output"); - Console.Error.WriteLine(" -win32manifest: Specify a Win32 manifest file (.xml)"); - Console.Error.WriteLine(" -main: Specify the class containing the main method"); - Console.Error.WriteLine(" -reference: Reference an assembly (short form -r:)"); - Console.Error.WriteLine(" -recurse: Recurse directory and include matching files"); - Console.Error.WriteLine(" -nojni Do not generate JNI stub for native methods"); - Console.Error.WriteLine(" -resource:= Include file as Java resource"); - Console.Error.WriteLine(" -externalresource:="); + Console.Error.WriteLine("-keyfile: Use keyfile to sign the assembly"); + Console.Error.WriteLine("-key: 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: Reference an assembly (short form -r:)"); + Console.Error.WriteLine("-recurse: Recurse directory and include matching files"); + Console.Error.WriteLine("-exclude: A file containing a list of classes to exclude"); + Console.Error.WriteLine(); + Console.Error.WriteLine(" - RESOURCES -"); + Console.Error.WriteLine("-fileversion: File version"); + Console.Error.WriteLine("-win32icon: Embed specified icon in output"); + Console.Error.WriteLine("-win32manifest: Specify a Win32 manifest file (.xml)"); + Console.Error.WriteLine("-resource:= Include file as Java resource"); + Console.Error.WriteLine("-externalresource:="); Console.Error.WriteLine(" Reference file as Java resource"); - Console.Error.WriteLine(" -exclude: 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: 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= Set system property (at runtime)"); - Console.Error.WriteLine(" -ea[:...|:]"); - Console.Error.WriteLine(" -enableassertions[:...|:]"); - Console.Error.WriteLine(" Set system property to enable assertions"); - Console.Error.WriteLine(" -da[:...|:]"); - Console.Error.WriteLine(" -disableassertions[:...|:]"); - 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: Displays all tracepoints with the given name"); - Console.Error.WriteLine(" -Xmethodtrace: 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: Mark all classes with a package name starting"); - Console.Error.WriteLine(" with as internal to the assembly"); - Console.Error.WriteLine(" -nowarn: Suppress specified warnings"); - Console.Error.WriteLine(" -warnaserror[:]"); - Console.Error.WriteLine(" Treat (specified) warnings as errors"); - Console.Error.WriteLine(" -writeSuppressWarningsFile:"); + Console.Error.WriteLine(); + Console.Error.WriteLine(" - ERRORS AND WARNINGS -"); + Console.Error.WriteLine("-nowarn: Suppress specified warnings"); + Console.Error.WriteLine("-warnaserror Treat all warnings as errors"); + Console.Error.WriteLine("-warnaserror: Treat specified warnings as errors"); + Console.Error.WriteLine("-writeSuppressWarningsFile:"); Console.Error.WriteLine(" Write response file with -nowarn:"); Console.Error.WriteLine(" options to suppress all encountered warnings"); - Console.Error.WriteLine(" -time Display timing statistics"); - Console.Error.WriteLine(" -classloader: 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("@ 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: Specify the class containing the main method"); + Console.Error.WriteLine("-srcpath: 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= Set system property (at runtime)"); + Console.Error.WriteLine("-ea[:...|:]"); + Console.Error.WriteLine("-enableassertions[:...|:]"); + Console.Error.WriteLine(" Set system property to enable assertions"); + Console.Error.WriteLine("-da[:...|:]"); + Console.Error.WriteLine("-disableassertions[:...|:]"); + 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: Displays all tracepoints with the given name"); + Console.Error.WriteLine("-Xmethodtrace: Build tracing into the specified output methods"); + Console.Error.WriteLine("-privatepackage: Mark all classes with a package name starting"); + Console.Error.WriteLine(" with as internal to the assembly"); + Console.Error.WriteLine("-time Display timing statistics"); + Console.Error.WriteLine("-classloader: 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:
Base address for the library to be built"); - Console.Error.WriteLine(" -filealign: 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: 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:
Base address for the library to be built"); + Console.Error.WriteLine("-filealign: 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: Additional directories to search for references"); + Console.Error.WriteLine("-highentropyva Enable high entropy ASLR"); } int ParseCommandLine(IEnumerator arglist, List targets, CompilerOptions options)