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.
5 import("//ui/ozone/ozone.gni")
7 # The list of platforms that will be built.
10 # Extra dependencies to pull into ui/ozone for built platforms.
11 ozone_platform_deps = []
13 # Extra dependencies to pull into ozone_unittests for built platforms.
14 ozone_platform_test_deps = []
16 if (ozone_platform_egltest) {
17 ozone_platforms += [ "egltest" ]
18 ozone_platform_deps += [ "platform/egltest" ]
21 if (ozone_platform_test) {
22 ozone_platforms += [ "test" ]
23 ozone_platform_deps += [ "platform/test" ]
26 if (ozone_platform_caca) {
27 ozone_platforms += [ "caca" ]
28 ozone_platform_deps += [ "platform/caca" ]
31 if (ozone_platform_dri) {
32 ozone_platforms += [ "dri" ]
33 ozone_platform_deps += [ "platform/dri" ]
34 ozone_platform_test_deps += [ "platform/dri:dri_unittests" ]
37 if (ozone_platform_gbm) {
38 ozone_platforms += [ "gbm" ]
39 ozone_platform_deps += [ "platform/dri:gbm" ]
42 platform_list_cc_file = "$target_gen_dir/platform_list.cc"
43 platform_list_h_file = "$target_gen_dir/platform_list.h"
44 platform_list_txt_file = "$target_gen_dir/platform_list.txt"
45 constructor_list_cc_file = "$target_gen_dir/constructor_list.cc"
47 # GYP version: ui/ozone/ozone.gyp:ozone_base
48 component("ozone_base") {
50 "public/cursor_factory_ozone.cc",
51 "public/cursor_factory_ozone.h",
52 "public/gpu_platform_support.cc",
53 "public/gpu_platform_support.h",
54 "public/gpu_platform_support_host.cc",
55 "public/gpu_platform_support_host.h",
56 "public/overlay_candidates_ozone.cc",
57 "public/overlay_candidates_ozone.h",
58 "public/surface_factory_ozone.cc",
59 "public/surface_factory_ozone.h",
60 "public/surface_ozone_canvas.h",
61 "public/surface_ozone_egl.h",
64 defines = [ "OZONE_BASE_IMPLEMENTATION" ]
75 platform_list_cc_file,
77 constructor_list_cc_file,
79 # common/chromeos files are excluded automatically when building with
80 # chromeos=0, by exclusion rules in filename_rules.gypi due to the
81 # "chromeos" folder name.
82 "common/chromeos/display_mode_proxy.cc",
83 "common/chromeos/display_mode_proxy.h",
84 "common/chromeos/display_snapshot_proxy.cc",
85 "common/chromeos/display_snapshot_proxy.h",
86 "common/chromeos/display_util.cc",
87 "common/chromeos/display_util.h",
88 "common/chromeos/native_display_delegate_ozone.cc",
89 "common/chromeos/native_display_delegate_ozone.h",
90 "common/chromeos/touchscreen_device_manager_ozone.cc",
91 "common/chromeos/touchscreen_device_manager_ozone.h",
92 "common/gpu/ozone_gpu_message_generator.cc",
93 "common/gpu/ozone_gpu_message_generator.h",
94 "common/gpu/ozone_gpu_message_params.cc",
95 "common/gpu/ozone_gpu_message_params.h",
96 "common/gpu/ozone_gpu_messages.h",
97 "public/ozone_platform.cc",
98 "public/ozone_platform.h",
99 "public/ozone_switches.cc",
100 "public/ozone_switches.h",
101 "platform_selection.cc",
102 "platform_selection.h",
105 defines = [ "OZONE_IMPLEMENTATION" ]
108 ":generate_constructor_list",
109 ":generate_ozone_platform_list",
115 "//ui/events/ozone:events_ozone",
119 # TODO(GYP) the GYP version has a way to add additional dependencies via
121 ] + ozone_platform_deps
124 deps += [ "//ui/dusplay/types" ]
128 # GYP version: ui/ozone/ozone.gyp:generate_ozone_platform_list
129 action("generate_ozone_platform_list") {
130 script = "generate_ozone_platform_list.py"
132 platform_list_cc_file,
133 platform_list_h_file,
134 platform_list_txt_file
138 "--output_cc=" + rebase_path(platform_list_cc_file, root_build_dir),
139 "--output_h=" + rebase_path(platform_list_h_file, root_build_dir),
140 "--output_txt=" + rebase_path(platform_list_txt_file, root_build_dir),
141 "--default=$ozone_platform",
145 # GYP version: ui/ozone/ozone.gyp:generate_constructor_list
146 action("generate_constructor_list") {
147 script = "generate_constructor_list.py"
150 platform_list_txt_file,
153 constructor_list_cc_file,
157 "--platform_list=" + rebase_path(platform_list_txt_file, root_build_dir),
158 "--output_cc=" + rebase_path(constructor_list_cc_file, root_build_dir),
160 "--typename=OzonePlatform",
161 "--include=\"ui/ozone/public/ozone_platform.h\"",
164 deps = [ ":generate_ozone_platform_list" ]
167 test("ozone_unittests") {
169 "run_all_unittests.cc",
173 "//base/test:test_support",
175 ] + ozone_platform_test_deps