diff options
| author | ruki <[email protected]> | 2020-11-10 22:37:23 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2020-11-10 11:33:28 +0800 |
| commit | a894334e3c80f9c13a0e64f5ce2f96b57726f186 (patch) | |
| tree | 4d0ae4a50b554c9ea88dbd91c9c6ed3002f46ccc /xmake/plugins | |
| parent | 6bd92e09bea0e6f1c707ab6bbf062f462b70c01d (diff) | |
impl nd_sysincludedir
Diffstat (limited to 'xmake/plugins')
| -rw-r--r-- | xmake/plugins/project/cmake/cmakelists.lua | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/xmake/plugins/project/cmake/cmakelists.lua b/xmake/plugins/project/cmake/cmakelists.lua index fe8a66871..8dc3416b0 100644 --- a/xmake/plugins/project/cmake/cmakelists.lua +++ b/xmake/plugins/project/cmake/cmakelists.lua @@ -182,6 +182,26 @@ function _add_target_include_directories(cmakelists, target) end end +-- add target system include directories +function _add_target_sysinclude_directories(cmakelists, target) + local includedirs = _get_configs_from_target(target, "sysincludedirs") + if #includedirs > 0 then + cmakelists:print("target_include_directories(%s SYSTEM PRIVATE", target:name()) + for _, includedir in ipairs(includedirs) do + cmakelists:print(" " .. _get_unix_path(includedir)) + end + cmakelists:print(")") + end + local includedirs_interface = target:get("sysincludedirs", {interface = true}) + if includedirs_interface then + cmakelists:print("target_include_directories(%s SYSTEM INTERFACE", target:name()) + for _, headerdir in ipairs(includedirs_interface) do + cmakelists:print(" " .. _get_unix_path(headerdir)) + end + cmakelists:print(")") + end +end + -- add target compile definitions function _add_target_compile_definitions(cmakelists, target) local defines = _get_configs_from_target(target, "defines") @@ -470,6 +490,9 @@ function _add_target(cmakelists, target) -- add target include directories _add_target_include_directories(cmakelists, target) + -- add target system include directories + _add_target_sysinclude_directories(cmakelists, target) + -- add target compile definitions _add_target_compile_definitions(cmakelists, target) |
