FFmpeg-Builds/scripts.d/50-libvpx.sh
BtbN 009c516860 Run ranlib on libvpx.a after install
libvpx strips it, which mangles the symbol index when LTO is enabled.
ranlib fixes it again.
2022-11-02 22:09:11 +01:00

65 lines
1.4 KiB
Bash
Executable file

#!/bin/bash
SCRIPT_REPO="https://chromium.googlesource.com/webm/libvpx"
SCRIPT_COMMIT="c03c882785dc96ed91799280e68f8998bec50b90"
ffbuild_enabled() {
return 0
}
ffbuild_dockerbuild() {
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libvpx
cd libvpx
local myconf=(
--disable-shared
--enable-static
--enable-pic
--disable-examples
--disable-tools
--disable-docs
--disable-unit-tests
--enable-vp9-highbitdepth
--prefix="$FFBUILD_PREFIX"
)
if [[ $TARGET == win64 ]]; then
myconf+=(
--target=x86_64-win64-gcc
)
export CROSS="$FFBUILD_CROSS_PREFIX"
elif [[ $TARGET == win32 ]]; then
myconf+=(
--target=x86-win32-gcc
)
export CROSS="$FFBUILD_CROSS_PREFIX"
elif [[ $TARGET == linux64 ]]; then
myconf+=(
--target=x86_64-linux-gcc
)
export CROSS="$FFBUILD_CROSS_PREFIX"
elif [[ $TARGET == linuxarm64 ]]; then
myconf+=(
--target=arm64-linux-gcc
)
export CROSS="$FFBUILD_CROSS_PREFIX"
else
echo "Unknown target"
return -1
fi
./configure "${myconf[@]}"
make -j$(nproc)
make install
# Work around strip breaking LTO symbol index
"$RANLIB" "$FFBUILD_PREFIX"/lib/libvpx.a
}
ffbuild_configure() {
echo --enable-libvpx
}
ffbuild_unconfigure() {
echo --disable-libvpx
}