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

Side by Side Diff: tools/gyp/v8.gyp

Issue 1016603004: Re-work the 'external snapshot' related build rules. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Formatting & remove switching the default. Created 5 years, 8 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
« no previous file with comments | « test/unittests/unittests.gyp ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2012 the V8 project authors. All rights reserved. 1 # Copyright 2012 the V8 project authors. All rights reserved.
2 # Redistribution and use in source and binary forms, with or without 2 # Redistribution and use in source and binary forms, with or without
3 # modification, are permitted provided that the following conditions are 3 # modification, are permitted provided that the following conditions are
4 # met: 4 # met:
5 # 5 #
6 # * Redistributions of source code must retain the above copyright 6 # * Redistributions of source code must retain the above copyright
7 # notice, this list of conditions and the following disclaimer. 7 # notice, this list of conditions and the following disclaimer.
8 # * Redistributions in binary form must reproduce the above 8 # * Redistributions in binary form must reproduce the above
9 # copyright notice, this list of conditions and the following 9 # copyright notice, this list of conditions and the following
10 # disclaimer in the documentation and/or other materials provided 10 # disclaimer in the documentation and/or other materials provided
(...skipping 20 matching lines...) Expand all
31 'v8_code': 1, 31 'v8_code': 1,
32 'v8_random_seed%': 314159265, 32 'v8_random_seed%': 314159265,
33 'embed_script%': "", 33 'embed_script%': "",
34 'mksnapshot_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)mksnapshot<(EXECUTABL E_SUFFIX)', 34 'mksnapshot_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)mksnapshot<(EXECUTABL E_SUFFIX)',
35 }, 35 },
36 'includes': ['../../build/toolchain.gypi', '../../build/features.gypi'], 36 'includes': ['../../build/toolchain.gypi', '../../build/features.gypi'],
37 'targets': [ 37 'targets': [
38 { 38 {
39 'target_name': 'v8', 39 'target_name': 'v8',
40 'dependencies_traverse': 1, 40 'dependencies_traverse': 1,
41 'dependencies': ['v8_maybe_snapshot'],
41 'conditions': [ 42 'conditions': [
42 ['want_separate_host_toolset==1', { 43 ['want_separate_host_toolset==1', {
43 'toolsets': ['host', 'target'], 44 'toolsets': ['host', 'target'],
44 }, { 45 }, {
45 'toolsets': ['target'], 46 'toolsets': ['target'],
46 }], 47 }],
47
48 ['v8_use_snapshot=="true" and v8_use_external_startup_data==0', {
49 # The dependency on v8_base should come from a transitive
50 # dependency however the Android toolchain requires libv8_base.a
51 # to appear before libv8_snapshot.a so it's listed explicitly.
52 'dependencies': ['v8_base', 'v8_snapshot'],
53 }],
54 ['v8_use_snapshot!="true" and v8_use_external_startup_data==0', {
55 # The dependency on v8_base should come from a transitive
56 # dependency however the Android toolchain requires libv8_base.a
57 # to appear before libv8_snapshot.a so it's listed explicitly.
58 'dependencies': ['v8_base', 'v8_nosnapshot'],
59 }],
60 ['v8_use_external_startup_data==1 and want_separate_host_toolset==1', {
61 'dependencies': ['v8_base', 'v8_external_snapshot'],
62 'target_conditions': [
63 ['_toolset=="host"', {
64 'inputs': [
65 '<(PRODUCT_DIR)/snapshot_blob_host.bin',
66 ],
67 }, {
68 'inputs': [
69 '<(PRODUCT_DIR)/snapshot_blob.bin',
70 ],
71 }],
72 ],
73 }],
74 ['v8_use_external_startup_data==1 and want_separate_host_toolset==0', {
75 'dependencies': ['v8_base', 'v8_external_snapshot'],
76 'inputs': [ '<(PRODUCT_DIR)/snapshot_blob.bin', ],
77 }],
78 ['component=="shared_library"', { 48 ['component=="shared_library"', {
79 'type': '<(component)', 49 'type': '<(component)',
80 'sources': [ 50 'sources': [
81 # Note: on non-Windows we still build this file so that gyp 51 # Note: on non-Windows we still build this file so that gyp
82 # has some sources to link into the component. 52 # has some sources to link into the component.
83 '../../src/v8dll-main.cc', 53 '../../src/v8dll-main.cc',
84 ], 54 ],
85 'include_dirs': [ 55 'include_dirs': [
86 '../..', 56 '../..',
87 ], 57 ],
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
120 'type': 'none', 90 'type': 'none',
121 }], 91 }],
122 ], 92 ],
123 'direct_dependent_settings': { 93 'direct_dependent_settings': {
124 'include_dirs': [ 94 'include_dirs': [
125 '../../include', 95 '../../include',
126 ], 96 ],
127 }, 97 },
128 }, 98 },
129 { 99 {
100 # This rule delegates to either v8_snapshot, v8_nosnapshot, or
101 # v8_external_snapshot, depending on the current variables.
102 # The intention is to make the 'calling' rules a bit simpler.
103 'target_name': 'v8_maybe_snapshot',
104 'type': 'none',
105 'conditions': [
106 ['v8_use_snapshot!="true"', {
107 # The dependency on v8_base should come from a transitive
108 # dependency however the Android toolchain requires libv8_base.a
109 # to appear before libv8_snapshot.a so it's listed explicitly.
110 'dependencies': ['v8_base', 'v8_nosnapshot'],
111 }],
112 ['v8_use_snapshot=="true" and v8_use_external_startup_data==0', {
113 # The dependency on v8_base should come from a transitive
114 # dependency however the Android toolchain requires libv8_base.a
115 # to appear before libv8_snapshot.a so it's listed explicitly.
116 'dependencies': ['v8_base', 'v8_snapshot'],
117 }],
118 ['v8_use_snapshot=="true" and v8_use_external_startup_data==1 and want_s eparate_host_toolset==0', {
119 'dependencies': ['v8_base', 'v8_external_snapshot'],
120 'inputs': [ '<(PRODUCT_DIR)/snapshot_blob.bin', ],
121 }],
122 ['v8_use_snapshot=="true" and v8_use_external_startup_data==1 and want_s eparate_host_toolset==1', {
123 'dependencies': ['v8_base', 'v8_external_snapshot'],
124 'target_conditions': [
125 ['_toolset=="host"', {
126 'inputs': [
127 '<(PRODUCT_DIR)/snapshot_blob_host.bin',
128 ],
129 }, {
130 'inputs': [
131 '<(PRODUCT_DIR)/snapshot_blob.bin',
132 ],
133 }],
134 ],
135 }],
136 ['want_separate_host_toolset==1', {
137 'toolsets': ['host', 'target'],
138 }, {
139 'toolsets': ['target'],
140 }],
141 ]
142 },
143 {
130 'target_name': 'v8_snapshot', 144 'target_name': 'v8_snapshot',
131 'type': 'static_library', 145 'type': 'static_library',
132 'conditions': [ 146 'conditions': [
133 ['want_separate_host_toolset==1', { 147 ['want_separate_host_toolset==1', {
134 'toolsets': ['host', 'target'], 148 'toolsets': ['host', 'target'],
135 'dependencies': [ 149 'dependencies': [
136 'mksnapshot#host', 150 'mksnapshot#host',
137 'js2c#host', 151 'js2c#host',
138 ], 152 ],
139 }, { 153 }, {
(...skipping 1688 matching lines...) Expand 10 before | Expand all | Expand 10 after
1828 }], 1842 }],
1829 ['want_separate_host_toolset==1', { 1843 ['want_separate_host_toolset==1', {
1830 'toolsets': ['host'], 1844 'toolsets': ['host'],
1831 }, { 1845 }, {
1832 'toolsets': ['target'], 1846 'toolsets': ['target'],
1833 }], 1847 }],
1834 ], 1848 ],
1835 }, 1849 },
1836 ], 1850 ],
1837 } 1851 }
OLDNEW
« no previous file with comments | « test/unittests/unittests.gyp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698