1*bb4ee6a4SAndroid Build Coastguard Worker// This file is generated by cargo_embargo. 2*bb4ee6a4SAndroid Build Coastguard Worker// Do not modify this file after the first "rust_*" or "genrule" module 3*bb4ee6a4SAndroid Build Coastguard Worker// because the changes will be overridden on upgrade. 4*bb4ee6a4SAndroid Build Coastguard Worker// Content before the first "rust_*" or "genrule" module is preserved. 5*bb4ee6a4SAndroid Build Coastguard Worker 6*bb4ee6a4SAndroid Build Coastguard Worker// cargo2android.py limitations: 7*bb4ee6a4SAndroid Build Coastguard Worker// does not handle "-l dylib=wayland-client" yet 8*bb4ee6a4SAndroid Build Coastguard Worker// does not generate cc_library module yet 9*bb4ee6a4SAndroid Build Coastguard Worker// does not generate wayland_protocol_codegen module yet 10*bb4ee6a4SAndroid Build Coastguard Worker 11*bb4ee6a4SAndroid Build Coastguard Workerpackage { 12*bb4ee6a4SAndroid Build Coastguard Worker // See: http://go/android-license-faq 13*bb4ee6a4SAndroid Build Coastguard Worker // A large-scale-change added 'default_applicable_licenses' to import 14*bb4ee6a4SAndroid Build Coastguard Worker // all of the 'license_kinds' from "external_crosvm_license" 15*bb4ee6a4SAndroid Build Coastguard Worker // to get the below license kinds: 16*bb4ee6a4SAndroid Build Coastguard Worker // SPDX-license-identifier-BSD 17*bb4ee6a4SAndroid Build Coastguard Worker // SPDX-license-identifier-MIT 18*bb4ee6a4SAndroid Build Coastguard Worker default_applicable_licenses: ["external_crosvm_license"], 19*bb4ee6a4SAndroid Build Coastguard Worker} 20*bb4ee6a4SAndroid Build Coastguard Worker 21*bb4ee6a4SAndroid Build Coastguard Workerrust_library { 22*bb4ee6a4SAndroid Build Coastguard Worker name: "libgpu_display", 23*bb4ee6a4SAndroid Build Coastguard Worker defaults: ["crosvm_inner_defaults"], 24*bb4ee6a4SAndroid Build Coastguard Worker host_supported: true, 25*bb4ee6a4SAndroid Build Coastguard Worker crate_name: "gpu_display", 26*bb4ee6a4SAndroid Build Coastguard Worker cargo_env_compat: true, 27*bb4ee6a4SAndroid Build Coastguard Worker cargo_pkg_version: "0.1.0", 28*bb4ee6a4SAndroid Build Coastguard Worker crate_root: "src/lib.rs", 29*bb4ee6a4SAndroid Build Coastguard Worker edition: "2021", 30*bb4ee6a4SAndroid Build Coastguard Worker features: [ 31*bb4ee6a4SAndroid Build Coastguard Worker "android_display", 32*bb4ee6a4SAndroid Build Coastguard Worker "gfxstream", 33*bb4ee6a4SAndroid Build Coastguard Worker ], 34*bb4ee6a4SAndroid Build Coastguard Worker rustlibs: [ 35*bb4ee6a4SAndroid Build Coastguard Worker "libanyhow", 36*bb4ee6a4SAndroid Build Coastguard Worker "libbase_rust", 37*bb4ee6a4SAndroid Build Coastguard Worker "libcfg_if", 38*bb4ee6a4SAndroid Build Coastguard Worker "liblibc", 39*bb4ee6a4SAndroid Build Coastguard Worker "liblinux_input_sys", 40*bb4ee6a4SAndroid Build Coastguard Worker "libserde", 41*bb4ee6a4SAndroid Build Coastguard Worker "libsync_rust", 42*bb4ee6a4SAndroid Build Coastguard Worker "libthiserror", 43*bb4ee6a4SAndroid Build Coastguard Worker "libvm_control", 44*bb4ee6a4SAndroid Build Coastguard Worker "libzerocopy", 45*bb4ee6a4SAndroid Build Coastguard Worker ], 46*bb4ee6a4SAndroid Build Coastguard Worker proc_macros: ["libremain"], 47*bb4ee6a4SAndroid Build Coastguard Worker static_libs: ["libdisplay_wl"], 48*bb4ee6a4SAndroid Build Coastguard Worker 49*bb4ee6a4SAndroid Build Coastguard Worker // added manually 50*bb4ee6a4SAndroid Build Coastguard Worker target: { 51*bb4ee6a4SAndroid Build Coastguard Worker host: { 52*bb4ee6a4SAndroid Build Coastguard Worker shared_libs: ["libwayland_client"], 53*bb4ee6a4SAndroid Build Coastguard Worker features: ["android_display_stub"], 54*bb4ee6a4SAndroid Build Coastguard Worker }, 55*bb4ee6a4SAndroid Build Coastguard Worker android: { 56*bb4ee6a4SAndroid Build Coastguard Worker static_libs: [ 57*bb4ee6a4SAndroid Build Coastguard Worker "libwayland_client_static", 58*bb4ee6a4SAndroid Build Coastguard Worker "libffi", 59*bb4ee6a4SAndroid Build Coastguard Worker "libcrosvm_android_display_client", 60*bb4ee6a4SAndroid Build Coastguard Worker ], 61*bb4ee6a4SAndroid Build Coastguard Worker shared_libs: [ 62*bb4ee6a4SAndroid Build Coastguard Worker "libc++", 63*bb4ee6a4SAndroid Build Coastguard Worker "libbinder_ndk", 64*bb4ee6a4SAndroid Build Coastguard Worker "libnativewindow", 65*bb4ee6a4SAndroid Build Coastguard Worker ], 66*bb4ee6a4SAndroid Build Coastguard Worker }, 67*bb4ee6a4SAndroid Build Coastguard Worker }, 68*bb4ee6a4SAndroid Build Coastguard Worker} 69*bb4ee6a4SAndroid Build Coastguard Worker 70*bb4ee6a4SAndroid Build Coastguard Workercc_library_static { 71*bb4ee6a4SAndroid Build Coastguard Worker name: "libdisplay_wl", 72*bb4ee6a4SAndroid Build Coastguard Worker host_supported: true, 73*bb4ee6a4SAndroid Build Coastguard Worker c_std: "c11", 74*bb4ee6a4SAndroid Build Coastguard Worker srcs: ["src/display_wl.c"], 75*bb4ee6a4SAndroid Build Coastguard Worker 76*bb4ee6a4SAndroid Build Coastguard Worker generated_sources: [ 77*bb4ee6a4SAndroid Build Coastguard Worker "gpu_display_protocol_sources", 78*bb4ee6a4SAndroid Build Coastguard Worker "wayland_extension_protocol_sources", 79*bb4ee6a4SAndroid Build Coastguard Worker ], 80*bb4ee6a4SAndroid Build Coastguard Worker generated_headers: [ 81*bb4ee6a4SAndroid Build Coastguard Worker "gpu_display_client_protocol_headers", 82*bb4ee6a4SAndroid Build Coastguard Worker ], 83*bb4ee6a4SAndroid Build Coastguard Worker export_generated_headers: [ 84*bb4ee6a4SAndroid Build Coastguard Worker "gpu_display_client_protocol_headers", 85*bb4ee6a4SAndroid Build Coastguard Worker ], 86*bb4ee6a4SAndroid Build Coastguard Worker 87*bb4ee6a4SAndroid Build Coastguard Worker // added manually 88*bb4ee6a4SAndroid Build Coastguard Worker target: { 89*bb4ee6a4SAndroid Build Coastguard Worker host: { 90*bb4ee6a4SAndroid Build Coastguard Worker shared_libs: ["libwayland_client"], 91*bb4ee6a4SAndroid Build Coastguard Worker }, 92*bb4ee6a4SAndroid Build Coastguard Worker android: { 93*bb4ee6a4SAndroid Build Coastguard Worker static_libs: [ 94*bb4ee6a4SAndroid Build Coastguard Worker "libwayland_client_static", 95*bb4ee6a4SAndroid Build Coastguard Worker "libffi", 96*bb4ee6a4SAndroid Build Coastguard Worker ], 97*bb4ee6a4SAndroid Build Coastguard Worker }, 98*bb4ee6a4SAndroid Build Coastguard Worker }, 99*bb4ee6a4SAndroid Build Coastguard Worker apex_available: [ 100*bb4ee6a4SAndroid Build Coastguard Worker "com.android.virt", 101*bb4ee6a4SAndroid Build Coastguard Worker ], 102*bb4ee6a4SAndroid Build Coastguard Worker} 103*bb4ee6a4SAndroid Build Coastguard Worker 104*bb4ee6a4SAndroid Build Coastguard Worker// We could use the modules provided in //external/wayland-protocols, except 105*bb4ee6a4SAndroid Build Coastguard Worker// 106*bb4ee6a4SAndroid Build Coastguard Worker// 1. virtio-gpu-metadata-v1.xml is missing 107*bb4ee6a4SAndroid Build Coastguard Worker// 2. crosvm expects a different header suffix 108*bb4ee6a4SAndroid Build Coastguard Worker 109*bb4ee6a4SAndroid Build Coastguard Workerwayland_protocol_codegen { 110*bb4ee6a4SAndroid Build Coastguard Worker name: "gpu_display_protocol_sources", 111*bb4ee6a4SAndroid Build Coastguard Worker cmd: "$(location wayland_scanner) private-code < $(in) > $(out)", 112*bb4ee6a4SAndroid Build Coastguard Worker suffix: ".c", 113*bb4ee6a4SAndroid Build Coastguard Worker srcs: [ 114*bb4ee6a4SAndroid Build Coastguard Worker ":wayland_extension_protocols", 115*bb4ee6a4SAndroid Build Coastguard Worker "protocol/virtio-gpu-metadata-v1.xml", 116*bb4ee6a4SAndroid Build Coastguard Worker ], 117*bb4ee6a4SAndroid Build Coastguard Worker tools: ["wayland_scanner"], 118*bb4ee6a4SAndroid Build Coastguard Worker} 119*bb4ee6a4SAndroid Build Coastguard Worker 120*bb4ee6a4SAndroid Build Coastguard Workerwayland_protocol_codegen { 121*bb4ee6a4SAndroid Build Coastguard Worker name: "gpu_display_client_protocol_headers", 122*bb4ee6a4SAndroid Build Coastguard Worker cmd: "$(location wayland_scanner) client-header < $(in) > $(out)", 123*bb4ee6a4SAndroid Build Coastguard Worker suffix: ".h", 124*bb4ee6a4SAndroid Build Coastguard Worker srcs: [ 125*bb4ee6a4SAndroid Build Coastguard Worker ":wayland_extension_protocols", 126*bb4ee6a4SAndroid Build Coastguard Worker "protocol/virtio-gpu-metadata-v1.xml", 127*bb4ee6a4SAndroid Build Coastguard Worker ], 128*bb4ee6a4SAndroid Build Coastguard Worker tools: ["wayland_scanner"], 129*bb4ee6a4SAndroid Build Coastguard Worker} 130*bb4ee6a4SAndroid Build Coastguard Worker 131*bb4ee6a4SAndroid Build Coastguard Workerwayland_protocol_codegen { 132*bb4ee6a4SAndroid Build Coastguard Worker name: "gpu_display_server_protocol_headers", 133*bb4ee6a4SAndroid Build Coastguard Worker cmd: "$(location wayland_scanner) server-header < $(in) > $(out)", 134*bb4ee6a4SAndroid Build Coastguard Worker suffix: ".h", 135*bb4ee6a4SAndroid Build Coastguard Worker srcs: [ 136*bb4ee6a4SAndroid Build Coastguard Worker ":wayland_extension_protocols", 137*bb4ee6a4SAndroid Build Coastguard Worker "protocol/virtio-gpu-metadata-v1.xml", 138*bb4ee6a4SAndroid Build Coastguard Worker ], 139*bb4ee6a4SAndroid Build Coastguard Worker tools: ["wayland_scanner"], 140*bb4ee6a4SAndroid Build Coastguard Worker} 141*bb4ee6a4SAndroid Build Coastguard Worker 142*bb4ee6a4SAndroid Build Coastguard Workercc_library_static { 143*bb4ee6a4SAndroid Build Coastguard Worker name: "libwayland_crosvm_gpu_display_extension_server_protocols", 144*bb4ee6a4SAndroid Build Coastguard Worker vendor_available: true, 145*bb4ee6a4SAndroid Build Coastguard Worker host_supported: true, 146*bb4ee6a4SAndroid Build Coastguard Worker cflags: [ 147*bb4ee6a4SAndroid Build Coastguard Worker "-Wall", 148*bb4ee6a4SAndroid Build Coastguard Worker "-Wextra", 149*bb4ee6a4SAndroid Build Coastguard Worker "-Werror", 150*bb4ee6a4SAndroid Build Coastguard Worker "-g", 151*bb4ee6a4SAndroid Build Coastguard Worker "-fvisibility=hidden", 152*bb4ee6a4SAndroid Build Coastguard Worker ], 153*bb4ee6a4SAndroid Build Coastguard Worker static_libs: ["libwayland_server"], 154*bb4ee6a4SAndroid Build Coastguard Worker generated_sources: ["gpu_display_protocol_sources"], 155*bb4ee6a4SAndroid Build Coastguard Worker generated_headers: ["gpu_display_server_protocol_headers"], 156*bb4ee6a4SAndroid Build Coastguard Worker export_generated_headers: ["gpu_display_server_protocol_headers"], 157*bb4ee6a4SAndroid Build Coastguard Worker} 158