Add experimental libva/vaapi support
This commit is contained in:
parent
fe577307d2
commit
9cfcc851a2
4 changed files with 162 additions and 0 deletions
19
scripts.d/50-vaapi/00-xorg-macros.sh
Executable file
19
scripts.d/50-vaapi/00-xorg-macros.sh
Executable file
|
@ -0,0 +1,19 @@
|
|||
#!/bin/bash
|
||||
|
||||
XORGMACROS_REPO="https://gitlab.freedesktop.org/xorg/util/macros.git"
|
||||
XORGMACROS_COMMIT="b8766308d2f78bc572abe5198007cf7aeec9b761"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$XORGMACROS_REPO" "$XORGMACROS_COMMIT" xorg-macros
|
||||
cd xorg-macros
|
||||
|
||||
autoreconf -i
|
||||
./configure --prefix="/usr"
|
||||
make -j"$(nproc)"
|
||||
make install
|
||||
}
|
37
scripts.d/50-vaapi/30-libpciaccess.sh
Executable file
37
scripts.d/50-vaapi/30-libpciaccess.sh
Executable file
|
@ -0,0 +1,37 @@
|
|||
#!/bin/bash
|
||||
|
||||
LIBPCIACCESS_REPO="https://gitlab.freedesktop.org/xorg/lib/libpciaccess.git"
|
||||
LIBPCIACCESS_COMMIT="9c01fdd7c02d8b9b5003e659ebca0b3643bd47c4"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$LIBPCIACCESS_REPO" "$LIBPCIACCESS_COMMIT" libpciaccess
|
||||
cd libpciaccess
|
||||
|
||||
autoreconf -fi
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--with-pic
|
||||
--with-zlib
|
||||
)
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
}
|
54
scripts.d/50-vaapi/40-libdrm.sh
Executable file
54
scripts.d/50-vaapi/40-libdrm.sh
Executable file
|
@ -0,0 +1,54 @@
|
|||
#!/bin/bash
|
||||
|
||||
LIBDRM_REPO="https://gitlab.freedesktop.org/mesa/drm.git"
|
||||
LIBDRM_COMMIT="9cef5dee3cd817728c83aeb3c2010c1954e4c402"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$LIBDRM_REPO" "$LIBDRM_COMMIT" libdrm
|
||||
cd libdrm
|
||||
|
||||
mkdir build && cd build
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
-Ddefault_library=static
|
||||
-Dlibkms=false
|
||||
-Dudev=false
|
||||
-Dcairo-tests=false
|
||||
-Dvalgrind=false
|
||||
-Dexynos=false
|
||||
-Dfreedreno=false
|
||||
-Domap=false
|
||||
-Detnaviv=false
|
||||
-Dintel=true
|
||||
-Dnouveau=true
|
||||
-Dradeon=true
|
||||
-Damdgpu=true
|
||||
)
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--cross-file=/cross.meson
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
meson "${myconf[@]}" ..
|
||||
ninja -j$(nproc)
|
||||
ninja install
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-libdrm
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libdrm
|
||||
}
|
52
scripts.d/50-vaapi/50-libva.sh
Executable file
52
scripts.d/50-vaapi/50-libva.sh
Executable file
|
@ -0,0 +1,52 @@
|
|||
#!/bin/bash
|
||||
|
||||
LIBVA_REPO="https://github.com/intel/libva.git"
|
||||
LIBVA_COMMIT="6e86b4fb4dafa123b1e31821f61da88f10cfbe91"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$LIBVA_REPO" "$LIBVA_COMMIT" libva
|
||||
cd libva
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--with-pic
|
||||
--disable-docs
|
||||
--enable-drm
|
||||
--disable-x11
|
||||
--disable-glx
|
||||
--disable-wayland
|
||||
)
|
||||
|
||||
if [[ $TARGET == linux64 ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
--with-drivers-path="/usr/lib/x86_64-linux-gnu/dri"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
echo "Libs.private: -ldl" >> "$FFBUILD_PREFIX"/lib/pkgconfig/libva.pc
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-vaapi
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-vaapi
|
||||
}
|
Loading…
Reference in a new issue