gcc -Wp
: pass options to the preprocessor. printf
, yet without including stdio.h
. Additionally, the macro FOO
is not defined in the translation unit: int main() { printf(FOO); }
gcc
, it uses the -Wp
option to pass the -D
and -include
options to the preprocessor so that FOO
is defined and stdio.h
included. a.out: prog.c gcc -Wp,-DFOO='"Hello world\n"' -Wp,-include,stdio.h $< -o $@