summaryrefslogtreecommitdiff
path: root/xmake/rules/c++/modules/modules_support/clang.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2022-09-19 20:30:23 +0800
committerGitHub <[email protected]>2022-09-19 20:30:23 +0800
commita3afa19af78efbf72c9201d5499afc8ae3a1d8ab (patch)
treee8d23ccc20a30fbbc4e03025af93d58465418ce9 /xmake/rules/c++/modules/modules_support/clang.lua
parent340eacb560ac33fa2982c1bcf5769859f17f4366 (diff)
Update clang.lua
Diffstat (limited to 'xmake/rules/c++/modules/modules_support/clang.lua')
-rw-r--r--xmake/rules/c++/modules/modules_support/clang.lua12
1 files changed, 6 insertions, 6 deletions
diff --git a/xmake/rules/c++/modules/modules_support/clang.lua b/xmake/rules/c++/modules/modules_support/clang.lua
index 3c81aee0c..4eaee0a84 100644
--- a/xmake/rules/c++/modules/modules_support/clang.lua
+++ b/xmake/rules/c++/modules/modules_support/clang.lua
@@ -487,15 +487,15 @@ end
function get_builtinmodulemapflag(target)
local builtinmodulemapflag = _g.builtinmodulemapflag
if builtinmodulemapflag == nil then
- local compinst = target:compiler("cxx")
- if compinst:has_flags("-fbuiltin-module-map", "cxxflags", {flagskey = "clang_builtin_module_map"}) then
- if target:is_plat("windows", "mingw") then
- builtinmodulemapflag = ""
- else
+ -- this flag seems clang on mingw doesn't distribute it
+ -- @see https://github.com/xmake-io/xmake/pull/2833
+ if not target:is_plat("mingw") then
+ local compinst = target:compiler("cxx")
+ if compinst:has_flags("-fbuiltin-module-map", "cxxflags", {flagskey = "clang_builtin_module_map"}) then
builtinmodulemapflag = "-fbuiltin-module-map"
end
+ assert(builtinmodulemapflag, "compiler(clang): does not support c++ module!")
end
- assert(builtinmodulemapflag, "compiler(clang): does not support c++ module!")
_g.builtinmodulemapflag = builtinmodulemapflag or false
end
return builtinmodulemapflag or nil