gpt4 book ai didi

makefile - 多个目标的构建后步骤

转载 作者:行者123 更新时间:2023-12-03 20:21:50 25 4
gpt4 key购买 nike

我有一个 makefile,它有多个目标,用于以不同的格式输出数据,例如make html , make pdf , make txt等等,我希望在使用这些选项中的任何一个时运行预构建和构建后步骤。我对预构建步骤进行了排序,但不确定如何使构建后步骤正常工作。

.PHONY: html pdf txt pre-build post-build

pre-build:
do-pre-build-stuff

post-build:
do-post-build-stuff

html: data.dat
generate-html data.dat

pdf: data.dat
generate-pdf data.dat

txt: data.dat
generate-txt data.dat

data.dat: pre-build
generate-some-data > data.dat

我如何获得 post-build步跑在每个目标之后?

最佳答案

不幸的是,您必须为每个规则编写不同的规则。但是您可以使用 static pattern rule 使其更简单:

html pdf txt: %: real-%
do-post-build-stuff

real-html: data.dat
generate-html data.dat

real-pdf: data.dat
generate-pdf data.dat

real-txt: data.dat
generate-txt data.dat

这将创建目标 html , pdf , 和 txt这取决于 real-版本。 real-版本执行实际工作,然后在完成后构建后的内容作为基本目标( htmlpdftxt )中的配方完成。

该规则只是一个速记,因此您不必全部写出来;结果是相同的:
html: real-html
do-post-build-stuff

pdf: real-pdf
do-post-build-stuff

txt: real-txt
do-post-build-stuff

关于makefile - 多个目标的构建后步骤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23017069/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com