diff --git a/multimedia/aom/Makefile b/multimedia/aom/Makefile index c7fa819d6008..b5dde536cff5 100644 --- a/multimedia/aom/Makefile +++ b/multimedia/aom/Makefile @@ -1,44 +1,44 @@ PORTNAME= aom -DISTVERSION= 3.12.1 +DISTVERSION= 3.13.0 CATEGORIES= multimedia MASTER_SITES= https://storage.googleapis.com/${PORTNAME}-releases/ DISTNAME= lib${PORTNAME}-${DISTVERSION} MAINTAINER= jbeich@FreeBSD.org COMMENT= AV1 reference encoder/decoder WWW= https://aomedia.org/ LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${BUILD_DEPENDS_${ARCH}} BUILD_DEPENDS_amd64= nasm:devel/nasm BUILD_DEPENDS_i386= nasm:devel/nasm USES= cmake compiler:c++11-lib perl5 USE_PERL5= build USE_LDCONFIG= yes CMAKE_ON= BUILD_SHARED_LIBS CMAKE_OFF= ENABLE_DOCS ENABLE_TESTS PLIST_SUB= VERSION=${PORTVERSION} OPTIONS_DEFINE= JXL VMAF OPTIONS_DEFAULT=JXL VMAF OPTIONS_EXCLUDE=JXL # https://bugs.chromium.org/p/aomedia/issues/detail?id=3457 JXL_DESC= Encoding tuning for Butteraugli JXL_LIB_DEPENDS= libjxl.so:graphics/libjxl JXL_USES= pkgconfig JXL_CMAKE_ON= -DCONFIG_TUNE_BUTTERAUGLI:STRING=1 VMAF_DESC= Encoding tuning for VMAF VMAF_LIB_DEPENDS= libvmaf.so:multimedia/vmaf VMAF_USES= pkgconfig VMAF_CMAKE_ON= -DCONFIG_TUNE_VMAF:STRING=1 post-patch: # Extract (snapshot) version from the port instead of CHANGELOG @${REINPLACE_CMD} 's,$${AOM_ROOT}/CHANGELOG,${DISTVERSIONFULL:S/^v//},' \ ${WRKSRC}/build/cmake/version.cmake .include diff --git a/multimedia/aom/distinfo b/multimedia/aom/distinfo index 1e9af09f01fe..86c297daf08f 100644 --- a/multimedia/aom/distinfo +++ b/multimedia/aom/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1744403869 -SHA256 (libaom-3.12.1.tar.gz) = 9e9775180dec7dfd61a79e00bda3809d43891aee6b2e331ff7f26986207ea22e -SIZE (libaom-3.12.1.tar.gz) = 5497367 +TIMESTAMP = 1756846798 +SHA256 (libaom-3.13.0.tar.gz) = 5fe4453a8ffba138a6705a2f6d07666146a706342ef835ee82bf9e70bf9a77d6 +SIZE (libaom-3.13.0.tar.gz) = 6253910 diff --git a/multimedia/aom/files/patch-aom__ports_ppc__cpudetect.c b/multimedia/aom/files/patch-aom__ports_ppc__cpudetect.c index 271e41579143..91461196c7ba 100644 --- a/multimedia/aom/files/patch-aom__ports_ppc__cpudetect.c +++ b/multimedia/aom/files/patch-aom__ports_ppc__cpudetect.c @@ -1,66 +1,73 @@ - Implement VSX detection on FreeBSD ---- aom_ports/ppc_cpudetect.c.orig 2021-07-20 22:23:15 UTC +--- aom_ports/ppc_cpudetect.c.orig 2025-09-02 20:59:58 UTC +++ aom_ports/ppc_cpudetect.c -@@ -9,12 +9,6 @@ +@@ -9,18 +9,11 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include -#include -#include --#include --#include - #include "config/aom_config.h" #include "aom_ports/ppc.h" -@@ -37,6 +31,13 @@ static int cpu_env_mask(void) { + + #if CONFIG_RUNTIME_CPU_DETECT +-#include +-#include +- + static int cpu_env_flags(int *flags) { + char *env; + env = getenv("AOM_SIMD_CAPS"); +@@ -38,6 +31,13 @@ static int cpu_env_mask(void) { return env && *env ? (int)strtol(env, NULL, 0) : ~0; } +#if defined(__linux__) +#include +#include +#include +#include +#include + int ppc_simd_caps(void) { int flags; int mask; -@@ -75,6 +76,34 @@ out_close: +@@ -76,7 +76,35 @@ out_close: close(fd); return flags & mask; } +#elif defined(__FreeBSD__) +#include +#include + +int ppc_simd_caps(void) { + int flags; + int mask; + u_long hwcap = 0; + + // If AOM_SIMD_CAPS is set then allow only those capabilities. + if (!cpu_env_flags(&flags)) { + return flags; + } + + mask = cpu_env_mask(); + + elf_aux_info(AT_HWCAP, &hwcap, sizeof(hwcap)); +#if HAVE_VSX + if (hwcap & PPC_FEATURE_HAS_VSX) flags |= HAS_VSX; +#endif + + return flags & mask; +} -+#else + #else +#error \ + "--enable-runtime-cpu-detect selected, but no CPU detection method " \ +"available for your platform. Reconfigure with --disable-runtime-cpu-detect." +#endif /* end __FreeBSD__ */ - #else ++#else // If there is no RTCD the function pointers are not used and can not be // changed. + int ppc_simd_caps(void) { return 0; } diff --git a/multimedia/aom/pkg-plist b/multimedia/aom/pkg-plist index fca3d5c5c228..9a08e39953a4 100644 --- a/multimedia/aom/pkg-plist +++ b/multimedia/aom/pkg-plist @@ -1,17 +1,21 @@ bin/aomdec bin/aomenc include/aom/aom.h include/aom/aom_codec.h include/aom/aom_decoder.h include/aom/aom_encoder.h include/aom/aom_external_partition.h include/aom/aom_frame_buffer.h include/aom/aom_image.h include/aom/aom_integer.h include/aom/aomcx.h include/aom/aomdx.h +lib/cmake/AOM/AOMConfig.cmake +lib/cmake/AOM/AOMConfigVersion.cmake +lib/cmake/AOM/AOMTargets-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/AOM/AOMTargets.cmake lib/libaom.a lib/libaom.so lib/libaom.so.3 lib/libaom.so.%%VERSION%% libdata/pkgconfig/aom.pc