我正在阅读某个项目的 Jamrule 文件以了解它是如何构建的。但有一些我无法理解。诸如此类是$(1:D=) or $(1:S=$(sample)) or $(1:G=$(sample))
什么意思?
我在 shell 脚本中搜索了冒号和相等的含义,但我找不到它们之间的字母表。
前任)local _s = $(1:D=) ;
$(1)
扩展规则的第一个参数。$(1:D=foo)
应用一个修饰符,用字符串替换扩展元素的目录部分(dirname,如果你从 shell 术语中考虑的话)foo
。特殊情况$(1:D=)
会删除目录部分。修饰符S
指的是文件名的后缀(又名扩展名),指G
的是卡纸目标名称的“grist”。
有关完整列表,请参阅 Perforce Jam 文档的变量扩展部分。我可以推荐阅读完整的 Jam 文档以了解具体概念(如 grist)。