aboutsummaryrefslogtreecommitdiff
path: root/gpu_display/cargo2android.bp
blob: 054f9a3652c0b0b9fc670d5adce93db7cb72e692 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
cc_library_static {
    name: "libdisplay_wl",
    host_supported: true,
    c_std: "c11",
    srcs: ["src/display_wl.c"],

    generated_sources: [
        "gpu_display_protocol_sources",
        "wayland_extension_protocol_sources",
    ],
    generated_headers: [
        "gpu_display_client_protocol_headers",
    ],
    export_generated_headers: [
        "gpu_display_client_protocol_headers",
    ],

    // added manually
    target: {
        host: {
            shared_libs: ["libwayland_client"],
        },
        android: {
            static_libs: [
                "libwayland_client_static",
                "libffi",
            ],
        },
    },
    apex_available: [
        "com.android.virt",
    ],
}

// We could use the modules provided in //external/wayland-protocols, except
//
//  1. virtio-gpu-metadata-v1.xml is missing
//  2. crosvm expects a different header suffix

wayland_protocol_codegen {
    name: "gpu_display_protocol_sources",
    cmd: "$(location wayland_scanner) private-code < $(in) > $(out)",
    suffix: ".c",
    srcs: [
        ":wayland_extension_protocols",
        "protocol/virtio-gpu-metadata-v1.xml",
    ],
    tools: ["wayland_scanner"],
}

wayland_protocol_codegen {
    name: "gpu_display_client_protocol_headers",
    cmd: "$(location wayland_scanner) client-header < $(in) > $(out)",
    suffix: ".h",
    srcs: [
        ":wayland_extension_protocols",
        "protocol/virtio-gpu-metadata-v1.xml",
    ],
    tools: ["wayland_scanner"],
}

wayland_protocol_codegen {
    name: "gpu_display_server_protocol_headers",
    cmd: "$(location wayland_scanner) server-header < $(in) > $(out)",
    suffix: ".h",
    srcs: [
        ":wayland_extension_protocols",
        "protocol/virtio-gpu-metadata-v1.xml",
    ],
    tools: ["wayland_scanner"],
}

cc_library_static {
    name: "libwayland_crosvm_gpu_display_extension_server_protocols",
    vendor_available: true,
    host_supported: true,
    cflags: [
        "-Wall",
        "-Wextra",
        "-Werror",
        "-g",
        "-fvisibility=hidden",
    ],
    static_libs: ["libwayland_server"],
    generated_sources: ["gpu_display_protocol_sources"],
    generated_headers: ["gpu_display_server_protocol_headers"],
    export_generated_headers: ["gpu_display_server_protocol_headers"],
}