mesa/build.sh

58 lines
1.8 KiB
Bash
Executable file

meson_options=(
--cross-file lib32
-D android-libbacktrace=disabled
-D b_ndebug=true
-D dri3=enabled
-D egl=enabled
-D gallium-drivers=radeonsi,virgl,svga,swrast,crocus,zink
-D gallium-extra-hud=true
-D gallium-nine=true
-D gallium-omx=disabled
-D gallium-opencl=icd
-D gallium-rusticl=true
-D gallium-va=enabled
-D gallium-vdpau=enabled
-D gallium-xa=enabled
-D gbm=enabled
-D gles1=disabled
-D gles2=enabled
-D glvnd=true
-D glx=dri
-D intel-clc=enabled
-D libunwind=disabled
-D llvm=enabled
-D lmsensors=enabled
-D microsoft-clc=disabled
-D osmesa=true
-D platforms=x11,wayland
-D rust_std=2021
-D shared-glapi=enabled
-D valgrind=disabled
-D video-codecs=vc1dec,h264dec,h264enc,h265dec,h265enc,av1enc,av1dec,vp9dec
-D vulkan-drivers=amd,swrast,virtio
-D vulkan-layers=device-select,overlay
-D vulkan-beta=true
-D opencl-spirv=true
)
# Build only minimal debug info to reduce size
#CFLAGS+=' -g1'
#CXXFLAGS+=' -g1'
export BINDGEN_EXTRA_CLANG_ARGS="-m32"
arch-meson . build "${meson_options[@]}"
meson configure build --no-pager # Print config
#if [ ! -f "build/build.ninja.bak" ]; then
# cp build/build.ninja build/build.ninja.back
#fi
# Evil: Hack build to make proc-macro crate native
# Should become unnecessary with Meson 1.3
#sed -e '/^rule rust_COMPILER$/irule rust_HACK\n command = rustc -C linker=gcc $ARGS $in\n deps = gcc\n depfile = $targetdep\n description = Compiling native Rust source $in\n' \
# -e '/^build src\/gallium\/frontends\/rusticl\/librusticl_proc_macros\.so:/s/rust_COMPILER/rust_HACK/' \
# -e '/^ LINK_ARGS =/s/ src\/gallium\/frontends\/rusticl\/librusticl_proc_macros\.so//' \
# -i build/build.ninja
$NINJAFLAGS meson compile -C build