Skip to content

Commit d14cbd9

Browse files
authored
Merge pull request #1159 from dmanlfc/mesa-26.1.4
mesa 26.1.4
2 parents 9f73c39 + 4be6ad7 commit d14cbd9

4 files changed

Lines changed: 116 additions & 99 deletions

File tree

package/mesa3d-headers/mesa3d-headers.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ endif
1212

1313
# Not possible to directly refer to mesa3d variables, because of
1414
# first/second expansion trickery...
15-
MESA3D_HEADERS_VERSION = 26.1.0
15+
MESA3D_HEADERS_VERSION = 26.1.4
1616
MESA3D_HEADERS_SOURCE = mesa-$(MESA3D_HEADERS_VERSION).tar.xz
1717
MESA3D_HEADERS_SITE = https://archive.mesa3d.org
1818
MESA3D_HEADERS_DL_SUBDIR = mesa3d

package/mesa3d/Config.in

Lines changed: 79 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -107,10 +107,6 @@ config BR2_PACKAGE_MESA3D_VULKAN_DRIVER
107107
bool
108108
select BR2_PACKAGE_MESA3D_DRIVER
109109

110-
config BR2_PACKAGE_MESA3D_VIDEO_CODEC
111-
bool
112-
select BR2_PACKAGE_MESA3D_DRIVER
113-
114110
config BR2_PACKAGE_MESA3D_DRIVER
115111
bool
116112
select BR2_PACKAGE_XLIB_LIBXSHMFENCE if BR2_PACKAGE_XORG7
@@ -154,6 +150,7 @@ config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_FREEDRENO
154150
# the toolchain having sync4 primitives, which is always a given
155151
# for arm/aarch64.
156152
select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
153+
select BR2_PACKAGE_MESA3D_HOST_NATIVE_CONTEXT_SUPPORTED_DRIVER
157154
select BR2_PACKAGE_LIBDRM_FREEDRENO
158155
select BR2_PACKAGE_MESA3D_OPENGL_EGL # batocera
159156
help
@@ -201,6 +198,7 @@ comment "llvmpipe driver needs llvm"
201198
config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_NOUVEAU
202199
bool "Gallium nouveau driver"
203200
select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
201+
select BR2_PACKAGE_MESA3D_GALLIUM_VA_SUPPORTED_DRIVER
204202
select BR2_PACKAGE_LIBDRM_NOUVEAU
205203
select BR2_PACKAGE_LLVM_RTTI if BR2_PACKAGE_MESA3D_LLVM
206204
select BR2_PACKAGE_MESA3D_RUSTICL_SUPPORTED_DRIVER
@@ -240,6 +238,7 @@ config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R600
240238
(BR2_PACKAGE_MESA3D_LLVM && (BR2_TOOLCHAIN_USES_UCLIBC || \
241239
BR2_TOOLCHAIN_USES_GLIBC)) # elfutils
242240
select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
241+
select BR2_PACKAGE_MESA3D_GALLIUM_VA_SUPPORTED_DRIVER
243242
select BR2_PACKAGE_LIBDRM_RADEON
244243
select BR2_PACKAGE_LLVM_AMDGPU if BR2_PACKAGE_MESA3D_LLVM
245244
select BR2_PACKAGE_ELFUTILS if BR2_PACKAGE_MESA3D_LLVM
@@ -257,17 +256,26 @@ config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI
257256
bool "Gallium Radeon SI driver"
258257
depends on BR2_USE_MMU # libdrm
259258
depends on BR2_i386 || BR2_x86_64
260-
depends on BR2_PACKAGE_MESA3D_LLVM
261259
select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
260+
select BR2_PACKAGE_MESA3D_GALLIUM_VA_SUPPORTED_DRIVER
261+
select BR2_PACKAGE_MESA3D_HOST_NATIVE_CONTEXT_SUPPORTED_DRIVER
262262
select BR2_PACKAGE_LIBDRM_AMDGPU
263263
select BR2_PACKAGE_LIBDRM_RADEON
264-
select BR2_PACKAGE_LLVM_AMDGPU
264+
select BR2_PACKAGE_LLVM_AMDGPU if BR2_PACKAGE_MESA3D_LLVM
265265
select BR2_PACKAGE_ELFUTILS
266266
select BR2_PACKAGE_MESA3D_NEEDS_ELFUTILS
267267
select BR2_PACKAGE_MESA3D_RUSTICL_SUPPORTED_DRIVER
268268
help
269269
Driver for ATI/AMD Radeon HD7000/HD8000/Rx200 GPUs.
270270

