vs: Never serialize debug file generation with /FS

/FS forces .pdb file writing to be serialized through MSPDBSRV.EXE,
which is supposed to solve concurrency issues (esp. with anti-viruses),
but it doesn't actually always work. It also isn't needed anymore since
we don't use a shared vcXXX.pdb temporary file for pdb writing and use
/Fd to explicitly set a per-target pdb filename instead.

Not serializing the PDB writing will make a large difference on fast
disks when linking multiple libraries and executables simultaneously.
pull/684/head
Nirbheek Chauhan 8 years ago
parent c7e5e558f9
commit 4228a6dab6
  1. 7
      mesonbuild/compilers.py

@ -1436,16 +1436,11 @@ class SwiftCompiler(Compiler):
class VisualStudioCCompiler(CCompiler):
std_warn_args = ['/W3']
std_opt_args= ['/O2']
vs2010_always_args = ['/nologo', '/showIncludes']
vs2013_always_args = ['/nologo', '/showIncludes', '/FS']
def __init__(self, exelist, version, is_cross, exe_wrap):
CCompiler.__init__(self, exelist, version, is_cross, exe_wrap)
self.id = 'msvc'
if int(version.split('.')[0]) > 17:
self.always_args = VisualStudioCCompiler.vs2013_always_args
else:
self.always_args = VisualStudioCCompiler.vs2010_always_args
self.always_args = ['/nologo', '/showIncludes']
self.warn_args = {'1': ['/W2'],
'2': ['/W3'],
'3': ['/w4']}

Loading…
Cancel
Save