Makefile组合了类似的规则



我在我的makefile中有一些类似的规则:


include .env
include .env.local

var/make/.env: .env | var/make
@sed 's/=/?=/' $< > $@
var/make/.env.local: .env.local | var/make
@sed 's/=/?=/' $< > $@
var/make:
mkdir $@

是否有办法制定通用规则?

var/make/.env*: name-matching-previous-.env* | var/make
@sed 's/=/?=/' $< > $@

。Env *是一次一个文件

是的,你可以写一个模式规则:

var/make/.en%: .en% | var/make
@sed 's/=/?=/' $< > $@

%匹配目标名称的变量部分。(目标必须以en%而不是env%结尾,因为%不能匹配空字符串。)

最新更新