检查Makefile WIndows中的环境变量值

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

我想检查我的环境变量是否已设置,但这不起作用。

!IFDEF VAL
    echo %VAL%
!ELSE
    echo "NOT SET"
!ENDIF

我知道在linux上你可以使用ifeq,但是在windows makefile中没有这样的东西。请帮忙。

编辑:我在 cmd 中使用 cl2022 中的 nmake。

windows makefile nmake
1个回答
0
投票

它有效。
清单 [MS.Learn]:Makefile 预处理

Makefile.mak:

!message Start

!if defined(VAL)
!message VAL=$(VAL)
!else
!message VAL is NOT set
!endif

!message Stop

输出

[cfati@CFATI-5510-0:e:\Work\Dev\StackExchange\StackOverflow\q076304362]> sopr.bat
### Set shorter prompt to better fit when pasted in StackOverflow (or other) pages ###

[prompt]> set VAL=

[prompt]> echo %VAL%
%VAL%

[prompt]> nmake /nologo /f Makefile.mak
Start
VAL is NOT set
Stop

[prompt]> nmake /nologo /f Makefile.mak VAL="cmdline macro"
Start
VAL=cmdline macro
Stop

[prompt]> nmake /nologo /f Makefile.mak VAL=
Start
VAL=
Stop

[prompt]> set VAL=env var

[prompt]> echo %VAL%
env var

[prompt]> nmake /nologo /f Makefile.mak
Start
VAL=env var
Stop

[prompt]> nmake /nologo /f Makefile.mak VAL="cmdline macro"
Start
VAL=cmdline macro
Stop

[prompt]> nmake /nologo /f Makefile.mak VAL=
Start
VAL=
Stop
© www.soinside.com 2019 - 2024. All rights reserved.