Index | Thread | Search

From:
Rafael Sadowski <rafael@sizeofvoid.org>
Subject:
Re: UPDATE: libavif 1.1.0
To:
Brad Smith <brad@comstyle.com>
Cc:
ports@openbsd.org
Date:
Tue, 30 Jul 2024 22:12:58 +0200

Download raw body.

Thread
FAILED: libyuv-populate-prefix/src/libyuv-populate-stamp/libyuv-populate-download /usr/ports/pobj/libavif-1.1.0/build-amd64/_deps/libyuv-subbuild/libyuv-populate-prefix/src/libyuv-populate-stamp/libyuv-populate-download 
cd /usr/ports/pobj/libavif-1.1.0/build-amd64/_deps && /usr/local/bin/cmake -DCMAKE_MESSAGE_LOG_LEVEL=VERBOSE -P /usr/ports/pobj/libavif-1.1.0/build-amd64/_deps/libyuv-subbuild/libyuv-populate-prefix/tmp/libyuv-populate-gitclone.cmake && /usr/local/bin/cmake -E touch /usr/ports/pobj/libavif-1.1.0/build-amd64/_deps/libyuv-subbuild/libyuv-populate-prefix/src/libyuv-populate-stamp/libyuv-populate-download
ninja: build stopped: subcommand failed.

CMake Error at /usr/local/share/cmake/Modules/FetchContent.cmake:1918 (message):
  Build step for libyuv failed: 1
Call Stack (most recent call first):
  /usr/local/share/cmake/Modules/FetchContent.cmake:1609 (__FetchContent_populateSubbuild)
  /usr/local/share/cmake/Modules/FetchContent.cmake:2145:EVAL:2 (__FetchContent_doPopulation)
  /usr/local/share/cmake/Modules/FetchContent.cmake:2145 (cmake_language)
  /usr/local/share/cmake/Modules/FetchContent.cmake:1978:EVAL:1 (__FetchContent_Populate)
  /usr/local/share/cmake/Modules/FetchContent.cmake:1978 (cmake_language)
  cmake/Modules/AvifExternalProjectUtils.cmake:3 (FetchContent_Populate)
  cmake/Modules/LocalLibyuv.cmake:40 (avif_fetchcontent_populate_cmake)
  CMakeLists.txt:200 (include)
  CMakeLists.txt:221 (check_avif_option)


