blob: 37856cb3be72fc7d7c4d139be7cf74d4409cc166 [file] [log] [blame]
rossberg@chromium.orgfab14982012-01-05 15:02:15 +00001# Copyright 2012 the V8 project authors. All rights reserved.
ager@chromium.org3a37e9b2009-04-27 09:26:21 +00002# Redistribution and use in source and binary forms, with or without
3# modification, are permitted provided that the following conditions are
4# met:
sgjesse@chromium.org755c5b12009-05-29 11:04:38 +00005#
ager@chromium.org3a37e9b2009-04-27 09:26:21 +00006# * Redistributions of source code must retain the above copyright
7# notice, this list of conditions and the following disclaimer.
8# * Redistributions in binary form must reproduce the above
9# copyright notice, this list of conditions and the following
10# disclaimer in the documentation and/or other materials provided
11# with the distribution.
12# * Neither the name of Google Inc. nor the names of its
13# contributors may be used to endorse or promote products derived
14# from this software without specific prior written permission.
sgjesse@chromium.org755c5b12009-05-29 11:04:38 +000015#
ager@chromium.org3a37e9b2009-04-27 09:26:21 +000016# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
19# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
28{
ricow@chromium.org4668a2c2011-08-29 10:41:00 +000029 'includes': ['../../build/common.gypi'],
lrn@chromium.org5d00b602011-01-05 09:51:43 +000030 'conditions': [
31 ['use_system_v8==0', {
lrn@chromium.org5d00b602011-01-05 09:51:43 +000032 'targets': [
kasperl@chromium.orgd628ef52009-07-09 11:16:01 +000033 {
lrn@chromium.org5d00b602011-01-05 09:51:43 +000034 'target_name': 'v8',
jkummerow@chromium.org1145ef82012-02-02 16:21:15 +000035 'dependencies_traverse': 1,
lrn@chromium.org5d00b602011-01-05 09:51:43 +000036 'conditions': [
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +000037 ['want_separate_host_toolset==1', {
38 'toolsets': ['host', 'target'],
39 }, {
40 'toolsets': ['target'],
41 }],
lrn@chromium.org5d00b602011-01-05 09:51:43 +000042 ['v8_use_snapshot=="true"', {
yangguo@chromium.org154ff992012-03-13 08:09:54 +000043 # The dependency on v8_base should come from a transitive
44 # dependency however the Android toolchain requires libv8_base.a
45 # to appear before libv8_snapshot.a so it's listed explicitly.
46 'dependencies': ['v8_base', 'v8_snapshot'],
lrn@chromium.org5d00b602011-01-05 09:51:43 +000047 },
48 {
yangguo@chromium.org154ff992012-03-13 08:09:54 +000049 # 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_nosnapshot'],
lrn@chromium.org5d00b602011-01-05 09:51:43 +000053 }],
fschneider@chromium.orgfb144a02011-05-04 12:43:48 +000054 ['component=="shared_library"', {
lrn@chromium.org5d00b602011-01-05 09:51:43 +000055 'type': '<(component)',
56 'sources': [
fschneider@chromium.orgfb144a02011-05-04 12:43:48 +000057 # Note: on non-Windows we still build this file so that gyp
58 # has some sources to link into the component.
lrn@chromium.org5d00b602011-01-05 09:51:43 +000059 '../../src/v8dll-main.cc',
60 ],
ulan@chromium.orgd6899c32012-05-18 14:12:25 +000061 'defines': [
62 'V8_SHARED',
63 'BUILDING_V8_SHARED',
64 ],
65 'direct_dependent_settings': {
66 'defines': [
67 'V8_SHARED',
68 'USING_V8_SHARED',
69 ],
70 },
fschneider@chromium.orgfb144a02011-05-04 12:43:48 +000071 'conditions': [
mvstanton@chromium.orge4ac3ef2012-11-12 14:53:34 +000072 ['OS=="android"', {
73 'libraries': [
74 '-llog',
75 ],
76 'include_dirs': [
77 'src/common/android/include',
78 ],
79 }],
fschneider@chromium.org7d10be52012-04-10 12:30:14 +000080 ['OS=="mac"', {
81 'xcode_settings': {
82 'OTHER_LDFLAGS': ['-dynamiclib', '-all_load']
83 },
84 }],
ricow@chromium.org55ee8072011-09-08 16:33:10 +000085 ['soname_version!=""', {
jkummerow@chromium.orgc3b37122011-11-07 10:14:12 +000086 'product_extension': 'so.<(soname_version)',
ricow@chromium.org55ee8072011-09-08 16:33:10 +000087 }],
lrn@chromium.org5d00b602011-01-05 09:51:43 +000088 ],
lrn@chromium.org5d00b602011-01-05 09:51:43 +000089 },
90 {
91 'type': 'none',
92 }],
kmillikin@chromium.org69ea3962010-07-05 11:01:40 +000093 ],
fschneider@chromium.orged78ffd2010-07-21 11:05:19 +000094 'direct_dependent_settings': {
lrn@chromium.org5d00b602011-01-05 09:51:43 +000095 'include_dirs': [
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +000096 '../../include',
fschneider@chromium.orged78ffd2010-07-21 11:05:19 +000097 ],
98 },
kmillikin@chromium.org69ea3962010-07-05 11:01:40 +000099 },
100 {
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000101 'target_name': 'v8_snapshot',
yangguo@chromium.org28381b42013-01-21 14:39:38 +0000102 'type': 'static_library',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000103 'conditions': [
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000104 ['want_separate_host_toolset==1', {
105 'toolsets': ['host', 'target'],
106 'dependencies': ['mksnapshot#host', 'js2c#host'],
107 }, {
108 'toolsets': ['target'],
109 'dependencies': ['mksnapshot', 'js2c'],
110 }],
fschneider@chromium.orgfb144a02011-05-04 12:43:48 +0000111 ['component=="shared_library"', {
ulan@chromium.orgd6899c32012-05-18 14:12:25 +0000112 'defines': [
113 'V8_SHARED',
114 'BUILDING_V8_SHARED',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000115 ],
ulan@chromium.orgd6899c32012-05-18 14:12:25 +0000116 'direct_dependent_settings': {
117 'defines': [
118 'V8_SHARED',
119 'USING_V8_SHARED',
120 ],
121 },
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000122 }],
123 ],
124 'dependencies': [
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000125 'v8_base',
126 ],
127 'include_dirs+': [
128 '../../src',
129 ],
130 'sources': [
danno@chromium.org160a7b02011-04-18 15:51:38 +0000131 '<(SHARED_INTERMEDIATE_DIR)/libraries.cc',
132 '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000133 '<(INTERMEDIATE_DIR)/snapshot.cc',
134 ],
135 'actions': [
136 {
137 'action_name': 'run_mksnapshot',
138 'inputs': [
139 '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)mksnapshot<(EXECUTABLE_SUFFIX)',
140 ],
141 'outputs': [
142 '<(INTERMEDIATE_DIR)/snapshot.cc',
143 ],
danno@chromium.org40cb8782011-05-25 07:58:50 +0000144 'variables': {
rossberg@chromium.org28a37082011-08-22 11:03:23 +0000145 'mksnapshot_flags': [
146 '--log-snapshot-positions',
147 '--logfile', '<(INTERMEDIATE_DIR)/snapshot.log',
148 ],
danno@chromium.org40cb8782011-05-25 07:58:50 +0000149 },
150 'conditions': [
151 ['v8_target_arch=="arm"', {
152 # The following rules should be consistent with chromium's
153 # common.gypi and V8's runtime rule to ensure they all generate
154 # the same correct machine code. The following issue is about
155 # V8's runtime rule about vfpv3 and neon:
156 # http://code.google.com/p/v8/issues/detail?id=914
157 'conditions': [
158 ['armv7==1', {
159 # The ARM Architecture Manual mandates VFPv3 if NEON is
160 # available.
yangguo@chromium.org003650e2013-01-24 16:31:08 +0000161 # V8 does not use d16-d31 unless explicitly enabled
162 # (--enable_32dregs) or detected at run-time, so for vfpv3-d16,
163 # we can also enable vfp3 for the better performance.
danno@chromium.org40cb8782011-05-25 07:58:50 +0000164 'conditions': [
165 ['arm_neon!=1 and arm_fpu!="vfpv3" and arm_fpu!="vfpv3-d16"', {
166 'variables': {
167 'mksnapshot_flags': [
168 '--noenable_vfp3',
169 ],
170 },
171 }],
172 ],
173 },{ # else: armv7!=1
174 'variables': {
175 'mksnapshot_flags': [
176 '--noenable_armv7',
177 '--noenable_vfp3',
178 ],
179 },
180 }],
181 ],
182 }],
183 ],
184 'action': [
185 '<@(_inputs)',
186 '<@(mksnapshot_flags)',
187 '<@(_outputs)'
188 ],
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000189 },
190 ],
191 },
192 {
193 'target_name': 'v8_nosnapshot',
yangguo@chromium.org28381b42013-01-21 14:39:38 +0000194 'type': 'static_library',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000195 'dependencies': [
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000196 'v8_base',
197 ],
198 'include_dirs+': [
199 '../../src',
200 ],
201 'sources': [
202 '<(SHARED_INTERMEDIATE_DIR)/libraries.cc',
danno@chromium.org160a7b02011-04-18 15:51:38 +0000203 '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000204 '../../src/snapshot-empty.cc',
kasperl@chromium.orgd628ef52009-07-09 11:16:01 +0000205 ],
ager@chromium.orgc4c92722009-11-18 14:12:51 +0000206 'conditions': [
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000207 ['want_separate_host_toolset==1', {
208 'toolsets': ['host', 'target'],
209 'dependencies': ['js2c#host'],
210 }, {
211 'toolsets': ['target'],
212 'dependencies': ['js2c'],
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000213 }],
fschneider@chromium.orgfb144a02011-05-04 12:43:48 +0000214 ['component=="shared_library"', {
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000215 'defines': [
216 'BUILDING_V8_SHARED',
fschneider@chromium.orgfb144a02011-05-04 12:43:48 +0000217 'V8_SHARED',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000218 ],
219 }],
220 ]
221 },
222 {
223 'target_name': 'v8_base',
yangguo@chromium.org28381b42013-01-21 14:39:38 +0000224 'type': 'static_library',
ricow@chromium.org87120442011-12-22 07:19:34 +0000225 'variables': {
226 'optimize': 'max',
227 },
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000228 'include_dirs+': [
229 '../../src',
230 ],
231 'sources': [
232 '../../src/accessors.cc',
233 '../../src/accessors.h',
234 '../../src/allocation.cc',
235 '../../src/allocation.h',
236 '../../src/api.cc',
237 '../../src/api.h',
238 '../../src/apiutils.h',
239 '../../src/arguments.h',
240 '../../src/assembler.cc',
241 '../../src/assembler.h',
242 '../../src/ast.cc',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000243 '../../src/ast.h',
jkummerow@chromium.org1456e702012-03-30 08:38:13 +0000244 '../../src/atomicops.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000245 '../../src/atomicops_internals_x86_gcc.cc',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000246 '../../src/bignum-dtoa.cc',
247 '../../src/bignum-dtoa.h',
yangguo@chromium.org99aa4902012-07-06 16:21:55 +0000248 '../../src/bignum.cc',
249 '../../src/bignum.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000250 '../../src/bootstrapper.cc',
251 '../../src/bootstrapper.h',
252 '../../src/builtins.cc',
253 '../../src/builtins.h',
254 '../../src/bytecodes-irregexp.h',
255 '../../src/cached-powers.cc',
256 '../../src/cached-powers.h',
257 '../../src/char-predicates-inl.h',
258 '../../src/char-predicates.h',
259 '../../src/checks.cc',
260 '../../src/checks.h',
261 '../../src/circular-queue-inl.h',
262 '../../src/circular-queue.cc',
263 '../../src/circular-queue.h',
264 '../../src/code-stubs.cc',
265 '../../src/code-stubs.h',
yangguo@chromium.orga6bbcc82012-12-21 12:35:02 +0000266 '../../src/code-stubs-hydrogen.cc',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000267 '../../src/code.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000268 '../../src/codegen.cc',
269 '../../src/codegen.h',
270 '../../src/compilation-cache.cc',
271 '../../src/compilation-cache.h',
272 '../../src/compiler.cc',
273 '../../src/compiler.h',
274 '../../src/contexts.cc',
275 '../../src/contexts.h',
276 '../../src/conversions-inl.h',
277 '../../src/conversions.cc',
278 '../../src/conversions.h',
279 '../../src/counters.cc',
280 '../../src/counters.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000281 '../../src/cpu-profiler-inl.h',
282 '../../src/cpu-profiler.cc',
283 '../../src/cpu-profiler.h',
yangguo@chromium.org99aa4902012-07-06 16:21:55 +0000284 '../../src/cpu.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000285 '../../src/data-flow.cc',
286 '../../src/data-flow.h',
svenpanne@chromium.org4efbdb12012-03-12 08:18:42 +0000287 '../../src/date.cc',
288 '../../src/date.h',
yangguo@chromium.org99aa4902012-07-06 16:21:55 +0000289 '../../src/dateparser-inl.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000290 '../../src/dateparser.cc',
291 '../../src/dateparser.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000292 '../../src/debug-agent.cc',
293 '../../src/debug-agent.h',
yangguo@chromium.org99aa4902012-07-06 16:21:55 +0000294 '../../src/debug.cc',
295 '../../src/debug.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000296 '../../src/deoptimizer.cc',
297 '../../src/deoptimizer.h',
298 '../../src/disasm.h',
299 '../../src/disassembler.cc',
300 '../../src/disassembler.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000301 '../../src/diy-fp.cc',
302 '../../src/diy-fp.h',
303 '../../src/double.h',
ricow@chromium.org55ee8072011-09-08 16:33:10 +0000304 '../../src/dtoa.cc',
305 '../../src/dtoa.h',
svenpanne@chromium.org830d30c2012-05-29 13:20:14 +0000306 '../../src/elements-kind.cc',
307 '../../src/elements-kind.h',
yangguo@chromium.org99aa4902012-07-06 16:21:55 +0000308 '../../src/elements.cc',
309 '../../src/elements.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000310 '../../src/execution.cc',
311 '../../src/execution.h',
yangguo@chromium.org99aa4902012-07-06 16:21:55 +0000312 '../../src/extensions/externalize-string-extension.cc',
313 '../../src/extensions/externalize-string-extension.h',
314 '../../src/extensions/gc-extension.cc',
315 '../../src/extensions/gc-extension.h',
yangguo@chromium.org304cc332012-07-24 07:59:48 +0000316 '../../src/extensions/statistics-extension.cc',
317 '../../src/extensions/statistics-extension.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000318 '../../src/factory.cc',
319 '../../src/factory.h',
320 '../../src/fast-dtoa.cc',
321 '../../src/fast-dtoa.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000322 '../../src/fixed-dtoa.cc',
323 '../../src/fixed-dtoa.h',
yangguo@chromium.org99aa4902012-07-06 16:21:55 +0000324 '../../src/flag-definitions.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000325 '../../src/flags.cc',
326 '../../src/flags.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000327 '../../src/frames-inl.h',
328 '../../src/frames.cc',
329 '../../src/frames.h',
330 '../../src/full-codegen.cc',
331 '../../src/full-codegen.h',
332 '../../src/func-name-inferrer.cc',
333 '../../src/func-name-inferrer.h',
verwaest@chromium.org33e09c82012-10-10 17:07:22 +0000334 '../../src/gdb-jit.cc',
335 '../../src/gdb-jit.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000336 '../../src/global-handles.cc',
337 '../../src/global-handles.h',
338 '../../src/globals.h',
339 '../../src/handles-inl.h',
340 '../../src/handles.cc',
341 '../../src/handles.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000342 '../../src/hashmap.h',
343 '../../src/heap-inl.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000344 '../../src/heap-profiler.cc',
345 '../../src/heap-profiler.h',
yangguo@chromium.org99aa4902012-07-06 16:21:55 +0000346 '../../src/heap.cc',
347 '../../src/heap.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000348 '../../src/hydrogen-instructions.cc',
349 '../../src/hydrogen-instructions.h',
yangguo@chromium.org99aa4902012-07-06 16:21:55 +0000350 '../../src/hydrogen.cc',
351 '../../src/hydrogen.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000352 '../../src/ic-inl.h',
353 '../../src/ic.cc',
354 '../../src/ic.h',
erik.corry@gmail.comc3b670f2011-10-05 21:44:48 +0000355 '../../src/incremental-marking.cc',
356 '../../src/incremental-marking.h',
erik.corry@gmail.combbceb572012-03-09 10:52:05 +0000357 '../../src/interface.cc',
358 '../../src/interface.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000359 '../../src/interpreter-irregexp.cc',
360 '../../src/interpreter-irregexp.h',
yangguo@chromium.org99aa4902012-07-06 16:21:55 +0000361 '../../src/isolate.cc',
362 '../../src/isolate.h',
danno@chromium.org40cb8782011-05-25 07:58:50 +0000363 '../../src/json-parser.h',
danno@chromium.org72204d52012-10-31 10:02:10 +0000364 '../../src/json-stringifier.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000365 '../../src/jsregexp.cc',
366 '../../src/jsregexp.h',
jkummerow@chromium.org1456e702012-03-30 08:38:13 +0000367 '../../src/lazy-instance.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000368 '../../src/list-inl.h',
369 '../../src/list.h',
yangguo@chromium.org99aa4902012-07-06 16:21:55 +0000370 '../../src/lithium-allocator-inl.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000371 '../../src/lithium-allocator.cc',
372 '../../src/lithium-allocator.h',
yangguo@chromium.org99aa4902012-07-06 16:21:55 +0000373 '../../src/lithium.cc',
374 '../../src/lithium.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000375 '../../src/liveedit.cc',
376 '../../src/liveedit.h',
377 '../../src/log-inl.h',
378 '../../src/log-utils.cc',
379 '../../src/log-utils.h',
380 '../../src/log.cc',
381 '../../src/log.h',
382 '../../src/macro-assembler.h',
383 '../../src/mark-compact.cc',
384 '../../src/mark-compact.h',
mstarzinger@chromium.orge3b8d0f2013-02-01 09:06:41 +0000385 '../../src/marking-thread.h',
386 '../../src/marking-thread.cc',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000387 '../../src/messages.cc',
388 '../../src/messages.h',
389 '../../src/natives.h',
390 '../../src/objects-debug.cc',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000391 '../../src/objects-inl.h',
yangguo@chromium.org99aa4902012-07-06 16:21:55 +0000392 '../../src/objects-printer.cc',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000393 '../../src/objects-visiting.cc',
394 '../../src/objects-visiting.h',
395 '../../src/objects.cc',
396 '../../src/objects.h',
jkummerow@chromium.org1456e702012-03-30 08:38:13 +0000397 '../../src/once.cc',
398 '../../src/once.h',
yangguo@chromium.org304cc332012-07-24 07:59:48 +0000399 '../../src/optimizing-compiler-thread.h',
400 '../../src/optimizing-compiler-thread.cc',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000401 '../../src/parser.cc',
402 '../../src/parser.h',
danno@chromium.org8c0a43f2012-04-03 08:37:53 +0000403 '../../src/platform-posix.h',
fschneider@chromium.org7979bbb2011-03-28 10:47:03 +0000404 '../../src/platform-tls-mac.h',
405 '../../src/platform-tls-win32.h',
406 '../../src/platform-tls.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000407 '../../src/platform.h',
lrn@chromium.org1c092762011-05-09 09:42:16 +0000408 '../../src/preparse-data-format.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000409 '../../src/preparse-data.cc',
410 '../../src/preparse-data.h',
411 '../../src/preparser.cc',
412 '../../src/preparser.h',
413 '../../src/prettyprinter.cc',
414 '../../src/prettyprinter.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000415 '../../src/profile-generator-inl.h',
416 '../../src/profile-generator.cc',
417 '../../src/profile-generator.h',
yangguo@chromium.org99aa4902012-07-06 16:21:55 +0000418 '../../src/property-details.h',
419 '../../src/property.cc',
420 '../../src/property.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000421 '../../src/regexp-macro-assembler-irregexp-inl.h',
422 '../../src/regexp-macro-assembler-irregexp.cc',
423 '../../src/regexp-macro-assembler-irregexp.h',
424 '../../src/regexp-macro-assembler-tracer.cc',
425 '../../src/regexp-macro-assembler-tracer.h',
426 '../../src/regexp-macro-assembler.cc',
427 '../../src/regexp-macro-assembler.h',
428 '../../src/regexp-stack.cc',
429 '../../src/regexp-stack.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000430 '../../src/rewriter.cc',
431 '../../src/rewriter.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000432 '../../src/runtime-profiler.cc',
433 '../../src/runtime-profiler.h',
yangguo@chromium.org99aa4902012-07-06 16:21:55 +0000434 '../../src/runtime.cc',
435 '../../src/runtime.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000436 '../../src/safepoint-table.cc',
437 '../../src/safepoint-table.h',
ricow@chromium.org55ee8072011-09-08 16:33:10 +0000438 '../../src/scanner-character-streams.cc',
439 '../../src/scanner-character-streams.h',
yangguo@chromium.org99aa4902012-07-06 16:21:55 +0000440 '../../src/scanner.cc',
441 '../../src/scanner.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000442 '../../src/scopeinfo.cc',
443 '../../src/scopeinfo.h',
444 '../../src/scopes.cc',
445 '../../src/scopes.h',
446 '../../src/serialize.cc',
447 '../../src/serialize.h',
fschneider@chromium.org7979bbb2011-03-28 10:47:03 +0000448 '../../src/small-pointer-list.h',
yangguo@chromium.org304cc332012-07-24 07:59:48 +0000449 '../../src/smart-pointers.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000450 '../../src/snapshot-common.cc',
451 '../../src/snapshot.h',
452 '../../src/spaces-inl.h',
453 '../../src/spaces.cc',
454 '../../src/spaces.h',
erik.corry@gmail.comc3b670f2011-10-05 21:44:48 +0000455 '../../src/store-buffer-inl.h',
456 '../../src/store-buffer.cc',
457 '../../src/store-buffer.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000458 '../../src/string-search.cc',
459 '../../src/string-search.h',
460 '../../src/string-stream.cc',
461 '../../src/string-stream.h',
462 '../../src/strtod.cc',
463 '../../src/strtod.h',
464 '../../src/stub-cache.cc',
465 '../../src/stub-cache.h',
mstarzinger@chromium.orge3b8d0f2013-02-01 09:06:41 +0000466 '../../src/sweeper-thread.h',
467 '../../src/sweeper-thread.cc',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000468 '../../src/token.cc',
469 '../../src/token.h',
yangguo@chromium.org99aa4902012-07-06 16:21:55 +0000470 '../../src/transitions-inl.h',
471 '../../src/transitions.cc',
472 '../../src/transitions.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000473 '../../src/type-info.cc',
474 '../../src/type-info.h',
475 '../../src/unbound-queue-inl.h',
476 '../../src/unbound-queue.h',
477 '../../src/unicode-inl.h',
478 '../../src/unicode.cc',
479 '../../src/unicode.h',
lrn@chromium.org1c092762011-05-09 09:42:16 +0000480 '../../src/utils-inl.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000481 '../../src/utils.cc',
482 '../../src/utils.h',
483 '../../src/v8-counters.cc',
484 '../../src/v8-counters.h',
485 '../../src/v8.cc',
486 '../../src/v8.h',
487 '../../src/v8checks.h',
jkummerow@chromium.orgddda9e82011-07-06 11:27:02 +0000488 '../../src/v8conversions.cc',
489 '../../src/v8conversions.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000490 '../../src/v8globals.h',
sgjesse@chromium.orgea88ce92011-03-23 11:19:56 +0000491 '../../src/v8memory.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000492 '../../src/v8threads.cc',
493 '../../src/v8threads.h',
jkummerow@chromium.orgddda9e82011-07-06 11:27:02 +0000494 '../../src/v8utils.cc',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000495 '../../src/v8utils.h',
496 '../../src/variables.cc',
497 '../../src/variables.h',
498 '../../src/version.cc',
499 '../../src/version.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000500 '../../src/vm-state-inl.h',
501 '../../src/vm-state.h',
502 '../../src/zone-inl.h',
503 '../../src/zone.cc',
504 '../../src/zone.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000505 ],
506 'conditions': [
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000507 ['want_separate_host_toolset==1', {
508 'toolsets': ['host', 'target'],
509 }, {
510 'toolsets': ['target'],
511 }],
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000512 ['v8_target_arch=="arm"', {
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000513 'sources': [
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000514 '../../src/arm/assembler-arm-inl.h',
515 '../../src/arm/assembler-arm.cc',
516 '../../src/arm/assembler-arm.h',
517 '../../src/arm/builtins-arm.cc',
518 '../../src/arm/code-stubs-arm.cc',
519 '../../src/arm/code-stubs-arm.h',
520 '../../src/arm/codegen-arm.cc',
521 '../../src/arm/codegen-arm.h',
522 '../../src/arm/constants-arm.h',
523 '../../src/arm/constants-arm.cc',
524 '../../src/arm/cpu-arm.cc',
525 '../../src/arm/debug-arm.cc',
526 '../../src/arm/deoptimizer-arm.cc',
527 '../../src/arm/disasm-arm.cc',
528 '../../src/arm/frames-arm.cc',
529 '../../src/arm/frames-arm.h',
530 '../../src/arm/full-codegen-arm.cc',
531 '../../src/arm/ic-arm.cc',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000532 '../../src/arm/lithium-arm.cc',
533 '../../src/arm/lithium-arm.h',
erik.corry@gmail.com0511e242011-01-19 11:11:08 +0000534 '../../src/arm/lithium-codegen-arm.cc',
535 '../../src/arm/lithium-codegen-arm.h',
fschneider@chromium.org3a5fd782011-02-24 10:10:44 +0000536 '../../src/arm/lithium-gap-resolver-arm.cc',
537 '../../src/arm/lithium-gap-resolver-arm.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000538 '../../src/arm/macro-assembler-arm.cc',
539 '../../src/arm/macro-assembler-arm.h',
540 '../../src/arm/regexp-macro-assembler-arm.cc',
541 '../../src/arm/regexp-macro-assembler-arm.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000542 '../../src/arm/simulator-arm.cc',
543 '../../src/arm/stub-cache-arm.cc',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000544 ],
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000545 }],
546 ['v8_target_arch=="ia32" or v8_target_arch=="mac" or OS=="mac"', {
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000547 'sources': [
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000548 '../../src/ia32/assembler-ia32-inl.h',
549 '../../src/ia32/assembler-ia32.cc',
550 '../../src/ia32/assembler-ia32.h',
551 '../../src/ia32/builtins-ia32.cc',
552 '../../src/ia32/code-stubs-ia32.cc',
553 '../../src/ia32/code-stubs-ia32.h',
554 '../../src/ia32/codegen-ia32.cc',
555 '../../src/ia32/codegen-ia32.h',
556 '../../src/ia32/cpu-ia32.cc',
557 '../../src/ia32/debug-ia32.cc',
558 '../../src/ia32/deoptimizer-ia32.cc',
559 '../../src/ia32/disasm-ia32.cc',
560 '../../src/ia32/frames-ia32.cc',
561 '../../src/ia32/frames-ia32.h',
562 '../../src/ia32/full-codegen-ia32.cc',
563 '../../src/ia32/ic-ia32.cc',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000564 '../../src/ia32/lithium-codegen-ia32.cc',
565 '../../src/ia32/lithium-codegen-ia32.h',
erik.corry@gmail.com0511e242011-01-19 11:11:08 +0000566 '../../src/ia32/lithium-gap-resolver-ia32.cc',
567 '../../src/ia32/lithium-gap-resolver-ia32.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000568 '../../src/ia32/lithium-ia32.cc',
569 '../../src/ia32/lithium-ia32.h',
570 '../../src/ia32/macro-assembler-ia32.cc',
571 '../../src/ia32/macro-assembler-ia32.h',
572 '../../src/ia32/regexp-macro-assembler-ia32.cc',
573 '../../src/ia32/regexp-macro-assembler-ia32.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000574 '../../src/ia32/stub-cache-ia32.cc',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000575 ],
576 }],
rossberg@chromium.org657d53b2012-07-12 11:06:03 +0000577 ['v8_target_arch=="mipsel"', {
danno@chromium.orgc612e022011-11-10 11:38:15 +0000578 'sources': [
579 '../../src/mips/assembler-mips.cc',
580 '../../src/mips/assembler-mips.h',
581 '../../src/mips/assembler-mips-inl.h',
582 '../../src/mips/builtins-mips.cc',
583 '../../src/mips/codegen-mips.cc',
584 '../../src/mips/codegen-mips.h',
585 '../../src/mips/code-stubs-mips.cc',
586 '../../src/mips/code-stubs-mips.h',
587 '../../src/mips/constants-mips.cc',
588 '../../src/mips/constants-mips.h',
589 '../../src/mips/cpu-mips.cc',
590 '../../src/mips/debug-mips.cc',
591 '../../src/mips/deoptimizer-mips.cc',
592 '../../src/mips/disasm-mips.cc',
593 '../../src/mips/frames-mips.cc',
594 '../../src/mips/frames-mips.h',
595 '../../src/mips/full-codegen-mips.cc',
596 '../../src/mips/ic-mips.cc',
597 '../../src/mips/lithium-codegen-mips.cc',
598 '../../src/mips/lithium-codegen-mips.h',
599 '../../src/mips/lithium-gap-resolver-mips.cc',
600 '../../src/mips/lithium-gap-resolver-mips.h',
601 '../../src/mips/lithium-mips.cc',
602 '../../src/mips/lithium-mips.h',
603 '../../src/mips/macro-assembler-mips.cc',
604 '../../src/mips/macro-assembler-mips.h',
605 '../../src/mips/regexp-macro-assembler-mips.cc',
606 '../../src/mips/regexp-macro-assembler-mips.h',
607 '../../src/mips/simulator-mips.cc',
608 '../../src/mips/stub-cache-mips.cc',
609 ],
610 }],
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000611 ['v8_target_arch=="x64" or v8_target_arch=="mac" or OS=="mac"', {
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000612 'sources': [
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000613 '../../src/x64/assembler-x64-inl.h',
614 '../../src/x64/assembler-x64.cc',
615 '../../src/x64/assembler-x64.h',
616 '../../src/x64/builtins-x64.cc',
617 '../../src/x64/code-stubs-x64.cc',
618 '../../src/x64/code-stubs-x64.h',
619 '../../src/x64/codegen-x64.cc',
620 '../../src/x64/codegen-x64.h',
621 '../../src/x64/cpu-x64.cc',
622 '../../src/x64/debug-x64.cc',
623 '../../src/x64/deoptimizer-x64.cc',
624 '../../src/x64/disasm-x64.cc',
625 '../../src/x64/frames-x64.cc',
626 '../../src/x64/frames-x64.h',
627 '../../src/x64/full-codegen-x64.cc',
628 '../../src/x64/ic-x64.cc',
sgjesse@chromium.orgc6c57182011-01-17 12:24:25 +0000629 '../../src/x64/lithium-codegen-x64.cc',
kmillikin@chromium.orgd2c22f02011-01-10 08:15:37 +0000630 '../../src/x64/lithium-codegen-x64.h',
ager@chromium.org0ee099b2011-01-25 14:06:47 +0000631 '../../src/x64/lithium-gap-resolver-x64.cc',
632 '../../src/x64/lithium-gap-resolver-x64.h',
kmillikin@chromium.orgd2c22f02011-01-10 08:15:37 +0000633 '../../src/x64/lithium-x64.cc',
634 '../../src/x64/lithium-x64.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000635 '../../src/x64/macro-assembler-x64.cc',
636 '../../src/x64/macro-assembler-x64.h',
637 '../../src/x64/regexp-macro-assembler-x64.cc',
638 '../../src/x64/regexp-macro-assembler-x64.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000639 '../../src/x64/stub-cache-x64.cc',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000640 ],
641 }],
642 ['OS=="linux"', {
643 'link_settings': {
sgjesse@chromium.org8e8294a2011-05-02 14:30:53 +0000644 'conditions': [
645 ['v8_compress_startup_data=="bz2"', {
646 'libraries': [
647 '-lbz2',
jkummerow@chromium.orgc3b37122011-11-07 10:14:12 +0000648 ]
649 }],
sgjesse@chromium.org8e8294a2011-05-02 14:30:53 +0000650 ],
651 },
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000652 'sources': [
653 '../../src/platform-linux.cc',
654 '../../src/platform-posix.cc'
655 ],
656 }
657 ],
danno@chromium.org40cb8782011-05-25 07:58:50 +0000658 ['OS=="android"', {
jkummerow@chromium.orgc3b37122011-11-07 10:14:12 +0000659 'defines': [
660 'CAN_USE_VFP_INSTRUCTIONS',
661 ],
danno@chromium.org40cb8782011-05-25 07:58:50 +0000662 'sources': [
663 '../../src/platform-posix.cc',
664 ],
665 'conditions': [
mstarzinger@chromium.org1b3afd12011-11-29 14:28:56 +0000666 ['host_os=="mac"', {
667 'target_conditions': [
668 ['_toolset=="host"', {
669 'sources': [
670 '../../src/platform-macos.cc'
671 ]
672 }, {
673 'sources': [
674 '../../src/platform-linux.cc'
675 ]
676 }],
677 ],
danno@chromium.org40cb8782011-05-25 07:58:50 +0000678 }, {
679 'sources': [
680 '../../src/platform-linux.cc'
681 ]
682 }],
danno@chromium.org40cb8782011-05-25 07:58:50 +0000683 ],
684 },
685 ],
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000686 ['OS=="freebsd"', {
687 'link_settings': {
688 'libraries': [
689 '-L/usr/local/lib -lexecinfo',
690 ]},
691 'sources': [
692 '../../src/platform-freebsd.cc',
693 '../../src/platform-posix.cc'
694 ],
695 }
696 ],
697 ['OS=="openbsd"', {
698 'link_settings': {
699 'libraries': [
700 '-L/usr/local/lib -lexecinfo',
701 ]},
702 'sources': [
703 '../../src/platform-openbsd.cc',
704 '../../src/platform-posix.cc'
705 ],
706 }
707 ],
rossberg@chromium.orgfab14982012-01-05 15:02:15 +0000708 ['OS=="netbsd"', {
709 'link_settings': {
710 'libraries': [
711 '-L/usr/pkg/lib -Wl,-R/usr/pkg/lib -lexecinfo',
712 ]},
713 'sources': [
714 '../../src/platform-openbsd.cc',
715 '../../src/platform-posix.cc'
716 ],
717 }
718 ],
erik.corry@gmail.comc3b670f2011-10-05 21:44:48 +0000719 ['OS=="solaris"', {
jkummerow@chromium.org05ed9dd2012-01-23 14:42:48 +0000720 'link_settings': {
721 'libraries': [
722 '-lsocket -lnsl',
723 ]},
erik.corry@gmail.comc3b670f2011-10-05 21:44:48 +0000724 'sources': [
725 '../../src/platform-solaris.cc',
726 '../../src/platform-posix.cc',
727 ],
728 }
729 ],
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000730 ['OS=="mac"', {
731 'sources': [
732 '../../src/platform-macos.cc',
733 '../../src/platform-posix.cc'
734 ]},
735 ],
736 ['OS=="win"', {
737 'sources': [
738 '../../src/platform-win32.cc',
ricow@chromium.org55ee8072011-09-08 16:33:10 +0000739 '../../src/win32-math.cc',
740 '../../src/win32-math.h',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000741 ],
ager@chromium.org0ee099b2011-01-25 14:06:47 +0000742 'msvs_disabled_warnings': [4351, 4355, 4800],
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000743 'link_settings': {
yangguo@chromium.org80c42ed2011-08-31 09:03:56 +0000744 'libraries': [ '-lwinmm.lib', '-lws2_32.lib' ],
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000745 },
746 }],
fschneider@chromium.orgfb144a02011-05-04 12:43:48 +0000747 ['component=="shared_library"', {
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000748 'defines': [
fschneider@chromium.orgfb144a02011-05-04 12:43:48 +0000749 'BUILDING_V8_SHARED',
750 'V8_SHARED',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000751 ],
752 }],
rossberg@chromium.org994edf62012-02-06 10:12:55 +0000753 ['v8_postmortem_support=="true"', {
754 'sources': [
755 '<(SHARED_INTERMEDIATE_DIR)/debug-support.cc',
756 ]
757 }],
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000758 ],
759 },
760 {
761 'target_name': 'js2c',
762 'type': 'none',
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000763 'conditions': [
764 ['want_separate_host_toolset==1', {
765 'toolsets': ['host'],
766 }, {
767 'toolsets': ['target'],
768 }],
769 ],
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000770 'variables': {
771 'library_files': [
772 '../../src/runtime.js',
773 '../../src/v8natives.js',
774 '../../src/array.js',
775 '../../src/string.js',
776 '../../src/uri.js',
777 '../../src/math.js',
778 '../../src/messages.js',
779 '../../src/apinatives.js',
780 '../../src/debug-debugger.js',
781 '../../src/mirror-debugger.js',
782 '../../src/liveedit-debugger.js',
783 '../../src/date.js',
784 '../../src/json.js',
785 '../../src/regexp.js',
786 '../../src/macros.py',
787 ],
fschneider@chromium.orgfb144a02011-05-04 12:43:48 +0000788 'experimental_library_files': [
danno@chromium.org160a7b02011-04-18 15:51:38 +0000789 '../../src/macros.py',
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000790 '../../src/proxy.js',
erik.corry@gmail.com394dbcf2011-10-27 07:38:48 +0000791 '../../src/collection.js',
danno@chromium.org72204d52012-10-31 10:02:10 +0000792 '../../src/object-observe.js'
fschneider@chromium.orgfb144a02011-05-04 12:43:48 +0000793 ],
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000794 },
795 'actions': [
796 {
797 'action_name': 'js2c',
798 'inputs': [
799 '../../tools/js2c.py',
800 '<@(library_files)',
801 ],
802 'outputs': [
803 '<(SHARED_INTERMEDIATE_DIR)/libraries.cc',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000804 ],
805 'action': [
806 'python',
807 '../../tools/js2c.py',
808 '<@(_outputs)',
809 'CORE',
jkummerow@chromium.orge297f592011-06-08 10:05:15 +0000810 '<(v8_compress_startup_data)',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000811 '<@(library_files)'
812 ],
813 },
fschneider@chromium.orgfb144a02011-05-04 12:43:48 +0000814 {
danno@chromium.org160a7b02011-04-18 15:51:38 +0000815 'action_name': 'js2c_experimental',
816 'inputs': [
817 '../../tools/js2c.py',
818 '<@(experimental_library_files)',
819 ],
820 'outputs': [
821 '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc',
822 ],
823 'action': [
824 'python',
825 '../../tools/js2c.py',
826 '<@(_outputs)',
827 'EXPERIMENTAL',
jkummerow@chromium.orge297f592011-06-08 10:05:15 +0000828 '<(v8_compress_startup_data)',
danno@chromium.org160a7b02011-04-18 15:51:38 +0000829 '<@(experimental_library_files)'
830 ],
831 },
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000832 ],
833 },
834 {
rossberg@chromium.org994edf62012-02-06 10:12:55 +0000835 'target_name': 'postmortem-metadata',
836 'type': 'none',
837 'variables': {
838 'heapobject_files': [
839 '../../src/objects.h',
840 '../../src/objects-inl.h',
841 ],
842 },
843 'actions': [
844 {
845 'action_name': 'gen-postmortem-metadata',
846 'inputs': [
847 '../../tools/gen-postmortem-metadata.py',
848 '<@(heapobject_files)',
849 ],
850 'outputs': [
851 '<(SHARED_INTERMEDIATE_DIR)/debug-support.cc',
852 ],
853 'action': [
854 'python',
855 '../../tools/gen-postmortem-metadata.py',
856 '<@(_outputs)',
857 '<@(heapobject_files)'
858 ]
859 }
860 ]
861 },
862 {
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000863 'target_name': 'mksnapshot',
864 'type': 'executable',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000865 'dependencies': [
danno@chromium.orgc612e022011-11-10 11:38:15 +0000866 'v8_base',
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000867 'v8_nosnapshot',
868 ],
869 'include_dirs+': [
870 '../../src',
871 ],
872 'sources': [
873 '../../src/mksnapshot.cc',
874 ],
875 'conditions': [
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000876 ['want_separate_host_toolset==1', {
877 'toolsets': ['host'],
878 }, {
879 'toolsets': ['target'],
sgjesse@chromium.org8e8294a2011-05-02 14:30:53 +0000880 }],
881 ['v8_compress_startup_data=="bz2"', {
882 'libraries': [
883 '-lbz2',
jkummerow@chromium.orgc3b37122011-11-07 10:14:12 +0000884 ]
885 }],
ricow@chromium.org4668a2c2011-08-29 10:41:00 +0000886 ],
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000887 },
ager@chromium.org3a37e9b2009-04-27 09:26:21 +0000888 {
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000889 'target_name': 'v8_shell',
890 'type': 'executable',
891 'dependencies': [
892 'v8'
ager@chromium.org3a37e9b2009-04-27 09:26:21 +0000893 ],
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000894 'sources': [
895 '../../samples/shell.cc',
ager@chromium.org3a37e9b2009-04-27 09:26:21 +0000896 ],
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000897 'conditions': [
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000898 ['want_separate_host_toolset==1', {
899 'toolsets': ['host'],
900 }, {
901 'toolsets': ['target'],
902 }],
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000903 ['OS=="win"', {
904 # This could be gotten by not setting chromium_code, if that's OK.
905 'defines': ['_CRT_SECURE_NO_WARNINGS'],
906 }],
sgjesse@chromium.org8e8294a2011-05-02 14:30:53 +0000907 ['v8_compress_startup_data=="bz2"', {
908 'libraries': [
909 '-lbz2',
jkummerow@chromium.orgc3b37122011-11-07 10:14:12 +0000910 ]
911 }],
kasperl@chromium.org3a2bafb2009-07-09 07:03:57 +0000912 ],
kasperl@chromium.org3a2bafb2009-07-09 07:03:57 +0000913 },
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000914 {
915 'target_name': 'preparser_lib',
yangguo@chromium.org28381b42013-01-21 14:39:38 +0000916 'type': 'static_library',
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000917 'include_dirs+': [
918 '../../src',
919 ],
920 'sources': [
ricow@chromium.org55ee8072011-09-08 16:33:10 +0000921 '../../include/v8-preparser.h',
922 '../../include/v8stdint.h',
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000923 '../../src/allocation.cc',
ricow@chromium.org55ee8072011-09-08 16:33:10 +0000924 '../../src/allocation.h',
jkummerow@chromium.org1456e702012-03-30 08:38:13 +0000925 '../../src/atomicops.h',
926 '../../src/atomicops_internals_x86_gcc.cc',
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000927 '../../src/bignum.cc',
ricow@chromium.org55ee8072011-09-08 16:33:10 +0000928 '../../src/bignum.h',
929 '../../src/bignum-dtoa.cc',
930 '../../src/bignum-dtoa.h',
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000931 '../../src/cached-powers.cc',
ricow@chromium.org55ee8072011-09-08 16:33:10 +0000932 '../../src/cached-powers.h',
933 '../../src/char-predicates-inl.h',
934 '../../src/char-predicates.h',
935 '../../src/checks.h',
936 '../../src/conversions-inl.h',
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000937 '../../src/conversions.cc',
ricow@chromium.org55ee8072011-09-08 16:33:10 +0000938 '../../src/conversions.h',
939 '../../src/diy-fp.cc',
940 '../../src/diy-fp.h',
941 '../../src/double.h',
942 '../../src/dtoa.cc',
943 '../../src/dtoa.h',
944 '../../src/fast-dtoa.cc',
945 '../../src/fast-dtoa.h',
946 '../../src/fixed-dtoa.cc',
947 '../../src/fixed-dtoa.h',
948 '../../src/globals.h',
ricow@chromium.org55ee8072011-09-08 16:33:10 +0000949 '../../src/hashmap.h',
950 '../../src/list-inl.h',
951 '../../src/list.h',
jkummerow@chromium.org1456e702012-03-30 08:38:13 +0000952 '../../src/once.cc',
953 '../../src/once.h',
ricow@chromium.org55ee8072011-09-08 16:33:10 +0000954 '../../src/preparse-data-format.h',
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000955 '../../src/preparse-data.cc',
ricow@chromium.org55ee8072011-09-08 16:33:10 +0000956 '../../src/preparse-data.h',
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000957 '../../src/preparser.cc',
ricow@chromium.org55ee8072011-09-08 16:33:10 +0000958 '../../src/preparser.h',
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000959 '../../src/preparser-api.cc',
ricow@chromium.org55ee8072011-09-08 16:33:10 +0000960 '../../src/scanner.cc',
961 '../../src/scanner.h',
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000962 '../../src/strtod.cc',
ricow@chromium.org55ee8072011-09-08 16:33:10 +0000963 '../../src/strtod.h',
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000964 '../../src/token.cc',
ricow@chromium.org55ee8072011-09-08 16:33:10 +0000965 '../../src/token.h',
966 '../../src/unicode-inl.h',
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000967 '../../src/unicode.cc',
ricow@chromium.org55ee8072011-09-08 16:33:10 +0000968 '../../src/unicode.h',
969 '../../src/utils-inl.h',
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000970 '../../src/utils.cc',
ricow@chromium.org55ee8072011-09-08 16:33:10 +0000971 '../../src/utils.h',
972 ],
973 'conditions': [
974 ['OS=="win"', {
975 'sources': [
976 '../../src/win32-math.cc',
977 '../../src/win32-math.h',
978 ]}],
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000979 ],
980 },
kasperl@chromium.org3a2bafb2009-07-09 07:03:57 +0000981 ],
lrn@chromium.org5d00b602011-01-05 09:51:43 +0000982 }, { # use_system_v8 != 0
983 'targets': [
984 {
985 'target_name': 'v8',
rossberg@chromium.orgb4b2aa62011-10-13 09:49:59 +0000986 'type': 'none',
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000987 'conditions': [
988 ['want_separate_host_toolset==1', {
989 'toolsets': ['host', 'target'],
990 }, {
991 'toolsets': ['target'],
992 }],
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +0000993 ],
yangguo@chromium.org46a2a512013-01-18 16:29:40 +0000994 'variables': {
995 'shim_headers_path': '<(SHARED_INTERMEDIATE_DIR)/shim_headers/<(_target_name)/<(_toolset)',
996 },
997 'include_dirs++': [
998 '<(shim_headers_path)',
999 ],
1000 'direct_dependent_settings': {
1001 'include_dirs+++': [
1002 '<(shim_headers_path)',
1003 ],
1004 },
1005 'actions': [
1006 {
1007 'variables': {
1008 'generator_path': '../../../tools/generate_shim_headers/generate_shim_headers.py',
1009 'generator_args': [
1010 '--headers-root', '../../include',
1011 '--output-directory', '<(shim_headers_path)',
1012 'v8-debug.h',
1013 'v8-preparser.h',
1014 'v8-profiler.h',
1015 'v8-testing.h',
1016 'v8.h',
1017 'v8stdint.h',
1018 ],
1019 },
1020 'action_name': 'generate_<(_target_name)_shim_headers',
1021 'inputs': [
1022 '<(generator_path)',
1023 ],
1024 'outputs': [
1025 '<!@pymod_do_main(generate_shim_headers <@(generator_args) --outputs)',
1026 ],
1027 'action': ['python',
1028 '<(generator_path)',
1029 '<@(generator_args)',
1030 '--generate',
1031 ],
1032 'message': 'Generating <(_target_name) shim headers.',
1033 },
1034 ],
lrn@chromium.org5d00b602011-01-05 09:51:43 +00001035 'link_settings': {
1036 'libraries': [
1037 '-lv8',
1038 ],
1039 },
1040 },
1041 {
1042 'target_name': 'v8_shell',
1043 'type': 'none',
kmillikin@chromium.org7c2628c2011-08-10 11:27:35 +00001044 'conditions': [
1045 ['want_separate_host_toolset==1', {
1046 'toolsets': ['host'],
1047 }, {
1048 'toolsets': ['target'],
1049 }],
1050 ],
lrn@chromium.org5d00b602011-01-05 09:51:43 +00001051 'dependencies': [
1052 'v8'
1053 ],
1054 },
ager@chromium.org3a37e9b2009-04-27 09:26:21 +00001055 ],
lrn@chromium.org5d00b602011-01-05 09:51:43 +00001056 }],
ager@chromium.org3a37e9b2009-04-27 09:26:21 +00001057 ],
ager@chromium.org3a37e9b2009-04-27 09:26:21 +00001058}