Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 # Copyright (c) 2012 Google Inc. All rights reserved. | 1 # Copyright (c) 2012 Google Inc. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 import copy | 5 import copy |
| 6 import gyp | 6 import gyp |
| 7 import gyp.common | 7 import gyp.common |
| 8 import gyp.msvs_emulation | 8 import gyp.msvs_emulation |
| 9 import gyp.MSVSVersion | 9 import gyp.MSVSVersion |
| 10 import gyp.system_test | 10 import gyp.system_test |
| (...skipping 1194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1205 command=('$ld $ldflags -o $out -Wl,-rpath=\$$ORIGIN/lib ' | 1205 command=('$ld $ldflags -o $out -Wl,-rpath=\$$ORIGIN/lib ' |
| 1206 '-Wl,--start-group $in -Wl,--end-group $libs')) | 1206 '-Wl,--start-group $in -Wl,--end-group $libs')) |
| 1207 elif flavor == 'win': | 1207 elif flavor == 'win': |
| 1208 master_ninja.rule( | 1208 master_ninja.rule( |
| 1209 'alink', | 1209 'alink', |
| 1210 description='LIB $out', | 1210 description='LIB $out', |
| 1211 command='$ar /nologo /ignore:4221 /OUT:$out @$out.rsp $libflags', | 1211 command='$ar /nologo /ignore:4221 /OUT:$out @$out.rsp $libflags', |
| 1212 rspfile='$out.rsp', | 1212 rspfile='$out.rsp', |
| 1213 rspfile_content='$in') | 1213 rspfile_content='$in') |
| 1214 dlldesc = 'LINK(DLL) $dll and $implib' | 1214 dlldesc = 'LINK(DLL) $dll and $implib' |
| 1215 dllcmd = ('$ld /nologo /IMPLIB:$implib /DLL /OUT:$dll ' | 1215 dllcmd = ('python gyp-win-tool link-suppress-import-lib-name ' |
|
Nico
2012/04/03 23:00:39
nit: i'd just call this link-wrapper, then it can
| |
| 1216 '/PDB:$dll.pdb $libs @$dll.rsp $ldflags') | 1216 '$ld /nologo /IMPLIB:$implib /DLL /OUT:$dll ' |
| 1217 '/PDB:$dll.pdb $libs @$dll.rsp $ldflags') | |
| 1217 master_ninja.rule('solink', description=dlldesc, command=dllcmd, | 1218 master_ninja.rule('solink', description=dlldesc, command=dllcmd, |
| 1218 rspfile='$dll.rsp', rspfile_content='$in') | 1219 rspfile='$dll.rsp', rspfile_content='$in') |
| 1219 master_ninja.rule('solink_module', description=dlldesc, command=dllcmd, | 1220 master_ninja.rule('solink_module', description=dlldesc, command=dllcmd, |
| 1220 rspfile='$dll.rsp', rspfile_content='$in') | 1221 rspfile='$dll.rsp', rspfile_content='$in') |
| 1221 # Note that ldflags goes at the end so that it has the option of | 1222 # Note that ldflags goes at the end so that it has the option of |
| 1222 # overriding default settings earlier in the command line. | 1223 # overriding default settings earlier in the command line. |
| 1223 master_ninja.rule( | 1224 master_ninja.rule( |
| 1224 'link', | 1225 'link', |
| 1225 description='LINK $out', | 1226 description='LINK $out', |
| 1226 command=('$ld /nologo /OUT:$out /PDB:$out.pdb $in $libs $ldflags')) | 1227 command=('python gyp-win-tool link-suppress-import-lib-name ' |
| 1228 '$ld /nologo /OUT:$out /PDB:$out.pdb $in $libs $ldflags')) | |
| 1227 else: | 1229 else: |
| 1228 master_ninja.rule( | 1230 master_ninja.rule( |
| 1229 'objc', | 1231 'objc', |
| 1230 description='OBJC $out', | 1232 description='OBJC $out', |
| 1231 command=('$cc -MMD -MF $out.d $defines $includes $cflags $cflags_objc ' | 1233 command=('$cc -MMD -MF $out.d $defines $includes $cflags $cflags_objc ' |
| 1232 '$cflags_pch_objc -c $in -o $out'), | 1234 '$cflags_pch_objc -c $in -o $out'), |
| 1233 depfile='$out.d') | 1235 depfile='$out.d') |
| 1234 master_ninja.rule( | 1236 master_ninja.rule( |
| 1235 'objcxx', | 1237 'objcxx', |
| 1236 description='OBJCXX $out', | 1238 description='OBJCXX $out', |
| (...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1349 | 1351 |
| 1350 user_config = params.get('generator_flags', {}).get('config', None) | 1352 user_config = params.get('generator_flags', {}).get('config', None) |
| 1351 if user_config: | 1353 if user_config: |
| 1352 GenerateOutputForConfig(target_list, target_dicts, data, params, | 1354 GenerateOutputForConfig(target_list, target_dicts, data, params, |
| 1353 user_config) | 1355 user_config) |
| 1354 else: | 1356 else: |
| 1355 config_names = target_dicts[target_list[0]]['configurations'].keys() | 1357 config_names = target_dicts[target_list[0]]['configurations'].keys() |
| 1356 for config_name in config_names: | 1358 for config_name in config_names: |
| 1357 GenerateOutputForConfig(target_list, target_dicts, data, params, | 1359 GenerateOutputForConfig(target_list, target_dicts, data, params, |
| 1358 config_name) | 1360 config_name) |
| OLD | NEW |