提问人:fjordan 提问时间:11/14/2023 最后编辑:fjordan 更新时间:11/15/2023 访问量:27
我需要 GNU make 来创建 2 个目标文件并选择性地执行特定目标
I need GNU make to create 2 target files and optionally execute a specific target
问:
我有以下makefile:
DATA_DIR = ../support/flash_data
SRC = $(DATA_DIR)/flash_data.flash
flash_data.flash: config.mk
cp $(SRC) $@
flash_data1.flash: config.mk
cp $(SRC) $@
test:
@echo --- test
我希望“make”将生成两个文件(flash_data.flash 和 flash_data1.flash),而“make test”将生成 2 个文件和消息。
此外,如果 config.mk 更改,则应在输入“make test”时重新生成文件。
但是,如果我“make test”,我只得到消息,如果我只是“make”,则只会创建flash_data.flash。
我错过了什么?
答:
0赞
fjordan
11/15/2023
#1
最终版本如下所示:
test: flash_data.flash
@echo --- test
cat flash_data.flash > lix
flash_data.flash: config.mk
cp $(SRC) $@
python update_flash_data.py 1 2 3 4 5 --output $@
“make test”做了它应该做的事情...... 谢谢。。。
评论
all:
all:
test
不依赖于任何其他规则,因此不会触发它们make test