diff options
| author | ruki <[email protected]> | 2023-03-12 00:06:24 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2023-03-12 00:06:24 +0800 |
| commit | 87c613045e24040839a98b556a56d53fc2108d38 (patch) | |
| tree | c0d912c49ee63fac64eee2cbeb9eb0c355837260 | |
| parent | 4984193f1dc0c45a4214e5456bb9ee508d8e49e0 (diff) | |
improve ninja generator for msvc
| -rw-r--r-- | xmake/plugins/project/ninja/build_ninja.lua | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/xmake/plugins/project/ninja/build_ninja.lua b/xmake/plugins/project/ninja/build_ninja.lua index cb757d484..4d1762d0a 100644 --- a/xmake/plugins/project/ninja/build_ninja.lua +++ b/xmake/plugins/project/ninja/build_ninja.lua @@ -227,8 +227,15 @@ end -- add rules for linker (msvc) function _add_rules_for_linker_msvc(ninjafile, linkerkind, program) + if linkerkind == "ar" then + program = program .. " -lib" + elseif linkerkind == "sh" then + program = program .. " -dll" + end ninjafile:print("rule %s", linkerkind) - ninjafile:print(" command = %s $ARGS -out:$out $in", program) + ninjafile:print(" command = %s @$out.rsp", program) + ninjafile:print(" rspfile = $out.rsp") + ninjafile:print(" rspfile_content = $ARGS -out:$out $in_newline") ninjafile:print(" description = linking.%s $out", config.mode()) ninjafile:print("") end |
