Search notes:

gcc -Wp

gcc -Wp: pass options to the preprocessor.

prog.c

The following program uses printf, yet without including stdio.h. Additionally, the macro FOO is not defined in the translation unit:
int main() {
    printf(FOO);
}
Github repository about-gcc, path: /options/Wp/prog.c

Makefile

When the following makefile invokes 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 $@
Github repository about-gcc, path: /options/Wp/Makefile

See also

GCC options

Index