271+
Since Mesa 26.0.0, the default shader compiler is ACO,
272+
even when LLVM support is enabled at build time.
273+
274+
Use the env var AMD_DEBUG=usellvm to override the
275+
default and use LLVM at runtime.
276+
277+
https://docs.mesa3d.org/envvars.html#envvar-AMD_DEBUG
278+
271279
config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SVGA
272280
bool "Gallium vmware svga driver"
273281
depends on BR2_i386 || BR2_x86_64
@@ -321,6 +329,7 @@ config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_VC4
321329
config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_VIRGL
322330
bool "Gallium virgl driver"
323331
select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
332+
select BR2_PACKAGE_MESA3D_GALLIUM_VA_SUPPORTED_DRIVER
324333
select BR2_PACKAGE_MESA3D_OPENGL_EGL
325334
help
326335
virgl is the 3D acceleration backend for the virtio-gpu
@@ -343,6 +352,7 @@ config BR2_PACKAGE_MESA3D_VULKAN_DRIVER_AMD
343352
depends on BR2_TOOLCHAIN_HAS_SYNC_4 || !BR2_PACKAGE_XORG7 # libxshmfence
344353
select BR2_PACKAGE_LIBDRM_AMDGPU
345354
select BR2_PACKAGE_LLVM_AMDGPU if BR2_PACKAGE_MESA3D_LLVM
355+
select BR2_PACKAGE_MESA3D_HOST_NATIVE_CONTEXT_SUPPORTED_DRIVER
346356
select BR2_PACKAGE_MESA3D_VULKAN_DRIVER
347357
help
348358
RADV is a userspace driver that implements the
@@ -358,6 +368,13 @@ config BR2_PACKAGE_MESA3D_VULKAN_DRIVER_BROADCOM
358368
help
359369
Vulkan broadcom driver.
360370

371+
config BR2_PACKAGE_MESA3D_VULKAN_DRIVER_FREEDRENO
372+
bool "Vulkan freedreno driver (turnip)"
373+
select BR2_PACKAGE_MESA3D_HOST_NATIVE_CONTEXT_SUPPORTED_DRIVER
374+
select BR2_PACKAGE_MESA3D_VULKAN_DRIVER
375+
help
376+
Vulkan freedreno driver.
377+
361378
config BR2_PACKAGE_MESA3D_VULKAN_DRIVER_IMAGINATION
362379
bool "Vulkan imagination driver"
363380
depends on BR2_arm || BR2_aarch64
@@ -390,13 +407,6 @@ comment "intel vulkan needs a glibc toolchain w/ headers >= 3.17"
390407
depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 || \
391408
!BR2_TOOLCHAIN_USES_GLIBC
392409

393-
config BR2_PACKAGE_MESA3D_VULKAN_DRIVER_SWRAST
394-
bool "Vulkan swrast driver"
395-
depends on BR2_PACKAGE_MESA3D_LLVM
396-
select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SOFTPIPE
397-
select BR2_PACKAGE_MESA3D_VULKAN_DRIVER
398-
help
399-
Vulkan swrast driver.
400410

401411
# batocera
402412
config BR2_PACKAGE_MESA3D_VULKAN_DRIVER_HASWELL
@@ -428,77 +438,48 @@ config BR2_PACKAGE_MESA3D_VULKAN_DRIVER_PANFROST
428438
comment "panfrost vulkan needs llvm"
429439
depends on !BR2_PACKAGE_MESA3D_LLVM
430440

