1// Copyright (C) 2024 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_static { 21 name: "libberberis_runtime_riscv64", 22 defaults: [ 23 "berberis_all_hosts_defaults_64", 24 "berberis_runtime_library_defaults", 25 ], 26 host_supported: true, 27 arch: { 28 arm64: { 29 srcs: [ 30 "translator_arm64.cc", 31 ], 32 }, 33 x86_64: { 34 srcs: [ 35 "translator_x86_64.cc", 36 ], 37 header_libs: [ 38 "libberberis_heavy_optimizer_riscv64_headers", 39 "libberberis_lite_translator_headers", 40 ], 41 }, 42 }, 43 srcs: [ 44 "init_guest_arch.cc", 45 "run_guest_call.cc", 46 "translator.cc", 47 ], 48 whole_static_libs: ["libberberis_runtime"], 49 header_libs: [ 50 "libberberis_base_headers", 51 "libberberis_calling_conventions_headers", 52 "libberberis_guest_abi_riscv64_headers", 53 "libberberis_guest_os_primitives_headers", 54 "libberberis_guest_state_riscv64_headers", 55 "libberberis_instrument_headers", 56 "libberberis_interpreter_riscv64_headers", 57 "libberberis_runtime_headers", 58 "libberberis_runtime_primitives_headers", 59 ], 60 export_header_lib_headers: [ 61 "libberberis_runtime_headers", 62 ], 63} 64 65cc_test_library { 66 name: "libberberis_runtime_riscv64_unit_tests", 67 defaults: ["berberis_test_library_defaults_64"], 68 arch: { 69 x86_64: { 70 srcs: [ 71 "translator_x86_64_test.cc", 72 ], 73 header_libs: [ 74 "libberberis_lite_translator_headers", 75 ], 76 }, 77 }, 78 srcs: [ 79 "execute_guest_test.cc", 80 ], 81 header_libs: [ 82 "libberberis_base_headers", 83 "libberberis_guest_os_primitives_headers", 84 "libberberis_guest_state_riscv64_headers", 85 "libberberis_runtime_headers", 86 "libberberis_runtime_primitives_headers", 87 ], 88} 89