NMake基础
概述
makefile 规则
- target 这一个或多个的目标文件依赖于 prerequisites 中的文件,其生成规则定义在 command 中.
- target 是一个目标文件, 可以是Object File, 也可以是执行文件, 还可以是一个标签(Label).
- Makefile的生成规则, 命令必须以 Tab 开头, 不能是空格.
- make 使用文件的创建时间和修改时间判断是否应该更新一个目标文件.
# 目标文件: 依赖文件1 依赖文件2
x.txt: m.txt c.txt
# 生成规则
cat m.txt c.txt > x.txt
# 目标文件: 依赖文件1 依赖文件2
m.txt: a.txt b.txt
# 生成规则
cat a.txt b.txt > m.txt
# .PHONY(伪目标)
# 将 clean 定义成伪目标,无论当前目录是否存在和 clean 重名的文件, 都会执行 rm 命令.
# 如果未将 clean 定义成伪目标,当目录存在一个 clean 文件时,不会执行 rm 命令.
.PHONY: clean
clean:
rm -f m.txt
rm -f x.txt
执行多条命令
- 多条命令可以用 ; 分隔,写到一行.
- 多条命令可以用 \ 把一行语句拆分成多行.
- 多条命令可以用 && ,当某条命令执行失败时,后续命令不会继续执行.
makefile 使用变量