From 849512f56568182f059ac71b3f0a508a38b83846 Mon Sep 17 00:00:00 2001 From: William S Fulton Date: Mon, 4 Feb 2019 07:36:37 +0000 Subject: [PATCH] Add missing command line options to documentation Options were taken from the output of running swig -help. --- Doc/Manual/SWIG.html | 162 ++++++++++++++++++++++++++++------------ Source/Modules/main.cxx | 12 +-- 2 files changed, 121 insertions(+), 53 deletions(-) diff --git a/Doc/Manual/SWIG.html b/Doc/Manual/SWIG.html index 70fc694e3..bb1ac7dea 100644 --- a/Doc/Manual/SWIG.html +++ b/Doc/Manual/SWIG.html @@ -103,63 +103,131 @@ To run SWIG, use the swig command with options and a filename like this

-swig [ options ] filename
+swig [ options ] filename
 

where filename is a SWIG interface file or a C/C++ header file. -Below is a subset of options that can be used. +Full help can be seen by running swig -help. +Below is the common set of options that can be used. Additional options are also defined for each target language. A full list -can be obtained by typing swig -help or swig --<lang> -help for language <lang> specific options. +can be obtained by running swig +-<lang> -help for language <lang> specific options, +for example, swig -ruby -help for Ruby.

--allegrocl            Generate ALLEGROCL wrappers
--chicken              Generate CHICKEN wrappers
--clisp                Generate CLISP wrappers
--cffi                 Generate CFFI wrappers
--csharp               Generate C# wrappers
--d                    Generate D wrappers
--go                   Generate Go wrappers
--guile                Generate Guile wrappers
--java                 Generate Java wrappers
--javascript           Generate Javascript wrappers
--lua                  Generate Lua wrappers
--modula3              Generate Modula 3 wrappers
--mzscheme             Generate Mzscheme wrappers
--ocaml                Generate Ocaml wrappers
--octave               Generate Octave wrappers
--perl                 Generate Perl wrappers
--php7                 Generate PHP7 wrappers
--pike                 Generate Pike wrappers
--python               Generate Python wrappers
--r                    Generate R (aka GNU S) wrappers
--ruby                 Generate Ruby wrappers
--scilab               Generate Scilab wrappers
--sexp                 Generate Lisp S-Expressions wrappers
--tcl                  Generate Tcl wrappers
--uffi                 Generate Common Lisp / UFFI wrappers
--xml                  Generate XML wrappers
+Supported Target Language Options
+     -allegrocl      - Generate ALLEGROCL wrappers
+     -chicken        - Generate CHICKEN wrappers
+     -clisp          - Generate CLISP wrappers
+     -cffi           - Generate CFFI wrappers
+     -csharp         - Generate C# wrappers
+     -d              - Generate D wrappers
+     -go             - Generate Go wrappers
+     -guile          - Generate Guile wrappers
+     -java           - Generate Java wrappers
+     -javascript     - Generate Javascript wrappers
+     -lua            - Generate Lua wrappers
+     -modula3        - Generate Modula 3 wrappers
+     -mzscheme       - Generate Mzscheme wrappers
+     -ocaml          - Generate Ocaml wrappers
+     -octave         - Generate Octave wrappers
+     -perl           - Generate Perl wrappers
+     -php7           - Generate PHP7 wrappers
+     -pike           - Generate Pike wrappers
+     -python         - Generate Python wrappers
+     -r              - Generate R (aka GNU S) wrappers
+     -ruby           - Generate Ruby wrappers
+     -scilab         - Generate Scilab wrappers
+     -sexp           - Generate Lisp S-Expressions wrappers
+     -tcl            - Generate Tcl wrappers
+     -uffi           - Generate Common Lisp / UFFI wrappers
+     -xml            - Generate XML wrappers
 
--c++                  Enable C++ processing
--cppext ext           Change file extension of C++ generated files to ext
-                      (default is cxx)
--Dsymbol              Define a preprocessor symbol
--Fmicrosoft           Display error/warning messages in Microsoft format
--Fstandard            Display error/warning messages in commonly used format
--help                 Display all options
--Idir                 Add a directory to the file include path
--lifile               Include SWIG library file <ifile>
--module name          Set the name of the SWIG module
--o outfile            Set name of C/C++ output file to <outfile>
--oh headfile          Set name of C++ output header file for directors to <headfile>
--outcurrentdir        Set default output dir to current dir instead of input file's path
--outdir dir           Set language specific files output directory
--pcreversion          Display PCRE version information
--swiglib              Report location of SWIG library and exit
--version              Display SWIG version number
+Experimental Target Language Options
 
