tcc --help: update option summary
authorgrischka <grischka>
Sun, 10 Feb 2013 19:39:05 +0000 (10 20:39 +0100)
committergrischka <grischka>
Sun, 10 Feb 2013 19:39:05 +0000 (10 20:39 +0100)
tcc-doc.texi: also

tcc-doc.texi
tcc.c

index 105c007..0d6e970 100644 (file)
@@ -157,47 +157,38 @@ General Options:
 
 @c man begin OPTIONS
 @table @option
-@item -v
-Display current TCC version, increase verbosity.
-
-@item -print-search-dirs
-Print the name of the configured installation directory and a list
-of program and library directories tcc will search.
-
 @item -c
 Generate an object file.
 
 @item -o outfile
 Put object file, executable, or dll into output file @file{outfile}.
 
-@item -Bdir
-Set the path where the tcc internal libraries can be found (default is
-@file{PREFIX/lib/tcc}).
-
-@item -bench
-Output compilation statistics.
-
 @item -run source [args...]
 Compile file @var{source} and run it with the command line arguments
 @var{args}. In order to be able to give more than one argument to a
 script, several TCC options can be given @emph{after} the
-@option{-run} option, separated by spaces. Example:
-
+@option{-run} option, separated by spaces:
 @example
 tcc "-run -L/usr/X11R6/lib -lX11" ex4.c
 @end example
-
 In a script, it gives the following header:
-
 @example
 #!/usr/local/bin/tcc -run -L/usr/X11R6/lib -lX11
-#include <stdlib.h>
-int main(int argc, char **argv)
-@{
-    ...
-@}
 @end example
 
+@item -v
+Display TCC version.
+
+@item -vv
+Show included files.  As sole argument, print search dirs (as below).
+
+@item -bench
+Display compilation statistics.
+
+@item -print-search-dirs
+Print the configured installation directory and a list of library
+and include directories tcc will search.
+
 @end table
 
 Preprocessor options:
@@ -284,6 +275,10 @@ Link your program with dynamic library libxxx.so or static library
 libxxx.a. The library is searched in the paths specified by the
 @option{-L} option.
 
+@item -Bdir
+Set the path where the tcc internal libraries (and include files) can be
+found (default is @file{PREFIX/lib/tcc}).
+
 @item -shared
 Generate a shared library instead of an executable.
 
@@ -301,10 +296,10 @@ opened with @code{dlopen()} needs to access executable symbols.
 @item -r
 Generate an object file combining all input files.
 
-@item -Wl,-Ttext,address
-Set the start of the .text section to @var{address}.
+@item -Wl,-rpath=path
+Put custom seatch path for dynamic libraries into executable.
 
-@item -Wl,--oformat,fmt
+@item -Wl,--oformat=fmt
 Use @var{fmt} as output format. The supported output formats are:
 @table @code
 @item elf32-i386
@@ -315,8 +310,14 @@ Binary image (only for executable output)
 COFF output format (only for executable output for TMS320C67xx target)
 @end table
 
-@item -Wl,-rpath=path
-Set custom library search path
+@item -Wl,-subsystem=console/gui/wince/...
+Set type for PE (Windows) executables.
+
+@item -Wl,-[Ttext=# | section-alignment=# | file-alignment=# | image-base=# | stack=#]
+Modify executable layout.
+
+@item -Wl,-Bsymbolic
+Set DT_SYMBOLIC tag.
 
 @end table
 
@@ -342,6 +343,17 @@ Display N callers in stack traces. This is useful with @option{-g} or
 
 @end table
 
+Misc options:
+
+@table @option
+@item -MD
+Generate makefile fragment with dependencies.
+
+@item -MF depfile
+Use @file{depfile} as output for -MD.
+
+@end table
+
 Note: GCC options @option{-Ox}, @option{-fx} and @option{-mx} are
 ignored.
 @c man end
diff --git a/tcc.c b/tcc.c
index bad9b4e..7fabe8b 100644 (file)
--- a/tcc.c
+++ b/tcc.c
@@ -46,29 +46,33 @@ static void help(void)
            "Usage: tcc [options...] [-o outfile] [-c] infile(s)...\n"
            "       tcc [options...] -run infile [arguments...]\n"
            "General options:\n"
-           "  -v          display current version, increase verbosity\n"
            "  -c          compile only - generate an object file\n"
            "  -o outfile  set output filename\n"
-           "  -Bdir       set tcc internal library and include path\n"
-           "  -bench      output compilation statistics\n"
            "  -run        run compiled source\n"
            "  -fflag      set or reset (with 'no-' prefix) 'flag' (see man page)\n"
            "  -Wwarning   set or reset (with 'no-' prefix) 'warning' (see man page)\n"
            "  -w          disable all warnings\n"
+           "  -v          show version\n"
+           "  -vv         show included files (as sole argument: show search paths)\n"
+           "  -bench      show compilation statistics\n"
            "Preprocessor options:\n"
            "  -E          preprocess only\n"
            "  -Idir       add include path 'dir'\n"
            "  -Dsym[=val] define 'sym' with value 'val'\n"
            "  -Usym       undefine 'sym'\n"
+           "  -nostdinc   do not use standard system include paths\n"
            "Linker options:\n"
            "  -Ldir       add library path 'dir'\n"
            "  -llib       link with dynamic or static library 'lib'\n"
+           "  -Bdir       use 'dir' as tcc internal library and include path\n"
+           "  -nostdlib   do not link with standard crt and libraries\n"
            "  -pthread    link with -lpthread and -D_REENTRANT (POSIX Linux)\n"
+           "  -r          generate (relocatable) object file\n"
+           "  -rdynamic   export all global symbols to dynamic linker\n"
            "  -shared     generate a shared library\n"
            "  -soname     set name for shared library to be used at runtime\n"
            "  -static     static linking\n"
-           "  -rdynamic   export all global symbols to dynamic linker\n"
-           "  -r          generate (relocatable) object file\n"
+           "  -Wl,opt[=val]  set linker option 'opt' (see manual)\n"
            "Debugger options:\n"
            "  -g          generate runtime debug info\n"
 #ifdef CONFIG_TCC_BCHECK
@@ -175,7 +179,7 @@ static const TCCOption tcc_options[] = {
     { "MD", TCC_OPTION_MD, 0},
     { "MF", TCC_OPTION_MF, TCC_OPTION_HAS_ARG },
     { "x", TCC_OPTION_x, TCC_OPTION_HAS_ARG },
-    { NULL },
+    { NULL, 0, 0 },
 };
 
 static int64_t getclock_us(void)
@@ -458,7 +462,12 @@ static int parse_args(TCCState *s, int argc, char **argv)
             case TCC_OPTION_MF:
                 deps_outfile = optarg;
                 break;
+            case TCC_OPTION_O:
+            case TCC_OPTION_pedantic:
+            case TCC_OPTION_pipe:
+            case TCC_OPTION_s:
             case TCC_OPTION_x:
+                /* ignored */
                 break;
             default:
                 if (s->warn_unsupported) {