/Be appears to spit out a make file 1 snippet that contains the recipe to reproduce a given run of cl.exe. It takes into account variables.
Check it out:
all:
@cd D:\17.7.5\x64
@set INCLUDE=
@set LIB=
@set LIBPATH=
@set CL=/nologo /utf-8
@set _CL_=-permissive -nologo
@set LINK=
D:\17.7.5\x64\cl.exe /nologo /BE /Be /?
As you can see it takes care of changing into the directory, setting the various recognized environment variables and copying stuff from those that were set (CL and _CL_ in my case) and then invoking the same command line that I invoked.
Another useful switch appears to be /Bv which shows the versions of the binaries involved like so:
cl.exe /nologo /Bv Compiler Passes: D:\17.7.5\x64\cl.exe: Version 19.37.32825.0 D:\17.7.5\x64\c1.dll: Version 19.37.32825.0 D:\17.7.5\x64\c1xx.dll: Version 19.37.32825.0 D:\17.7.5\x64\c2.dll: Version 19.37.32825.0 D:\17.7.5\x64\c1xx.dll: Version 19.37.32825.0 D:\17.7.5\x64\link.exe: Version 14.37.32825.0 D:\17.7.5\x64\mspdb140.dll: Version 14.37.32825.0 D:\17.7.5\x64\1033\clui.dll: Version 19.37.32825.0 cl : Command line error D8003 : missing source filename
// Oliver
- arguably NMake flavored[↩]