xref: /aosp_15_r20/external/crosvm/gpu_display/cargo2android.bp (revision bb4ee6a4ae7042d18b07a98463b9c8b875e44b39)
1*bb4ee6a4SAndroid Build Coastguard Workercc_library_static {
2*bb4ee6a4SAndroid Build Coastguard Worker    name: "libdisplay_wl",
3*bb4ee6a4SAndroid Build Coastguard Worker    host_supported: true,
4*bb4ee6a4SAndroid Build Coastguard Worker    c_std: "c11",
5*bb4ee6a4SAndroid Build Coastguard Worker    srcs: ["src/display_wl.c"],
6*bb4ee6a4SAndroid Build Coastguard Worker
7*bb4ee6a4SAndroid Build Coastguard Worker    generated_sources: [
8*bb4ee6a4SAndroid Build Coastguard Worker        "gpu_display_protocol_sources",
9*bb4ee6a4SAndroid Build Coastguard Worker        "wayland_extension_protocol_sources",
10*bb4ee6a4SAndroid Build Coastguard Worker    ],
11*bb4ee6a4SAndroid Build Coastguard Worker    generated_headers: [
12*bb4ee6a4SAndroid Build Coastguard Worker        "gpu_display_client_protocol_headers",
13*bb4ee6a4SAndroid Build Coastguard Worker    ],
14*bb4ee6a4SAndroid Build Coastguard Worker    export_generated_headers: [
15*bb4ee6a4SAndroid Build Coastguard Worker        "gpu_display_client_protocol_headers",
16*bb4ee6a4SAndroid Build Coastguard Worker    ],
17*bb4ee6a4SAndroid Build Coastguard Worker
18*bb4ee6a4SAndroid Build Coastguard Worker    // added manually
19*bb4ee6a4SAndroid Build Coastguard Worker    target: {
20*bb4ee6a4SAndroid Build Coastguard Worker        host: {
21*bb4ee6a4SAndroid Build Coastguard Worker            shared_libs: ["libwayland_client"],
22*bb4ee6a4SAndroid Build Coastguard Worker        },
23*bb4ee6a4SAndroid Build Coastguard Worker        android: {
24*bb4ee6a4SAndroid Build Coastguard Worker            static_libs: [
25*bb4ee6a4SAndroid Build Coastguard Worker                "libwayland_client_static",
26*bb4ee6a4SAndroid Build Coastguard Worker                "libffi",
27*bb4ee6a4SAndroid Build Coastguard Worker            ],
28*bb4ee6a4SAndroid Build Coastguard Worker        },
29*bb4ee6a4SAndroid Build Coastguard Worker    },
30*bb4ee6a4SAndroid Build Coastguard Worker    apex_available: [
31*bb4ee6a4SAndroid Build Coastguard Worker        "com.android.virt",
32*bb4ee6a4SAndroid Build Coastguard Worker    ],
33*bb4ee6a4SAndroid Build Coastguard Worker}
34*bb4ee6a4SAndroid Build Coastguard Worker
35*bb4ee6a4SAndroid Build Coastguard Worker// We could use the modules provided in //external/wayland-protocols, except
36*bb4ee6a4SAndroid Build Coastguard Worker//
37*bb4ee6a4SAndroid Build Coastguard Worker//  1. virtio-gpu-metadata-v1.xml is missing
38*bb4ee6a4SAndroid Build Coastguard Worker//  2. crosvm expects a different header suffix
39*bb4ee6a4SAndroid Build Coastguard Worker
40*bb4ee6a4SAndroid Build Coastguard Workerwayland_protocol_codegen {
41*bb4ee6a4SAndroid Build Coastguard Worker    name: "gpu_display_protocol_sources",
42*bb4ee6a4SAndroid Build Coastguard Worker    cmd: "$(location wayland_scanner) private-code < $(in) > $(out)",
43*bb4ee6a4SAndroid Build Coastguard Worker    suffix: ".c",
44*bb4ee6a4SAndroid Build Coastguard Worker    srcs: [
45*bb4ee6a4SAndroid Build Coastguard Worker        ":wayland_extension_protocols",
46*bb4ee6a4SAndroid Build Coastguard Worker        "protocol/virtio-gpu-metadata-v1.xml",
47*bb4ee6a4SAndroid Build Coastguard Worker    ],
48*bb4ee6a4SAndroid Build Coastguard Worker    tools: ["wayland_scanner"],
49*bb4ee6a4SAndroid Build Coastguard Worker}
50*bb4ee6a4SAndroid Build Coastguard Worker
51*bb4ee6a4SAndroid Build Coastguard Workerwayland_protocol_codegen {
52*bb4ee6a4SAndroid Build Coastguard Worker    name: "gpu_display_client_protocol_headers",
53*bb4ee6a4SAndroid Build Coastguard Worker    cmd: "$(location wayland_scanner) client-header < $(in) > $(out)",
54*bb4ee6a4SAndroid Build Coastguard Worker    suffix: ".h",
55*bb4ee6a4SAndroid Build Coastguard Worker    srcs: [
56*bb4ee6a4SAndroid Build Coastguard Worker        ":wayland_extension_protocols",
57*bb4ee6a4SAndroid Build Coastguard Worker        "protocol/virtio-gpu-metadata-v1.xml",
58*bb4ee6a4SAndroid Build Coastguard Worker    ],
59*bb4ee6a4SAndroid Build Coastguard Worker    tools: ["wayland_scanner"],
60*bb4ee6a4SAndroid Build Coastguard Worker}
61*bb4ee6a4SAndroid Build Coastguard Worker
62*bb4ee6a4SAndroid Build Coastguard Workerwayland_protocol_codegen {
63*bb4ee6a4SAndroid Build Coastguard Worker    name: "gpu_display_server_protocol_headers",
64*bb4ee6a4SAndroid Build Coastguard Worker    cmd: "$(location wayland_scanner) server-header < $(in) > $(out)",
65*bb4ee6a4SAndroid Build Coastguard Worker    suffix: ".h",
66*bb4ee6a4SAndroid Build Coastguard Worker    srcs: [
67*bb4ee6a4SAndroid Build Coastguard Worker        ":wayland_extension_protocols",
68*bb4ee6a4SAndroid Build Coastguard Worker        "protocol/virtio-gpu-metadata-v1.xml",
69*bb4ee6a4SAndroid Build Coastguard Worker    ],
70*bb4ee6a4SAndroid Build Coastguard Worker    tools: ["wayland_scanner"],
71*bb4ee6a4SAndroid Build Coastguard Worker}
72*bb4ee6a4SAndroid Build Coastguard Worker
73*bb4ee6a4SAndroid Build Coastguard Workercc_library_static {
74*bb4ee6a4SAndroid Build Coastguard Worker    name: "libwayland_crosvm_gpu_display_extension_server_protocols",
75*bb4ee6a4SAndroid Build Coastguard Worker    vendor_available: true,
76*bb4ee6a4SAndroid Build Coastguard Worker    host_supported: true,
77*bb4ee6a4SAndroid Build Coastguard Worker    cflags: [
78*bb4ee6a4SAndroid Build Coastguard Worker        "-Wall",
79*bb4ee6a4SAndroid Build Coastguard Worker        "-Wextra",
80*bb4ee6a4SAndroid Build Coastguard Worker        "-Werror",
81*bb4ee6a4SAndroid Build Coastguard Worker        "-g",
82*bb4ee6a4SAndroid Build Coastguard Worker        "-fvisibility=hidden",
83*bb4ee6a4SAndroid Build Coastguard Worker    ],
84*bb4ee6a4SAndroid Build Coastguard Worker    static_libs: ["libwayland_server"],
85*bb4ee6a4SAndroid Build Coastguard Worker    generated_sources: ["gpu_display_protocol_sources"],
86*bb4ee6a4SAndroid Build Coastguard Worker    generated_headers: ["gpu_display_server_protocol_headers"],
87*bb4ee6a4SAndroid Build Coastguard Worker    export_generated_headers: ["gpu_display_server_protocol_headers"],
88*bb4ee6a4SAndroid Build Coastguard Worker}
89