在Watcom makefile中扩展宏时* $意味着什么?

问题描述 投票:0回答:1

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

*$(_cmd_run)

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

这个星号表示什么?

makefile build nmake watcom
1个回答
2
投票

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

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

© www.soinside.com 2019 - 2024. All rights reserved.