431-
# batocera
432-
config BR2_PACKAGE_MESA3D_VULKAN_DRIVER_FREEDRENO
433-
bool "Freedreno (Turnip) Vulkan driver"
434-
depends on BR2_arm || BR2_aarch64
435-
depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libxshmfence
436-
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 # memfd.h
437-
depends on BR2_TOOLCHAIN_USES_GLIBC # ifunc, static_assert
441+
config BR2_PACKAGE_MESA3D_VULKAN_DRIVER_SWRAST
442+
bool "Vulkan swrast driver"
443+
depends on BR2_PACKAGE_MESA3D_LLVM
444+
select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SOFTPIPE
438445
select BR2_PACKAGE_MESA3D_VULKAN_DRIVER
439446
help
440-
Vulkan driver for freedreno supported hardware.
441-
442-
comment "freedreno vulkan needs a glibc toolchain w/ headers >= 3.17"
443-
depends on BR2_arm || BR2_aarch64
444-
depends on BR2_TOOLCHAIN_HAS_SYNC_4
445-
depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 || \
446-
!BR2_TOOLCHAIN_USES_GLIBC
447+
Vulkan swrast driver.
447448

448449
config BR2_PACKAGE_MESA3D_VULKAN_DRIVER_VIRTIO
449450
bool "Vulkan VirtIO driver (Venus)"
450451
select BR2_PACKAGE_MESA3D_VULKAN_DRIVER
451452
help
452453
Vulkan VirtIO (venus) driver.
453454

454-
# batocera - codecs
455-
config BR2_PACKAGE_MESA3D_VIDEO_CODEC_VC1DEC
456-
bool "VC1DEC video codec support"
457-
select BR2_PACKAGE_MESA3D_VIDEO_CODEC
458-
help
459-
VC1 hardware decoding on supported hardware.
460-
461-
config BR2_PACKAGE_MESA3D_VIDEO_CODEC_H264DEC
462-
bool "H264DEC video codec support"
463-
select BR2_PACKAGE_MESA3D_VIDEO_CODEC
464-
help
465-
H.264 hardware decoding on supported hardware.
466-
467-
config BR2_PACKAGE_MESA3D_VIDEO_CODEC_H264ENC
468-
bool "H264ENC video codec support"
469-
select BR2_PACKAGE_MESA3D_VIDEO_CODEC
470-
help
471-
H.264 hardware encoding on supported hardware.
455+
comment "Host native context drivers"
456+
depends on BR2_PACKAGE_MESA3D_HOST_NATIVE_CONTEXT_SUPPORTED_DRIVER
472457

473-
config BR2_PACKAGE_MESA3D_VIDEO_CODEC_H265DEC
474-
bool "H265DEC video codec support"
475-
select BR2_PACKAGE_MESA3D_VIDEO_CODEC
458+
config BR2_PACKAGE_MESA3D_HOST_NATIVE_CONTEXT_DRIVER_AMDGPU
459+
bool "amdgpu-virtio"
460+
depends on BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI || \
461+
BR2_PACKAGE_MESA3D_VULKAN_DRIVER_AMD
476462
help
477-
H.265 hardware decoding on supported hardware.
463+
Enable VirtIO support for AMDGPU native contexts
464+
used by the radeonsi (OpenGL) and RADV (Vulkan) drivers.
478465

479-
config BR2_PACKAGE_MESA3D_VIDEO_CODEC_H265ENC
480-
bool "H265ENC video codec support"
481-
select BR2_PACKAGE_MESA3D_VIDEO_CODEC
482-
help
483-
H.265 hardware encoding on supported hardware.
466+
Select this when running Mesa inside a virtual machine
467+
with virtio-gpu host native context support.
484468

485-
config BR2_PACKAGE_MESA3D_VIDEO_CODEC_AV1DEC
486-
bool "AV1DEC video codec support"
487-
select BR2_PACKAGE_MESA3D_VIDEO_CODEC
469+
config BR2_PACKAGE_MESA3D_HOST_NATIVE_CONTEXT_DRIVER_FREEDRENO
470+
bool "freedreno-virtio"
471+
depends on BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_FREEDRENO || \
472+
BR2_PACKAGE_MESA3D_VULKAN_DRIVER_FREEDRENO
488473
help
489-
AV1 hardware decoding on supported hardware.
474+
Enable VirtIO support for freedreno native contexts
475+
used by the freedreno (OpenGL) and Turnip (Vulkan)
476+
drivers.
490477

491-
config BR2_PACKAGE_MESA3D_VIDEO_CODEC_AV1ENC
492-
bool "AV1ENC video codec support"
493-
select BR2_PACKAGE_MESA3D_VIDEO_CODEC
494-
help
495-
AV1 hardware encoding on supported hardware.
478+
Select this when running Mesa inside a virtual machine
479+
with virtio-gpu host native context support.
496480

