scc-cpp.man (2956B)
1 .TH SCC-CPP 1 scc\-VERSION 2 .SH NAME 3 scc-cpp \- C preprocessor wrapper 4 .SH SYNOPSIS 5 .B scc-cpp 6 .RB [ \-dw ] 7 .RB [ \-M ] 8 .RB [ \-D 9 .IR def[=val] ] ... 10 .RB [ \-I 11 .IR dir ] ... 12 .RB [ \-U 13 .IR def ] ... 14 .RB [ \-o 15 .IR outfile ] 16 .RI [ sourcefile ...] 17 .SH DESCRIPTION 18 .B scc-cpp 19 is a wrapper that invokes the C preprocessor stage of the scc compiler. 20 It is equivalent to running 21 .B scc-cc \-E 22 with the same arguments. 23 The preprocessor expands macros, processes 24 .B #include 25 directives, handles conditional compilation, and strips comments, 26 producing preprocessed C source on standard output or in the specified 27 output file. 28 .SH OPTIONS 29 The following options are meaningful to the preprocessor. 30 All other options accepted by 31 .BR scc-cc (1) 32 are silently passed through but have no effect during preprocessing. 33 .TP 34 .B \-d 35 Output internal tool messages. 36 .TP 37 .BI \-D " define[=value]" 38 Predefine 39 .I define 40 as a macro, optionally with a replacement text 41 .IR value . 42 This option may be specified multiple times. 43 .TP 44 .BI \-I " directory" 45 Add 46 .I directory 47 to the list of directories searched for 48 .B #include 49 files. 50 User-specified directories are searched before the standard system 51 include directories. 52 This option may be specified multiple times. 53 .TP 54 .B \-M 55 Instead of producing preprocessed output, output a rule suitable for 56 .BR make (1) 57 describing the dependencies of the main source file. 58 .TP 59 .BI \-o " outfile" 60 Write output to 61 .I outfile 62 instead of standard output. 63 .TP 64 .BI \-U " define" 65 Undefine 66 .IR define , 67 cancelling any previous definition made with 68 .B \-D 69 or by the compiler's built-in predefined macros. 70 This option may be specified multiple times. 71 .TP 72 .B \-w 73 or 74 .BI \-W " param" 75 Enable warning messages. 76 The parameter of 77 .B \-W 78 is ignored for compatibility reasons. 79 .SH ENVIRONMENT VARIABLES 80 The following environment variables influence the behaviour of 81 .BR scc-cpp , 82 which are inherited from 83 .BR scc-cc (1). 84 .TP 85 .B ARCH 86 Defines the target architecture (e.g. 87 .IR amd64 , 88 .IR i386 ). 89 This affects predefined macros exposed to the preprocessor. 90 .TP 91 .B SYS 92 Defines the target operating system (e.g. 93 .IR linux , 94 .IR openbsd ). 95 This affects predefined macros exposed to the preprocessor. 96 .TP 97 .B ABI 98 Defines the target application binary interface (e.g. 99 .IR sysv ). 100 .TP 101 .B FORMAT 102 Defines the format of the output object file. 103 .TP 104 .B SCCPREFIX 105 Defines the path prefix under which the scc suite is installed. 106 .B scc-cpp 107 uses this to locate 108 .BR scc-cc (1). 109 If not set, the scc tools fall back to their compile-time 110 .BR PREFIX . 111 .SH EXAMPLES 112 Preprocess a source file and print the result to standard output: 113 .IP 114 .EX 115 scc-cpp hello.c 116 .EE 117 .PP 118 Preprocess with macro definitions and an extra include path: 119 .IP 120 .EX 121 scc-cpp \-DDEBUG \-DVERSION=2 \-I./include \-o hello.i hello.c 122 .EE 123 .PP 124 Generate 125 .BR make (1) 126 dependency rules: 127 .IP 128 .EX 129 scc-cpp \-M hello.c 130 .EE 131 .PP 132 Undefine a macro before preprocessing: 133 .IP 134 .EX 135 scc-cpp \-UFOO hello.c 136 .EE 137 .SH SEE ALSO 138 .BR scc-cc (1), 139 .BR scc (1)