0

我在遗留项目中有一组特殊的 makefile。它们由 Watcom 制作处理,但它们似乎具有 NMAKE 文件格式。我经常遇到以下构造:

*$(_cmd_run)

$(_cmd_run)只是宏观扩张,但在这种情况下,美元符号前还有一个星号。我似乎找不到任何关于其目的的文档。NMAKE 文档没有关于此语法的任何内容。我什至尝试查找 Open Watcom 源文件,但无济于事。

这个星号代表什么?

4

1 回答 1

2

这是在 DOS 下处理“长”命令行的一种解决方法,因此可以安全地删除它。在 WMAKE 的帮助下:

在 DOS 下,星号前缀 (*) 将导致 Make 检查命令参数的长度。如果它太长(> 126 个字符),它将接受命令参数并将其填充到临时环境变量中,然后以“@env_var”作为参数执行命令。

于 2019-03-15T07:26:26.237 回答