diff options
| author | ruki <[email protected]> | 2020-08-29 00:36:39 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2020-08-29 00:36:39 +0800 |
| commit | 63d86afa2a79008f6f256b73d0ba919bb911144f (patch) | |
| tree | 4b3908d316318eb4ec5eb18f6f76bcd64a0a5e56 | |
| parent | 9965dfcab2d32d7d5c72831f1a838028bde66e7c (diff) | |
improve cmake generator again
| -rw-r--r-- | xmake/plugins/project/cmake/cmakelists.lua | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/xmake/plugins/project/cmake/cmakelists.lua b/xmake/plugins/project/cmake/cmakelists.lua index 643c97f8c..290e40d1e 100644 --- a/xmake/plugins/project/cmake/cmakelists.lua +++ b/xmake/plugins/project/cmake/cmakelists.lua @@ -360,13 +360,13 @@ function _add_target_link_directories(cmakelists, target) cmakelists:print(")") else cmakelists:print("if(MSVC)") - cmakelists:print(" target_link_options(%s PRIVATE", target:name()) + cmakelists:print(" target_link_libraries(%s PRIVATE", target:name()) for _, linkdir in ipairs(linkdirs) do cmakelists:print(" -libpath:" .. _get_unix_path(linkdir)) end cmakelists:print(" )") cmakelists:print("else()") - cmakelists:print(" target_link_options(%s PRIVATE", target:name()) + cmakelists:print(" target_link_libraries(%s PRIVATE", target:name()) for _, linkdir in ipairs(linkdirs) do cmakelists:print(" -L" .. _get_unix_path(linkdir)) end @@ -381,7 +381,11 @@ function _add_target_link_options(cmakelists, target) local ldflags = _get_configs_from_target(target, "ldflags") local shflags = _get_configs_from_target(target, "shflags") if #ldflags > 0 or #shflags > 0 then - cmakelists:print("target_link_options(%s PRIVATE", target:name()) + if cmake_minver:ge("3.13.0") then + cmakelists:print("target_link_options(%s PRIVATE", target:name()) + else + cmakelists:print("target_link_libraries(%s PRIVATE", target:name()) + end for _, flag in ipairs(table.unique(table.join(ldflags, shflags))) do if target:linker():has_flags(flag) then cmakelists:print(" " .. flag) |
