1
2
Pavel Shved是对的(*),您必须重新运行Make。这是一个我引以为傲的技巧。它将处理对可能还不存在的对象的依赖,并且不会不必要地运行。 SOURCES = $(wildcard *.c) OBJECTS = $(SOURCES:.c=.o) all: libmystuff.a ifeq ($(MAKELEVEL),0) libmystuff.a: source.txt mycompiler $^ @$(MAKE) -s $@ else libmystuff.a: $(OBJECTS) $(AR) rcs $@ $^ endif (*)我的宿敌,我们又见面了。
SOURCES = $(wildcard *.c) OBJECTS = $(SOURCES:.c=.o) all: libmystuff.a libmystuff.a: source.txt mycompiler $^ @$(MAKE) -s phonyLib .PHONY: phonyLib phonyLib: $(OBJECTS) $(AR) rcs libmystuff.a $^
|
2
3
使用sentry“makefile”强制make重新读取makefile并替换正确的列表
因此,如果source.txt在您上次处理它之后发生了更改(时间被记录为sources sentry的时间戳
文件
),将更新源并重新调用make
|
3
2
|
recursivePython · C#发布中不包含依赖项 6 年前 |
ChumboChappati · UML:组合或依赖 6 年前 |
PCL · 使用Nexus工件库的多项目gradle构建 6 年前 |
novafluff · 依赖于打包为war的模块,需要类 6 年前 |