- Enable building with aom and libyuv for Leap

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/libavif?expand=0&rev=62
This commit is contained in:
Takashi Iwai 2024-09-13 09:10:49 +00:00 committed by Git OBS Bridge
commit 36021419be
7 changed files with 657 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

1
baselibs.conf Normal file
View File

@ -0,0 +1 @@
libavif16

3
libavif-1.0.4.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:dc56708c83a4b934a8af2b78f67f866ba2fb568605c7cf94312acf51ee57d146
size 10575992

3
libavif-1.1.1.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:914662e16245e062ed73f90112fbb4548241300843a7772d8d441bb6859de45b
size 13644189

481
libavif.changes Normal file
View File

@ -0,0 +1,481 @@
-------------------------------------------------------------------
Tue Sep 10 10:31:03 UTC 2024 - Carsten Ziepke <kieltux@gmail.com>
- Enable building with aom and libyuv for Leap
-------------------------------------------------------------------
Sat Aug 31 15:13:53 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 1.1.1:
* In avif.h, change "AVIF_API AVIF_NODISCARD" back to
"AVIF_NODISCARD AVIF_API" to fix clang-cl and MSVC compilation
errors in the shared library build on Windows.
* Fix -DAVIF_GTEST=SYSTEM
* Fix infe_type and codec_config_type wrongly read as byte-
aligned fields in the
* experimental feature AVIF_ENABLE_EXPERIMENTAL_METAV1.
* When building aom as a local dependency, runtime CPU
detection (`CONFIG_RUNTIME_CPU_DETECT`) is now always `ON`;
* Fix CMake config shared library leaks
* Update gain map metadata to current ISO 21496-1 draft.
* cmake: Only search for ASM_NASM language on x86_64 platforms.
* Fix "No known features for CXX compiler" CMake error.
* Fix aom link flags so that transitive library link flags are
included when aom is a static library
* Fix out-of-order 'dimg' grid associations
* Report files with an item used in multiple 'dimg' boxes with
* AVIF_RESULT_NOT_IMPLEMENTED instead of
AVIF_RESULT_INVALID_IMAGE_GRID.
* 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.
* 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
* 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.
-------------------------------------------------------------------
Sun Mar 17 09:23:56 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 1.0.4:
* 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
* Fix identical chunk skipping optimization when writing
animation data
* 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).
-------------------------------------------------------------------
Thu Dec 21 09:27:03 UTC 2023 - Andreas Stieger <andreas.stieger@gmx.de>
- update to 1.0.3:
* Rewrite the fix for memory errors fixed in 1.0.2
* CVE-2023-6704: Fix use-after-free errors (boo#1218303)
* src/reformat.c: Allocate the threadData array directly
-------------------------------------------------------------------
Tue Nov 28 20:40:32 UTC 2023 - Andreas Stieger <andreas.stieger@gmx.de>
- update to 1.0.2:
* Update avifCropRectConvertCleanApertureBox() to the revised
requirements in ISO/IEC 23000-22:2019/Amd. 2:2021 Section
7.3.6.7.
* CVE-2023-6350: Out of bounds memory to alphaItemIndices (boo#1217614)
* CVE-2023-6351: use-after-free in colorProperties (boo#1217615)
- drop fix-gdkpixbuf.patch
-------------------------------------------------------------------
Tue Aug 29 05:18:59 UTC 2023 - Paolo Stivanin <info@paolostivanin.com>
- Update to 1.0.0:
* Incompatible changes:
+ The clli member was added to the avifImage struct.
+ The repetitionCount member was added to the avifEncoder and avifDecoder
structs.
+ The quality and qualityAlpha members were added to the avifEncoder struct.
+ Check that functions returning pointers do not return NULL before accessing
those pointers.
+ Check the return value of avifEncoderSetCodecSpecificOption().
+ The maxThreads member was added to the avifRGBImage struct.
+ Check the return value of avifRGBImageAllocatePixels(), avifRWDataRealloc(),
avifRWDataSet(), avifImageSetProfileICC(), avifImageSetMetadataExif() and
avifImageSetMetadataXMP().
+ The meaning of the keyframeInterval member of avifEncoder struct has changed
slightly. When set to a value of "n",
Before: It forces a keyframe on every nth frame.
After: Any set of "n" consecutive frame will have at least one keyframe
(every nth frame may or may not be a keyframe).
* Added:
+ Add clli metadata read and write support
+ Add repetitionCount member to avifEncoder and avifDecoder structs to specify
the number of repetitions for animated image sequences.
+ Add quality and qualityAlpha to avifEncoder. Note: minQuantizer,
maxQuantizer, minQuantizerAlpha, and maxQuantizerAlpha are deprecated. Code
should be updated to set quality (and qualityAlpha if applicable) and leave
minQuantizer, maxQuantizer, minQuantizerAlpha, and maxQuantizerAlpha
initialized to the default values.
+ The --target-size flag in avifenc was added to adapt the quality so that the
output file size is as close to the given number of bytes as possible.
+ Add the public API function avifImageIsOpaque() in avif.h.
+ Add the public API functions avifImagePlane(), avifImagePlaneRowBytes(),
avifImagePlaneWidth(), and avifImagePlaneHeight() in avif.h.
+ Add API for multi-threaded YUV to RGB color conversion.
+ Allow lossless 4:0:0 on grayscale input.
+ Add avifenc --no-overwrite flag to avoid overwriting output file.
+ Add avifenc --clli flag to set clli.
+ Add support for all transfer functions when using libsharpyuv.
* Changed:
+ Exif and XMP metadata is exported to PNG and JPEG files by default,
except XMP payloads larger than 65502 bytes in JPEG.
+ The --grid flag in avifenc can be used for images that are not evenly divided
into cells.
+ Change the encoder to write the boxes within the "stbl" box in the order of
stsd, stts, stsc, stsz, stco, stss.
+ avifImageRGBToYUV() and avifImageYUVToRGB() handle avifImage bit depths 8, 10,
12 and now also 16. Files read by apps/shared/ can output 16-bit avifImage
instances.
+ avifImageCreate(), avifImageCreateEmpty(), avifEncoderCreate() and other
internal functions now return NULL if a memory allocation failed.
+ avifEncoderSetCodecSpecificOption() now returns avifResult instead of void to
report memory allocation failures.
- Add fix-gdkpixbuf.patch.
-------------------------------------------------------------------
Sun May 7 14:52:35 UTC 2023 - Arjen de Korte <suse+build@de-korte.org>
- Add BuildRequires pkgconfig(libwebp) to enable libsharpyuv
-------------------------------------------------------------------
Mon Nov 14 11:41:20 UTC 2022 - ecsos <ecsos@opensuse.org>
- Update to version 0.11.1:
* Changed:
- avifincrtest_helpers: Cast 64-bit offset to size_t
- avifmetadatatest: don't include avif/internal.h
- avifrgbtoyuvtest: skip if no libsharpyuv
- Disable tests that may fail if the codec is not aom (#1176)
-------------------------------------------------------------------
Thu Oct 27 19:02:16 UTC 2022 - Cristian Rodríguez <crrodriguez@opensuse.org>
- Remove unused BuildRequires on nasm
- Remove indirect/incorrect Buildrequires on zlib
- add direct glib Buildrequires
-------------------------------------------------------------------
Sat Oct 15 12:28:59 UTC 2022 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 0.11.0:
* There are incompatible ABI changes in this release. The
alphaRange member was removed from the avifImage struct. The
chromaDownsampling and avoidLibYUV members were added to the
avifRGBImage struct. The imageDimensionLimit member was added
to the avifDecoder struct. avifImageCopy() and
avifImageAllocatePlanes() signatures changed. It is necessary
to recompile your code. Also check the return values of
avifImageCopy() and avifImageAllocatePlanes().
* Added:
- Add man pages for avifenc and avifdec
- Add the avifChannelIndex type alias for enum avifChannelIndex
- Add avifChromaDownsampling enum
- Add chromaDownsampling field to avifRGBImage struct
- Add support for AVIF_RGB_FORMAT_RGB_565
- Add imageDimensionLimit field to avifDecoder struct
- Add autoTiling field to avifEncoder struct
- Add new avifResult codes AVIF_RESULT_CANNOT_CHANGE_SETTING
and AVIF_RESULT_INCOMPATIBLE_IMAGE
- Add new enum constants AVIF_PIXEL_FORMAT_COUNT and
AVIF_RGB_FORMAT_COUNT
- avifdec: Add --dimension-limit, which specifies the image
dimension limit (width or height) that should be tolerated
- avifenc: Add --sharpyuv, which enables "sharp" RGB to YUV420
conversion, which reduces artifacts caused by 420 chroma
downsampling. Needs libsharpyuv (part of the libwebp
repository) at compile time.
- avifenc: Add --ignore-exif and --ignore-xmp flags.
- avifenc: Add --autotiling, which sets --tilerowslog2 and
--tilecolslog2 automatically.
- avifenc: Input Exif orientation is converted to irot/imir by
default.
* Changed:
- Fix memory leaks of metadata on avifenc exit
- Update the handling of 'lsel' and progressive decoding to
AVIF spec v1.1.0
- Treat an absent lsel and layer_id == 0xFFFF equivalently for
backward compatibility with earlier drafts of AVIF spec
v1.1.0
- Set libavif's own default value of cfg.rc_end_usage for
libaom
- Set the libaom-specific option -a tune=ssim by default
- Bump cmake_minimum_required from 3.5 to 3.13
- Fix https://crbug.com/oss-fuzz/48135
- Use several new libyuv functions in reformat_libyuv.c
- Fix SVT-AV1's issue 1957 related to uninitialized variables
crashing the encoder
- Update aom.cmd: v3.5.0
- Update rav1e.cmd: v0.5.1
- Update svt.cmd/svt.sh: v1.2.1
- Update libgav1.cmd: v0.18.0
- Update libyuv.cmd: f9fda6e7 (version 1844)
- avifImageCopy() and avifImageAllocatePlanes() now return
avifResult instead of void to report invalid parameters or
memory allocation failures.
- avifImageRGBToYUV() now uses libyuv fast paths by default. It
may slightly change conversion results. The old behavior can
be restored by setting avifRGBImage::chromaDownsampling to
AVIF_CHROMA_DOWNSAMPLING_BEST_QUALITY and
avifRGBImage::avoidLibYUV to AVIF_TRUE.
- avifRGBImage::chromaUpsampling now only applies to
conversions that need upsampling chroma from 4:2:0 or 4:2:2
and has no impact on the use of libyuv.
- Set avifRGBImage::avoidLibYUV accordingly to control the use
of libyuv.
- avifenc: Set the YUV format to 4:0:0 for grayscale PNGs
- Support updating encoder settings and codec-specific options
during encoding
- Disable AVIF_STRICT_CLAP_VALID and AVIF_STRICT_PIXI_REQUIRED
in the JNI wrapper
- avifdec: Return proper exit code in "info" mode
- In avifenc and avifdec, treat all arguments that start with
'-' as options
- Exif and XMP metadata is imported from PNG and JPEG files.
- avifImageSetMetadataExif() parses the Exif metadata and
converts any Exif orientation found into transformFlags, irot
and imir values.
- Write 'auxi' box for animated images with alpha channel
- Write 'auxv' as handler_type for alpha channel track
- Use PNG_COLOR_TYPE_GRAY for 8-bit grayscale output
- Replace repeated subtraction by modulo in calcGCD
- Change avifImageCreate to take uint32_t instead of int
parameters
- When writing an image sequence, check if it's safe to cast
width and height to uint16_t
- Allow clamped grid cells in avifEncoderAddImageGrid()
* Removed:
- alphaRange field was removed from the avifImage struct. It it
presumed that alpha plane is always full range.
- The avifCodecConfigurationBox struct becomes a private type
for libavif internal use
- Bump lib_soversion global (also in baselibs.conf) to 15 following
upstream change.
- Use ldconfig_scriptlets for post(un) handling.
-------------------------------------------------------------------
Sat Jul 30 13:32:08 UTC 2022 - Callum Farmer <gmbr3@opensuse.org>
- Enable libyuv on TW
-------------------------------------------------------------------
Sun Apr 24 20:01:35 UTC 2022 - Dirk Müller <dmueller@suse.com>
- update to 0.10.1:
* tests/docker/build.sh: Build SVT-AV1 using cmake and ninja directly
* Fix a Visual Studio 2017 compiler warning in src\reformat.c: warning C4204:
nonstandard extension used: non-constant aggregate initializer
* Fix the help message of avifdec: --index takes a value
-------------------------------------------------------------------
Fri Apr 8 15:49:30 UTC 2022 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.10.0
* See https://github.com/AOMediaCodec/libavif/blob/v0.10.0/CHANGELOG.md
for a complete changelog or check the CHANGELOG.md in the doc directory.
-------------------------------------------------------------------
Sat Dec 25 10:23:55 UTC 2021 - Andreas Schneider <asn@cryptomilk.org>
- Disable libaom and use rav1e by default
* As PHP 8.1 has AVIF support, use rav1e by default as it is more
secure being written in Rust.
-------------------------------------------------------------------
Thu Oct 21 07:56:31 UTC 2021 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.9.3
* See https://github.com/AOMediaCodec/libavif/blob/v0.9.3/CHANGELOG.md
for a complete changelog.
-------------------------------------------------------------------
Thu Jun 24 18:13:26 UTC 2021 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.9.2
* See https://github.com/AOMediaCodec/libavif/blob/v0.9.2/CHANGELOG.md
for a complete changelog.
-------------------------------------------------------------------
Thu May 20 06:36:55 UTC 2021 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.9.1
* See https://github.com/AOMediaCodec/libavif/blob/v0.9.1/CHANGELOG.md
for a complete changelog.
-------------------------------------------------------------------
Tue Apr 13 06:20:37 UTC 2021 - Dominique Leuenberger <dimstar@opensuse.org>
- Add baselibs.conf: produce libavif10-32bit as a new dependency to
libgd3-32bit (support avif in libgd).
-------------------------------------------------------------------
Mon Mar 15 10:40:45 UTC 2021 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.9.0
* See https://github.com/AOMediaCodec/libavif/blob/v0.9.0/CHANGELOG.md
for a complete changelog.
-------------------------------------------------------------------
Wed Jan 13 13:30:40 UTC 2021 - Bjørn Lie <bjorn.lie@gmail.com>
- Build the gdk-pixbuf module: Add pkgconfig(gdk-pixbuf-2.0)
BuildRequires and pass DAVIF_BUILD_GDK_PIXBUF=ON to cmake.
Package the resulting loader in a new sub package.
- Use cmake_build macro.
-------------------------------------------------------------------
Wed Dec 9 15:59:14 UTC 2020 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.8.4
* See https://github.com/AOMediaCodec/libavif/blob/v0.8.4/CHANGELOG.md
for a complete changelog.
-------------------------------------------------------------------
Thu Oct 15 08:17:41 UTC 2020 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.8.2
* See https://github.com/AOMediaCodec/libavif/blob/master/CHANGELOG.md
for a complete changelog.
-------------------------------------------------------------------
Mon Aug 17 13:35:27 UTC 2020 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.8.1
* See https://github.com/AOMediaCodec/libavif/blob/master/CHANGELOG.md
for a complete changelog.
- Enabled AOM support (default)
-------------------------------------------------------------------
Tue Jul 21 06:05:19 UTC 2020 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.8.0
* See https://github.com/AOMediaCodec/libavif/blob/master/CHANGELOG.md
for a complete changelog.
-------------------------------------------------------------------
Tue May 5 12:58:13 UTC 2020 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.7.3
* See https://github.com/AOMediaCodec/libavif/blob/master/CHANGELOG.md
for a complete changelog.
* Removed e4e5d752ece581d6ef9fbb8bab0ab2edfde13fc5.patch
* Removed ebb29b37711c749681278f8b778f0e6c031c4ca2.patch
* Removed e7dcc74b5529da209266020852a72b554461e538.patch
-------------------------------------------------------------------
Mon May 4 15:15:50 UTC 2020 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.7.2
* See https://github.com/AOMediaCodec/libavif/blob/master/CHANGELOG.md
for a complete changelog.
* Added e4e5d752ece581d6ef9fbb8bab0ab2edfde13fc5.patch
* Added ebb29b37711c749681278f8b778f0e6c031c4ca2.patch
* Added e7dcc74b5529da209266020852a72b554461e538.patch
-------------------------------------------------------------------
Thu Apr 23 10:39:15 UTC 2020 - Ismail Dönmez <idonmez@suse.com>
- Update to version 0.7.1
* See https://github.com/AOMediaCodec/libavif/blob/master/CHANGELOG.md
for a complete changelog.
- Add BR on libjpeg8-devel
-------------------------------------------------------------------
Wed Mar 11 06:51:01 UTC 2020 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.6.2
https://github.com/AOMediaCodec/libavif/blob/master/CHANGELOG.md
-------------------------------------------------------------------
Wed Mar 11 06:10:27 UTC 2020 - Andreas Schneider <asn@cryptomilk.org>
- If we want to build with aom, require version >= 1.1.0
- Removed cbcf62c2200be83b85b48059c819ae708216ccec.patch
-------------------------------------------------------------------
Wed Mar 4 15:09:24 UTC 2020 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.5.7
https://github.com/AOMediaCodec/libavif/releases/tag/v0.5.7
-------------------------------------------------------------------
Sun Feb 16 19:03:03 UTC 2020 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.5.5
https://github.com/AOMediaCodec/libavif/releases/tag/v0.5.5
- Rename libavif-tools to avif-tools
This fixes an rpmlint warning
-------------------------------------------------------------------
Wed Dec 11 18:10:04 UTC 2019 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.5.3
https://github.com/AOMediaCodec/libavif/releases/tag/v0.5.3
-------------------------------------------------------------------
Sun Nov 24 16:33:34 UTC 2019 - Marcus Rueckert <mrueckert@suse.de>
- update to 0.5.2
https://github.com/AOMediaCodec/libavif/releases/tag/v0.5.2
-------------------------------------------------------------------
Fri Nov 22 07:10:11 UTC 2019 - Marcus Rueckert <mrueckert@suse.de>
- update to 0.5.1
https://github.com/AOMediaCodec/libavif/releases/tag/v0.5.1
https://github.com/AOMediaCodec/libavif/releases/tag/v0.5.0
-------------------------------------------------------------------
Wed Nov 20 14:00:20 UTC 2019 - Marcus Rueckert <mrueckert@suse.de>
- support building with libaom 1.0.0
https://github.com/cryptomilk/libavif/commit/cbcf62c2200be83b85b48059c819ae708216ccec.patch
-------------------------------------------------------------------
Wed Nov 20 13:51:36 UTC 2019 - Marcus Rueckert <mrueckert@suse.de>
- update to 0.4.8
https://github.com/AOMediaCodec/libavif/releases/tag/v0.4.8
- drop libs.patch
-------------------------------------------------------------------
Mon Nov 18 23:42:37 UTC 2019 - Marcus Rueckert <mrueckert@suse.de>
- initial package

145
libavif.spec Normal file
View File

@ -0,0 +1,145 @@
#
# spec file for package libavif
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# Also update baselibs.conf if you bump the version
%global lib_soversion 16
%global lib_name libavif%{lib_soversion}
Name: libavif
Version: 1.1.1
Release: 0
Summary: Library for encoding and decoding .avif files
License: BSD-2-Clause
Group: Development/Libraries/C and C++
URL: https://github.com/AOMediaCodec/libavif
Source: https://github.com/AOMediaCodec/libavif/archive/v%{version}/%{name}-%{version}.tar.gz
Source99: baselibs.conf
BuildRequires: c++_compiler
BuildRequires: cmake
BuildRequires: libjpeg8-devel
BuildRequires: pkgconfig
BuildRequires: pkgconfig(aom) >= 2.0.0
BuildRequires: pkgconfig(dav1d)
BuildRequires: pkgconfig(gdk-pixbuf-2.0)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(libpng) >= 1.6.32
BuildRequires: pkgconfig(libwebp)
BuildRequires: pkgconfig(libyuv)
BuildRequires: pkgconfig(rav1e) >= 0.5.0
%description
This library aims to be a friendly, portable C implementation of the AV1 Image
File Format, as described here:
https://aomediacodec.github.io/av1-avif/
%package -n avif-tools
Summary: Tools for libavif
Group: Productivity/Graphics/Convertors
Provides: libavif-tools = %{version}
Obsoletes: libavif-tools < %{version}
%description -n avif-tools
This library aims to be a friendly, portable C implementation of the AV1 Image
File Format, as described here:
https://aomediacodec.github.io/av1-avif/
This package holds the commandline tools for libavif.
%package -n %{lib_name}
#
Summary: Shared library from libavif
Group: Development/Libraries/C and C++
%description -n %{lib_name}
This library aims to be a friendly, portable C implementation of the AV1 Image
File Format, as described here:
https://aomediacodec.github.io/av1-avif/
This package holds the shared library for libavif.
%package -n gdk-pixbuf-loader-libavif
Summary: AVIF image loader for GTK+ applications
Group: Development/Libraries/C and C++
%description -n gdk-pixbuf-loader-libavif
A pixbuf-loader plugin to load AVIF images in GTK+ applications.
%package devel
#
Summary: Development files for libavif
Group: Development/Libraries/C and C++
Requires: %{lib_name} = %{version}-%{release}
%description devel
This library aims to be a friendly, portable C implementation of the AV1 Image
File Format, as described here:
https://aomediacodec.github.io/av1-avif/
This package holds the development files for libavif.
%prep
%autosetup -p1
%build
%cmake \
-DAVIF_CODEC_AOM=SYSTEM \
-DAVIF_CODEC_DAV1D=SYSTEM \
-DAVIF_CODEC_RAV1E=SYSTEM \
-DAVIF_GTEST=SYSTEM \
-DAVIF_JPEG=SYSTEM \
-DAVIF_LIBXML2=SYSTEM \
-DAVIF_LIBYUV=SYSTEM \
-DAVIF_ZLIBPNG=SYSTEM \
-DAVIF_BUILD_APPS:BOOL=ON \
-DAVIF_BUILD_EXAMPLES:BOOL=ON \
-DAVIF_BUILD_GDK_PIXBUF=ON
%cmake_build
%install
%cmake_install
%ldconfig_scriptlets -n %{lib_name}
%files -n %{lib_name}
%license LICENSE
%{_libdir}/libavif.so.%{lib_soversion}*
%files devel
%license LICENSE
%{_libdir}/libavif.so
%{_includedir}/avif/
%{_libdir}/cmake/libavif/
%{_libdir}/pkgconfig/libavif.pc
%files -n avif-tools
%doc *.md
%license LICENSE
%{_bindir}/avifdec
%{_bindir}/avifenc
%files -n gdk-pixbuf-loader-libavif
%license LICENSE
%{_libdir}/gdk-pixbuf-2.0/*/loaders/libpixbufloader-avif.so
%dir %{_datadir}/thumbnailers
%{_datadir}/thumbnailers/avif.thumbnailer
%changelog