Chromium Code Reviews| Index: pylib/gyp/generator/ninja.py |
| diff --git a/pylib/gyp/generator/ninja.py b/pylib/gyp/generator/ninja.py |
| index 57acb23534ff01ac0ecbd0e6eaecba780345bd0a..3612de0a432f6d69aa678027e78d643ca108d8db 100644 |
| --- a/pylib/gyp/generator/ninja.py |
| +++ b/pylib/gyp/generator/ninja.py |
| @@ -1100,11 +1100,22 @@ class NinjaWriter: |
| self.target.import_lib = output + '.lib' |
| extra_bindings.append(('implibflag', |
| '/IMPLIB:%s' % self.target.import_lib)) |
| + pdbname = self.msvs_settings.GetPDBName( |
| + config_name, self.ExpandSpecial, output + '.pdb') |
| output = [output, self.target.import_lib] |
| + if pdbname: |
| + output.append(pdbname) |
| elif not self.is_mac_bundle: |
| output = [output, output + '.TOC'] |
| else: |
| command = command + '_notoc' |
| + elif self.flavor == 'win': |
| + extra_bindings.append(('exe', output)) |
| + pdbname = self.msvs_settings.GetPDBName( |
|
Nico
2014/01/08 21:44:13
# Must match /PDB: flag in the 'link' rule.
scottmg
2014/01/08 21:54:57
It's confusing, but it actually doesn't have to. T
|
| + config_name, self.ExpandSpecial, output + '.pdb') |
|
Nico
2014/01/08 21:44:13
default=output + '.pdb'
scottmg
2014/01/08 21:54:57
Done. (and above)
|
| + if pdbname: |
| + output = [output, pdbname] |
| + |
| if len(solibs): |
| extra_bindings.append(('solibs', gyp.common.EncodePOSIXShellList(solibs))) |
| @@ -1611,13 +1622,13 @@ def _AddWinLinkRules(master_ninja, embed_manifest): |
| # Note that ldflags goes at the end so that it has the option of |
| # overriding default settings earlier in the command line. |
|
Nico
2014/01/08 21:44:13
# The /PDB: argument must match the pdbname writte
|
| exe_cmd = ('%s gyp-win-tool link-wrapper $arch ' |
| - '$ld /nologo /OUT:$out /PDB:$out.pdb @$out.rsp' % |
| + '$ld /nologo /OUT:$exe /PDB:$exe.pdb @$exe.rsp' % |
| sys.executable) |
| - exe_cmd = FullLinkCommand(exe_cmd, '$out', 'exe') |
| + exe_cmd = FullLinkCommand(exe_cmd, '$exe', 'exe') |
| master_ninja.rule('link' + rule_name_suffix, |
| - description='LINK%s $out' % rule_name_suffix.upper(), |
| + description='LINK%s $exe' % rule_name_suffix.upper(), |
| command=exe_cmd, |
| - rspfile='$out.rsp', |
| + rspfile='$exe.rsp', |
| rspfile_content='$in_newline $libs $ldflags', |
| pool='link_pool') |
| @@ -2116,7 +2127,7 @@ def GenerateOutput(target_list, target_dicts, data, params): |
| user_config) |
| else: |
| config_names = target_dicts[target_list[0]]['configurations'].keys() |
| - if params['parallel']: |
| + if False: #params['parallel']: |
|
Nico
2014/01/08 21:44:13
I assume you don't mean to land this part :-)
scottmg
2014/01/08 21:54:57
Ahem. I need to look into why the stack traces are
|
| try: |
| pool = multiprocessing.Pool(len(config_names)) |
| arglists = [] |