3 ifdef \- remove #ifdefs from a file
5 \fBifdef \fR[\fB\-t\fR] [\fB\-d\fIsymbol\fR] [\fB\-D\fIsymbol\fR] [\fB\-U\fIsymbol\fR] [\fB\-I\fIsymbol\fR] [file]\fR
18 .FL "\-D" "Define symbol permanently"
19 .FL "\-I" "Ignore symbol"
20 .FL "\-U" "Undefine symbol permanently"
21 .FL "\-d" "Define symbol. It may be #undef'ed later"
22 .FL "\-t" "Produce a table of the symbols on \fIstdout\fR"
24 .EX "ifdef \-DUNIX file.c >newfile.c" "Define \fIUNIX\fR"
25 .EX "ifdef \-D_MINIX \-UDOS <x.c >y.c "Define \fI_MINIX\fR, undefine \fIDOS\fR"
29 allows conditional code [ #ifdef ... #endif ]
30 to be selectively removed from C files, but at the same time leaving
31 all other C preprocessor commands intact such as #define, #include etc.
34 is either the file named as the last argument, or \fIstdin\fR if no file
36 Output goes to \fIstdout\fR.
38 Symbols may be defined with the \fB\-d\fR or \fB\-D\fR flags just like
39 \fIcpp\fR, except that the latter option ignores subsequent \fI#undefs\fR.
40 It is not permitted to give values to symbols.
41 Similarly, \fB\-U\fR undefines a symbol and ignores subsequent
43 Symbols defined with \fB\-I\fR are ignored; any \fI#ifdef\fR using an
44 ignored symbol will be left intact.