• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// This file is generated by cargo2android.py --config cargo2android.json.
2// Do not modify this file as changes will be overridden on upgrade.
3
4// cargo2android.py limitations:
5//   does not handle "-l dylib=wayland-client" yet
6//   does not generate cc_library module yet
7//   does not generate wayland_protocol_codegen module yet
8
9package {
10    // See: http://go/android-license-faq
11    // A large-scale-change added 'default_applicable_licenses' to import
12    // all of the 'license_kinds' from "external_crosvm_license"
13    // to get the below license kinds:
14    //   SPDX-license-identifier-BSD
15    //   SPDX-license-identifier-MIT
16    default_applicable_licenses: ["external_crosvm_license"],
17}
18
19rust_library {
20    name: "libgpu_display",
21    defaults: ["crosvm_defaults"],
22    host_supported: true,
23    crate_name: "gpu_display",
24    cargo_env_compat: true,
25    cargo_pkg_version: "0.1.0",
26    srcs: ["src/lib.rs"],
27    edition: "2021",
28    rustlibs: [
29        "libbase_rust",
30        "libdata_model",
31        "liblibc",
32        "liblinux_input_sys",
33        "libthiserror",
34    ],
35    proc_macros: ["libremain"],
36    static_libs: ["libdisplay_wl"],
37
38    // added manually
39    target: {
40        host: {
41            shared_libs: ["libwayland_client"],
42        },
43        android: {
44            static_libs: [
45                "libwayland_client_static",
46                "libffi",
47            ],
48        },
49    },
50}
51
52cc_library_static {
53    name: "libdisplay_wl",
54    host_supported: true,
55    c_std: "c11",
56    srcs: ["src/display_wl.c"],
57
58    generated_sources: [
59        "gpu_display_protocol_sources",
60        "wayland_extension_protocol_sources",
61    ],
62    generated_headers: [
63        "gpu_display_client_protocol_headers",
64        "wayland_extension_client_protocol_headers",
65    ],
66    export_generated_headers: [
67        "gpu_display_client_protocol_headers",
68        "wayland_extension_client_protocol_headers",
69    ],
70
71    // added manually
72    target: {
73        host: {
74            shared_libs: ["libwayland_client"],
75        },
76        android: {
77            static_libs: [
78                "libwayland_client_static",
79                "libffi",
80            ],
81        },
82        linux_glibc_x86: {
83            // libffi broken on x86, see b/162610242
84            enabled: false,
85        },
86    },
87    apex_available: [
88        "//apex_available:platform",
89        "com.android.virt",
90    ],
91}
92
93wayland_protocol_codegen {
94    name: "gpu_display_protocol_sources",
95    cmd: "$(location wayland_scanner) private-code < $(in) > $(out)",
96    suffix: ".c",
97    srcs: [
98        "protocol/aura-shell.xml",
99        "protocol/linux-dmabuf-unstable-v1.xml",
100        "protocol/viewporter.xml",
101        "protocol/virtio-gpu-metadata-v1.xml",
102    ],
103    tools: ["wayland_scanner"],
104}
105
106wayland_protocol_codegen {
107    name: "gpu_display_client_protocol_headers",
108    cmd: "$(location wayland_scanner) client-header < $(in) > $(out)",
109    suffix: ".h",
110    srcs: [
111        "protocol/aura-shell.xml",
112        "protocol/linux-dmabuf-unstable-v1.xml",
113        "protocol/viewporter.xml",
114        "protocol/virtio-gpu-metadata-v1.xml",
115    ],
116    tools: ["wayland_scanner"],
117}
118
119wayland_protocol_codegen {
120    name: "gpu_display_server_protocol_headers",
121    cmd: "$(location wayland_scanner) server-header < $(in) > $(out)",
122    suffix: ".h",
123    srcs: [
124        "protocol/aura-shell.xml",
125        "protocol/linux-dmabuf-unstable-v1.xml",
126        "protocol/viewporter.xml",
127        "protocol/virtio-gpu-metadata-v1.xml",
128    ],
129    tools: ["wayland_scanner"],
130}
131
132cc_library_static {
133    name: "libwayland_crosvm_gpu_display_extension_server_protocols",
134    vendor_available: true,
135    host_supported: true,
136    cflags: [
137        "-Wall",
138        "-Wextra",
139        "-Werror",
140        "-g",
141        "-fvisibility=hidden",
142    ],
143    static_libs: ["libwayland_server"],
144    generated_sources: ["gpu_display_protocol_sources"],
145    generated_headers: ["gpu_display_server_protocol_headers"],
146    export_generated_headers: ["gpu_display_server_protocol_headers"],
147}
148