簡體   English   中英

在Watcom Makefile中擴展宏時**是什么意思?

[英]What does *$ mean when expanding macros in a Watcom makefile?

我在舊項目中有一組特殊的makefile。 它們是由Watcom品牌處理的,但是它們似乎具有NMAKE文件格式。 我經常遇到以下構造:

*$(_cmd_run)

$(_cmd_run)只是一個宏擴展,但是在這種情況下,美元符號前還有一個星號。 我似乎找不到任何有關其目的的文檔。 NMAKE文檔對此語法沒有任何要求。 我什至嘗試查找Open Watcom源文件,但無濟於事。

這個星號表示什么?

這是在DOS下處理“長”命令行的解決方法,因此可以安全地將其刪除。 在WMAKE的幫助下:

在DOS下,星號前綴(*)將使Make檢查命令參數的長度。 如果太長(> 126個字符),它將使用命令參數並將其填充到臨時環境變量中,然后以“ @env_var”作為參數執行命令。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM