PKGNAME=mesa+32
PKGSEC=x11
PKGDEP="aosc-aaa+32 llvm+32 x11-lib+32 libdrm+32 expat+32 eudev+32 \
        elfutils+32 libglvnd+32 libva+32 spirv-llvm-translator+32 \
        libunwind+32 lm-sensors+32 wayland+32 libcl+32 libclc+32 \
        xcb-util-keysyms+32 libdisplay-info+32"
BUILDDEP="devel-base+32 glslang mako pyyaml rust-bindgen rustc+32 \
          spirv-tools+32 cbindgen directx-headers+32"
PKGDES="Runtime library for OpenGL, Vulkan, OpenCL, and more (32-bit x86 runtime)"

PKGBREAK="wine<=1.7.54"

AB_FLAGS_O3=1

# FIXME: LTO causes graphical artifacts on AMD GPUs.
NOLTO=1
ABHOST=optenv32

# Note: -Dwrap_mode=default is used for Crate dependencies.
# Note: -Dintel-rt requires 64-bit.
# FIXME: Disable Rust features (rusticl, gfxstream Vulkan) as 32-bit
#        rustc 1.90.0 is currently broken.
MESON_AFTER=(
# Note: For stable-bound updates, use the following to disable assert().
    '-Db_ndebug=true'
# Note: Comment out line above for preview (RC or x.y.0) releases.
    '-Dsplit-debug=disabled'
    '-Dplatforms=x11,wayland'
    '-Degl-native-platform=auto'
    '-Ddri-drivers-path=/opt/32/lib/xorg/modules/dri'
    '-Dgallium-extra-hud=true'
    '-Dgallium-va=enabled'
    '-Dgallium-rusticl=false'
    '-Dstatic-libclc='
    '-Damdgpu-virtio=true'
    '-Dimagination-srv=true'
    '-Dshader-cache=enabled'
    '-Dshader-cache-default=true'
    '-Dvulkan-layers=device-select,overlay,screenshot'
    '-Dgles1=enabled'
    '-Dgles2=enabled'
    '-Dopengl=true'
    '-Dlibgbm-external=false'
    '-Dglx=dri'
    '-Degl=enabled'
    '-Dglvnd=enabled'
    '-Dllvm=enabled'
    '-Dshared-llvm=enabled'
    '-Ddraw-use-llvm=true'
    '-Damd-use-llvm=true'
    '-Dllvm-orcjit=true'
    '-Dvalgrind=enabled'
    '-Dlibunwind=true'
    '-Dlmsensors=enabled'
    '-Dhtml-docs=disabled'
    '-Dtools='
    '-Dxlib-lease=enabled'
    '-Dglx-direct=true'
    '-Dzstd=enabled'
    '-Dzlib=enabled'
    '-Dsse2=false'
    '-Dperfetto=false'
    '-Dteflon=false'
    '-Dgpuvis=false'
    '-Dsysprof=false'
    '-Dvmware-mks-stats=false'
    '-Dvulkan-beta=false'
    '-Dintel-rt=disabled'
    '-Dintel-elk=false'
    '-Dvideo-codecs=all'
    '-Dgallium-d3d12-video=enabled'
    '-Dgallium-d3d12-graphics=enabled'
    '-Dxmlconfig=enabled'
    '-Dmesa-clc=enabled'
    '-Dprecomp-compiler=enabled'
    '-Dvirtgpu_kumquat=true'
    '-Dwrap_mode=default'
    '-Dgallium-drivers=asahi,crocus,d3d12,etnaviv,freedreno,i915,iris,lima,llvmpipe,nouveau,panfrost,r300,r600,radeonsi,softpipe,svga,tegra,v3d,vc4,virgl,zink'
    '-Dgallium-rusticl-enable-drivers='
    '-Dvulkan-drivers=amd,asahi,broadcom,freedreno,intel,intel_hasvk,panfrost,swrast,virtio'
    '-Dfreedreno-kmds=msm,kgsl,virtio,wsl'
    '-Dintel-elk=true'
    '-Dintel-rt=false'
    '-Dlibunwind=enabled'
    '-Dsse2=true'
)
