在Makefile中我们可以通过宏定义来控制源程序的编译。只要在Makefile中的CFLAGS中通过选项-D来指定你于定义的宏即可。
如:
CFLAGS += -D _XXX
在编译的时候加上此选项就可以了: $(CFLAGS)
Makefile文件内容如下:
TARGET := test CFLAGS += -D _XXX all:$(TARGET) $(TARGET):main.c gcc $(CFLAGS) $^ -o $@ clean: -rm -f *.o -rm -f $(TARGET)
main.c文件的内容为:
#include <stdio.h> int main() { #ifdef _XXX printf("Hello world 1111111/n"); #else printf("Hello world 2222222/n"); #endif return 0; }
编译执行后,结果打印
Hello world 1111111