Convert activity_log from sql::ErrorDelegate to callback.
[chromium-blink-merge.git] / chrome / chrome_syzygy.gyp
blob1629f3c62389308a89953a94a7a314df1745547b
1 # Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
5   'conditions': [
6     ['OS=="win" and fastbuild==0 and chrome_split_dll==0', {
7       # Reorder or instrument the initial chrome DLL executable, placing the
8       # optimized output and corresponding PDB file into the "syzygy"
9       # subdirectory.
10       # This target won't build in fastbuild, since there are no PDBs.
11       'targets': [
12         {
13           'target_name': 'chrome_dll_syzygy',
14           'type': 'none',
15           'sources' : [],
16           'dependencies': [
17             '<(DEPTH)/chrome/chrome.gyp:chrome_dll',
18           ],
19           'variables': {
20             'dest_dir': '<(PRODUCT_DIR)/syzygy',
21           },
22           'conditions': [
23             ['asan!=1', {
24               # Reorder chrome DLL executable.
25               # If there's a matching chrome.dll-ordering.json file present in
26               # the output directory, chrome.dll will be ordered according to
27               # that, otherwise it will be randomized.
28               'actions': [
29                 {
30                   'action_name': 'Reorder Chrome with Syzygy',
31                   'msvs_cygwin_shell': 0,
32                   'inputs': [
33                     '<(PRODUCT_DIR)/chrome.dll',
34                     '<(PRODUCT_DIR)/chrome.dll.pdb',
35                   ],
36                   'outputs': [
37                     '<(dest_dir)/chrome.dll',
38                     '<(dest_dir)/chrome.dll.pdb',
39                   ],
40                   'action': [
41                     'python',
42                     '<(DEPTH)/chrome/tools/build/win/syzygy_reorder.py',
43                     '--input_executable', '<(PRODUCT_DIR)/chrome.dll',
44                     '--input_symbol', '<(PRODUCT_DIR)/chrome.dll.pdb',
45                     '--destination_dir', '<(dest_dir)',
46                   ],
47                 },
48               ],
49             }, {
50               # Instrument chrome DLL executable with SyzyAsan.
51               'actions': [
52                 {
53                   'action_name': 'Instrument Chrome with SyzyAsan',
54                   'msvs_cygwin_shell': 0,
55                   'inputs': [
56                     '<(PRODUCT_DIR)/chrome.dll',
57                     '<(PRODUCT_DIR)/chrome.dll.pdb',
58                     '<(DEPTH)/chrome/tools/build/win/win-syzyasan-filter.txt',
59                   ],
60                   'outputs': [
61                     '<(dest_dir)/chrome.dll',
62                     '<(dest_dir)/chrome.dll.pdb',
63                     '<(dest_dir)/asan_rtl.dll',
64                     '<(dest_dir)/asan_rtl.dll.pdb',
65                     '<(dest_dir)/win-syzyasan-filter.txt.json',
66                   ],
67                   'action': [
68                     'python',
69                     '<(DEPTH)/chrome/tools/build/win/syzygy_instrument.py',
70                     '--mode', 'asan',
71                     '--input_executable', '<(PRODUCT_DIR)/chrome.dll',
72                     '--input_symbol', '<(PRODUCT_DIR)/chrome.dll.pdb',
73                     '--filter',
74                     '<(DEPTH)/chrome/tools/build/win/win-syzyasan-filter.txt',
75                     '--destination_dir', '<(dest_dir)',
76                   ],
77                 },
78               ],
79             }],
80           ],
81         },
82       ],
83     }],
84   ],