scc

simple C compiler
git clone git://git.2f30.org/scc
Log | Files | Refs | README | LICENSE

scc.1 (2855B)


      1 .TH SCC 1 scc\-VERSION
      2 .SH NAME
      3 scc \- simple C compiler with magic
      4 .SH SYNOPSIS
      5 .B scc
      6 .RB [ \-cdgkqQsw ]
      7 .RB [ \-M | \-E | \-S ]
      8 .RB [ \-D
      9 .IR def[=val] ] ...
     10 .RB [ \-I
     11 .IR dir ] ...
     12 .RB [ \-L
     13 .IR dir ] ...
     14 .RB [ \-U
     15 .IR def ] ...
     16 .RB [ \-l
     17 .IR lib ]
     18 .RB [ \-m
     19 .IR arch ]
     20 .RB [ \-o
     21 .IR outfile ]
     22 .RB [ \-O
     23 .IR level ]
     24 .RB [ \-t
     25 .IR sys ]
     26 .RB [ \-W
     27 .IR warn ]
     28 .RB sourcefile ...
     29 .SH DESCRIPTION
     30 .B scc
     31 is a simple C compiler which takes several
     32 .I sourcefiles
     33 and compiles them to an executable. The default output file is
     34 .B a.out,
     35 which can be changed by defining some
     36 .I outfile.
     37 .SH OPTIONS
     38 .TP
     39 .B \-c
     40 Do not run the linker.
     41 .TP
     42 .B \-d
     43 Do output internal tool messages.
     44 .TP
     45 .BI \-D " define[=value]"
     46 Specify a
     47 .I define
     48 for the preprocessor.
     49 .TP
     50 .B \-E
     51 Stop after the preprocessing stage, do not run the compiler and output the then
     52 resulting source.
     53 .TP
     54 .B \-g
     55 Do generate debug information.
     56 .TP
     57 .BI \-I " directory"
     58 Define a include
     59 .I directory
     60 to get header files from. This directory is searched for before standard
     61 include directories.
     62 .TP
     63 .B \-k
     64 Do keep temporary objects.
     65 .TP
     66 .BI \-l " library"
     67 Link against this 
     68 .I library.
     69 .TP
     70 .BI \-L " directory"
     71 Define a library
     72 .I directory
     73 to resolve dependencies from. This directory is used before the standard
     74 paths.
     75 .TP
     76 .BI \-m " architecture"
     77 Define the
     78 .I architecture
     79 to compile for (i.e. amd64, i386 ...).
     80 .TP
     81 .B \-M
     82 Output a rule for 
     83 .B make
     84 describing the dependencies of the main source file.
     85 .TP
     86 .BI \-o " outfile"
     87 Define the name of the
     88 .I outfile.
     89 .TP
     90 .BI \-O " level"
     91 Define the optimisation
     92 .I level
     93 to compile with. (This is a stub for compatibility reasons.)
     94 .TP
     95 .B \-q
     96 Do not use
     97 .I QBE.
     98 .TP
     99 .B \-Q
    100 Do use the
    101 .I QBE.
    102 .TP
    103 .B \-s
    104 Strip all symbol tables and relocation information from the resulting executable.
    105 .TP
    106 .B \-S
    107 Stop after the compilation stage, do not assemble and output the assembler
    108 source.
    109 .TP
    110 .BI \-t " system"
    111 Define the
    112 .I system
    113 to compile for (i.e. linux, openbsd ...).
    114 .TP
    115 .BI \-U " define"
    116 Undefine a previously defined
    117 .I define
    118 by the -D parameter.
    119 .TP
    120 .B \-w
    121 Do show warning messages.
    122 .TP
    123 .BI \-W " warnings"
    124 This option only activates -w and is otherwise ignored for compatibility
    125 reasons.
    126 .SH ENVIRONMENT VARIABLES
    127 Certain environment variables control the behaviour of scc.
    128 .TP
    129 .B ARCH
    130 defines the
    131 .I architecture
    132 to compile for (i.e. amd64, i386 ...).
    133 .TP
    134 .B SYS
    135 defines the
    136 .I system
    137 to compile for (i.e. linux, openbsd ...).
    138 .TP
    139 .B ABI
    140 defines the
    141 .I application binary interface
    142 to compile for (i.e. sysv ...).
    143 .TP
    144 .B FORMAT
    145 defines the format of the output executable.
    146 .TP
    147 .B SCCPREFIX
    148 defines the path prefix scc will search the scc suite in.
    149 .SH AUTHORS
    150 See the LICENSE file for the authors.
    151 .SH LICENSE
    152 See the LICENSE file for the terms of redistribution.
    153 .SH SEE ALSO
    154 .BR scpp (1),
    155 .BR make (1)
    156 .SH BUGS
    157 See the TODO file in the distribution.