Annotation of 43BSDReno/share/doc/ucs/sumacc/cc68.1, revision 1.1.1.1

1.1       root        1: .TH CC68 1 MC68000
                      2: .SU
                      3: .SH NAME
                      4: cc68 \- C compiler for the MC68000
                      5: .SH SYNOPSIS
                      6: .B cc68
                      7: [ option ] ... file ...
                      8: .SH DESCRIPTION
                      9: .I Cc68
                     10: is the UNIX C compiler modified for the MC68000.
                     11: .I Cc68
                     12: is a flexible program for translating between various types of files.  The
                     13: types catered for in order of appearance during translation are `.c' (C source
                     14: files), `.s' (assembly language files), `.b' (relocatable binary files),
                     15: `b.out' (absolute binary files), `.r' (byte-reversed files, cf.
                     16: .I rev68(1)
                     17: ).
                     18: and `.dl' (Macsbug download format, cf.
                     19: .I dl68(1)
                     20: ).
                     21: .PP
                     22: Arguments to cc68 are either flags or input files.
                     23: The type of an input file is normally determined by its suffix.  When an
                     24: argument to cc68 is not a flag and has a suffix different from any
                     25: of the above suffixes, it is
                     26: assumed to be of one of the types `.c', `.b', or `b.out', namely the latest of
                     27: these three consistent with the type of the output (e.g. if the output type
                     28: were `.s' or `.b' then the input would have to be `.c').  If it has no
                     29: suffix it is assumed to be of type `b.out'.
                     30: .PP
                     31: Translation proceeds as follows.  Each
                     32: `.c' and `.s' program is translated to a `.b' relocatable using cpp, ccom68,
                     33: and as68 as necessary.  Then all .b files including those produced by
                     34: translation are link edited into the one file, called `b.out'.  If the only
                     35: input file was a single `.c' program then the `.b' file is deleted, otherwise
                     36: all `.b' files are preserved.
                     37: .PP
                     38: The amount of processing performed by cc68 may be decreased or increased with
                     39: some of the options.  The -S option takes translation no further than `.s'
                     40: files, i.e. only cpp and ccom68 are applied.  The -c option takes translation
                     41: up to `.b' files, omitting the link editing and not deleting any `.b' files.
                     42: The -d option goes beyond `b.out' to produce a `.dl' file (using dl68) that
                     43: may be downloaded by the Motorola MACSBUG monitor and the Sun1 monitor.  The
                     44: -r option similarly goes beyond `b.out' to produce a `.r' file (using rev68)
                     45: that may be loaded directly by 68000 code based on ld68.  Both -d and -r may
                     46: be used together.
                     47: .PP
                     48: The output may be named explicitly with the -o option; the output file's name
                     49: should follow -o.  Otherwise the name is `b.out' in the normal case, or
                     50: `filename.dl' for the -d option, or `filename.r' for the -r option, where
                     51: `filename' is the first `.c', `.s', or `.b' file named as an input.  If the
                     52: input is not in any of those three categories, the names `d.out' and `r.out'
                     53: are used respectively for -d and -r.
                     54: .PP
                     55: The version of the target machine may be given as the flag
                     56: .BI \-v n
                     57: where 
                     58: .I n
                     59: is the version.  The only recognized version at present is -vm, "Version
                     60: Macsbug."  The effect of giving the -vm flag is to add /usr/sun/dm/include to
                     61: the include directories for cpp, to add /usr/sun/dm/lib as a library in which
                     62: to look for -lx libraries, and to load the symbol table if any into the region
                     63: starting at 0x6BA.
                     64: .PP
                     65: The file /usr/sun/lib/crt0.b is passed to ld68, ahead of all other .b files.
                     66: This has the effect of defining the symbol _start to be at the text origin and
                     67: having a routine that performs necessary initialization, enters main, and
                     68: exits cleanly to the monitor.
                     69: .PP
                     70: The following options are interpreted by
                     71: .IR cc .
                     72: See
                     73: .IR ld68 (1)
                     74: for load-time options.
                     75: .TP 8
                     76: .B \-d
                     77: Produce a .dl file suitable for downloading with the MACSBUG monitor of the
                     78: Motorola Design Module, cf.
                     79: .IR dl68 (1).
                     80: .TP
                     81: .B \-r
                     82: Produce a .r file suitable for direct loading by the 68000, cf.
                     83: .IR rev68 (1).
                     84: .TP
                     85: .B \-c
                     86: Suppress the loading phase of the compilation, and force
                     87: an object file to be produced even if only one program is compiled.
                     88: .TP
                     89: .B \-w
                     90: Suppress warning diagnostics. \fb[Note: may not work.]\fr
                     91: .TP
                     92: .SM
                     93: .B \-O
                     94: Invoke an
                     95: object-code improver.
                     96: .TP
                     97: .SM
                     98: .B \-S
                     99: Compile the named C programs, and leave the
                    100: assembler-language output on corresponding files suffixed `.s'.
                    101: .TP
                    102: .SM
                    103: .B \-E
                    104: Run only the macro preprocessor
                    105: on the named C programs, and send the result to the
                    106: standard output.
                    107: .TP
                    108: .B \-L
                    109: Produce an assembly listing for each source file, with the
                    110: suffixes changed to ``.ls''.
                    111: .TP
                    112: .B \-R
                    113: Preserve relocation commands in b.out.
                    114: .TP
                    115: .SM
                    116: .B \-C
                    117: prevent the macro preprocessor from eliding comments.
                    118: .TP
                    119: .SM
                    120: .B \-V
                    121: Link for a V kernel environment.
                    122: This is equivalent to specifying 
                    123: .BI \-i/usr/sun/lib/teamroot.b
                    124: .B \-T 10000
                    125: and 
                    126: .B \-lV
                    127: at the end.
                    128: .TP
                    129: .SM
                    130: .B \-m
                    131: Link for a Macintosh environment.
                    132: This is equivalent to specifying 
                    133: .BI \-i/usr/sun/lib/crtmac.b
                    134: .B \-T 0
                    135: .B \-e _start
                    136: .B \-r
                    137: .B \-d
                    138: and 
                    139: .B \-lmac
                    140: .B \-lc
                    141: at the end.
                    142: .BI 
                    143: .TP
                    144: .BI \-o " output"
                    145: Name the final output file
                    146: .IR output .
                    147: If this option is used and the file `b.out' already exists it will be left
                    148: undisturbed.
                    149: .TP
                    150: .BI \-l x
                    151: Include libx.a as a library ld68 should search in for undefined functions.
                    152: .B x
                    153: may be more than one letter, as in -lpup.
                    154: .TP
                    155: .BI \-T " org"
                    156: Org specifies in hexadecimal where to begin loading the program.
                    157: .TP
                    158: .BI \-e " entrypoint"
                    159: Entrypoint specifies where to begin execution.
                    160: .TP
                    161: .SM
                    162: .BI \-D name=def
                    163: .br
                    164: .ns
                    165: .TP
                    166: .SM
                    167: .BI \-D \*Sname
                    168: Define the
                    169: .I name
                    170: to the preprocessor,
                    171: as if by
                    172: `#define'.
                    173: If no definition is given, the name is defined as "1".
                    174: .TP
                    175: .SM
                    176: .BI \-U \*Sname
                    177: Remove any initial definition of
                    178: .IR name .
                    179: .TP
                    180: .SM
                    181: .BI \-I \*Sdir
                    182: `#include' files
                    183: whose names do not begin with `/' are always
                    184: sought first in the directory 
                    185: of the
                    186: .I file
                    187: argument,
                    188: then in directories named in 
                    189: .B \-I
                    190: options,
                    191: then in directories on a standard list. The standard list
                    192: is (in order of search)
                    193: .I /usr/sun/include
                    194: and
                    195: .IR /usr/include .
                    196: .TP
                    197: .SM
                    198: .BI \-B \*Sstring
                    199: Find substitute compiler passes in the files named
                    200: .I string
                    201: with the suffixes cpp, ccom and c2.
                    202: If 
                    203: .I string 
                    204: is empty, use a standard backup version. \fb[Which doesn't work!]\fr
                    205: .TP
                    206: .BR \-t [ p012 ]
                    207: Find only the designated compiler passes in the
                    208: files whose names are constructed by a
                    209: .B \-B
                    210: option.
                    211: In the absence of a
                    212: .B \-B 
                    213: option, the
                    214: .I string
                    215: is taken to be `/usr/c/'.
                    216: .TP
                    217: .B \-\-x
                    218: By default,
                    219: .I cc68
                    220: passes a
                    221: .B \-x
                    222: flag to
                    223: .IR ld68 ,
                    224: in order to suppress local symbols from the final symbol table.  The
                    225: .B \-\-x
                    226: flag inhibits this default.
                    227: .PP
                    228: Other arguments
                    229: are taken
                    230: to be either loader option arguments, or C-compatible
                    231: object programs, typically produced by an earlier
                    232: .I cc68
                    233: run,
                    234: or perhaps libraries of C-compatible routines.
                    235: These programs, together with the results of any
                    236: compilations specified, are loaded (in the order
                    237: given) to produce an executable program with name
                    238: .B b.out.
                    239: .SH FILES
                    240: .ta \w'/usr/sun/lib/libc.a  'u
                    241: file.c input file
                    242: .br
                    243: file.b object file
                    244: .br
                    245: b.out  loaded output
                    246: .br
                    247: /tmp/ctm?      temporary
                    248: .br
                    249: /lib/cpp       preprocessor
                    250: .br
                    251: /usr/sun/c68/comp      compiler
                    252: .br
                    253: /usr/sun/c68/o68       optional optimizer
                    254: .br
                    255: /usr/sun/lib/crt0.b    runtime startoff
                    256: .br
                    257: /usr/sun/lib/libc.a    standard library, see (3)
                    258: .br
                    259: /usr/sun/include
                    260: .br
                    261: /usr/include   standard directories for `#include' files
                    262: .SH "SEE ALSO"
                    263: B. W. Kernighan and D. M. Ritchie,
                    264: .I The C Programming Language,
                    265: Prentice-Hall,
                    266: 1978
                    267: .br
                    268: B. W. Kernighan,
                    269: .I
                    270: Programming in C\(ema tutorial
                    271: .br
                    272: D. M. Ritchie,
                    273: .I
                    274: C Reference Manual
                    275: .br
                    276: ld68(1)
                    277: .SH DIAGNOSTICS
                    278: The diagnostics produced by C itself are intended to be
                    279: self-explanatory.
                    280: Occasional messages may be produced by the assembler
                    281: or loader.
                    282: .SH BUGS
                    283: This is hacked up from
                    284: .IR cc (1),
                    285: and probably could be improved.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.