xref: /aosp_15_r20/external/libva/Android.bp (revision 54e60f844a168e9a219354de272cd517ee8cd4b7)
1*54e60f84SAndroid Build Coastguard Worker// Copyright (c) 2017-2023 Intel Corporation
2*54e60f84SAndroid Build Coastguard Worker//
3*54e60f84SAndroid Build Coastguard Worker// Permission is hereby granted, free of charge, to any person obtaining a copy
4*54e60f84SAndroid Build Coastguard Worker// of this software and associated documentation files (the "Software"), to deal
5*54e60f84SAndroid Build Coastguard Worker// in the Software without restriction, including without limitation the rights
6*54e60f84SAndroid Build Coastguard Worker// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7*54e60f84SAndroid Build Coastguard Worker// copies of the Software, and to permit persons to whom the Software is
8*54e60f84SAndroid Build Coastguard Worker// furnished to do so, subject to the following conditions:
9*54e60f84SAndroid Build Coastguard Worker//
10*54e60f84SAndroid Build Coastguard Worker// The above copyright notice and this permission notice shall be included in all
11*54e60f84SAndroid Build Coastguard Worker// copies or substantial portions of the Software.
12*54e60f84SAndroid Build Coastguard Worker//
13*54e60f84SAndroid Build Coastguard Worker// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14*54e60f84SAndroid Build Coastguard Worker// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15*54e60f84SAndroid Build Coastguard Worker// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16*54e60f84SAndroid Build Coastguard Worker// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17*54e60f84SAndroid Build Coastguard Worker// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18*54e60f84SAndroid Build Coastguard Worker// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
19*54e60f84SAndroid Build Coastguard Worker// SOFTWARE.
20*54e60f84SAndroid Build Coastguard Worker
21*54e60f84SAndroid Build Coastguard Workerpackage {
22*54e60f84SAndroid Build Coastguard Worker    default_applicable_licenses: ["external_intel_libva_license"],
23*54e60f84SAndroid Build Coastguard Worker}
24*54e60f84SAndroid Build Coastguard Worker
25*54e60f84SAndroid Build Coastguard Workerlicense {
26*54e60f84SAndroid Build Coastguard Worker    name: "external_intel_libva_license",
27*54e60f84SAndroid Build Coastguard Worker    visibility: [":__subpackages__"],
28*54e60f84SAndroid Build Coastguard Worker    license_text: [
29*54e60f84SAndroid Build Coastguard Worker        "COPYING",
30*54e60f84SAndroid Build Coastguard Worker    ],
31*54e60f84SAndroid Build Coastguard Worker}
32*54e60f84SAndroid Build Coastguard Worker
33*54e60f84SAndroid Build Coastguard Workersh_binary_host {
34*54e60f84SAndroid Build Coastguard Worker    name: "libva_gen_version_script",
35*54e60f84SAndroid Build Coastguard Worker    src: "build/gen_version.sh",
36*54e60f84SAndroid Build Coastguard Worker}
37*54e60f84SAndroid Build Coastguard Worker
38*54e60f84SAndroid Build Coastguard Workergenrule {
39*54e60f84SAndroid Build Coastguard Worker    name: "libva_gen_headers",
40*54e60f84SAndroid Build Coastguard Worker    srcs: [
41*54e60f84SAndroid Build Coastguard Worker        "configure.ac",
42*54e60f84SAndroid Build Coastguard Worker        "va/va_version.h.in",
43*54e60f84SAndroid Build Coastguard Worker        "va/drm/va_drm.h",
44*54e60f84SAndroid Build Coastguard Worker    ],
45*54e60f84SAndroid Build Coastguard Worker    tools: [
46*54e60f84SAndroid Build Coastguard Worker        "libva_gen_version_script",
47*54e60f84SAndroid Build Coastguard Worker    ],
48*54e60f84SAndroid Build Coastguard Worker    out: [
49*54e60f84SAndroid Build Coastguard Worker        "va/va_version.h",
50*54e60f84SAndroid Build Coastguard Worker        "va/va_drm.h",
51*54e60f84SAndroid Build Coastguard Worker    ],
52*54e60f84SAndroid Build Coastguard Worker    cmd: "$(location libva_gen_version_script) " +
53*54e60f84SAndroid Build Coastguard Worker        "$$(dirname $(location configure.ac)) " +
54*54e60f84SAndroid Build Coastguard Worker        "$(location va/va_version.h.in) > $(location va/va_version.h);" +
55*54e60f84SAndroid Build Coastguard Worker        "cp $(location va/drm/va_drm.h) $(location va/va_drm.h)",
56*54e60f84SAndroid Build Coastguard Worker}
57*54e60f84SAndroid Build Coastguard Worker
58*54e60f84SAndroid Build Coastguard Workercc_library_headers {
59*54e60f84SAndroid Build Coastguard Worker    name: "libva_headers",
60*54e60f84SAndroid Build Coastguard Worker
61*54e60f84SAndroid Build Coastguard Worker    export_include_dirs: [
62*54e60f84SAndroid Build Coastguard Worker        ".",
63*54e60f84SAndroid Build Coastguard Worker        "va",
64*54e60f84SAndroid Build Coastguard Worker        "va/drm",
65*54e60f84SAndroid Build Coastguard Worker    ],
66*54e60f84SAndroid Build Coastguard Worker
67*54e60f84SAndroid Build Coastguard Worker    generated_headers: [
68*54e60f84SAndroid Build Coastguard Worker        "libva_gen_headers",
69*54e60f84SAndroid Build Coastguard Worker    ],
70*54e60f84SAndroid Build Coastguard Worker    export_generated_headers: [
71*54e60f84SAndroid Build Coastguard Worker        "libva_gen_headers",
72*54e60f84SAndroid Build Coastguard Worker    ],
73*54e60f84SAndroid Build Coastguard Worker
74*54e60f84SAndroid Build Coastguard Worker    vendor: true,
75*54e60f84SAndroid Build Coastguard Worker    enabled: false,
76*54e60f84SAndroid Build Coastguard Worker    arch: {
77*54e60f84SAndroid Build Coastguard Worker        x86_64: {
78*54e60f84SAndroid Build Coastguard Worker            enabled: true,
79*54e60f84SAndroid Build Coastguard Worker        },
80*54e60f84SAndroid Build Coastguard Worker    },
81*54e60f84SAndroid Build Coastguard Worker}
82*54e60f84SAndroid Build Coastguard Worker
83*54e60f84SAndroid Build Coastguard Workercc_library_shared {
84*54e60f84SAndroid Build Coastguard Worker    name: "libva",
85*54e60f84SAndroid Build Coastguard Worker
86*54e60f84SAndroid Build Coastguard Worker    shared_libs: [
87*54e60f84SAndroid Build Coastguard Worker        "libdl",
88*54e60f84SAndroid Build Coastguard Worker        "libdrm",
89*54e60f84SAndroid Build Coastguard Worker        "libcutils",
90*54e60f84SAndroid Build Coastguard Worker        "liblog",
91*54e60f84SAndroid Build Coastguard Worker    ],
92*54e60f84SAndroid Build Coastguard Worker
93*54e60f84SAndroid Build Coastguard Worker    local_include_dirs: [
94*54e60f84SAndroid Build Coastguard Worker        "va",
95*54e60f84SAndroid Build Coastguard Worker    ],
96*54e60f84SAndroid Build Coastguard Worker
97*54e60f84SAndroid Build Coastguard Worker    generated_headers: [
98*54e60f84SAndroid Build Coastguard Worker        "libva_gen_headers",
99*54e60f84SAndroid Build Coastguard Worker    ],
100*54e60f84SAndroid Build Coastguard Worker    export_generated_headers: [
101*54e60f84SAndroid Build Coastguard Worker        "libva_gen_headers",
102*54e60f84SAndroid Build Coastguard Worker    ],
103*54e60f84SAndroid Build Coastguard Worker    export_include_dirs: [
104*54e60f84SAndroid Build Coastguard Worker        ".",
105*54e60f84SAndroid Build Coastguard Worker    ],
106*54e60f84SAndroid Build Coastguard Worker
107*54e60f84SAndroid Build Coastguard Worker    header_libs: [
108*54e60f84SAndroid Build Coastguard Worker        "liblog_headers",
109*54e60f84SAndroid Build Coastguard Worker    ],
110*54e60f84SAndroid Build Coastguard Worker
111*54e60f84SAndroid Build Coastguard Worker    srcs: [
112*54e60f84SAndroid Build Coastguard Worker        "va/va.c",
113*54e60f84SAndroid Build Coastguard Worker        "va/va_trace.c",
114*54e60f84SAndroid Build Coastguard Worker        "va/va_str.c",
115*54e60f84SAndroid Build Coastguard Worker        "va/drm/va_drm.c",
116*54e60f84SAndroid Build Coastguard Worker        "va/drm/va_drm_auth.c",
117*54e60f84SAndroid Build Coastguard Worker        "va/drm/va_drm_utils.c",
118*54e60f84SAndroid Build Coastguard Worker    ],
119*54e60f84SAndroid Build Coastguard Worker
120*54e60f84SAndroid Build Coastguard Worker    cflags: [
121*54e60f84SAndroid Build Coastguard Worker        "-Werror",
122*54e60f84SAndroid Build Coastguard Worker        "-Winvalid-pch",
123*54e60f84SAndroid Build Coastguard Worker        "-DSYSCONFDIR=\"/vendor/etc\"",
124*54e60f84SAndroid Build Coastguard Worker        "-DLOG_TAG=\"libva\"",
125*54e60f84SAndroid Build Coastguard Worker    ],
126*54e60f84SAndroid Build Coastguard Worker
127*54e60f84SAndroid Build Coastguard Worker    arch: {
128*54e60f84SAndroid Build Coastguard Worker        x86_64: {
129*54e60f84SAndroid Build Coastguard Worker            cflags: ["-DVA_DRIVERS_PATH=\"/vendor/lib64\""],
130*54e60f84SAndroid Build Coastguard Worker            enabled: true,
131*54e60f84SAndroid Build Coastguard Worker        },
132*54e60f84SAndroid Build Coastguard Worker    },
133*54e60f84SAndroid Build Coastguard Worker
134*54e60f84SAndroid Build Coastguard Worker    vendor: true,
135*54e60f84SAndroid Build Coastguard Worker    enabled: false,
136*54e60f84SAndroid Build Coastguard Worker}
137*54e60f84SAndroid Build Coastguard Worker
138*54e60f84SAndroid Build Coastguard Workercc_library_shared {
139*54e60f84SAndroid Build Coastguard Worker    name: "libva-android",
140*54e60f84SAndroid Build Coastguard Worker
141*54e60f84SAndroid Build Coastguard Worker    shared_libs: [
142*54e60f84SAndroid Build Coastguard Worker        "libva",
143*54e60f84SAndroid Build Coastguard Worker        "libdrm",
144*54e60f84SAndroid Build Coastguard Worker        "liblog",
145*54e60f84SAndroid Build Coastguard Worker    ],
146*54e60f84SAndroid Build Coastguard Worker
147*54e60f84SAndroid Build Coastguard Worker    local_include_dirs: [
148*54e60f84SAndroid Build Coastguard Worker        "va",
149*54e60f84SAndroid Build Coastguard Worker        "va/drm",
150*54e60f84SAndroid Build Coastguard Worker    ],
151*54e60f84SAndroid Build Coastguard Worker    generated_headers: [
152*54e60f84SAndroid Build Coastguard Worker        "libva_gen_headers",
153*54e60f84SAndroid Build Coastguard Worker    ],
154*54e60f84SAndroid Build Coastguard Worker    export_generated_headers: [
155*54e60f84SAndroid Build Coastguard Worker        "libva_gen_headers",
156*54e60f84SAndroid Build Coastguard Worker    ],
157*54e60f84SAndroid Build Coastguard Worker    export_include_dirs: [
158*54e60f84SAndroid Build Coastguard Worker        ".",
159*54e60f84SAndroid Build Coastguard Worker    ],
160*54e60f84SAndroid Build Coastguard Worker
161*54e60f84SAndroid Build Coastguard Worker    srcs: [
162*54e60f84SAndroid Build Coastguard Worker        "va/android/va_android.cpp",
163*54e60f84SAndroid Build Coastguard Worker        "va/drm/va_drm_utils.c",
164*54e60f84SAndroid Build Coastguard Worker    ],
165*54e60f84SAndroid Build Coastguard Worker
166*54e60f84SAndroid Build Coastguard Worker    cflags: [
167*54e60f84SAndroid Build Coastguard Worker        "-Werror",
168*54e60f84SAndroid Build Coastguard Worker        "-Winvalid-pch",
169*54e60f84SAndroid Build Coastguard Worker        "-DLOG_TAG=\"libva-android\"",
170*54e60f84SAndroid Build Coastguard Worker    ],
171*54e60f84SAndroid Build Coastguard Worker
172*54e60f84SAndroid Build Coastguard Worker    vendor: true,
173*54e60f84SAndroid Build Coastguard Worker    enabled: false,
174*54e60f84SAndroid Build Coastguard Worker    arch: {
175*54e60f84SAndroid Build Coastguard Worker        x86_64: {
176*54e60f84SAndroid Build Coastguard Worker            enabled: true,
177*54e60f84SAndroid Build Coastguard Worker        },
178*54e60f84SAndroid Build Coastguard Worker    },
179*54e60f84SAndroid Build Coastguard Worker}
180