BUILD.gn revision cedac228d2dd51db4b79ea1e72c7f249408ee061
1# Copyright 2014 The Chromium 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.
4
5import("//build/config/ui.gni")
6
7component("compositor") {
8  sources = [
9    "compositor.cc",
10    "compositor.h",
11    "compositor_export.h",
12    "compositor_observer.h",
13    "compositor_vsync_manager.cc",
14    "compositor_vsync_manager.h",
15    "compositor_switches.cc",
16    "compositor_switches.h",
17    "debug_utils.cc",
18    "debug_utils.h",
19    "dip_util.cc",
20    "dip_util.h",
21    "float_animation_curve_adapter.cc",
22    "float_animation_curve_adapter.h",
23    "layer.cc",
24    "layer.h",
25    "layer_animation_delegate.h",
26    "layer_animation_element.cc",
27    "layer_animation_element.h",
28    "layer_animation_observer.cc",
29    "layer_animation_observer.h",
30    "layer_animation_sequence.cc",
31    "layer_animation_sequence.h",
32    "layer_animator.cc",
33    "layer_animator.h",
34    "layer_delegate.h",
35    "layer_owner.cc",
36    "layer_owner.h",
37    "layer_tree_owner.cc",
38    "layer_tree_owner.h",
39    "layer_type.h",
40    "reflector.h",
41    "scoped_animation_duration_scale_mode.cc",
42    "scoped_animation_duration_scale_mode.h",
43    "scoped_layer_animation_settings.cc",
44    "scoped_layer_animation_settings.h",
45    "transform_animation_curve_adapter.cc",
46    "transform_animation_curve_adapter.h",
47  ]
48
49  defines = [ "COMPOSITOR_IMPLEMENTATION" ]
50
51  deps = [
52    "//base",
53    "//base/third_party/dynamic_annotations",
54    "//cc",
55    "//gpu/command_buffer/common",
56    "//skia",
57    "//ui/gfx",
58    "//ui/gfx/geometry",
59    "//ui/gl",
60  ]
61
62  if (is_win && use_aura) {
63    # TODO(sky): before we make this real need to remove
64    # IDR_BITMAP_BRUSH_IMAGE.
65    deps += [
66      "//ui/resources",
67      "//third_party/angle:libEGL",
68      "//third_party/angle:libGLESv2",
69    ]
70  }
71}
72
73source_set("test_support") {
74  sources = [
75    "test/context_factories_for_test.cc",
76    "test/context_factories_for_test.h",
77    "test/draw_waiter_for_test.cc",
78    "test/draw_waiter_for_test.h",
79    "test/in_process_context_factory.cc",
80    "test/in_process_context_factory.h",
81    "test/layer_animator_test_controller.cc",
82    "test/layer_animator_test_controller.h",
83    "test/test_compositor_host.h",
84    "test/test_compositor_host_mac.mm",
85    "test/test_compositor_host_ozone.cc",
86    "test/test_compositor_host_win.cc",
87    "test/test_compositor_host_x11.cc",
88    "test/test_layer_animation_delegate.cc",
89    "test/test_layer_animation_delegate.h",
90    "test/test_layer_animation_observer.cc",
91    "test/test_layer_animation_observer.h",
92    "test/test_layers.cc",
93    "test/test_layers.h",
94    "test/test_suite.cc",
95    "test/test_suite.h",
96    "test/test_utils.cc",
97    "test/test_utils.h",
98  ]
99
100  deps = [
101    ":compositor",
102    "//base",
103    "//cc",
104    "//cc:test_support",
105    "//skia",
106    "//testing/gtest",
107    #"//third_party/WebKit/public:blink_minimal",  TODO(GYP)
108    "//ui/base",
109    "//ui/gfx",
110    "//ui/gfx/geometry",
111    "//ui/gl",
112    #'<(DEPTH)/webkit/common/gpu/webkit_gpu.gyp:webkit_gpu',  TODO(GYP)
113  ]
114
115  if (use_x11) {
116    configs += [ "//build/config/linux:x11" ]
117    deps += [ "//ui/gfx:gfx_x11" ]
118  }
119}
120
121# TODO(GYP) enable this when all dependencies are complete and it links.
122#test("compositor_unittests") {
123#  sources = [
124#    "layer_animation_element_unittest.cc",
125#    "layer_animation_sequence_unittest.cc",
126#    "layer_animator_unittest.cc",
127#    "layer_owner_unittest.cc",
128#    "layer_unittest.cc",
129#    "run_all_unittests.cc",
130#    "transform_animation_curve_adapter_unittest.cc",
131#  ]
132#
133#  deps = [
134#    ":compositor",
135#    ":test_support",
136#    "//base",
137#    "//base/allocator",
138#    "//base/test:test_support",
139#    "//cc",
140#    "//cc:test_support",
141#    "//skia",
142#    "//testing/gtest",
143#    "//ui/base",
144#    "//ui/gfx",
145#    "//ui/gfx/geometry",
146#    "//ui/gl",
147#    "//ui/resources",
148#  ]
149#
150#  if (is_linux) {
151#    #deps += [ "//third_party/mesa:osmesa" ]  # TODO(GYP)
152#  }
153#}
154