Makefile 生成生成文件的脚本

Makefile 生成生成文件的脚本,makefile,Makefile,我努力写makefile,我要从中学习。我想使用Makefiles,因为它使构建并发,项目更统一,更易于管理 你有什么资源可以分享吗 例如,我正在努力思考如何将这个简单的构建脚本转换成一个Makefile,以便index.html只在其index.src.html被修改时构建 for i in */index.src.html do anolis --max-depth=3 $i $(dirname $i)/index.html done 尝试使用模式规则。发件人: 因此,模式规则“%

我努力写makefile,我要从中学习。我想使用Makefiles,因为它使构建并发,项目更统一,更易于管理

你有什么资源可以分享吗

例如,我正在努力思考如何将这个简单的构建脚本转换成一个Makefile,以便index.html只在其index.src.html被修改时构建

for i in */index.src.html
do
    anolis --max-depth=3 $i $(dirname $i)/index.html
done

尝试使用模式规则。发件人:

因此,模式规则“%.o:%.c”说明如何从另一个文件stem.c生成任何文件stem.o

比如

INFILES = $(shell find . -name index.src.html)
OUTFILES = $(addsuffix .html, $(basename $(basename $(INFILES))))

default: $(OUTFILES)

%.html : %.src.html
    anolis --max-depth=3 $< $@

clean:
    rm -f $(OUTFILES)
INFILES=$(shell find.-name index.src.html)
OUTFILES=$(addsuffix.html,$(basename$(basename$(INFILES)))
默认值:$(输出文件)
%.html:%.src.html
anolis——最大深度=3$<$@
清洁:
rm-f$(外部文件)

然后,诀窍就是以可靠和安全的方式构建
填充

s、%.src、%.src.html,否则就太棒了!非常好:)只是一个风格点:您还可以使用替换引用来生成
OUTFILES
OUTFILES=$(INFILES:.src.html=.html)
。这让事情变得更清楚了一点。