Use vccexe when generating static lib with vcc (#19843)

This commit is contained in:
Tomohiro 2022-09-28 22:07:41 +09:00 • committed by GitHub
commit 92a0f191bf
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -155,7 +155,7 @@ compiler vcc:
compileTmpl: "/c$vccplatform $options $include /nologo /Fo$objfile $file", compileTmpl: "/c$vccplatform $options $include /nologo /Fo$objfile $file",
buildGui: " /SUBSYSTEM:WINDOWS user32.lib ", buildGui: " /SUBSYSTEM:WINDOWS user32.lib ",
buildDll: " /LD", buildDll: " /LD",
buildLib: "lib /OUT:$libfile $objfiles", buildLib: "vccexe --command:lib$vccplatform /nologo /OUT:$libfile $objfiles",
linkerExe: "cl", linkerExe: "cl",
linkTmpl: "$builddll$vccplatform /Fe$exefile $objfiles $buildgui /nologo $options", linkTmpl: "$builddll$vccplatform /Fe$exefile $objfiles $buildgui /nologo $options",
includeCmd: " /I", includeCmd: " /I",
@ -676,7 +676,8 @@ proc getLinkCmd(conf: ConfigRef; output: AbsoluteFile,
if removeStaticFile: if removeStaticFile:
removeFile output # fixes: bug #16947 removeFile output # fixes: bug #16947
result = CC[conf.cCompiler].buildLib % ["libfile", quoteShell(output), result = CC[conf.cCompiler].buildLib % ["libfile", quoteShell(output),
"objfiles", objfiles] "objfiles", objfiles,
"vccplatform", vccplatform(conf)]
else: else:
var linkerExe = getConfigVar(conf, conf.cCompiler, ".linkerexe") var linkerExe = getConfigVar(conf, conf.cCompiler, ".linkerexe")
if linkerExe.len == 0: linkerExe = getLinkerExe(conf, conf.cCompiler) if linkerExe.len == 0: linkerExe = getLinkerExe(conf, conf.cCompiler)