On Fri Jul 19, 2024 at 08:21:59PM GMT, Brad Smith wrote:
> Here is an update to libavif 1.1.0.
> 
> 
> ## [1.1.0] - 2024-07-11
> 
> ### Added since 1.0.0
> * Add experimental API for reading and writing gain maps in AVIF files.
>   If enabled at compile time, add `gainMap` field to `avifImage`,
>   add `qualityGainMap` field to `avifEncoder`, add `gainMapPresent`,
>   `enableDecodingGainMap`, `enableParsingGainMapMetadata` and
>   `ignoreColorAndAlpha` to `avifDecoder`.
>   Utility functions for working with gain maps are also added.
>   Gain maps allow readers that support them to display HDR images that look
>   good on both HDR and SDR displays.
>   This feature is highly experimental. The API might change or be removed
>   in the future. Files created now might not decode in a future version.
>   This feature is off by default and must be enabled with the
>   AVIF_ENABLE_EXPERIMENTAL_GAIN_MAP compilation flag.
> * Add experimental support for converting jpeg files with gain maps to AVIF
>   files with gain maps. Requires libxml2, and the AVIF_ENABLE_EXPERIMENTAL_GAIN_MAP
>   compilation flag.
>   Add a --qgain-map flag to control the gain map quality in avifenc.
> * Add the headerFormat member of new type avifHeaderFormat to avifEncoder.
> * Add experimental API for reading and writing "mif3"-branded AVIF files
>   behind the compilation flag AVIF_ENABLE_EXPERIMENTAL_METAV1.
> * Implement avifImageScale() fallback when libyuv is not available.
> * Partial import of libyuv to third_party/libyuv (new LICENSE).
> * Add avifenc flag suffixes ":update" and ":u". Quality-relative,
>   tiling-relative and codec-specific flags can now be positional, relative to
>   input files.
> * Add experimental support for layered AVIF encoding in avifenc.
>   Use the --layered flag to enable layered AVIF encoding.
>   Layered AVIF has multiple layers, which works like frame of animated AVIF,
>   and layers can be rendered in progressive manner on supported viewers
>   (e.g. Chrome 94 or newer).
>   Only aom supports layered AVIF encoding at the time of writing.
>   Add --scaling-mode flag to set scaling mode of each layer.
>   This part of AV1 encoder is not as thoroughly tested, so there are higher
>   possibility encoder may crash when given certain configuration or input.
> * Add imageSequenceTrackPresent flag to the avifDecoder struct.
> * avifImageScale() function was made part of the public ABI.
> * Add avif_cxx.h as a C++ header with basic functionality.
> * Add enum aliases AVIF_COLOR_PRIMARIES_SRGB, AVIF_COLOR_PRIMARIES_BT2100,
>   AVIF_COLOR_PRIMARIES_DCI_P3, AVIF_TRANSFER_CHARACTERISTICS_PQ.
> * Add avifResult enum entry AVIF_RESULT_INTERNAL_ERROR.
> * Require libyuv by default (but it can still be disabled with
>   -DAVIF_LIBYUV=OFF).
> * Add avifdec --icc flag to override the output color profile.
> * Add experimental API for reading and writing 16-bit AVIF files behind the
>   compilation flag AVIF_ENABLE_EXPERIMENTAL_SAMPLE_TRANSFORM.
> * Add AVIF_CHROMA_SAMPLE_POSITION_RESERVED to avifChromaSamplePosition enum.
> 
> ### Changed since 1.0.0
> * Update aom.cmd: v3.9.1
> * Update avm.cmd: research-v7.0.1
> * Update dav1d.cmd: 1.4.3
> * Update libgav1.cmd: v0.19.0
> * Update libjpeg.cmd: v3.0.3
> * Update libxml2.cmd: v2.12.7
> * Update libyuv.cmd: a6a2ec65
> * Update mp4box.sh: v2.4.0
> * Update rav1e.cmd: v0.7.1
> * Update svt.cmd/svt.sh: v2.1.1
> * Update zlibpng.cmd: zlib 1.3.1 and libpng 1.6.40
> * AVIF sequences encoded by libavif will now also have the "avio" brand when
>   there is at least one track made only of AV1 keyframes.
> * Fix SVT-AV1 codec interface which was not setting video range at encoding.
> * Any item ID being 0 in an "iref" box with version 0 or 1 is now treated as an
>   error instead of being ignored.
> * API calls now return AVIF_RESULT_OUT_OF_MEMORY instead of aborting on memory
>   allocation failure.
> * avifdec and avifenc: Change the default value of the --jobs option from 1 to
>   "all".
> * Update avifCropRectConvertCleanApertureBox() to the revised requirements in
>   ISO/IEC 23000-22:2019/Amd. 2:2021 Section 7.3.6.7.
> * AVIF files with an exif_tiff_header_offset pointing at another byte than the
>   first II or MM tag in the Exif metadata payload will now fail to be decoded.
>   Set decoder->ignoreExif to true to skip the issue and decode the image.
> * Fix memory errors reported in crbug.com/1501766, crbug.com/1501770, and
>   crbug.com/1504792 by [Fudan University](https://secsys.fudan.edu.cn/).
> * For codecs, AVIF_CODEC_* and AVIF_LOCAL_* are now merged into AVIF_CODEC_*
>   that can only take the values: OFF, LOCAL or SYSTEM.
> * For the gtest, jpeg, libsharpyuv, libxml2, libyuv and zlibpng dependencies,
>   AVIF_LOCAL_* is now replaced by flags AVIF_* that can take the values:
>   OFF, LOCAL or SYSTEM.
> * src/reformat.c: Allocate the threadData array directly.
> * AVIF_ENABLE_WERROR is set to OFF by default.
> * Fix wrong alpha plane deallocation when decoded tile pixel format does not
>   match reconstructed output image pixel format (b/320234262).
> * Fix identical chunk skipping optimization when writing animation data
>   (b/321189607).
> * Fix ID selection for artificial grid alpha item when decoding a grid of tiles
>   which each have an associated auxiliary alpha image item
>   (https://crbug.com/oss-fuzz/65657).
> * ext/libjpeg.cmd now pulls libjpeg-turbo instead of libjpeg and AVIF_JPEG=LOCAL
>   now expects the library dependency in ext/libjpeg-turbo/build.libavif.
> * Fix 'iloc' box parsing bugs that may have wrongly accepted, rejected or parsed
>   some files with rare values of offset_size, length_size, base_offset_size and
>   index_size.
> * 'infe' boxes with an item_type different from 'mime' and without a
>   null-terminated item_name are now considered invalid as per ISO/IEC 14496-12.
> 
> 
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/graphics/libavif/Makefile,v
> retrieving revision 1.22
> diff -u -p -u -p -r1.22 Makefile
> --- Makefile	3 Apr 2024 12:13:14 -0000	1.22
> +++ Makefile	19 Jul 2024 22:35:41 -0000
> @@ -2,10 +2,10 @@ COMMENT=	library for encoding and decodi
>  
>  GH_ACCOUNT=	AOMediaCodec
>  GH_PROJECT=	libavif
> -GH_TAGNAME=	v1.0.4
> +GH_TAGNAME=	v1.1.0
>  CATEGORIES=	graphics
>  
> -SHARED_LIBS=	avif	7.0
> +SHARED_LIBS=	avif	7.1
>  
>  HOMEPAGE=	https://github.com/AOMediaCodec/libavif
>  
> @@ -14,12 +14,14 @@ MAINTAINER=	Brad Smith <brad@comstyle.co
>  # BSD
>  PERMIT_PACKAGE=	Yes
>  
> -WANTLIB=	aom c dav1d jpeg m png pthread sharpyuv z
> +WANTLIB=	${COMPILER_LIBCXX} aom c dav1d jpeg m png pthread sharpyuv z
>  
>  COMPILER=	base-clang ports-gcc
>  
>  MODULES=	devel/cmake
>  
> +BUILD_DEPENDS+=	sysutils/ggrep
> +
>  LIB_DEPENDS=	graphics/jpeg \
>  		graphics/png \
>  		graphics/libwebp \
> @@ -28,11 +30,15 @@ LIB_DEPENDS=	graphics/jpeg \
>  
>  CONFIGURE_ARGS+=-DAVIF_BUILD_APPS=ON \
>  		-DAVIF_BUILD_TESTS=ON \
> -		-DAVIF_CODEC_AOM=ON \
> +		-DAVIF_CODEC_AOM=SYSTEM \
>  		-DAVIF_CODEC_AOM_DECODE=OFF \
> -		-DAVIF_CODEC_DAV1D=ON \
> +		-DAVIF_CODEC_DAV1D=SYSTEM \
>  		-DAVIF_ENABLE_GTEST=OFF \
> -		-DCMAKE_DISABLE_FIND_PACKAGE_libyuv=ON
> +		-DAVIF_LIBSHARPYUV=SYSTEM \
> +		-DAVIF_LIBYUV=LOCAL
> +
> +post-extract:
> +	ln -sf ${LOCALBASE}/bin/ggrep ${WRKDIR}/bin/grep
>  
>  do-test:
>  	${WRKBUILD}/tests/aviftest ${WRKSRC}/tests/data
> Index: distinfo
> ===================================================================
> RCS file: /cvs/ports/graphics/libavif/distinfo,v
> retrieving revision 1.16
> diff -u -p -u -p -r1.16 distinfo
> --- distinfo	3 Apr 2024 12:13:14 -0000	1.16
> +++ distinfo	19 Jul 2024 22:35:41 -0000
> @@ -1,2 +1,2 @@
> -SHA256 (libavif-1.0.4.tar.gz) = 3FZwjIOkuTSoryt49n+Ga6L7VoYFx8+UMSrPUe5X0UY=
> -SIZE (libavif-1.0.4.tar.gz) = 10575992
> +SHA256 (libavif-1.1.0.tar.gz) = 7bMZUQBdehQ74XJPJIJYCVmaSDIHOt1Q6vmHcz3vtcg=
> +SIZE (libavif-1.1.0.tar.gz) = 13642536
> Index: pkg/PLIST
> ===================================================================
> RCS file: /cvs/ports/graphics/libavif/pkg/PLIST,v
> retrieving revision 1.5
> diff -u -p -u -p -r1.5 PLIST
> --- pkg/PLIST	11 Mar 2022 19:22:40 -0000	1.5
> +++ pkg/PLIST	19 Jul 2024 22:35:41 -0000
> @@ -2,6 +2,7 @@
>  @bin bin/avifenc
>  include/avif/
>  include/avif/avif.h
> +include/avif/avif_cxx.h
>  lib/cmake/libavif/
>  lib/cmake/libavif/libavif-config${MODCMAKE_BUILD_SUFFIX}
>  lib/cmake/libavif/libavif-config-version.cmake
>