497-
config BR2_PACKAGE_MESA3D_VIDEO_CODEC_VP9DEC
498-
bool "VP9DEC video codec support"
499-
select BR2_PACKAGE_MESA3D_VIDEO_CODEC
500-
help
501-
VP9 hardware decoding on supported hardware.
481+
config BR2_PACKAGE_MESA3D_HOST_NATIVE_CONTEXT_SUPPORTED_DRIVER
482+
bool
502483

503484
if BR2_PACKAGE_MESA3D_DRIVER
504485

@@ -549,6 +530,36 @@ config BR2_PACKAGE_MESA3D_OPENGL_ES
549530

550531
endif # BR2_PACKAGE_MESA3D_DRIVER
551532

533+
config BR2_PACKAGE_MESA3D_GALLIUM_VA_SUPPORTED_DRIVER
534+
bool
535+
536+
config BR2_PACKAGE_MESA3D_GALLIUM_VA
537+
bool "Gallium VA-API"
538+
depends on BR2_PACKAGE_MESA3D_GALLIUM_VA_SUPPORTED_DRIVER
539+
# circular dependency: mesa3d -> libva -> libgl -> mesa3d
540+
depends on !BR2_PACKAGE_MESA3D_OPENGL_GLX || BR2_PACKAGE_LIBGLVND
541+
select BR2_PACKAGE_LIBVA
542+
help
543+
Enable VA-API video acceleration support in Gallium drivers.
544+
545+
comment "Gallium VA-API needs a supported gallium driver, incompatible with GLX w/o libglvnd"
546+
depends on !BR2_PACKAGE_MESA3D_GALLIUM_VA_SUPPORTED_DRIVER || \
547+
(BR2_PACKAGE_MESA3D_OPENGL_GLX && !BR2_PACKAGE_LIBGLVND)
548+
549+
config BR2_PACKAGE_MESA3D_PATENTED_VIDEO_CODECS
550+
bool "patented video codecs (H.264, H.265)"
551+
depends on BR2_PACKAGE_MESA3D_GALLIUM_VA || BR2_PACKAGE_MESA3D_VULKAN_DRIVER
552+
help
553+
Enable patent-encumbered video codec support (H.264, H.265,
554+
VC-1 decode/encode) for Gallium VA-API and/or Vulkan video.
555+
556+
Without this, only royalty-free codecs are supported
557+
(AV1, VP9, MPEG-1/2, JPEG).
558+
559+
comment "patented video codecs need Gallium VA-API or a Vulkan driver"
560+
depends on !BR2_PACKAGE_MESA3D_GALLIUM_VA && \
561+
!BR2_PACKAGE_MESA3D_VULKAN_DRIVER
562+
552563
config BR2_PACKAGE_PROVIDES_LIBGBM
553564
default "mesa3d" if BR2_PACKAGE_MESA3D_GBM
554565

package/mesa3d/mesa3d.hash

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# From https://docs.mesa3d.org/relnotes/26.1.2.html
2-
sha256 bac2bca9121897a2b8162e79636b50ac998fca799c8e6cf914edd85962babdf0 mesa-26.1.2.tar.xz
3-
sha512 08e7b6357c27bf6e13f59e6fb0f84b73ec25c2d1a01cd09ffcc35ab263f278f10f3bd36fde419f60e78e781abcb315a432d0d5ceb3bab0bca26b8a2a39758e03 mesa-26.1.2.tar.xz
1+
# From https://lists.freedesktop.org/archives/mesa-announce/2026-July/000857.html
2+
sha256 072705caa9adf4740f1489194b13e278ad959166863b5271fe423a86353c9ab6 mesa-26.1.4.tar.xz
3+
sha512 39d15574e876005fd1a483d1cb3c801b08297ec73820a89cbf368d0f2a922cc770d0e623e99acc66b71791332cdadc6cc3095f059f713b09128921ff2d0197a8 mesa-26.1.4.tar.xz
44
# License
55
sha256 0d1a0472ecc81830e75c20d59b0ea02841e3db21255e0ebad97ab682c54d6615 docs/license.rst
66
sha256 323c587d0ccf10e376f8bf9a7f31fb4ca6078105194b42e0b1e0ee2bc9bde71f licenses/MIT

