summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--xmake/plugins/project/clang/compile_commands.lua24
1 files changed, 4 insertions, 20 deletions
diff --git a/xmake/plugins/project/clang/compile_commands.lua b/xmake/plugins/project/clang/compile_commands.lua
index 9996b4ed5..ad21cff51 100644
--- a/xmake/plugins/project/clang/compile_commands.lua
+++ b/xmake/plugins/project/clang/compile_commands.lua
@@ -60,29 +60,13 @@ function _get_windows_sdk_arguments(target)
local args = {}
local msvc = target:toolchain("msvc")
if msvc then
- local includedirs = {}
local envs = msvc:runenvs()
- local WindowsSdkDir = envs.WindowsSdkDir
- local WindowsSDKVersion = envs.WindowsSDKVersion
- if WindowsSdkDir and WindowsSDKVersion then
- table.join2(includedirs, os.dirs(path.join(WindowsSdkDir, "Include", envs.WindowsSDKVersion, "*")))
- for _, tool in ipairs({"atlmfc", "diasdk"}) do
- local tool_dir = path.join(WindowsSdkDir, tool, "include")
- if os.isdir(tool_dir) then
- table.insert(includedirs, tool_dir)
- end
+ if envs then
+ for _, dir in ipairs(path.splitenv(envs.INCLUDE)) do
+ table.insert(args, "-imsvc")
+ table.insert(args, dir)
end
end
-
- local VCToolsInstallDir = envs.VCToolsInstallDir
- if VCToolsInstallDir then
- table.insert(includedirs, path.join(VCToolsInstallDir, "include"))
- end
-
- for _, dir in ipairs(includedirs) do
- table.insert(args, "-imsvc")
- table.insert(args, dir)
- end
end
return args
end