| 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 1322 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1333 '-Wl,--start-group $in -Wl,--end-group $libs')) | 1333 '-Wl,--start-group $in -Wl,--end-group $libs')) |
| 1334 master_ninja.rule( | 1334 master_ninja.rule( |
| 1335 'link', | 1335 'link', |
| 1336 description='LINK $out', | 1336 description='LINK $out', |
| 1337 command=('$ld $ldflags -o $out -Wl,-rpath=\$$ORIGIN/lib ' | 1337 command=('$ld $ldflags -o $out -Wl,-rpath=\$$ORIGIN/lib ' |
| 1338 '-Wl,--start-group $in -Wl,--end-group $libs')) | 1338 '-Wl,--start-group $in -Wl,--end-group $libs')) |
| 1339 elif flavor == 'win': | 1339 elif flavor == 'win': |
| 1340 master_ninja.rule( | 1340 master_ninja.rule( |
| 1341 'alink', | 1341 'alink', |
| 1342 description='LIB $out', | 1342 description='LIB $out', |
| 1343 command='$ar /nologo /ignore:4221 /OUT:$out @$out.rsp $libflags', | 1343 command='$ar /nologo /ignore:4221 /OUT:$out @$out.rsp', |
| 1344 rspfile='$out.rsp', | 1344 rspfile='$out.rsp', |
| 1345 rspfile_content='$in') | 1345 rspfile_content='$in $libflags') |
| 1346 dlldesc = 'LINK(DLL) $dll' | 1346 dlldesc = 'LINK(DLL) $dll' |
| 1347 dllcmd = ('python gyp-win-tool link-wrapper ' | 1347 dllcmd = ('python gyp-win-tool link-wrapper ' |
| 1348 '$ld /nologo /IMPLIB:$implib /DLL /OUT:$dll ' | 1348 '$ld /nologo /IMPLIB:$implib /DLL /OUT:$dll ' |
| 1349 '/PDB:$dll.pdb $libs @$dll.rsp $ldflags') | 1349 '/PDB:$dll.pdb @$dll.rsp') |
| 1350 master_ninja.rule('solink', description=dlldesc, command=dllcmd, | 1350 master_ninja.rule('solink', description=dlldesc, command=dllcmd, |
| 1351 rspfile='$dll.rsp', rspfile_content='$in', | 1351 rspfile='$dll.rsp', |
| 1352 rspfile_content='$libs $in $ldflags', |
| 1352 restat=True) | 1353 restat=True) |
| 1353 master_ninja.rule('solink_module', description=dlldesc, command=dllcmd, | 1354 master_ninja.rule('solink_module', description=dlldesc, command=dllcmd, |
| 1354 rspfile='$dll.rsp', rspfile_content='$in', | 1355 rspfile='$dll.rsp', |
| 1356 rspfile_content='$libs $in $ldflags', |
| 1355 restat=True) | 1357 restat=True) |
| 1356 # Note that ldflags goes at the end so that it has the option of | 1358 # Note that ldflags goes at the end so that it has the option of |
| 1357 # overriding default settings earlier in the command line. | 1359 # overriding default settings earlier in the command line. |
| 1358 master_ninja.rule( | 1360 master_ninja.rule( |
| 1359 'link', | 1361 'link', |
| 1360 description='LINK $out', | 1362 description='LINK $out', |
| 1361 command=('python gyp-win-tool link-wrapper ' | 1363 command=('python gyp-win-tool link-wrapper ' |
| 1362 '$ld /nologo /OUT:$out /PDB:$out.pdb $in $libs $ldflags')) | 1364 '$ld /nologo /OUT:$out /PDB:$out.pdb @$out.rsp'), |
| 1365 rspfile='$out.rsp', |
| 1366 rspfile_content='$in $libs $ldflags') |
| 1363 else: | 1367 else: |
| 1364 master_ninja.rule( | 1368 master_ninja.rule( |
| 1365 'objc', | 1369 'objc', |
| 1366 description='OBJC $out', | 1370 description='OBJC $out', |
| 1367 command=('$cc -MMD -MF $out.d $defines $includes $cflags $cflags_objc ' | 1371 command=('$cc -MMD -MF $out.d $defines $includes $cflags $cflags_objc ' |
| 1368 '$cflags_pch_objc -c $in -o $out'), | 1372 '$cflags_pch_objc -c $in -o $out'), |
| 1369 depfile='$out.d') | 1373 depfile='$out.d') |
| 1370 master_ninja.rule( | 1374 master_ninja.rule( |
| 1371 'objcxx', | 1375 'objcxx', |
| 1372 description='OBJCXX $out', | 1376 description='OBJCXX $out', |
| (...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1483 | 1487 |
| 1484 user_config = params.get('generator_flags', {}).get('config', None) | 1488 user_config = params.get('generator_flags', {}).get('config', None) |
| 1485 if user_config: | 1489 if user_config: |
| 1486 GenerateOutputForConfig(target_list, target_dicts, data, params, | 1490 GenerateOutputForConfig(target_list, target_dicts, data, params, |
| 1487 user_config) | 1491 user_config) |
| 1488 else: | 1492 else: |
| 1489 config_names = target_dicts[target_list[0]]['configurations'].keys() | 1493 config_names = target_dicts[target_list[0]]['configurations'].keys() |
| 1490 for config_name in config_names: | 1494 for config_name in config_names: |
| 1491 GenerateOutputForConfig(target_list, target_dicts, data, params, | 1495 GenerateOutputForConfig(target_list, target_dicts, data, params, |
| 1492 config_name) | 1496 config_name) |
| OLD | NEW |