Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(100)

Side by Side Diff: chrome/chrome_syzygy.gyp

Issue 199633004: Put the syzygy targets behind a 'syzygy_optimize' flag. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Address Chris' comment. Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 # Copyright (c) 2011 The Chromium Authors. All rights reserved. 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 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 'conditions': [ 5 'conditions': [
6 ['syzyasan==1 and syzygy_optimize==1', {
scottmg 2014/03/18 17:21:13 I don't think this block is necessary, we have man
Sébastien Marchand 2014/03/18 18:25:00 Removed, but it'll be nice to have some assertions
7 # Prevents from setting both 'syzyasan' and 'syzygy_optimize' by adding a
8 # target with an invalid type, this will trigger an error in gyp.
9 'targets': [
10 {
11 'target_name': 'syzygy_optimize_and_syzyasan_are_not_compatible',
12 'type': 'must_not_use_syzygy_optimize_and_syzyasan_together',
13 },
14 ],
15 }],
6 ['syzyasan==1', { 16 ['syzyasan==1', {
7 'variables': { 17 'variables': {
8 'dest_dir': '<(PRODUCT_DIR)/syzygy', 18 'dest_dir': '<(PRODUCT_DIR)/syzygy',
9 'syzygy_exe_dir': '<(DEPTH)/third_party/syzygy/binaries/exe', 19 'syzygy_exe_dir': '<(DEPTH)/third_party/syzygy/binaries/exe',
10 }, 20 },
11 # Copy the SyzyASan runtime and logger to the syzygy directory. 21 # Copy the SyzyASan runtime and logger to the syzygy directory.
12 'targets': [ 22 'targets': [
13 { 23 {
14 'target_name': 'copy_syzyasan_binaries', 24 'target_name': 'copy_syzyasan_binaries',
15 'type': 'none', 25 'type': 'none',
16 'outputs': [ 26 'outputs': [
17 '<(dest_dir)/agent_logger.exe', 27 '<(dest_dir)/agent_logger.exe',
18 '<(dest_dir)/syzyasan_rtl.dll', 28 '<(dest_dir)/syzyasan_rtl.dll',
19 '<(dest_dir)/syzyasan_rtl.dll.pdb', 29 '<(dest_dir)/syzyasan_rtl.dll.pdb',
20 ], 30 ],
21 'copies': [ 31 'copies': [
22 { 32 {
23 'destination': '<(dest_dir)', 33 'destination': '<(dest_dir)',
24 'files': [ 34 'files': [
25 '<(syzygy_exe_dir)/agent_logger.exe', 35 '<(syzygy_exe_dir)/agent_logger.exe',
26 '<(syzygy_exe_dir)/syzyasan_rtl.dll', 36 '<(syzygy_exe_dir)/syzyasan_rtl.dll',
27 '<(syzygy_exe_dir)/syzyasan_rtl.dll.pdb', 37 '<(syzygy_exe_dir)/syzyasan_rtl.dll.pdb',
28 ], 38 ],
29 }, 39 },
30 ], 40 ],
31 }, 41 },
32 ], 42 ],
33 }], 43 }],
34 ['OS=="win" and fastbuild==0', { 44 ['OS=="win" and fastbuild==0', {
35 'variables': { 45 'conditions': [
36 'dll_name': 'chrome', 46 ['syzygy_optimize==1 or syzyasan==1', {
37 }, 47 'variables': {
38 'targets': [ 48 'dll_name': 'chrome',
39 { 49 },
40 'target_name': 'chrome_dll_syzygy', 50 'targets': [
41 'type': 'none', 51 {
42 'sources' : [], 52 'target_name': 'chrome_dll_syzygy',
43 'includes': [ 53 'type': 'none',
44 'chrome_syzygy.gypi', 54 'sources' : [],
55 'includes': [
56 'chrome_syzygy.gypi',
57 ],
58 },
45 ], 59 ],
46 }, 60 }],
47 ], 61 ['chrome_multiple_dll==1', {
48 }], 62 'conditions': [
49 # Note, not else. 63 # Prevent chrome_child.dll from being syzyasan-instrumented for the
50 ['OS=="win" and fastbuild==0 and chrome_multiple_dll==1 and ' 64 # official builds.
51 '(syzyasan!=1 or buildtype!="Official")', { 65 ['(syzyasan!=1 or buildtype!="Official") and '
52 'variables': { 66 '(syzygy_optimize==1 or syzyasan==1)', {
scottmg 2014/03/18 17:21:13 Wow, I stared at that for a while. I think it's ok
Sébastien Marchand 2014/03/18 18:25:00 Yeah... It's pretty complex, I've added the truth
53 'dll_name': 'chrome_child', 67 'variables': {
54 }, 68 'dll_name': 'chrome_child',
55 'targets': [ 69 },
56 { 70 'targets': [
57 'target_name': 'chrome_child_dll_syzygy', 71 {
58 'type': 'none', 72 'target_name': 'chrome_child_dll_syzygy',
59 'sources' : [], 73 'type': 'none',
60 'includes': [ 74 'sources' : [],
61 'chrome_syzygy.gypi', 75 'includes': [
62 ], 76 'chrome_syzygy.gypi',
63 }, 77 ],
64 ], 78 },
65 }, { 79 ],
66 'conditions': [ 80 }],
67 ['OS=="win" and fastbuild==0 and chrome_multiple_dll==1 and ' 81 # For the official SyzyASan builds just copy chrome_child.dll to the
68 'syzyasan==1 and buildtype=="Official"', { 82 # Syzygy directory.
69 'targets': [ 83 ['syzyasan==1 and buildtype=="Official"', {
70 { 84 'targets': [
71 'target_name': 'chrome_child_dll_syzygy',
72 'type': 'none',
73 'inputs': [
74 '<(PRODUCT_DIR)/chrome_child.dll',
75 '<(PRODUCT_DIR)/chrome_child.dll.pdb',
76 ],
77 'outputs': [
78 '<(PRODUCT_DIR)/syzygy/chrome_child.dll',
79 '<(PRODUCT_DIR)/syzygy/chrome_child.dll.pdb',
80 ],
81 'copies': [
82 { 85 {
83 'destination': '<(PRODUCT_DIR)/syzygy', 86 'target_name': 'chrome_child_dll_syzygy',
84 'files': [ 87 'type': 'none',
88 'inputs': [
85 '<(PRODUCT_DIR)/chrome_child.dll', 89 '<(PRODUCT_DIR)/chrome_child.dll',
86 '<(PRODUCT_DIR)/chrome_child.dll.pdb', 90 '<(PRODUCT_DIR)/chrome_child.dll.pdb',
87 ], 91 ],
88 }, 92 'outputs': [
89 ], 93 '<(PRODUCT_DIR)/syzygy/chrome_child.dll',
90 }], 94 '<(PRODUCT_DIR)/syzygy/chrome_child.dll.pdb',
95 ],
96 'copies': [
97 {
98 'destination': '<(PRODUCT_DIR)/syzygy',
99 'files': [
100 '<(PRODUCT_DIR)/chrome_child.dll',
101 '<(PRODUCT_DIR)/chrome_child.dll.pdb',
102 ],
103 },
104 ],
105 }],
106 }],
107 ],
91 }], 108 }],
92 ], 109 ],
93 }], 110 }],
94 ], 111 ],
95 } 112 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698