1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- #!/bin/bash
- SCRIPT_REPO="https://github.com/pkuvcl/xavs2.git"
- SCRIPT_COMMIT="eae1e8b9d12468059bdd7dee893508e470fa83d8"
- ffbuild_enabled() {
- [[ $VARIANT == lgpl* ]] && return -1
- [[ $TARGET == win32 ]] && return -1
- # xavs2 aarch64 support is broken
- [[ $TARGET == *arm64 ]] && return -1
- return 0
- }
- ffbuild_dockerdl() {
- echo "git clone \"$SCRIPT_REPO\" . && git checkout \"$SCRIPT_COMMIT\""
- }
- ffbuild_dockerbuild() {
- cd build/linux
- local myconf=(
- --disable-cli
- --enable-static
- --enable-pic
- --disable-avs
- --disable-swscale
- --disable-lavf
- --disable-ffms
- --disable-gpac
- --disable-lsmash
- --extra-asflags="-w-macro-params-legacy"
- --extra-cflags="-Wno-error=incompatible-pointer-types"
- --prefix="$FFBUILD_PREFIX"
- )
- if [[ $TARGET == win* || $TARGET == linux* ]]; then
- myconf+=(
- --host="$FFBUILD_TOOLCHAIN"
- --cross-prefix="$FFBUILD_CROSS_PREFIX"
- )
- else
- echo "Unknown target"
- return -1
- fi
- # Work around configure endian check failing on modern gcc/binutils.
- # Assumes all supported archs are little endian.
- sed -i -e 's/EGIB/bss/g' -e 's/naidnePF/bss/g' configure
- ./configure "${myconf[@]}"
- make -j$(nproc)
- make install
- }
- ffbuild_configure() {
- echo --enable-libxavs2
- }
- ffbuild_unconfigure() {
- echo --disable-libxavs2
- }
|