blob: a604f8cd9fcaacad168352cf873c005cdaffca9d [file] [log] [blame]
Greg Hartmanbff7e632017-09-29 11:32:08 -07001//
2// Copyright (C) 2017 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8// http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15
16subdirs = [
17 "common",
Tomasz Wiszkowskieb642fc2017-11-28 12:36:31 -080018 "guest",
Greg Hartmana4ff2482017-10-03 16:35:00 -070019 "host",
Greg Hartmanbff7e632017-09-29 11:32:08 -070020]
21
22cc_library_headers {
Greg Hartmana4ff2482017-10-03 16:35:00 -070023 name: "cuttlefish_common_headers",
Isaac Chenfef21be2017-12-11 16:57:33 +080024 vendor: true,
Greg Hartmana4ff2482017-10-03 16:35:00 -070025 export_include_dirs: ["."],
26 host_supported: true,
27}
28
29// TODO(b/67435044) Update the include paths and remove this
30cc_library_headers {
31 name: "cuttlefish_glog",
Isaac Chenfef21be2017-12-11 16:57:33 +080032 vendor: true,
Greg Hartmana4ff2482017-10-03 16:35:00 -070033 export_include_dirs: ["common/libs"],
34 host_supported: true,
Greg Hartmanbff7e632017-09-29 11:32:08 -070035}
36
37cc_defaults {
Greg Hartmance872ef2017-12-04 22:51:47 -080038 name: "cuttlefish_base",
Tomasz Wiszkowski55d53ff2017-12-04 15:39:57 -080039 gnu_extensions: false,
40 header_libs: [
41 "cuttlefish_common_headers",
42 "cuttlefish_kernel_headers",
Tristan Muntsingerbb4f39e2019-02-19 18:48:09 -080043 "cuttlefish_shared_config",
Tomasz Wiszkowski55d53ff2017-12-04 15:39:57 -080044 ],
Tomasz Wiszkowski55d53ff2017-12-04 15:39:57 -080045 target: {
Ryan Haining508c8082018-03-13 11:26:19 -070046 host: {
Tomasz Wiszkowski55d53ff2017-12-04 15:39:57 -080047 host_ldlibs: ["-lrt"],
48 cflags: ["-DCUTTLEFISH_HOST"],
Ryan Haining508c8082018-03-13 11:26:19 -070049 compile_multilib: "64",
Ryan Haininged1fe922018-03-13 17:43:30 +000050 },
51 // We don't need Darwin host-side builds
52 darwin: {
53 enabled: false,
Greg Hartmana4ff2482017-10-03 16:35:00 -070054 },
Greg Hartmanbff7e632017-09-29 11:32:08 -070055 },
Greg Hartman7d5e0bf2017-12-19 23:48:34 -080056 cflags: ["-Werror", "-Wall"],
Greg Hartmance872ef2017-12-04 22:51:47 -080057 vendor: true,
Greg Hartmana4ff2482017-10-03 16:35:00 -070058}
59
Greg Hartmance872ef2017-12-04 22:51:47 -080060cc_defaults {
Greg Hartmane9adb542018-05-09 13:12:51 -070061 name: "cuttlefish_guest_only",
62 defaults: ["cuttlefish_base"],
63}
64
65cc_defaults {
Greg Hartmance872ef2017-12-04 22:51:47 -080066 name: "cuttlefish_host_only",
67 device_supported: false,
68 host_supported: true,
69 defaults: ["cuttlefish_base"],
70}
71
72cc_defaults {
73 name: "cuttlefish_host_and_guest",
74 host_supported: true,
75 defaults: ["cuttlefish_base"],
76}
77
78cc_library_shared {
Greg Hartmana4ff2482017-10-03 16:35:00 -070079 name: "vsoc_lib",
80 srcs: [
81 "common/vsoc/lib/compat.cpp",
Andreas Hubercc1cd952018-01-18 12:57:33 -080082 "common/vsoc/lib/audio_data_layout.cpp",
Greg Hartmana4ff2482017-10-03 16:35:00 -070083 "common/vsoc/lib/e2e_test_region_layout.cpp",
Greg Hartmana4ff2482017-10-03 16:35:00 -070084 "common/vsoc/lib/gralloc_layout.cpp",
Jorge E. Moreira7510c962017-11-28 11:14:08 -080085 "common/vsoc/lib/input_events_layout.cpp",
86 "common/vsoc/lib/input_events_region_view.cpp",
Greg Hartmana4ff2482017-10-03 16:35:00 -070087 "common/vsoc/lib/lock_common.cpp",
Jorge E. Moreira334f3a92018-11-12 10:22:53 -080088 "common/vsoc/lib/managed_e2e_test_region_layout.cpp",
Greg Hartmana4ff2482017-10-03 16:35:00 -070089 "common/vsoc/lib/region_view.cpp",
Jorge E. Moreira57919e82018-02-13 11:50:34 -080090 "common/vsoc/lib/screen_layout.cpp",
91 "common/vsoc/lib/screen_region_view.cpp",
Ryan Hainingb1899152018-01-29 15:50:37 -080092 "common/vsoc/lib/socket_forward_layout.cpp",
93 "common/vsoc/lib/socket_forward_region_view.cpp",
Jorge E. Moreira4f498ee2018-05-11 15:24:00 -070094 "common/vsoc/lib/vsoc_memory.cpp",
Greg Hartmana4ff2482017-10-03 16:35:00 -070095 ],
Greg Hartmance872ef2017-12-04 22:51:47 -080096 header_libs: ["cuttlefish_glog"],
97 shared_libs: [
Greg Hartmana4ff2482017-10-03 16:35:00 -070098 "libcuttlefish_fs",
Greg Hartman98d18af2017-12-05 13:12:31 -080099 "cuttlefish_auto_resources",
Greg Hartmana4ff2482017-10-03 16:35:00 -0700100 "libbase",
Greg Hartmand072a342017-12-05 20:27:40 -0800101 "liblog",
Greg Hartmana4ff2482017-10-03 16:35:00 -0700102 ],
Tomasz Wiszkowski55d53ff2017-12-04 15:39:57 -0800103 target: {
Ryan Haining508c8082018-03-13 11:26:19 -0700104 host: {
Tomasz Wiszkowski55d53ff2017-12-04 15:39:57 -0800105 srcs: [
Greg Hartmand072a342017-12-05 20:27:40 -0800106 "host/vsoc/lib/gralloc_buffer_region_view.cpp",
Tomasz Wiszkowski55d53ff2017-12-04 15:39:57 -0800107 "host/vsoc/lib/host_lock.cpp",
108 "host/vsoc/lib/region_control.cpp",
109 "host/vsoc/lib/region_view.cpp",
110 ],
111 },
112 android: {
113 srcs: [
Greg Hartmand072a342017-12-05 20:27:40 -0800114 "guest/vsoc/lib/gralloc_region_view.cpp",
Tomasz Wiszkowski55d53ff2017-12-04 15:39:57 -0800115 "guest/vsoc/lib/guest_lock.cpp",
116 "guest/vsoc/lib/region_control.cpp",
117 "guest/vsoc/lib/region_view.cpp",
118 ],
119 },
120 },
Alistair Strachan834fbf62018-11-02 15:23:00 -0700121 defaults: ["cuttlefish_host_and_guest"],
Greg Hartmana4ff2482017-10-03 16:35:00 -0700122}
123
Greg Hartmana4ff2482017-10-03 16:35:00 -0700124cc_test_host {
125 name: "circqueue_test",
126 srcs: [
127 "common/vsoc/lib/circqueue_test.cpp",
128 ],
Greg Hartmance872ef2017-12-04 22:51:47 -0800129 shared_libs: [
Greg Hartmana4ff2482017-10-03 16:35:00 -0700130 "vsoc_lib",
131 "libbase",
132 ],
Greg Hartmance872ef2017-12-04 22:51:47 -0800133 defaults: ["cuttlefish_host_only"],
Greg Hartmana4ff2482017-10-03 16:35:00 -0700134}
135
Jorge E. Moreira57919e82018-02-13 11:50:34 -0800136cc_binary_host {
137 name: "vsoc_screen_region_view_test",
Greg Hartman4cbb6ab2017-12-04 18:31:37 -0800138 srcs: [
Jorge E. Moreira57919e82018-02-13 11:50:34 -0800139 "common/vsoc/lib/screen_region_view_test.cpp",
140 ],
141 static_libs: [
142 "libcuttlefish_host_config",
Jorge E. Moreira577383b2018-05-24 14:17:51 -0700143 "libjsoncpp",
Jorge E. Moreira57919e82018-02-13 11:50:34 -0800144 "libgflags",
Greg Hartman4cbb6ab2017-12-04 18:31:37 -0800145 ],
146 shared_libs: [
147 "vsoc_lib",
148 "libbase",
Jorge E. Moreira2a777f62018-06-13 17:28:10 -0700149 "libcuttlefish_utils",
Greg Hartman4cbb6ab2017-12-04 18:31:37 -0800150 ],
Jorge E. Moreira57919e82018-02-13 11:50:34 -0800151 defaults: ["cuttlefish_host_only"],
Greg Hartman4cbb6ab2017-12-04 18:31:37 -0800152}
153
Greg Hartmana4ff2482017-10-03 16:35:00 -0700154cc_test_host {
155 name: "lock_test",
156 srcs: [
157 "common/vsoc/lib/lock_test.cpp",
158 ],
Greg Hartmance872ef2017-12-04 22:51:47 -0800159 shared_libs: [
Greg Hartmana4ff2482017-10-03 16:35:00 -0700160 "vsoc_lib",
Greg Hartmana4ff2482017-10-03 16:35:00 -0700161 "libcuttlefish_fs",
Greg Hartmance872ef2017-12-04 22:51:47 -0800162 "cuttlefish_auto_resources",
163 "libbase",
Greg Hartmana4ff2482017-10-03 16:35:00 -0700164 ],
Greg Hartmance872ef2017-12-04 22:51:47 -0800165 static_libs: [
166 "libgtest_host",
167 ],
168 defaults: ["cuttlefish_host_only"],
Greg Hartmana4ff2482017-10-03 16:35:00 -0700169}
170
171cc_test_host {
172 name: "vsoc_graphics_test",
173 srcs: [
174 "common/vsoc/lib/graphics_test.cpp",
175 ],
Greg Hartmance872ef2017-12-04 22:51:47 -0800176 shared_libs: [
Greg Hartmana4ff2482017-10-03 16:35:00 -0700177 "vsoc_lib",
178 "libbase",
179 ],
Greg Hartmance872ef2017-12-04 22:51:47 -0800180 defaults: ["cuttlefish_host_only"],
Greg Hartmana4ff2482017-10-03 16:35:00 -0700181}
182
183cc_binary_host {
184 name: "host_region_e2e_test",
185 srcs: [
186 "host/vsoc/lib/host_region_e2e_test.cpp",
187 ],
Greg Hartmance872ef2017-12-04 22:51:47 -0800188 shared_libs: [
Greg Hartmana4ff2482017-10-03 16:35:00 -0700189 "vsoc_lib",
Greg Hartmana4ff2482017-10-03 16:35:00 -0700190 "libcuttlefish_fs",
Jorge E. Moreira2a777f62018-06-13 17:28:10 -0700191 "libcuttlefish_utils",
Greg Hartmance872ef2017-12-04 22:51:47 -0800192 "cuttlefish_auto_resources",
193 "libbase",
194 ],
195 static_libs: [
Greg Hartman6da43022017-12-05 11:16:02 -0800196 "libcuttlefish_host_config",
Jorge E. Moreira577383b2018-05-24 14:17:51 -0700197 "libjsoncpp",
Greg Hartmance872ef2017-12-04 22:51:47 -0800198 "libgtest_host",
Tomasz Wiszkowskic2c4dd62017-11-30 10:19:22 -0800199 "libgflags",
Greg Hartmana4ff2482017-10-03 16:35:00 -0700200 ],
Greg Hartmance872ef2017-12-04 22:51:47 -0800201 defaults: ["cuttlefish_host_only"],
Greg Hartmanbff7e632017-09-29 11:32:08 -0700202}