package/mesa3d/mesa3d.mk

Lines changed: 33 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
################################################################################
66

77
# When updating the version, please also update mesa3d-headers
8-
MESA3D_VERSION = 26.1.2
8+
MESA3D_VERSION = 26.1.4
99
MESA3D_SOURCE = mesa-$(MESA3D_VERSION).tar.xz
1010
MESA3D_SITE = https://archive.mesa3d.org
1111
MESA3D_LICENSE = MIT, SGI, Khronos
@@ -71,6 +71,12 @@ MESA3D_CONF_OPTS += \
7171
-Drust_std=2021 \
7272
-Dmesa-clc-bundle-headers=enabled
7373

74+
# meson does not allow ccache
75+
# https://github.com/mesonbuild/meson/commit/aac5f78580a3ea1cf0cae487cb46cab68a048660
76+
MESA3D_CONF_ENV += \
77+
CC_FOR_BUILD="$(HOSTCC_NOCCACHE)" \
78+
CXX_FOR_BUILD="$(HOSTCXX_NOCCACHE)"
79+
7480
MESA3D_MESON_EXTRA_BINARIES += \
7581
rust=['$(HOST_DIR)/bin/rustc','--target=$(RUSTC_TARGET_NAME)'] \
7682
rust_ld='$(TARGET_CROSS)gcc'
@@ -127,7 +133,7 @@ MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_V3D) += v3d
127133
MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_VC4) += vc4
128134
MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_VIRGL) += virgl
129135
MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_ZINK) += zink
130-
# Vulkan Drivers - # batocera - add freedreno & intel_hasvk
136+
# Vulkan Drivers - # batocera - add intel_hasvk
131137
MESA3D_VULKAN_DRIVERS-$(BR2_PACKAGE_MESA3D_VULKAN_DRIVER_AMD) += amd
132138
MESA3D_VULKAN_DRIVERS-$(BR2_PACKAGE_MESA3D_VULKAN_DRIVER_BROADCOM) += broadcom
133139
MESA3D_VULKAN_DRIVERS-$(BR2_PACKAGE_MESA3D_VULKAN_DRIVER_FREEDRENO) += freedreno
@@ -139,16 +145,6 @@ HOST_MESA3D_VULKAN_DRIVERS-$(BR2_PACKAGE_MESA3D_VULKAN_DRIVER_PANFROST) += panfr
139145
MESA3D_VULKAN_DRIVERS-$(BR2_PACKAGE_MESA3D_VULKAN_DRIVER_SWRAST) += swrast
140146
MESA3D_VULKAN_DRIVERS-$(BR2_PACKAGE_MESA3D_VULKAN_DRIVER_VIRTIO) += virtio
141147

142-
# batocera - Codecs
143-
MESA3D_VIDEO_CODECS-$(BR2_PACKAGE_MESA3D_VIDEO_CODEC_VC1DEC) += vc1dec
144-
MESA3D_VIDEO_CODECS-$(BR2_PACKAGE_MESA3D_VIDEO_CODEC_H264DEC) += h264dec
145-
MESA3D_VIDEO_CODECS-$(BR2_PACKAGE_MESA3D_VIDEO_CODEC_H264ENC) += h264enc
146-
MESA3D_VIDEO_CODECS-$(BR2_PACKAGE_MESA3D_VIDEO_CODEC_H265DEC) += h265dec
147-
MESA3D_VIDEO_CODECS-$(BR2_PACKAGE_MESA3D_VIDEO_CODEC_H265ENC) += h265enc
148-
MESA3D_VIDEO_CODECS-$(BR2_PACKAGE_MESA3D_VIDEO_CODEC_AV1DEC) += av1dec
149-
MESA3D_VIDEO_CODECS-$(BR2_PACKAGE_MESA3D_VIDEO_CODEC_AV1ENC) += av1enc
150-
MESA3D_VIDEO_CODECS-$(BR2_PACKAGE_MESA3D_VIDEO_CODEC_VP9DEC) += vp9dec
151-
152148
ifeq ($(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER),)
153149
MESA3D_CONF_OPTS += \
154150
-Dgallium-drivers= \
@@ -163,6 +159,22 @@ ifeq ($(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_ETNAVIV),y)
163159
MESA3D_DEPENDENCIES += host-python-pycparser
164160
endif
165161

