针对需要不同优化的文件,使用不同的编译选项编译即可。例如在Makefile中:
CC = gcc
CFLAGS_Common = -Wall -Wextra
CFLAGS_Src1 = $(CFLAGS_Common) -O2
CFLAGS_Src2 = $(CFLAGS_Common) -O3
all: src1.o src2.o
src1.o: src1.c
$(CC) $(CFLAGS_Src1) -c $< -o $@
src2.o: src2.c
$(CC) $(CFLAGS_Src2) -c $< -o $@
clean:
rm -f *.o
在上述的Makefile中,编译src1.c文件时,使用-O2
优化选项;编译src2.c文件时,使用-O3
优化选项。对于公共的编译选项,可以提取出来作为变量,以便于重复使用。
上一篇:不同文件上的相同包名