-
Notifications
You must be signed in to change notification settings - Fork 514
Open
Labels
Milestone
Description
When I build a file with CMake Tools with a simple example, I'm seeing the following command line used:
cl /c /IZ:\repos\Bug\include /Zi /W3 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"MyProject.dir\Debug\\" /Fd"MyProject.dir\Debug\vc143.pdb" /external:W3 /Gd /TP /errorReport:queue Z:\repos\Bug\main.cpp
The custom configuration sent to cpptools is missing some of those arguments:
"includePath": [
"z:/repos/bug/include"
],
"defines": [],
"compilerPath": "c:/program files/microsoft visual studio/2022/enterprise/vc/tools/msvc/14.35.32215/bin/hostx64/x64/cl.exe",
"compilerArgs": [],
"compilerFragments": [
"/DWIN32 /D_WINDOWS /W3 /GR /EHsc /MDd /Zi /Ob0 /Od /RTC1"
]
I've not dug into the importance of the other missing arguments, but cpptools specifically needs the /Fo argument. If (and only if) it is a path ending in a backslash or forward slash, it's used as an output directory for .tlh files. We need that path to pass to EDGE for --import_dir. That argument would be needed in order to properly support #using of COM .tlb files in cpptools.
akbyrd, nmoreaud and kkutsner
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
Pending Prioritization