|
|
1.1 ! root 1: .TH PCC 1 ! 2: .SH NAME ! 3: pcc \- APE C compiler driver ! 4: .SH SYNOPSIS ! 5: .B pcc ! 6: [ ! 7: .I option ... ! 8: ] ! 9: [ ! 10: .I name ... ! 11: ] ! 12: .SH DESCRIPTION ! 13: .I Pcc ! 14: compiles and loads C programs, ! 15: using APE (ANSI C/POSIX) include files and libraries. ! 16: Named files ending with ! 17: .B .c ! 18: are preprocessed with ! 19: .IR cpp (1), ! 20: then compiled with one of the compilers described in ! 21: .IR 2c (1), ! 22: as specified by the environment variable ! 23: .BR $objtype . ! 24: The object files are then loaded using one of the loaders described in ! 25: .IR 2l (1). ! 26: The options are: ! 27: .TP \w'\fL-D\ \fIname=def\ 'u ! 28: .BI -o " out" ! 29: Place loader output in file ! 30: .I out ! 31: instead of the default ! 32: .BR 2.out , ! 33: .BR v.out , ! 34: etc. ! 35: .TP ! 36: .B -P ! 37: Omit the compilation and loading phases; ! 38: leave the result of preprocessing ! 39: .IB name .c ! 40: in ! 41: .IB name .i\f1. ! 42: .TP ! 43: .B -c ! 44: Omit the loading phase. ! 45: .TP ! 46: .B -p ! 47: Insert profiling code into the executable output. ! 48: .TP ! 49: .B -w ! 50: Print compiler warning messages. ! 51: .TP ! 52: .B -B ! 53: Don't complain about functions used without ! 54: ANSI function prototypes. ! 55: .TP ! 56: .B -v ! 57: Echo the preprocessing, compiling, and loading commands ! 58: before they are executed. ! 59: .TP ! 60: .BI -D name=def ! 61: .br ! 62: .ns ! 63: .TP ! 64: .BI -D name ! 65: Define the ! 66: .I name ! 67: to the preprocessor, ! 68: as if by ! 69: .LR #define . ! 70: If no definition is given, the name is defined as ! 71: .LR 1 . ! 72: .TP ! 73: .BI -U name ! 74: Undefine the ! 75: .I name ! 76: to the preprocessor, ! 77: as if by ! 78: .LR #undef . ! 79: .TP ! 80: .BI -I dir ! 81: .L #include ! 82: files whose names do not begin with ! 83: .L / ! 84: are always ! 85: sought first in the directory ! 86: of the ! 87: .I file ! 88: argument, ! 89: then in directories named in ! 90: .B -I ! 91: options, ! 92: then in ! 93: .BR /$objtype/include/ape . ! 94: .TP ! 95: .B -N ! 96: Don't optimize compiled code. ! 97: .TP ! 98: .B -S ! 99: Print an assembly language version of the object code ! 100: on standard output. ! 101: .TP ! 102: .B -a ! 103: Instead of compiling, print on standard output acid functions (see ! 104: .IR acid (1)) ! 105: for examining structures declared in the source files. ! 106: .TP ! 107: .B -aa ! 108: Like ! 109: .B -a ! 110: except that functions for structures declared in included header files ! 111: are omitted. ! 112: .PP ! 113: The APE environment contains all of the include ! 114: files and library routines specified in the ANSI C standard ! 115: (X3.159-1989), as well as those specified in the IEEE Portable ! 116: Operating System Interface standard (POSIX, 1003.1-1990, ISO 9945-1). ! 117: In order to access the POSIX routines, source programs should ! 118: define the preprocessor constant ! 119: .BR _POSIX_SOURCE . ! 120: .SH FILES ! 121: .TF /$objtype/lib/ape/libap.a ! 122: .TP ! 123: .B /sys/include/ape ! 124: directory for machine-independent ! 125: .B #include ! 126: files. ! 127: .TP ! 128: .B /$objtype/include/ape ! 129: directory for machine-dependent ! 130: .B #include ! 131: files. ! 132: .TP ! 133: .B /$objtype/lib/ape/libap.a ! 134: ANSI C/POSIX library. ! 135: .SH "SEE ALSO" ! 136: .IR cpp (1), ! 137: .IR 2c (1), ! 138: .IR 2a (1), ! 139: .IR 2l (1), ! 140: .IR mk (1), ! 141: .IR nm (1), ! 142: .IR acid (1), ! 143: .IR db (1), ! 144: .IR prof (1) ! 145: .PP ! 146: Howard Trickey, ! 147: ``APE \(em The ANSI/POSIX Environment'' ! 148: .SH SOURCE ! 149: .B /sys/src/cmd/pcc.c ! 150: .SH BUGS ! 151: The locale manipulation functions are minimal. ! 152: Signal functions and terminal characteristic ! 153: handlers are only minimally implemented. ! 154: .IR Link ! 155: always fails, because Plan 9 doesn't support multiple links to a file. ! 156: The functions related to setting effective user and group ids ! 157: cannot be implemented because the concept doesn't exist in Plan 9.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.