Chromium Code Reviews| Index: pylib/gyp/generator/ninja.py |
| =================================================================== |
| --- pylib/gyp/generator/ninja.py (revision 1870) |
| +++ pylib/gyp/generator/ninja.py (working copy) |
| @@ -1891,17 +1891,18 @@ |
| 'solink', |
| description='SOLINK $lib', |
| restat=True, |
| - command=(mtime_preserving_solink_base % { |
| - 'suffix': '-Wl,--whole-archive $in $solibs -Wl,--no-whole-archive ' |
| - '$libs'}), |
| + command=mtime_preserving_solink_base % {'suffix': '@$lib.rsp'}, |
| + rspfile='$lib.rsp', |
| + rspfile_content= |
| + '-Wl,--whole-archive $in $solibs -Wl,--no-whole-archive $libs', |
| pool='link_pool') |
| master_ninja.rule( |
| 'solink_module', |
| description='SOLINK(module) $lib', |
| restat=True, |
| - command=(mtime_preserving_solink_base % { |
| - 'suffix': '-Wl,--start-group $in $solibs -Wl,--end-group ' |
| - '$libs'}), |
| + command=mtime_preserving_solink_base % {'suffix': '@$lib.rsp'}, |
| + rspfile='$lib.rsp', |
| + rspfile_content='-Wl,--start-group $in $solibs -Wl,--end-group $libs', |
| pool='link_pool') |
| master_ninja.rule( |
| 'link', |
| @@ -1914,9 +1915,9 @@ |
| 'alink', |
| description='LIB $out', |
| command=('%s gyp-win-tool link-wrapper $arch False ' |
| - '$ar /nologo /ignore:4221 /OUT:$out @$out.rsp' % |
| + '$ar /nologo /ignore:4221 /OUT:$out @$lib.rsp' % |
|
scottmg
2014/03/13 03:34:58
looks like this has an extra EncodePOSIX, but shou
|
| sys.executable), |
| - rspfile='$out.rsp', |
| + rspfile='$lib.rsp', |
| rspfile_content='$in_newline $libflags') |
| _AddWinLinkRules(master_ninja, embed_manifest=True) |
| _AddWinLinkRules(master_ninja, embed_manifest=False) |
| @@ -1968,34 +1969,42 @@ |
| '{ otool -l $lib | grep LC_ID_DYLIB -A 5; ' |
| 'nm -gP $lib | cut -f1-2 -d\' \' | grep -v U$$; true; }'}) |
| - solink_suffix = '$in $solibs $libs$postbuilds' |
| + |
| + solink_suffix = '@$lib.rsp$postbuilds' |
| master_ninja.rule( |
| 'solink', |
| description='SOLINK $lib, POSTBUILDS', |
| restat=True, |
| command=mtime_preserving_solink_base % {'suffix': solink_suffix, |
| 'type': '-shared'}, |
| + rspfile='$lib.rsp', |
| + rspfile_content='$in $solibs $libs', |
| pool='link_pool') |
| master_ninja.rule( |
| 'solink_notoc', |
| description='SOLINK $lib, POSTBUILDS', |
| restat=True, |
| command=solink_base % {'suffix':solink_suffix, 'type': '-shared'}, |
| + rspfile='$lib.rsp', |
| + rspfile_content='$in $solibs $libs', |
| pool='link_pool') |
| - solink_module_suffix = '$in $solibs $libs$postbuilds' |
| master_ninja.rule( |
| 'solink_module', |
| description='SOLINK(module) $lib, POSTBUILDS', |
| restat=True, |
| - command=mtime_preserving_solink_base % {'suffix': solink_module_suffix, |
| + command=mtime_preserving_solink_base % {'suffix': solink_suffix, |
| 'type': '-bundle'}, |
| + rspfile='$lib.rsp', |
| + rspfile_content='$in $solibs $libs', |
|
scottmg
2014/03/13 03:34:58
does this need $postbuilds?
|
| pool='link_pool') |
| master_ninja.rule( |
| 'solink_module_notoc', |
| description='SOLINK(module) $lib, POSTBUILDS', |
| restat=True, |
| - command=solink_base % {'suffix': solink_module_suffix, 'type': '-bundle'}, |
| + command=solink_base % {'suffix': solink_suffix, 'type': '-bundle'}, |
| + rspfile='$lib.rsp', |
| + rspfile_content='$in $solibs $libs', |
|
scottmg
2014/03/13 03:34:58
and here
|
| pool='link_pool') |
| master_ninja.rule( |