Index | Thread | Search

From:
Stuart Henderson <stu@spacehopper.org>
Subject:
Re: UPDATE: aom 3.8.1
To:
Jan Beich <jbeich@freebsd.org>
Cc:
Brad Smith <brad@comstyle.com>, ports@openbsd.org
Date:
Wed, 28 Feb 2024 16:40:02 +0000

Download raw body.

Thread
  • Jan Beich:

    UPDATE: aom 3.8.1

  • On 2024/02/28 17:28, Jan Beich wrote:
    > Brad Smith <brad@comstyle.com> writes:
    > 
    > >  GH_ACCOUNT=	jbeich
    > >  GH_PROJECT=	aom
    > > -GH_TAGNAME=	v3.6.1
    > > +GH_TAGNAME=	v3.8.1
    > 
    > If you don't use snapshots or RCs better migrate off my GitHub mirror.
    > According to Repology the download link would be
    > 
    > https://storage.googleapis.com/aom-releases/libaom-3.8.1.tar.gz
    > 
    
    Updated for that. No difference in the contents of the tars after
    extracting.
    
    Index: Makefile
    ===================================================================
    RCS file: /cvs/ports/multimedia/aom/Makefile,v
    retrieving revision 1.20
    diff -u -p -r1.20 Makefile
    --- Makefile	29 May 2023 17:52:01 -0000	1.20
    +++ Makefile	28 Feb 2024 16:39:18 -0000
    @@ -1,13 +1,14 @@
     COMMENT=	Alliance for Open Media AV1 video codec
     
    -GH_ACCOUNT=	jbeich
    -GH_PROJECT=	aom
    -GH_TAGNAME=	v3.6.1
    +V=		3.8.1
    +DISTNAME=	libaom-$V
    +PKGNAME=	aom-$V
     CATEGORIES=	multimedia
     
    -SHARED_LIBS=	aom	4.0
    +SHARED_LIBS=	aom	4.1
     
     HOMEPAGE=	https://aomedia.org/
    +SITES=		https://storage.googleapis.com/aom-releases/
     
     MAINTAINER=	Brad Smith <brad@comstyle.com>
     
    Index: distinfo
    ===================================================================
    RCS file: /cvs/ports/multimedia/aom/distinfo,v
    retrieving revision 1.17
    diff -u -p -r1.17 distinfo
    --- distinfo	29 May 2023 17:52:01 -0000	1.17
    +++ distinfo	28 Feb 2024 16:39:18 -0000
    @@ -1,2 +1,2 @@
    -SHA256 (aom-3.6.1.tar.gz) = Z5xBtBpQucWo+qG6kZ4MI5quf+hXUl4iP/IMVpl/EZ8=
    -SIZE (aom-3.6.1.tar.gz) = 5269397
    +SHA256 (libaom-3.8.1.tar.gz) = 3txlBggSp9+AHAJwov6L13PGuwtgHyFE7PvGLcD2cco=
    +SIZE (libaom-3.8.1.tar.gz) = 5450909
    Index: patches/patch-CMakeLists_txt
    ===================================================================
    RCS file: /cvs/ports/multimedia/aom/patches/patch-CMakeLists_txt,v
    retrieving revision 1.5
    diff -u -p -r1.5 patch-CMakeLists_txt
    --- patches/patch-CMakeLists_txt	9 Apr 2023 06:17:17 -0000	1.5
    +++ patches/patch-CMakeLists_txt	28 Feb 2024 16:39:18 -0000
    @@ -1,12 +1,13 @@
     Index: CMakeLists.txt
     --- CMakeLists.txt.orig
     +++ CMakeLists.txt
    -@@ -824,7 +824,7 @@ if(ENABLE_EXAMPLES AND "${CMAKE_GENERATOR}" MATCHES "M
    - endif()
    - 
    - if(BUILD_SHARED_LIBS)
    --  if(NOT WIN32 AND NOT APPLE)
    -+  if(NOT WIN32 AND NOT APPLE AND NOT CMAKE_SYSTEM_NAME MATCHES "OpenBSD")
    +@@ -828,7 +828,8 @@ if(BUILD_SHARED_LIBS)
    +   # https://clang.llvm.org/docs/AddressSanitizer.html#usage.
    +   if(NOT WIN32
    +      AND NOT APPLE
    +-     AND NOT (CMAKE_C_COMPILER_ID MATCHES "Clang" AND SANITIZE))
    ++     AND NOT (CMAKE_C_COMPILER_ID MATCHES "Clang" AND SANITIZE)
    ++     AND NOT CMAKE_SYSTEM_NAME MATCHES "OpenBSD")
          # The -z defs linker option reports unresolved symbol references from object
          # files when building a shared library.
          if("${CMAKE_VERSION}" VERSION_LESS "3.13")
    Index: patches/patch-aom_ports_aarch32_cpudetect_c
    ===================================================================
    RCS file: patches/patch-aom_ports_aarch32_cpudetect_c
    diff -N patches/patch-aom_ports_aarch32_cpudetect_c
    --- /dev/null	1 Jan 1970 00:00:00 -0000
    +++ patches/patch-aom_ports_aarch32_cpudetect_c	28 Feb 2024 16:39:18 -0000
    @@ -0,0 +1,23 @@
    +Allow ARM CPU runtime detection code to build on OpenBSD.
    +
    +Index: aom_ports/aarch32_cpudetect.c
    +--- aom_ports/aarch32_cpudetect.c.orig
    ++++ aom_ports/aarch32_cpudetect.c
    +@@ -12,7 +12,7 @@
    + 
    + #include "arm_cpudetect.h"
    + 
    +-#if !CONFIG_RUNTIME_CPU_DETECT
    ++#if !CONFIG_RUNTIME_CPU_DETECT || defined(__OpenBSD__)
    + 
    + static int arm_get_cpu_caps(void) {
    +   // This function should actually be a no-op. There is no way to adjust any of
    +@@ -25,7 +25,7 @@ static int arm_get_cpu_caps(void) {
    +   return flags;
    + }
    + 
    +-#elif defined(_MSC_VER)  // end !CONFIG_RUNTIME_CPU_DETECT
    ++#elif defined(_MSC_VER)  // end !CONFIG_RUNTIME_CPU_DETECT || __OpenBSD__
    + 
    + static int arm_get_cpu_caps(void) {
    +   int flags = 0;
    Index: patches/patch-aom_ports_aarch64_cpudetect_c
    ===================================================================
    RCS file: patches/patch-aom_ports_aarch64_cpudetect_c
    diff -N patches/patch-aom_ports_aarch64_cpudetect_c
    --- /dev/null	1 Jan 1970 00:00:00 -0000
    +++ patches/patch-aom_ports_aarch64_cpudetect_c	28 Feb 2024 16:39:18 -0000
    @@ -0,0 +1,23 @@
    +Allow ARM CPU runtime detection code to build on OpenBSD.
    +
    +Index: aom_ports/aarch64_cpudetect.c
    +--- aom_ports/aarch64_cpudetect.c.orig
    ++++ aom_ports/aarch64_cpudetect.c
    +@@ -15,7 +15,7 @@
    + #include <sys/sysctl.h>
    + #endif
    + 
    +-#if !CONFIG_RUNTIME_CPU_DETECT
    ++#if !CONFIG_RUNTIME_CPU_DETECT || defined(__OpenBSD__)
    + 
    + static int arm_get_cpu_caps(void) {
    +   // This function should actually be a no-op. There is no way to adjust any of
    +@@ -28,7 +28,7 @@ static int arm_get_cpu_caps(void) {
    +   return flags;
    + }
    + 
    +-#elif defined(__APPLE__)  // end !CONFIG_RUNTIME_CPU_DETECT
    ++#elif defined(__APPLE__)  // end !CONFIG_RUNTIME_CPU_DETECT || __OpenBSD__
    + 
    + // sysctlbyname() parameter documentation for instruction set characteristics:
    + // https://developer.apple.com/documentation/kernel/1387446-sysctlbyname/determining_instruction_set_characteristics
    Index: patches/patch-aom_ports_arm_cpudetect_c
    ===================================================================
    RCS file: patches/patch-aom_ports_arm_cpudetect_c
    diff -N patches/patch-aom_ports_arm_cpudetect_c
    --- patches/patch-aom_ports_arm_cpudetect_c	29 May 2023 17:52:01 -0000	1.6
    +++ /dev/null	1 Jan 1970 00:00:00 -0000
    @@ -1,23 +0,0 @@
    -Allow ARM CPU runtime detection code to build on OpenBSD.
    -
    -Index: aom_ports/arm_cpudetect.c
    ---- aom_ports/arm_cpudetect.c.orig
    -+++ aom_ports/arm_cpudetect.c
    -@@ -38,7 +38,7 @@ static int arm_cpu_env_mask(void) {
    -   return env && *env ? (int)strtol(env, NULL, 0) : ~0;
    - }
    - 
    --#if !CONFIG_RUNTIME_CPU_DETECT || defined(__APPLE__)
    -+#if !CONFIG_RUNTIME_CPU_DETECT || defined(__APPLE__) || defined(__OpenBSD__)
    - 
    - int aom_arm_cpu_caps(void) {
    -   /* This function should actually be a no-op. There is no way to adjust any of
    -@@ -56,7 +56,7 @@ int aom_arm_cpu_caps(void) {
    -   return flags & mask;
    - }
    - 
    --#elif defined(_MSC_VER) /* end !CONFIG_RUNTIME_CPU_DETECT || __APPLE__ */
    -+#elif defined(_MSC_VER) /* end !CONFIG_RUNTIME_CPU_DETECT || __APPLE__ || __OpenBSD__ */
    - /*For GetExceptionCode() and EXCEPTION_ILLEGAL_INSTRUCTION.*/
    - #undef WIN32_LEAN_AND_MEAN
    - #define WIN32_LEAN_AND_MEAN
    Index: patches/patch-build_cmake_aom_configure_cmake
    ===================================================================
    RCS file: patches/patch-build_cmake_aom_configure_cmake
    diff -N patches/patch-build_cmake_aom_configure_cmake
    --- patches/patch-build_cmake_aom_configure_cmake	9 Apr 2023 06:17:17 -0000	1.10
    +++ /dev/null	1 Jan 1970 00:00:00 -0000
    @@ -1,22 +0,0 @@
    -ARM uses compiler intrinsics, so don't require GNU as.
    -
    -Index: build/cmake/aom_configure.cmake
    ---- build/cmake/aom_configure.cmake.orig
    -+++ build/cmake/aom_configure.cmake
    -@@ -188,16 +188,6 @@ elseif(AOM_TARGET_CPU MATCHES "arm")
    -     endif()
    -   endif()
    -   find_program(as_executable_found ${AS_EXECUTABLE})
    --  if(NOT as_executable_found)
    --    message(
    --      FATAL_ERROR
    --        "Unable to find assembler and optimizations are enabled."
    --        "Searched for ${AS_EXECUTABLE}. Install it, add it to your path, or "
    --        "set the assembler directly by adding -DAS_EXECUTABLE=<assembler path> "
    --        "to your CMake command line."
    --        "To build without optimizations, add -DAOM_TARGET_CPU=generic to your "
    --        "cmake command line.")
    --  endif()
    -   string(STRIP "${AOM_AS_FLAGS}" AOM_AS_FLAGS)
    - endif()
    - 
    Index: patches/patch-third_party_x86inc_x86inc_asm
    ===================================================================
    RCS file: patches/patch-third_party_x86inc_x86inc_asm
    diff -N patches/patch-third_party_x86inc_x86inc_asm
    --- /dev/null	1 Jan 1970 00:00:00 -0000
    +++ patches/patch-third_party_x86inc_x86inc_asm	28 Feb 2024 16:39:18 -0000
    @@ -0,0 +1,28 @@
    +Index: third_party/x86inc/x86inc.asm
    +--- third_party/x86inc/x86inc.asm.orig
    ++++ third_party/x86inc/x86inc.asm
    +@@ -52,6 +52,16 @@
    +     %endif
    + %endif
    + 
    ++%if AOM_ARCH_X86_64
    ++%imacro _endbr64 0
    ++    dd 0xfa1e0ff3
    ++%endmacro
    ++%else
    ++%imacro _endbr64 0
    ++; empty
    ++%endmacro
    ++%endif
    ++
    + %define WIN64  0
    + %define UNIX64 0
    + %if AOM_ARCH_X86_64
    +@@ -860,6 +870,7 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg,
    +     %endif
    +     align function_align
    +     %2:
    ++    _endbr64
    +     RESET_MM_PERMUTATION        ; needed for x86-64, also makes disassembly somewhat nicer
    +     %xdefine rstk rsp           ; copy of the original stack pointer, used when greater alignment than the known stack alignment is required
    +     %assign stack_offset 0      ; stack pointer offset relative to the return address
    
    
    
  • Jan Beich:

    UPDATE: aom 3.8.1