• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1diff --git b/gpu_display/Android.bp a/gpu_display/Android.bp
2--- b/gpu_display/Android.bp
3+++ a/gpu_display/Android.bp
4@@ -32,7 +32,116 @@ rust_library {
5         "liblinux_input_sys",
6         "libthiserror",
7     ],
8     proc_macros: ["libremain"],
9     static_libs: ["libdisplay_wl"],
10-    shared_libs: ["libwayland-client"],
11+
12+    // added manually
13+    target: {
14+        host: {
15+            shared_libs: ["libwayland_client"],
16+        },
17+        android: {
18+            static_libs: [
19+                "libwayland_client_static",
20+                "libffi",
21+            ],
22+        },
23+    },
24+}
25+
26+cc_library_static {
27+    name: "libdisplay_wl",
28+    host_supported: true,
29+    c_std: "c11",
30+    srcs: ["src/display_wl.c"],
31+
32+    generated_sources: [
33+        "gpu_display_protocol_sources",
34+        "wayland_extension_protocol_sources",
35+    ],
36+    generated_headers: [
37+        "gpu_display_client_protocol_headers",
38+        "wayland_extension_client_protocol_headers",
39+    ],
40+    export_generated_headers: [
41+        "gpu_display_client_protocol_headers",
42+        "wayland_extension_client_protocol_headers",
43+    ],
44+
45+    // added manually
46+    target: {
47+        host: {
48+            shared_libs: ["libwayland_client"],
49+        },
50+        android: {
51+            static_libs: [
52+                "libwayland_client_static",
53+                "libffi",
54+            ],
55+        },
56+        linux_glibc_x86: {
57+            // libffi broken on x86, see b/162610242
58+            enabled: false,
59+        },
60+    },
61+    apex_available: [
62+        "//apex_available:platform",
63+        "com.android.virt",
64+    ],
65+}
66+
67+wayland_protocol_codegen {
68+    name: "gpu_display_protocol_sources",
69+    cmd: "$(location wayland_scanner) private-code < $(in) > $(out)",
70+    suffix: ".c",
71+    srcs: [
72+        "protocol/aura-shell.xml",
73+        "protocol/linux-dmabuf-unstable-v1.xml",
74+        "protocol/viewporter.xml",
75+        "protocol/virtio-gpu-metadata-v1.xml",
76+    ],
77+    tools: ["wayland_scanner"],
78+}
79+
80+wayland_protocol_codegen {
81+    name: "gpu_display_client_protocol_headers",
82+    cmd: "$(location wayland_scanner) client-header < $(in) > $(out)",
83+    suffix: ".h",
84+    srcs: [
85+        "protocol/aura-shell.xml",
86+        "protocol/linux-dmabuf-unstable-v1.xml",
87+        "protocol/viewporter.xml",
88+        "protocol/virtio-gpu-metadata-v1.xml",
89+    ],
90+    tools: ["wayland_scanner"],
91+}
92+
93+wayland_protocol_codegen {
94+    name: "gpu_display_server_protocol_headers",
95+    cmd: "$(location wayland_scanner) server-header < $(in) > $(out)",
96+    suffix: ".h",
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+
106+cc_library_static {
107+    name: "libwayland_crosvm_gpu_display_extension_server_protocols",
108+    vendor_available: true,
109+    host_supported: true,
110+    cflags: [
111+        "-Wall",
112+        "-Wextra",
113+        "-Werror",
114+        "-g",
115+        "-fvisibility=hidden",
116+    ],
117+    static_libs: ["libwayland_server"],
118+    generated_sources: ["gpu_display_protocol_sources"],
119+    generated_headers: ["gpu_display_server_protocol_headers"],
120+    export_generated_headers: ["gpu_display_server_protocol_headers"],
121 }
122