diff options
| author | Arthur LAURENT <[email protected]> | 2024-03-17 17:37:28 +0100 |
|---|---|---|
| committer | Arthur LAURENT <[email protected]> | 2024-03-23 23:56:38 +0100 |
| commit | a596970f9b49e71e7f27cc3ed66a137b3705ff0c (patch) | |
| tree | 3a16e28f56c4e77485ab04ee8ec87c5ea4c8426a | |
| parent | 1d1474dbfb2b65ca90df6b22c6cad461eaebbe69 (diff) | |
add C++23 and libc++ flags for -print-library-module-manifest-path
detection
| -rw-r--r-- | xmake/rules/c++/modules/modules_support/clang/compiler_support.lua | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/xmake/rules/c++/modules/modules_support/clang/compiler_support.lua b/xmake/rules/c++/modules/modules_support/clang/compiler_support.lua index 1bc4ee6bf..faffa1e49 100644 --- a/xmake/rules/c++/modules/modules_support/clang/compiler_support.lua +++ b/xmake/rules/c++/modules/modules_support/clang/compiler_support.lua @@ -83,8 +83,8 @@ function _get_std_module_manifest_path(target) local print_module_manifest_flag = get_print_library_module_manifest_path_flag(target) if print_module_manifest_flag then local compinst = target:compiler("cxx") - local outdata, _ = try { function() return os.iorunv(compinst:program(), {print_module_manifest_flag}, {envs = compinst:runenvs()}) end } - if outdata and outdata ~= "<NOT PRESENT>" then + local outdata, _ = try { function() return os.iorunv(compinst:program(), {"-std=c++23", "-stdlib=libc++", print_module_manifest_flag}, {envs = compinst:runenvs()}) end } + if outdata and not outdata:startswith("<NOT PRESENT>") then return outdata:trim() end end |
