Chromium Code Reviews| Index: chrome/chrome_syzygy.gyp |
| diff --git a/chrome/chrome_syzygy.gyp b/chrome/chrome_syzygy.gyp |
| index c2c81a1588dc211a72a6d858cc9c1aeb173eb360..03393543de2fe83a9d3ebdc40d5d90b8ad4f556d 100644 |
| --- a/chrome/chrome_syzygy.gyp |
| +++ b/chrome/chrome_syzygy.gyp |
| @@ -3,6 +3,14 @@ |
| # found in the LICENSE file. |
| { |
| 'conditions': [ |
| + ['syzyasan==1 and syzygy_optimize==1', { |
| + 'targets': [ |
| + { |
| + 'target_name': 'syzygy_optimize_and_syzyasan_are_not_compatible', |
| + 'type': 'must_not_use_syzygy_optimize_and_syzyasan_together', |
|
chrisha
2014/03/17 18:52:13
A comment as to what this is for, and why it works
Sébastien Marchand
2014/03/18 15:21:27
Done.
|
| + }, |
| + ], |
| + }], |
| ['syzyasan==1', { |
| 'variables': { |
| 'dest_dir': '<(PRODUCT_DIR)/syzygy', |
| @@ -32,62 +40,69 @@ |
| ], |
| }], |
| ['OS=="win" and fastbuild==0', { |
| - 'variables': { |
| - 'dll_name': 'chrome', |
| - }, |
| - 'targets': [ |
| - { |
| - 'target_name': 'chrome_dll_syzygy', |
| - 'type': 'none', |
| - 'sources' : [], |
| - 'includes': [ |
| - 'chrome_syzygy.gypi', |
| - ], |
| - }, |
| - ], |
| - }], |
| - # Note, not else. |
| - ['OS=="win" and fastbuild==0 and chrome_multiple_dll==1 and ' |
| - '(syzyasan!=1 or buildtype!="Official")', { |
| - 'variables': { |
| - 'dll_name': 'chrome_child', |
| - }, |
| - 'targets': [ |
| - { |
| - 'target_name': 'chrome_child_dll_syzygy', |
| - 'type': 'none', |
| - 'sources' : [], |
| - 'includes': [ |
| - 'chrome_syzygy.gypi', |
| - ], |
| - }, |
| - ], |
| - }, { |
| 'conditions': [ |
| - ['OS=="win" and fastbuild==0 and chrome_multiple_dll==1 and ' |
| - 'syzyasan==1 and buildtype=="Official"', { |
| + ['syzygy_optimize==1 or syzyasan==1', { |
| + 'variables': { |
| + 'dll_name': 'chrome', |
| + }, |
| 'targets': [ |
| - { |
| - 'target_name': 'chrome_child_dll_syzygy', |
| - 'type': 'none', |
| - 'inputs': [ |
| - '<(PRODUCT_DIR)/chrome_child.dll', |
| - '<(PRODUCT_DIR)/chrome_child.dll.pdb', |
| - ], |
| - 'outputs': [ |
| - '<(PRODUCT_DIR)/syzygy/chrome_child.dll', |
| - '<(PRODUCT_DIR)/syzygy/chrome_child.dll.pdb', |
| - ], |
| - 'copies': [ |
| + { |
| + 'target_name': 'chrome_dll_syzygy', |
| + 'type': 'none', |
| + 'sources' : [], |
| + 'includes': [ |
| + 'chrome_syzygy.gypi', |
| + ], |
| + }, |
| + ], |
| + }], |
| + ['chrome_multiple_dll==1', { |
| + 'conditions': [ |
| + # Prevent chrome_child.dll from being syzyasan-instrumented for the |
| + # official builds. |
| + ['(syzyasan!=1 or buildtype!="Official") and ' |
| + '(syzygy_optimize==1 or syzyasan==1)', { |
| + 'variables': { |
| + 'dll_name': 'chrome_child', |
| + }, |
| + 'targets': [ |
| + { |
| + 'target_name': 'chrome_child_dll_syzygy', |
| + 'type': 'none', |
| + 'sources' : [], |
| + 'includes': [ |
| + 'chrome_syzygy.gypi', |
| + ], |
| + }, |
| + ], |
| + }], |
| + # For the official SyzyASan builds just copy chrome_child.dll to the |
| + # Syzygy directory. |
| + ['syzyasan==1 and buildtype=="Official"', { |
| + 'targets': [ |
| { |
| - 'destination': '<(PRODUCT_DIR)/syzygy', |
| - 'files': [ |
| + 'target_name': 'chrome_child_dll_syzygy', |
| + 'type': 'none', |
| + 'inputs': [ |
| '<(PRODUCT_DIR)/chrome_child.dll', |
| '<(PRODUCT_DIR)/chrome_child.dll.pdb', |
| ], |
| - }, |
| - ], |
| - }], |
| + 'outputs': [ |
| + '<(PRODUCT_DIR)/syzygy/chrome_child.dll', |
| + '<(PRODUCT_DIR)/syzygy/chrome_child.dll.pdb', |
| + ], |
| + 'copies': [ |
| + { |
| + 'destination': '<(PRODUCT_DIR)/syzygy', |
| + 'files': [ |
| + '<(PRODUCT_DIR)/chrome_child.dll', |
| + '<(PRODUCT_DIR)/chrome_child.dll.pdb', |
| + ], |
| + }, |
| + ], |
| + }], |
| + }], |
| + ], |
| }], |
| ], |
| }], |