162+
ifeq ($(BR2_PACKAGE_MESA3D_HOST_NATIVE_CONTEXT_DRIVER_AMDGPU),y)
163+
MESA3D_CONF_OPTS += -Damdgpu-virtio=true
164+
else
165+
MESA3D_CONF_OPTS += -Damdgpu-virtio=false
166+
endif
167+
168+
ifneq ($(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_FREEDRENO)$(BR2_PACKAGE_MESA3D_VULKAN_DRIVER_FREEDRENO),)
169+
MESA3D_FREEDRENO_KMDS = msm
170+
ifeq ($(BR2_PACKAGE_MESA3D_HOST_NATIVE_CONTEXT_DRIVER_FREEDRENO),y)
171+
MESA3D_FREEDRENO_KMDS += virtio
172+
endif
173+
174+
MESA3D_CONF_OPTS += \
175+
-Dfreedreno-kmds=$(subst $(space),$(comma),$(MESA3D_FREEDRENO_KMDS))
176+
endif
177+
166178
ifeq ($(BR2_PACKAGE_MESA3D_VULKAN_DRIVER_INTEL),y)
167179
MESA3D_DEPENDENCIES += host-python-ply
168180
endif
@@ -188,26 +200,13 @@ MESA3D_CONF_OPTS += -Ddisplay-info=disabled
188200
endif
189201
endif
190202

191-
# batocera - video codecs
192-
ifeq ($(BR2_PACKAGE_MESA3D_VIDEO_CODEC),)
193-
MESA3D_CONF_OPTS += \
194-
-Dvideo-codecs=
195-
else
196-
MESA3D_CONF_OPTS += \
197-
-Dvideo-codecs=$(subst $(space),$(comma),$(MESA3D_VIDEO_CODECS-y))
198-
endif
199-
200203
# APIs
201204

202205
# Always enable OpenGL:
203206
# - Building OpenGL ES without OpenGL is not supported, so always keep opengl enabled.
204207
MESA3D_CONF_OPTS += -Dopengl=true
205208

206-
# libva and mesa3d have a circular dependency
207-
# we do not need libva support in mesa3d, therefore disable this option
208-
# batocera - we enable vaapi acceleration
209-
ifneq ($(BR2_PACKAGE_BATOCERA_TARGET_WSL),y)
210-
ifeq ($(BR2_PACKAGE_LIBVA),y)
209+
ifeq ($(BR2_PACKAGE_MESA3D_GALLIUM_VA),y)
211210
MESA3D_CONF_OPTS += -Dgallium-va=enabled
212211
MESA3D_DEPENDENCIES += libva
213212
# batocera - we link vaapi acceleration drivers accordingly
@@ -222,8 +221,11 @@ MESA3D_POST_INSTALL_TARGET_HOOKS += MESA3D_ADD_VA_LINKS
222221
else
223222
MESA3D_CONF_OPTS += -Dgallium-va=disabled
224223
endif
224+
225+
ifeq ($(BR2_PACKAGE_MESA3D_PATENTED_VIDEO_CODECS),y)
226+
MESA3D_CONF_OPTS += -Dvideo-codecs=all
225227
else
226-
MESA3D_CONF_OPTS += -Dgallium-va=disabled
228+
MESA3D_CONF_OPTS += -Dvideo-codecs=all_free
227229
endif
228230

229231
# libGL is only provided for a full xorg stack, without libglvnd
@@ -291,6 +293,10 @@ else
291293
MESA3D_CONF_OPTS += -Dvalgrind=disabled
292294
endif
293295

296+
ifeq ($(BR2_PACKAGE_HAS_LIBUDEV),y)
297+
MESA3D_DEPENDENCIES += libudev
298+
endif
299+
294300
ifeq ($(BR2_PACKAGE_LIBUNWIND),y)
295301
MESA3D_CONF_OPTS += -Dlibunwind=enabled
296302
MESA3D_DEPENDENCIES += libunwind

0 commit comments

Comments
 (0)