summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2023-09-13 22:45:44 +0800
committerruki <[email protected]>2023-09-13 22:45:44 +0800
commit21293b83d75a21a58fa063579b160f21ffd864ac (patch)
tree10f119d0e8b4341cf081e6e192af3a0ff0b64f36
parent2c456836c5fa6885e2a840db1cd6866287c0d5fb (diff)
fix #4196
-rw-r--r--xmake/plugins/project/cmake/cmakelists.lua7
1 files changed, 6 insertions, 1 deletions
diff --git a/xmake/plugins/project/cmake/cmakelists.lua b/xmake/plugins/project/cmake/cmakelists.lua
index f0824e1eb..8fe99436f 100644
--- a/xmake/plugins/project/cmake/cmakelists.lua
+++ b/xmake/plugins/project/cmake/cmakelists.lua
@@ -900,7 +900,12 @@ function _add_target_link_options(cmakelists, target)
end
for _, flag in ipairs(flags) do
flag = _escape_path_in_flag(target, flag)
- cmakelists:print(" " .. flag)
+ -- @see https://github.com/xmake-io/xmake/issues/4196
+ if cmake_minver:ge("3.12.0") and #os.argv(flag) > 1 then
+ cmakelists:print(" SHELL:" .. flag)
+ else
+ cmakelists:print(" " .. flag)
+ end
end
cmakelists:print(")")
end