diff options
| author | ruki <[email protected]> | 2022-09-20 07:17:03 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2022-09-20 07:17:03 +0800 |
| commit | b17aafa3ba887d41fb9dc067c401c5930bc3f79f (patch) | |
| tree | 2d724311eaca789e44a7ef89ea0908470887701c | |
| parent | c8dc37772dbd9250297d59778dd45c99e25c70a3 (diff) | |
| parent | a3afa19af78efbf72c9201d5499afc8ae3a1d8ab (diff) | |
Merge pull request #2833 from shithappens2016/remove-fbuiltin-module-map-on-windows-mingw
remove `-fbuiltin-module-map` in the (windows)mingw environment make the compilation work
| -rw-r--r-- | xmake/rules/c++/modules/modules_support/clang.lua | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/xmake/rules/c++/modules/modules_support/clang.lua b/xmake/rules/c++/modules/modules_support/clang.lua index e67bacef1..4eaee0a84 100644 --- a/xmake/rules/c++/modules/modules_support/clang.lua +++ b/xmake/rules/c++/modules/modules_support/clang.lua @@ -487,11 +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 - builtinmodulemapflag = "-fbuiltin-module-map" + -- 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 |
