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', |
+ ], |
+ }, |
+ ], |
+ }], |
+ }], |
+ ], |
}], |
], |
}], |