FFmpeg-Builds/scripts.d/50-vulkan/60-libplacebo.sh

69 lines
1.5 KiB
Bash
Executable File

#!/bin/bash
SCRIPT_REPO="https://code.videolan.org/videolan/libplacebo.git"
SCRIPT_COMMIT="b959cab8b859dc53a6dbd26c050be0b3883114c8"
ffbuild_enabled() {
[[ $ADDINS_STR == *4.4* ]] && return -1
[[ $ADDINS_STR == *5.0* ]] && return -1
[[ $ADDINS_STR == *5.1* ]] && return -1
[[ $ADDINS_STR == *6.0* ]] && return -1
return 0
}
ffbuild_dockerdl() {
default_dl "$SELF"
to_df "RUN git -C \"$SELF\" submodule update --init --recursive"
}
ffbuild_dockerbuild() {
cd "$FFBUILD_DLDIR/$SELF"
mkdir build && cd build
local myconf=(
--prefix="$FFBUILD_PREFIX"
--buildtype=release
--default-library=static
-Dvulkan=enabled
-Dvk-proc-addr=disabled
-Dvulkan-registry="$FFBUILD_PREFIX"/share/vulkan/registry/vk.xml
-Dshaderc=enabled
-Dglslang=disabled
-Ddemos=false
-Dtests=false
-Dbench=false
-Dfuzz=false
)
if [[ $TARGET == win* ]]; then
myconf+=(
-Dd3d11=enabled
)
fi
if [[ $TARGET == win* || $TARGET == linux* ]]; then
myconf+=(
--cross-file=/cross.meson
)
else
echo "Unknown target"
return -1
fi
meson "${myconf[@]}" ..
ninja -j$(nproc)
ninja install
echo "Libs.private: -lstdc++" >> "$FFBUILD_PREFIX"/lib/pkgconfig/libplacebo.pc
}
ffbuild_configure() {
echo --enable-libplacebo
}
ffbuild_unconfigure() {
[[ $ADDINS_STR == *4.4* ]] && return 0
echo --disable-libplacebo
}