Can't figure out how to read file from nmake

前端 未结 3 1275
傲寒
傲寒 2020-12-21 11:47

I am doing something like this:

all: 
    @SET /p filecontent= < somefile.txt
    @echo %filecontent%

However the filecontent

相关标签:
3条回答
  • 2020-12-21 12:06

    Simply ensure somefile.txt is in acceptable nmake syntax, and then !include it. Thus:

    c:>type somefile.txt
    PASSWORD=secret
    c:>type makefile
    !INCLUDE somefile.txt
    !MESSAGE Password is [$(PASSWORD)]
    c:>nmake -nologo
    Password is [secret]
    
    0 讨论(0)
  • 2020-12-21 12:08

    It is possible to read a file that is not a valid nmake file using !INCLUDE. For examle if we have a version file version that contains a single line of text we can do that:

    //version file
    1.2.4
    
    //makefile
    VERSION= \
    !INCLUDE <version>
    

    It is not working if the file contains more than one line.

    0 讨论(0)
  • 2020-12-21 12:13

    You could try something like this:

    # ---- vitaly.mak ----
    
    target1:
    # create and invoke a temporary cmd file
    @<<mygetpassword.cmd
     @echo off
     setlocal
     @SET /p filecontent= < secret.txt
     @echo %filecontent%
     endlocal
    <<
    
    #--- END ---
    

    I think a cmd/bat file run within nmake.exe cannot affect the environment of nmake. So you must use the password that you grabbed from the secret.txt within the temporary cmd file.

    0 讨论(0)
提交回复
热议问题