1 # Copyright 2014 the V8 project 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.
9 'includes': ['../../build/toolchain.gypi', '../../build/features.gypi'],
12 'target_name': 'unittests',
18 '../../testing/gmock.gyp:gmock',
19 '../../testing/gtest.gyp:gtest',
20 '../../tools/gyp/v8.gyp:v8_libplatform',
25 'sources': [ ### gcmole(all) ###
26 'base/bits-unittest.cc',
27 'base/cpu-unittest.cc',
28 'base/division-by-constant-unittest.cc',
29 'base/flags-unittest.cc',
30 'base/functional-unittest.cc',
31 'base/logging-unittest.cc',
32 'base/iterator-unittest.cc',
33 'base/platform/condition-variable-unittest.cc',
34 'base/platform/mutex-unittest.cc',
35 'base/platform/platform-unittest.cc',
36 'base/platform/semaphore-unittest.cc',
37 'base/platform/time-unittest.cc',
38 'base/sys-info-unittest.cc',
39 'base/utils/random-number-generator-unittest.cc',
40 'char-predicates-unittest.cc',
41 'compiler/change-lowering-unittest.cc',
42 'compiler/common-operator-reducer-unittest.cc',
43 'compiler/common-operator-unittest.cc',
44 'compiler/compiler-test-utils.h',
45 'compiler/control-equivalence-unittest.cc',
46 'compiler/control-flow-optimizer-unittest.cc',
47 'compiler/control-reducer-unittest.cc',
48 'compiler/diamond-unittest.cc',
49 'compiler/graph-reducer-unittest.cc',
50 'compiler/graph-unittest.cc',
51 'compiler/graph-unittest.h',
52 'compiler/instruction-selector-unittest.cc',
53 'compiler/instruction-selector-unittest.h',
54 'compiler/instruction-sequence-unittest.cc',
55 'compiler/instruction-sequence-unittest.h',
56 'compiler/js-builtin-reducer-unittest.cc',
57 'compiler/js-intrinsic-lowering-unittest.cc',
58 'compiler/js-operator-unittest.cc',
59 'compiler/js-typed-lowering-unittest.cc',
60 'compiler/liveness-analyzer-unittest.cc',
61 'compiler/load-elimination-unittest.cc',
62 'compiler/loop-peeling-unittest.cc',
63 'compiler/machine-operator-reducer-unittest.cc',
64 'compiler/machine-operator-unittest.cc',
65 'compiler/move-optimizer-unittest.cc',
66 'compiler/node-matchers-unittest.cc',
67 'compiler/node-properties-unittest.cc',
68 'compiler/node-test-utils.cc',
69 'compiler/node-test-utils.h',
70 'compiler/node-unittest.cc',
71 'compiler/opcodes-unittest.cc',
72 'compiler/register-allocator-unittest.cc',
73 'compiler/schedule-unittest.cc',
74 'compiler/select-lowering-unittest.cc',
75 'compiler/scheduler-unittest.cc',
76 'compiler/simplified-operator-reducer-unittest.cc',
77 'compiler/simplified-operator-unittest.cc',
78 'compiler/state-values-utils-unittest.cc',
79 'compiler/typer-unittest.cc',
80 'compiler/value-numbering-reducer-unittest.cc',
81 'compiler/zone-pool-unittest.cc',
82 'libplatform/default-platform-unittest.cc',
83 'libplatform/task-queue-unittest.cc',
84 'libplatform/worker-thread-unittest.cc',
85 'heap/gc-idle-time-handler-unittest.cc',
86 'run-all-unittests.cc',
89 '../../src/startup-data-util.h',
90 '../../src/startup-data-util.cc'
93 ['v8_target_arch=="arm"', {
94 'sources': [ ### gcmole(arch:arm) ###
95 'compiler/arm/instruction-selector-arm-unittest.cc',
98 ['v8_target_arch=="arm64"', {
99 'sources': [ ### gcmole(arch:arm64) ###
100 'compiler/arm64/instruction-selector-arm64-unittest.cc',
103 ['v8_target_arch=="ia32"', {
104 'sources': [ ### gcmole(arch:ia32) ###
105 'compiler/ia32/instruction-selector-ia32-unittest.cc',
108 ['v8_target_arch=="mipsel"', {
109 'sources': [ ### gcmole(arch:mipsel) ###
110 'compiler/mips/instruction-selector-mips-unittest.cc',
113 ['v8_target_arch=="mips64el"', {
114 'sources': [ ### gcmole(arch:mips64el) ###
115 'compiler/mips64/instruction-selector-mips64-unittest.cc',
118 ['v8_target_arch=="x64"', {
119 'sources': [ ### gcmole(arch:x64) ###
120 'compiler/x64/instruction-selector-x64-unittest.cc',
123 ['v8_target_arch=="ppc" or v8_target_arch=="ppc64"', {
124 'sources': [ ### gcmole(arch:ppc) ###
125 'compiler/ppc/instruction-selector-ppc-unittest.cc',
128 ['component=="shared_library"', {
129 # compiler-unittests can't be built against a shared library, so we
130 # need to depend on the underlying static target in that case.
132 ['v8_use_snapshot=="true" and v8_use_external_startup_data==0', {
133 'dependencies': ['../../tools/gyp/v8.gyp:v8_snapshot'],
135 ['v8_use_snapshot=="true" and v8_use_external_startup_data==1', {
136 'dependencies': ['../../tools/gyp/v8.gyp:v8_external_snapshot'],
138 ['v8_use_snapshot!="true"', {
139 'dependencies': ['../../tools/gyp/v8.gyp:v8_nosnapshot'],
143 'dependencies': ['../../tools/gyp/v8.gyp:v8'],
146 # TODO(svenpanne): This is a temporary work-around to fix the warnings
147 # that show up because we use -std=gnu++0x instead of -std=c++11.
151 'direct_dependent_settings': {