1/* 2 * Copyright (c) 2024 Intel Corporation. All Rights Reserved. 3 * 4 * Permission is hereby granted, free of charge, to any person obtaining a 5 * copy of this software and associated documentation files (the 6 * "Software"), to deal in the Software without restriction, including 7 * without limitation the rights to use, copy, modify, merge, publish, 8 * distribute, sub license, and/or sell copies of the Software, and to 9 * permit persons to whom the Software is furnished to do so, subject to 10 * the following conditions: 11 * 12 * The above copyright notice and this permission notice (including the 13 * next paragraph) shall be included in all copies or substantial portions 14 * of the Software. 15 * 16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 17 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. 19 * IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR 20 * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21 * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22 * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 */ 24 25package { 26 default_applicable_licenses: ["external_libva-utils_license"], 27} 28 29license { 30 name: "external_libva-utils_license", 31 visibility: [":__subpackages__"], 32 license_kinds: [ 33 "SPDX-license-identifier-Apache-2.0", 34 "SPDX-license-identifier-BSD", 35 "SPDX-license-identifier-ISC", 36 "SPDX-license-identifier-MIT", 37 ], 38 license_text: [ 39 "LICENSE", 40 ], 41} 42 43cc_defaults { 44 name: "libva_utils_defaults", 45 shared_libs: [ 46 "libva", 47 "libdl", 48 "libcutils", 49 "libutils", 50 "libgui", 51 "libdrm", 52 ], 53 54 vendor: true, 55 enabled: false, 56 arch: { 57 x86_64: { 58 enabled: true, 59 }, 60 }, 61} 62 63cc_library { 64 name: "libva_utils_common", 65 66 defaults: ["libva_utils_defaults"], 67 68 srcs: [ 69 "common/va_display.c", 70 "common/va_display_drm.c", 71 ], 72 73 export_include_dirs: ["common/"], 74 75 cflags: ["-DHAVE_VA_DRM"], 76 77 visibility: [":__subpackages__"], 78} 79 80cc_defaults { 81 name: "libva_utils_bin_defaults", 82 83 defaults: ["libva_utils_defaults"], 84 85 shared_libs: [ 86 "libva_utils_common", 87 ], 88} 89 90// decode directory 91 92cc_binary { 93 name: "vampeg2vldemo", 94 95 srcs: [ 96 "decode/mpeg2vldemo.cpp", 97 ], 98 99 defaults: ["libva_utils_bin_defaults"], 100} 101 102cc_binary { 103 name: "valoadjpeg", 104 105 srcs: [ 106 "decode/loadjpeg.c", 107 "decode/tinyjpeg.c", 108 ], 109 110 defaults: ["libva_utils_bin_defaults"], 111} 112 113// encode directory 114 115cc_binary { 116 name: "vah264encode", 117 118 srcs: [ 119 "encode/h264encode.c", 120 ], 121 122 defaults: ["libva_utils_bin_defaults"], 123} 124 125cc_binary { 126 name: "vaavcenc", 127 128 srcs: [ 129 "encode/avcenc.c", 130 ], 131 132 defaults: ["libva_utils_bin_defaults"], 133} 134 135cc_binary { 136 name: "vavp8enc", 137 138 srcs: [ 139 "encode/vp8enc.c", 140 ], 141 142 cflags: [ 143 "-Wno-gnu-variable-sized-type-not-at-end", 144 ], 145 146 defaults: ["libva_utils_bin_defaults"], 147} 148 149cc_binary { 150 name: "vavp9enc", 151 152 srcs: [ 153 "encode/vp9enc.c", 154 ], 155 156 defaults: ["libva_utils_bin_defaults"], 157} 158 159cc_binary { 160 name: "vajpegenc", 161 162 srcs: [ 163 "encode/jpegenc.c", 164 ], 165 166 defaults: ["libva_utils_bin_defaults"], 167} 168 169cc_binary { 170 name: "vampeg2vaenc", 171 172 srcs: [ 173 "encode/mpeg2vaenc.c", 174 ], 175 176 defaults: ["libva_utils_bin_defaults"], 177} 178 179cc_binary { 180 name: "vasvctenc", 181 182 srcs: [ 183 "encode/svctenc.c", 184 ], 185 186 defaults: ["libva_utils_bin_defaults"], 187} 188 189// vainfo directory 190 191cc_binary { 192 name: "vainfo", 193 194 srcs: [ 195 "vainfo/vainfo.c", 196 ], 197 198 defaults: ["libva_utils_bin_defaults"], 199} 200 201// videoprocess directory 202cc_binary { 203 name: "vavpp", 204 205 srcs: [ 206 "videoprocess/vavpp.cpp", 207 ], 208 209 defaults: ["libva_utils_bin_defaults"], 210} 211