summaryrefslogtreecommitdiffstats
path: root/gin/BUILD.gn
blob: 1baa592c75b0cab6103fd4b4b026697ed671b9a9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

component("gin") {
  sources = [
    "arguments.cc",
    "arguments.h",
    "array_buffer.cc",
    "array_buffer.h",
    "context_holder.cc",
    "converter.cc",
    "converter.h",
    "dictionary.cc",
    "dictionary.h",
    "function_template.cc",
    "function_template.h",
    "gin_export.h",
    "handle.h",
    "interceptor.cc",
    "interceptor.h",
    "isolate_holder.cc",
    "modules/console.cc",
    "modules/console.h",
    "modules/file_module_provider.cc",
    "modules/file_module_provider.h",
    "modules/module_registry.cc",
    "modules/module_registry.h",
    "modules/module_registry_observer.h",
    "modules/module_runner_delegate.cc",
    "modules/module_runner_delegate.h",
    "modules/timer.cc",
    "modules/timer.h",
    "object_template_builder.cc",
    "object_template_builder.h",
    "per_context_data.cc",
    "per_context_data.h",
    "per_isolate_data.cc",
    "per_isolate_data.h",
    "public/context_holder.h",
    "public/gin_embedders.h",
    "public/isolate_holder.h",
    "public/v8_platform.h",
    "public/wrapper_info.h",
    "runner.cc",
    "runner.h",
    "shell_runner.cc",
    "shell_runner.h",
    "try_catch.cc",
    "try_catch.h",
    "v8_platform.cc",
    "wrappable.cc",
    "wrappable.h",
    "wrapper_info.cc",
  ]

  defines = [ "GIN_IMPLEMENTATION" ]
  deps = [
    "//base",
    "//base/third_party/dynamic_annotations",
    "//v8",
  ]

  forward_dependent_configs_from = [
    "//base",
    "//v8",
  ]
}

executable("gin_shell") {
  sources = [
    "shell/gin_main.cc",
  ]

  deps = [
    ":gin",
    "//base",
    "//base:i18n",
    "//v8",
  ]
}

source_set("gin_test") {
  testonly = true
  sources = [
    "test/file.cc",
    "test/file.h",
    "test/file_runner.cc",
    "test/file_runner.h",
    "test/gc.cc",
    "test/gc.h",
    "test/gtest.cc",
    "test/gtest.h",
    "test/v8_test.cc",
    "test/v8_test.h",
  ]

  deps = [
    ":gin",
    "//testing/gtest",
    "//v8",
  ]

  forward_dependent_configs_from = [
    ":gin",
    "//testing/gtest",
  ]
}

test("gin_unittests") {
  sources = [
    "converter_unittest.cc",
    "interceptor_unittest.cc",
    "modules/module_registry_unittest.cc",
    "modules/timer_unittest.cc",
    "per_context_data_unittest.cc",
    "shell_runner_unittest.cc",
    "shell/gin_shell_unittest.cc",
    "test/run_all_unittests.cc",
    "test/run_js_tests.cc",
    "wrappable_unittest.cc",
  ]

  deps = [
    ":gin_test",
    "//base/test:test_support",
    "//v8",
  ]
}