nmake:批处理文件是否可以作为make命令块的一部分运行,从而影响nmake.exe进程的环境?
我想如果我这样做:nmake:批处理文件是否可以作为make命令块的一部分运行,从而影响nmake.exe进程的环境?,nmake,Nmake,我想如果我这样做: example : set value=77 echo %%value%% 结果将在控制台上显示77 有没有办法调用会影响nmake.exe进程环境的.cmd或.bat文件?假设我将语句setvalue=77放在一个名为“setvalue.cmd”的文件中。然后将makefile更改为: example : setvalue echo %%value%% 我得到: %value% 或者,如果有办法在命令
example :
set value=77
echo %%value%%
结果将在控制台上显示77
有没有办法调用会影响nmake.exe进程环境的.cmd或.bat文件?假设我将语句setvalue=77
放在一个名为“setvalue.cmd”的文件中。然后将makefile更改为:
example :
setvalue
echo %%value%%
我得到:
%value%
或者,如果有办法在命令块中设置宏,也可以。或者,一种从批处理文件(甚至在命令块之外)设置宏值的方法 不,我不这么认为。您可以在makefile预处理期间创建一个nmake片段,并在中读取。假设
batch.cmd
输出有效的nmake语法,则
!if [batch.cmd >makefile.auto]
!error *** Could not create makefile.auto
!endif
!include makefile.auto
您应该确保batch.cmd
适当地设置%errorlevel%
(例如,退出/b22
)
makefile.auto
可以包含任何内容,但您可能需要value=77
之类的内容。有两点:
- 使用nmake语法(
)取消对值的引用$(值)
- 如有必要,您可以将参数传递给
(batch.cmd
)[batch.cmd$(OBJECTS)>makefile.auto]