endif
LIBX265_DIFFS += libx265-silence.patch
-LIBVPX_VER = 1.13.1
+LIBVPX_VER = 1.14.0
LIBVPX = libvpx-$(LIBVPX_VER)
LIBVPX_TB = $(LIBVPX).tar.gz
LIBVPX_URL = https://github.com/webmproject/libvpx/archive/v$(LIBVPX_VER)/$(LIBVPX_TB)
-LIBVPX_SHA1 = abde9c00ecb478e5740837f96fe8b71e2e029b03
+LIBVPX_SHA1 = f767052bff9043e61d094598cf9a18f38dde8a3e
+LIBVPX_DIFFS = fix_id_1841.patch
LIBOGG = libogg-1.3.4
LIBOGG_TB = $(LIBOGG).tar.gz
$(LIB_ROOT)/$(LIBVPX)/.tvh_download:
$(call DOWNLOAD,$(LIBVPX_URL),$(LIB_ROOT)/$(LIBVPX_TB),$(LIBVPX_SHA1))
$(call UNTAR,$(LIBVPX_TB),z)
+ $(call PATCH,$(LIBVPX)/build/make/,$(LIBVPX_DIFFS))
@touch $@
$(LIB_ROOT)/$(LIBVPX)/.tvh_build: \
--- /dev/null
+--- configure.sh 2024-03-02 19:37:00.000000000 +0000
++++ configure.sh 2024-03-02 19:01:25.000000000 +0000
+@@ -980,33 +980,16 @@
+ case ${toolchain} in
+ arm*)
+ soft_enable runtime_cpu_detect
+- # Arm ISA extensions are treated as supersets.
+- case ${tgt_isa} in
+- arm64|armv8)
+- for ext in ${ARCH_EXT_LIST_AARCH64}; do
+- # Disable higher order extensions to simplify dependencies.
+- if [ "$disable_exts" = "yes" ]; then
+- if ! disabled $ext; then
+- RTCD_OPTIONS="${RTCD_OPTIONS}--disable-${ext} "
+- disable_feature $ext
+- fi
+- elif disabled $ext; then
+- disable_exts="yes"
+- else
+- soft_enable $ext
+- fi
+- done
+- ;;
+- armv7|armv7s)
+- soft_enable neon
+- # Only enable neon_asm when neon is also enabled.
+- enabled neon && soft_enable neon_asm
+- # If someone tries to force it through, die.
+- if disabled neon && enabled neon_asm; then
+- die "Disabling neon while keeping neon-asm is not supported"
+- fi
+- ;;
+- esac
++
++ if [ ${tgt_isa} = "armv7" ] || [ ${tgt_isa} = "armv7s" ]; then
++ soft_enable neon
++ # Only enable neon_asm when neon is also enabled.
++ enabled neon && soft_enable neon_asm
++ # If someone tries to force it through, die.
++ if disabled neon && enabled neon_asm; then
++ die "Disabling neon while keeping neon-asm is not supported"
++ fi
++ fi
+
+ asm_conversion_cmd="cat"
+
+@@ -1228,6 +1211,33 @@
+ fi
+ ;;
+ esac
++ # AArch64 ISA extensions are treated as supersets.
++ if [ ${tgt_isa} = "arm64" ] || [ ${tgt_isa} = "armv8" ]; then
++ aarch64_arch_flag_neon="arch=armv8-a"
++ aarch64_arch_flag_neon_dotprod="arch=armv8.2-a+dotprod"
++ aarch64_arch_flag_neon_i8mm="arch=armv8.2-a+dotprod+i8mm"
++ aarch64_arch_flag_sve="arch=armv8.2-a+dotprod+i8mm+sve"
++ for ext in ${ARCH_EXT_LIST_AARCH64}; do
++ if [ "$disable_exts" = "yes" ]; then
++ RTCD_OPTIONS="${RTCD_OPTIONS}--disable-${ext} "
++ soft_disable $ext
++ else
++ # Check the compiler supports the -march flag for the extension.
++ # This needs to happen after toolchain/OS inspection so we handle
++ # $CROSS etc correctly when checking for flags, else these will
++ # always fail.
++ flag="$(eval echo \$"aarch64_arch_flag_${ext}")"
++ check_gcc_machine_option "${flag}" "${ext}"
++ if ! enabled $ext; then
++ # Disable higher order extensions to simplify dependencies.
++ disable_exts="yes"
++ RTCD_OPTIONS="${RTCD_OPTIONS}--disable-${ext} "
++ soft_disable $ext
++ fi
++ fi
++ done
++ check_neon_sve_bridge_compiles
++ fi
+ ;;
+ mips*)
+ link_with_cc=gcc