1// Copyright (C) 2023 The Android Open Source Project 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14// 15 16package { 17 default_applicable_licenses: ["Android-Apache-2.0"], 18} 19 20cc_library_headers { 21 name: "libberberis_guest_state_headers", 22 defaults: ["berberis_all_hosts_defaults"], 23 host_supported: true, 24 export_include_dirs: ["include"], 25 header_libs: [ 26 "libberberis_base_headers", 27 "native_bridge_guest_state_headers", 28 ], 29 export_header_lib_headers: [ 30 "libberberis_base_headers", 31 "native_bridge_guest_state_headers", 32 ], 33} 34 35cc_defaults { 36 name: "berberis_guest_state_headers_defaults", 37 defaults: ["berberis_all_hosts_defaults"], 38 host_supported: true, 39 header_libs: [ 40 "libberberis_guest_state_headers", 41 ], 42 export_header_lib_headers: [ 43 "libberberis_guest_state_headers", 44 ], 45} 46 47cc_defaults { 48 name: "berberis_guest_state_defaults", 49 host_supported: true, 50 srcs: ["guest_state.cc"], 51 header_libs: [ 52 "libberberis_base_headers", 53 "libnative_bridge_support_accessor_headers", 54 ], 55 // Targets using these defaults must provide the following guest-specific fields: 56 // header_libs: ["libberberis_guest_state_<guest>_headers"], 57 // export_header_lib_headers: ["libberberis_guest_state_<guest>_headers"], 58} 59 60cc_library_headers { 61 name: "libberberis_guest_state_riscv64_headers", 62 defaults: ["berberis_guest_state_headers_defaults"], 63 export_include_dirs: ["riscv64/include"], 64} 65 66cc_library_headers { 67 name: "libberberis_guest_state_arm64_headers", 68 defaults: ["berberis_guest_state_headers_defaults"], 69 export_include_dirs: ["arm64/include"], 70} 71 72cc_library_headers { 73 name: "libberberis_guest_state_arm_headers", 74 defaults: ["berberis_guest_state_headers_defaults"], 75 export_include_dirs: ["arm/include"], 76} 77 78cc_library_static { 79 name: "libberberis_guest_state_riscv64", 80 defaults: [ 81 "berberis_all_hosts_defaults_64", 82 "berberis_guest_state_defaults", 83 ], 84 srcs: [ 85 "riscv64/get_cpu_state.cc", 86 "riscv64/guest_state_arch.cc", 87 ], 88 header_libs: [ 89 "libberberis_guest_state_riscv64_headers", 90 ], 91 export_header_lib_headers: ["libberberis_guest_state_riscv64_headers"], 92} 93 94cc_library_static { 95 name: "libberberis_guest_state_arm64", 96 defaults: [ 97 "berberis_arm64_defaults", 98 "berberis_guest_state_defaults", 99 ], 100 srcs: [ 101 "arm64/get_cpu_state.cc", 102 "arm64/guest_state_arch.cc", 103 ], 104 header_libs: [ 105 "libberberis_guest_state_arm64_headers", 106 ], 107 export_header_lib_headers: ["libberberis_guest_state_arm64_headers"], 108} 109 110cc_library_static { 111 name: "libberberis_guest_state_arm", 112 defaults: [ 113 "berberis_arm_defaults", 114 "berberis_guest_state_defaults", 115 ], 116 srcs: [ 117 "arm/get_cpu_state.cc", 118 "arm/guest_state_arch.cc", 119 ], 120 header_libs: [ 121 "libberberis_guest_state_arm_headers", 122 ], 123 export_header_lib_headers: ["libberberis_guest_state_arm_headers"], 124} 125 126cc_test_library { 127 name: "libberberis_cpu_state_riscv64_unit_test", 128 defaults: [ 129 "berberis_test_library_defaults_64", 130 "berberis_guest_state_defaults", 131 "berberis_guest_state_headers_defaults", 132 ], 133 srcs: ["riscv64/get_cpu_state_test.cc"], 134 header_libs: ["libberberis_guest_state_riscv64_headers"], 135 export_header_lib_headers: ["libberberis_guest_state_riscv64_headers"], 136} 137 138cc_test_library { 139 name: "libberberis_cpu_state_arm64_unit_test", 140 defaults: [ 141 "berberis_test_library_defaults_64", 142 "berberis_guest_state_defaults", 143 "berberis_guest_state_headers_defaults", 144 ], 145 srcs: ["arm64/get_cpu_state_test.cc"], 146 header_libs: ["libberberis_guest_state_arm64_headers"], 147 export_header_lib_headers: ["libberberis_guest_state_arm64_headers"], 148} 149 150cc_test_library { 151 name: "libberberis_cpu_state_arm_unit_test", 152 defaults: [ 153 "berberis_arm_defaults", 154 "berberis_test_library_defaults", 155 "berberis_guest_state_defaults", 156 "berberis_guest_state_headers_defaults", 157 ], 158 srcs: ["arm/get_cpu_state_test.cc"], 159 header_libs: ["libberberis_guest_state_arm_headers"], 160 export_header_lib_headers: ["libberberis_guest_state_arm_headers"], 161} 162