如何让makefile管理有条件的编译?

问题描述 投票:1回答:1

我有一个带有宏的C文件,为了编译它,我使用gcc file.c -D和(我要编译的代码部分的宏).我写信问你,我如何能让makefile管理有条件的编译,为了编译makefile决定是创建第一个文件还是第二个文件(文件c的两个MACRO)

c makefile
1个回答
0
投票

你可以调用一个 Makefile 带参数。

make action argument=something

那么你的 Makefile 可以接受并传播这个参数。

CC = gcc
CFLAGS += -std=c11 -pedantic -Wall

action: $(argument)
    $(CC) $(CFLAGS) $(argument) -o demo

clean:
    rm -f demo

比如说你有两个文件: file1.cfile2.c,你可以打电话

make action argument=file1.c

make action argument=file2.c

来决定是创建第一个文件还是第二个文件。

© www.soinside.com 2019 - 2024. All rights reserved.