+General Options
+     -addextern      - Add extra extern declarations
+     -c++            - Enable C++ processing
+     -co <file>      - Check <file> out of the SWIG library
+     -copyctor       - Automatically generate copy constructors wherever possible
+     -cpperraswarn   - Treat the preprocessor #error statement as #warning (default)
+     -cppext <ext>   - Change file extension of generated C++ files to <ext>
+                       (default is cxx)
+     -copyright      - Display copyright notices
+     -debug-classes  - Display information about the classes found in the interface
+     -debug-module <n>- Display module parse tree at stages 1-4, <n> is a csv list of stages
+     -debug-symtabs  - Display symbol tables information
+     -debug-symbols  - Display target language symbols in the symbol tables
+     -debug-csymbols - Display C symbols in the symbol tables
+     -debug-lsymbols - Display target language layer symbols
+     -debug-tags     - Display information about the tags found in the interface
+     -debug-template - Display information for debugging templates
+     -debug-top <n>  - Display entire parse tree at stages 1-4, <n> is a csv list of stages
+     -debug-typedef  - Display information about the types and typedefs in the interface
+     -debug-typemap  - Display typemap debugging information
+     -debug-tmsearch - Display typemap search debugging information
+     -debug-tmused   - Display typemaps used debugging information
+     -directors      - Turn on director mode for all the classes, mainly for testing
+     -dirprot        - Turn on wrapping of protected members for director classes (default)
+     -D<symbol>      - Define a symbol <symbol> (for conditional compilation)
+     -E              - Preprocess only, does not generate wrapper code
+     -external-runtime [file] - Export the SWIG runtime stack
+     -fakeversion <v>- Make SWIG fake the program version number to <v>
+     -fcompact       - Compile in compact mode
+     -features <list>- Set global features, where <list> is a comma separated list of
+                       features, eg -features directors,autodoc=1
+                       If no explicit value is given to the feature, a default of 1 is used
+     -fastdispatch   - Enable fast dispatch mode to produce faster overload dispatcher code
+     -Fmicrosoft     - Display error/warning messages in Microsoft format
+     -Fstandard      - Display error/warning messages in commonly used format
+     -fvirtual       - Compile in virtual elimination mode
+     -help           - Display help
+     -I-             - Don't search the current directory
+     -I<dir>         - Look for SWIG files in directory <dir>
+     -ignoremissing  - Ignore missing include files
+     -importall      - Follow all #include statements as imports
+     -includeall     - Follow all #include statements
+     -l<ifile>       - Include SWIG library file <ifile>
+     -macroerrors    - Report errors inside macros
+     -makedefault    - Create default constructors/destructors (the default)
+     -M              - List all dependencies
+     -MD             - Is equivalent to `-M -MF <file>', except `-E' is not implied
+     -MF <file>      - Generate dependencies into <file> and continue generating wrappers
+     -MM             - List dependencies, but omit files in SWIG library
+     -MMD            - Like `-MD', but omit files in SWIG library
+     -module <name>  - Set module name to <name>
+     -MP             - Generate phony targets for all dependencies
+     -MT <target>    - Set the target of the rule emitted by dependency generation
+     -nocontract     - Turn off contract checking
+     -nocpperraswarn - Do not treat the preprocessor #error statement as #warning
+     -nodefault      - Do not generate default constructors nor default destructors
+     -nodefaultctor  - Do not generate implicit default constructors
+     -nodefaultdtor  - Do not generate implicit default destructors
+     -nodirprot      - Do not wrap director protected members
+     -noexcept       - Do not wrap exception specifiers
+     -nofastdispatch - Disable fast dispatch mode (default)
+     -nopreprocess   - Skip the preprocessor step
+     -notemplatereduce - Disable reduction of the typedefs in templates
+     -O              - Enable the optimization options:
+                        -fastdispatch -fvirtual
+     -o <outfile>    - Set name of C/C++ output file to <outfile>
+     -oh <headfile>  - Set name of C++ output header file for directors to <headfile>
+     -outcurrentdir  - Set default output dir to current dir instead of input file's path
+     -outdir <dir>   - Set language specific files output directory to <dir>
+     -pcreversion    - Display PCRE version information
+     -small          - Compile in virtual elimination and compact mode
+     -swiglib        - Report location of SWIG library and exit
+     -templatereduce - Reduce all the typedefs in templates
+     -v              - Run in verbose mode
+     -version        - Display SWIG version number
+     -Wall           - Remove all warning suppression, also implies -Wextra
+     -Wallkw         - Enable keyword warnings for all the supported languages
+     -Werror         - Treat warnings as errors
+     -Wextra         - Adds the following additional warnings: 202,309,403,405,512,321,322
+     -w<list>        - Suppress/add warning messages, eg -w401,+321 - see Warnings.html
+     -xmlout <file>  - Write XML version of the parse tree to <file> after normal processing
 

diff --git a/Source/Modules/main.cxx b/Source/Modules/main.cxx index 58cc4f7d3..e302241bd 100644 --- a/Source/Modules/main.cxx +++ b/Source/Modules/main.cxx @@ -97,7 +97,7 @@ static const char *usage2 = (const char *) "\ -Fmicrosoft - Display error/warning messages in Microsoft format\n\ -Fstandard - Display error/warning messages in commonly used format\n\ -fvirtual - Compile in virtual elimination mode\n\ - -help - This output\n\ + -help - Display help\n\ -I- - Don't search the current directory\n\ -I

- Look for SWIG files in directory \n\ -ignoremissing - Ignore missing include files\n\ @@ -130,14 +130,14 @@ static const char *usage3 = (const char *) "\ "; static const char *usage4 = (const char *) "\ - -O - Enable the optimization options: \n\ - -fastdispatch -fvirtual \n\ + -O - Enable the optimization options:\n\ + -fastdispatch -fvirtual\n\ -o - Set name of C/C++ output file to \n\ -oh - Set name of C++ output header file for directors to \n\ -outcurrentdir - Set default output dir to current dir instead of input file's path\n\ -outdir - Set language specific files output directory to \n\ -pcreversion - Display PCRE version information\n\ - -small - Compile in virtual elimination & compact mode\n\ + -small - Compile in virtual elimination and compact mode\n\ -swiglib - Report location of SWIG library and exit\n\ -templatereduce - Reduce all the typedefs in templates\n\ -v - Run in verbose mode\n\ @@ -155,9 +155,9 @@ Options can also be defined using the SWIG_FEATURES environment variable, for ex $ export SWIG_FEATURES\n\ $ swig -python interface.i\n\ \n\ -is equivalent to: \n\ +is equivalent to:\n\ \n\ - $ swig -Wall -python interface.i \n\ + $ swig -Wall -python interface.i\n\ \n\ Arguments may also be passed in a file, separated by whitespace. For example:\n\ \n\