public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: Igor Raits <ignatenkobrain@fedoraproject.org>
To: git-commits@fedoraproject.org
Subject: [rpms/libavif] epel9-next: Update to 0.7.3
Date: Tue, 14 Jul 2026 21:39:46 GMT [thread overview]
Message-ID: <178406518638.1.5978060381020691911.rpms-libavif-01fe6c8ab9cb@fedoraproject.org> (raw)
A new commit has been pushed.
Repo : rpms/libavif
Branch : epel9-next
Commit : 01fe6c8ab9cb9fe19be954fa78e3fc01de903b45
Author : Igor Raits <ignatenkobrain@fedoraproject.org>
Date : 2020-05-22T12:02:09+02:00
Stats : +7/-466 in 4 file(s)
URL : https://src.fedoraproject.org/rpms/libavif/c/01fe6c8ab9cb9fe19be954fa78e3fc01de903b45?branch=epel9-next
Log:
Update to 0.7.3
Signed-off-by: Igor Raits <ignatenkobrain@fedoraproject.org>
---
diff --git a/155.patch b/155.patch
deleted file mode 100644
index 77f38ce..0000000
--- a/155.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From 84232e2d786967e1ce9aec668f0d31568e83f72c Mon Sep 17 00:00:00 2001
-From: Andreas Schneider <asn@cryptomilk.org>
-Date: Wed, 29 Apr 2020 17:34:57 +0200
-Subject: [PATCH] apps: Use correct enum for colourPrimaries
-
-Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
----
- apps/avifenc.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/apps/avifenc.c b/apps/avifenc.c
-index 11595b7..e812670 100644
---- a/apps/avifenc.c
-+++ b/apps/avifenc.c
-@@ -352,7 +352,7 @@ int main(int argc, char * argv[])
- if (lossless && (inputFormat != AVIF_APP_FILE_FORMAT_Y4M)) {
- if (!nclxSet) { // don't stomp on the user's cmdline nclx values
- // Assume SRGB unless they tell us otherwise via --nclx
-- nclx.colourPrimaries = AVIF_NCLX_TRANSFER_CHARACTERISTICS_BT709;
-+ nclx.colourPrimaries = AVIF_NCLX_COLOUR_PRIMARIES_BT709;
- nclx.transferCharacteristics = AVIF_NCLX_TRANSFER_CHARACTERISTICS_SRGB;
- nclx.matrixCoefficients = AVIF_NCLX_MATRIX_COEFFICIENTS_IDENTITY; // this is key for lossless
- nclx.range = AVIF_RANGE_FULL;
diff --git a/e4e5d752ece581d6ef9fbb8bab0ab2edfde13fc5.patch b/e4e5d752ece581d6ef9fbb8bab0ab2edfde13fc5.patch
deleted file mode 100644
index 622e232..0000000
--- a/e4e5d752ece581d6ef9fbb8bab0ab2edfde13fc5.patch
+++ /dev/null
@@ -1,279 +0,0 @@
-From e4e5d752ece581d6ef9fbb8bab0ab2edfde13fc5 Mon Sep 17 00:00:00 2001
-From: Joe Drago <jdrago@netflix.com>
-Date: Mon, 27 Apr 2020 14:27:31 -0700
-Subject: [PATCH] Added avifenc Lossless (--lossless, -l) mode, which sets new
- defaults and warns when anything would cause the AVIF to not be lossless
-
----
- CHANGELOG.md | 2 +
- apps/avifenc.c | 119 ++++++++++++++++++++++++++++++++++++++---
- apps/shared/avifjpeg.c | 2 +-
- apps/shared/avifjpeg.h | 2 +-
- apps/shared/avifpng.c | 8 ++-
- apps/shared/avifpng.h | 4 +-
- 6 files changed, 123 insertions(+), 14 deletions(-)
-
-diff --git a/CHANGELOG.md b/CHANGELOG.md
-index 19c8d08..8d05a5f 100644
---- a/CHANGELOG.md
-+++ b/CHANGELOG.md
-@@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
- and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
-
- ## [Unreleased]
-+### Added
-+- avifenc: Lossless (--lossless, -l) mode, which sets new defaults and warns when anything would cause the AVIF to not be lossless
-
- ## [0.7.2] - 2020-04-24
- ### Added
-diff --git a/apps/avifenc.c b/apps/avifenc.c
-index 357596c..2d5a591 100644
---- a/apps/avifenc.c
-+++ b/apps/avifenc.c
-@@ -25,6 +25,7 @@ static void syntax(void)
- printf("Options:\n");
- printf(" -h,--help : Show syntax help\n");
- printf(" -j,--jobs J : Number of jobs (worker threads, default: 1)\n");
-+ printf(" -l,--lossless : Set all defaults to encode losslessly, and emit warnings when settings/input don't allow for it\n");
- printf(" -d,--depth D : Output depth [8,10,12]. (JPEG/PNG only; For y4m, depth is retained)\n");
- printf(" -y,--yuv FORMAT : Output format [default=444, 422, 420]. (JPEG/PNG only; For y4m, format is retained)\n");
- printf(" -n,--nclx P/T/M : Set nclx colr box values (3 raw numbers, use -r to set range flag)\n");
-@@ -156,6 +157,7 @@ int main(int argc, char * argv[])
- avifRange requestedRange = AVIF_RANGE_FULL;
- avifBool requestedRangeSet = AVIF_FALSE;
- avifBool nclxSet = AVIF_FALSE;
-+ avifBool lossless = AVIF_FALSE;
- avifEncoder * encoder = NULL;
-
- avifNclxColorProfile nclx;
-@@ -300,6 +302,19 @@ int main(int argc, char * argv[])
- fprintf(stderr, "ERROR: Invalid imir axis: %s\n", arg);
- return 1;
- }
-+ } else if (!strcmp(arg, "-l") || !strcmp(arg, "--lossless")) {
-+ lossless = AVIF_TRUE;
-+
-+ // Set defaults, and warn later on if anything looks incorrect
-+ requestedFormat = AVIF_PIXEL_FORMAT_YUV444; // don't subsample GBR
-+ minQuantizer = AVIF_QUANTIZER_LOSSLESS; // lossless
-+ maxQuantizer = AVIF_QUANTIZER_LOSSLESS; // lossless
-+ minQuantizerAlpha = AVIF_QUANTIZER_LOSSLESS; // lossless
-+ maxQuantizerAlpha = AVIF_QUANTIZER_LOSSLESS; // lossless
-+ codecChoice = AVIF_CODEC_CHOICE_AOM; // rav1e doesn't support lossless transform yet:
-+ // https://github.com/xiph/rav1e/issues/151
-+ requestedRange = AVIF_RANGE_FULL; // avoid limited range
-+ requestedRangeSet = AVIF_TRUE;
- } else {
- // Positional argument
- if (!inputFilename) {
-@@ -325,6 +340,26 @@ int main(int argc, char * argv[])
- avifImage * avif = avifImageCreateEmpty();
- avifRWData raw = AVIF_DATA_EMPTY;
-
-+ uint32_t sourceDepth = 0;
-+ avifBool sourceWasRGB = AVIF_TRUE;
-+ avifAppFileFormat inputFormat = avifGuessFileFormat(inputFilename);
-+ if (inputFormat == AVIF_APP_FILE_FORMAT_UNKNOWN) {
-+ fprintf(stderr, "Cannot determine input file extension: %s\n", inputFilename);
-+ returnCode = 1;
-+ goto cleanup;
-+ }
-+
-+ if (lossless && (inputFormat != AVIF_APP_FILE_FORMAT_Y4M)) {
-+ if (!nclxSet) { // don't stomp on the user's cmdline nclx values
-+ // Assume SRGB unless they tell us otherwise via --nclx
-+ nclx.colourPrimaries = AVIF_NCLX_TRANSFER_CHARACTERISTICS_BT709;
-+ nclx.transferCharacteristics = AVIF_NCLX_TRANSFER_CHARACTERISTICS_SRGB;
-+ nclx.matrixCoefficients = AVIF_NCLX_MATRIX_COEFFICIENTS_IDENTITY; // this is key for lossless
-+ nclx.range = AVIF_RANGE_FULL;
-+ nclxSet = AVIF_TRUE;
-+ }
-+ }
-+
- // Set range and nclx in advance so any upcoming RGB -> YUV use the proper coefficients
- if (requestedRangeSet) {
- avif->yuvRange = requestedRange;
-@@ -334,12 +369,6 @@ int main(int argc, char * argv[])
- avifImageSetProfileNCLX(avif, &nclx);
- }
-
-- avifAppFileFormat inputFormat = avifGuessFileFormat(inputFilename);
-- if (inputFormat == AVIF_APP_FILE_FORMAT_UNKNOWN) {
-- fprintf(stderr, "Cannot determine input file extension: %s\n", inputFilename);
-- returnCode = 1;
-- goto cleanup;
-- }
- if (inputFormat == AVIF_APP_FILE_FORMAT_Y4M) {
- if (requestedRangeSet) {
- fprintf(stderr, "WARNING: Ignoring range (-r) value when encoding from y4m content.\n");
-@@ -353,13 +382,16 @@ int main(int argc, char * argv[])
- nclx.range = avif->yuvRange;
- avifImageSetProfileNCLX(avif, &nclx);
- }
-+ sourceDepth = avif->depth;
-+ sourceWasRGB = AVIF_FALSE;
- } else if (inputFormat == AVIF_APP_FILE_FORMAT_JPEG) {
- if (!avifJPEGRead(avif, inputFilename, requestedFormat, requestedDepth)) {
- returnCode = 1;
- goto cleanup;
- }
-+ sourceDepth = 8;
- } else if (inputFormat == AVIF_APP_FILE_FORMAT_PNG) {
-- if (!avifPNGRead(avif, inputFilename, requestedFormat, requestedDepth)) {
-+ if (!avifPNGRead(avif, inputFilename, requestedFormat, requestedDepth, &sourceDepth)) {
- returnCode = 1;
- goto cleanup;
- }
-@@ -395,7 +427,78 @@ int main(int argc, char * argv[])
- avif->imir.axis = imirAxis;
- }
-
-- printf("AVIF to be written:\n");
-+ avifBool usingAOM = AVIF_FALSE;
-+ const char * codecName = avifCodecName(codecChoice, AVIF_CODEC_FLAG_CAN_ENCODE);
-+ if (codecName && !strcmp(codecName, "aom")) {
-+ usingAOM = AVIF_TRUE;
-+ }
-+ avifBool hasAlpha = (avif->alphaPlane && avif->alphaRowBytes);
-+ avifBool losslessColorQP = (minQuantizer == AVIF_QUANTIZER_LOSSLESS) && (maxQuantizer == AVIF_QUANTIZER_LOSSLESS);
-+ avifBool losslessAlphaQP = (minQuantizerAlpha == AVIF_QUANTIZER_LOSSLESS) && (maxQuantizerAlpha == AVIF_QUANTIZER_LOSSLESS);
-+ avifBool depthMatches = (sourceDepth == avif->depth);
-+ avifBool using444 = (avif->yuvFormat == AVIF_PIXEL_FORMAT_YUV444);
-+ avifBool usingFullRange = (avif->yuvRange == AVIF_RANGE_FULL);
-+ avifBool usingIdentityMatrix = (nclxSet && (nclx.matrixCoefficients == AVIF_NCLX_MATRIX_COEFFICIENTS_IDENTITY));
-+
-+ // Guess if the enduser is asking for lossless and enable it so that warnings can be emitted
-+ if (losslessColorQP && (!hasAlpha || losslessAlphaQP)) {
-+ // The enduser is probably expecting lossless. Turn it on and emit warnings
-+ printf("Min/max QPs set to %d, assuming --lossless to enable warnings on potential lossless issues.\n", AVIF_QUANTIZER_LOSSLESS);
-+ lossless = AVIF_TRUE;
-+ }
-+
-+ // Check for any reasons lossless will fail, and complain loudly
-+ if (lossless) {
-+ if (!usingAOM) {
-+ fprintf(stderr, "WARNING: [--lossless] Only aom (-c) supports lossless transforms. Output might not be lossless.\n");
-+ lossless = AVIF_FALSE;
-+ }
-+
-+ if (!losslessColorQP) {
-+ fprintf(stderr,
-+ "WARNING: [--lossless] Color quantizer range (--min, --max) not set to %d. Color output might not be lossless.\n",
-+ AVIF_QUANTIZER_LOSSLESS);
-+ lossless = AVIF_FALSE;
-+ }
-+
-+ if (hasAlpha && !losslessAlphaQP) {
-+ fprintf(stderr,
-+ "WARNING: [--lossless] Alpha present and alpha quantizer range (--minalpha, --maxalpha) not set to %d. Alpha output might not be lossless.\n",
-+ AVIF_QUANTIZER_LOSSLESS);
-+ lossless = AVIF_FALSE;
-+ }
-+
-+ if (!depthMatches) {
-+ fprintf(stderr,
-+ "WARNING: [--lossless] Input depth (%d) does not match output depth (%d). Output might not be lossless.\n",
-+ sourceDepth,
-+ avif->depth);
-+ lossless = AVIF_FALSE;
-+ }
-+
-+ if (sourceWasRGB) {
-+ if (!using444) {
-+ fprintf(stderr, "WARNING: [--lossless] Input data was RGB and YUV subsampling (-y) isn't YUV444. Output might not be lossless.\n");
-+ lossless = AVIF_FALSE;
-+ }
-+
-+ if (!usingFullRange) {
-+ fprintf(stderr, "WARNING: [--lossless] Input data was RGB and output range (-r) isn't full. Output might not be lossless.\n");
-+ lossless = AVIF_FALSE;
-+ }
-+
-+ if (!usingIdentityMatrix) {
-+ fprintf(stderr, "WARNING: [--lossless] Input data was RGB and nclx matrixCoefficients isn't set to identity (--nclx x/x/0); Output might not be lossless.\n");
-+ lossless = AVIF_FALSE;
-+ }
-+ }
-+ }
-+
-+ const char * lossyHint = " (Lossy)";
-+ if (lossless) {
-+ lossyHint = " (Lossless)";
-+ }
-+ printf("AVIF to be written:%s\n", lossyHint);
- avifImageDump(avif);
-
- printf("Encoding with AV1 codec '%s' speed [%d], color QP [%d (%s) <-> %d (%s)], alpha QP [%d (%s) <-> %d (%s)], %d worker thread(s), please wait...\n",
-diff --git a/apps/shared/avifjpeg.c b/apps/shared/avifjpeg.c
-index dcefb41..39bd0cd 100644
---- a/apps/shared/avifjpeg.c
-+++ b/apps/shared/avifjpeg.c
-@@ -30,7 +30,7 @@ static void my_error_exit(j_common_ptr cinfo)
- longjmp(myerr->setjmp_buffer, 1);
- }
-
--avifBool avifJPEGRead(avifImage * avif, const char * inputFilename, avifPixelFormat requestedFormat, int requestedDepth)
-+avifBool avifJPEGRead(avifImage * avif, const char * inputFilename, avifPixelFormat requestedFormat, uint32_t requestedDepth)
- {
- avifBool ret = AVIF_FALSE;
- FILE * f = NULL;
-diff --git a/apps/shared/avifjpeg.h b/apps/shared/avifjpeg.h
-index 13c54dd..3824aea 100644
---- a/apps/shared/avifjpeg.h
-+++ b/apps/shared/avifjpeg.h
-@@ -6,7 +6,7 @@
-
- #include "avif/avif.h"
-
--avifBool avifJPEGRead(avifImage * avif, const char * inputFilename, avifPixelFormat requestedFormat, int requestedDepth);
-+avifBool avifJPEGRead(avifImage * avif, const char * inputFilename, avifPixelFormat requestedFormat, uint32_t requestedDepth);
- avifBool avifJPEGWrite(avifImage * avif, const char * outputFilename, int jpegQuality);
-
- #endif // ifndef LIBAVIF_APPS_SHARED_AVIFJPEG_H
-diff --git a/apps/shared/avifpng.c b/apps/shared/avifpng.c
-index 843d6b0..3573a46 100644
---- a/apps/shared/avifpng.c
-+++ b/apps/shared/avifpng.c
-@@ -14,7 +14,7 @@
- #pragma GCC diagnostic ignored "-Wclobbered"
- #endif
-
--avifBool avifPNGRead(avifImage * avif, const char * inputFilename, avifPixelFormat requestedFormat, int requestedDepth)
-+avifBool avifPNGRead(avifImage * avif, const char * inputFilename, avifPixelFormat requestedFormat, uint32_t requestedDepth, uint32_t * outPNGDepth)
- {
- avifBool readResult = AVIF_FALSE;
- png_structp png = NULL;
-@@ -104,6 +104,10 @@ avifBool avifPNGRead(avifImage * avif, const char * inputFilename, avifPixelForm
- imgBitDepth = 16;
- }
-
-+ if (outPNGDepth) {
-+ *outPNGDepth = imgBitDepth;
-+ }
-+
- png_read_update_info(png, info);
-
- avif->width = rawWidth;
-@@ -143,7 +147,7 @@ avifBool avifPNGRead(avifImage * avif, const char * inputFilename, avifPixelForm
- return readResult;
- }
-
--avifBool avifPNGWrite(avifImage * avif, const char * outputFilename, int requestedDepth)
-+avifBool avifPNGWrite(avifImage * avif, const char * outputFilename, uint32_t requestedDepth)
- {
- avifBool writeResult = AVIF_FALSE;
- png_structp png = NULL;
-diff --git a/apps/shared/avifpng.h b/apps/shared/avifpng.h
-index a10220e..12b68ad 100644
---- a/apps/shared/avifpng.h
-+++ b/apps/shared/avifpng.h
-@@ -7,7 +7,7 @@
- #include "avif/avif.h"
-
- // if (requestedDepth == 0), do best-fit
--avifBool avifPNGRead(avifImage * avif, const char * inputFilename, avifPixelFormat requestedFormat, int requestedDepth);
--avifBool avifPNGWrite(avifImage * avif, const char * outputFilename, int requestedDepth);
-+avifBool avifPNGRead(avifImage * avif, const char * inputFilename, avifPixelFormat requestedFormat, uint32_t requestedDepth, uint32_t * outPNGDepth);
-+avifBool avifPNGWrite(avifImage * avif, const char * outputFilename, uint32_t requestedDepth);
-
- #endif // ifndef LIBAVIF_APPS_SHARED_AVIFPNG_H
diff --git a/ebb29b37711c749681278f8b778f0e6c031c4ca2.patch b/ebb29b37711c749681278f8b778f0e6c031c4ca2.patch
deleted file mode 100644
index b2b4881..0000000
--- a/ebb29b37711c749681278f8b778f0e6c031c4ca2.patch
+++ /dev/null
@@ -1,150 +0,0 @@
-From ebb29b37711c749681278f8b778f0e6c031c4ca2 Mon Sep 17 00:00:00 2001
-From: Wan-Teh Chang <wtc@google.com>
-Date: Mon, 27 Apr 2020 18:43:51 -0700
-Subject: [PATCH] Do not ignore GCC's -Wclobbered warning
-
-The C Standard requires certain local variables in the function calling
-setjmp be declared as volatile. I went through the code and declare
-variables as volatile according to the C Standard, except for the 'rgb'
-struct variable. Document my rationale.
----
- apps/shared/avifjpeg.c | 44 ++++++++++++++++++++++++++----------------
- apps/shared/avifpng.c | 25 ++++++++++++++++--------
- 2 files changed, 44 insertions(+), 25 deletions(-)
-
-diff --git a/apps/shared/avifjpeg.c b/apps/shared/avifjpeg.c
-index 39bd0cd..5e68211 100644
---- a/apps/shared/avifjpeg.c
-+++ b/apps/shared/avifjpeg.c
-@@ -12,11 +12,6 @@
-
- #include "iccjpeg.h"
-
--// This warning triggers false postives way too often in here.
--#if defined(__GNUC__) && !defined(__clang__)
--#pragma GCC diagnostic ignored "-Wclobbered"
--#endif
--
- struct my_error_mgr
- {
- struct jpeg_error_mgr pub;
-@@ -30,31 +25,44 @@ static void my_error_exit(j_common_ptr cinfo)
- longjmp(myerr->setjmp_buffer, 1);
- }
-
-+// Note on setjmp() and volatile variables:
-+//
-+// K & R, The C Programming Language 2nd Ed, p. 254 says:
-+// ... Accessible objects have the values they had when longjmp was called,
-+// except that non-volatile automatic variables in the function calling setjmp
-+// become undefined if they were changed after the setjmp call.
-+//
-+// Therefore, 'iccData' is declared as volatile. 'rgb' should be declared as
-+// volatile, but doing so would be inconvenient (try it) and since it is a
-+// struct, the compiler is unlikely to put it in a register. 'ret' does not need
-+// to be declared as volatile because it is not modified between setjmp and
-+// longjmp. But GCC's -Wclobbered warning may have trouble figuring that out, so
-+// we preemptively declare it as volatile.
-+
- avifBool avifJPEGRead(avifImage * avif, const char * inputFilename, avifPixelFormat requestedFormat, uint32_t requestedDepth)
- {
-- avifBool ret = AVIF_FALSE;
-- FILE * f = NULL;
-- uint8_t * iccData = NULL;
-+ volatile avifBool ret = AVIF_FALSE;
-+ uint8_t * volatile iccData = NULL;
-
- avifRGBImage rgb;
- memset(&rgb, 0, sizeof(avifRGBImage));
-
-+ FILE * f = fopen(inputFilename, "rb");
-+ if (!f) {
-+ fprintf(stderr, "Can't open JPEG file for read: %s\n", inputFilename);
-+ goto cleanup;
-+ }
-+
- struct my_error_mgr jerr;
- struct jpeg_decompress_struct cinfo;
- cinfo.err = jpeg_std_error(&jerr.pub);
- jerr.pub.error_exit = my_error_exit;
- if (setjmp(jerr.setjmp_buffer)) {
-- return AVIF_FALSE;
-+ goto cleanup;
- }
-
- jpeg_create_decompress(&cinfo);
-
-- f = fopen(inputFilename, "rb");
-- if (!f) {
-- fprintf(stderr, "Can't open JPEG file for read: %s\n", inputFilename);
-- goto cleanup;
-- }
--
- setup_read_icc_profile(&cinfo);
- jpeg_stdio_src(&cinfo, f);
- jpeg_read_header(&cinfo, TRUE);
-@@ -63,10 +71,12 @@ avifBool avifJPEGRead(avifImage * avif, const char * inputFilename, avifPixelFor
- int row_stride = cinfo.output_width * cinfo.output_components;
- JSAMPARRAY buffer = (*cinfo.mem->alloc_sarray)((j_common_ptr)&cinfo, JPOOL_IMAGE, row_stride, 1);
-
-+ uint8_t * iccDataTmp;
- unsigned int iccDataLen;
-- if (read_icc_profile(&cinfo, &iccData, &iccDataLen)) {
-+ if (read_icc_profile(&cinfo, &iccDataTmp, &iccDataLen)) {
-+ iccData = iccDataTmp;
- if (avif->profileFormat == AVIF_PROFILE_FORMAT_NONE) {
-- avifImageSetProfileICC(avif, iccData, (size_t)iccDataLen);
-+ avifImageSetProfileICC(avif, iccDataTmp, (size_t)iccDataLen);
- } else {
- fprintf(stderr, "WARNING: JPEG contains ICC profile which is being overridden with --nclx\n");
- }
-diff --git a/apps/shared/avifpng.c b/apps/shared/avifpng.c
-index 3573a46..934b5aa 100644
---- a/apps/shared/avifpng.c
-+++ b/apps/shared/avifpng.c
-@@ -9,17 +9,26 @@
- #include <stdlib.h>
- #include <string.h>
-
--// This warning triggers false postives way too often in here.
--#if defined(__GNUC__) && !defined(__clang__)
--#pragma GCC diagnostic ignored "-Wclobbered"
--#endif
-+// Note on setjmp() and volatile variables:
-+//
-+// K & R, The C Programming Language 2nd Ed, p. 254 says:
-+// ... Accessible objects have the values they had when longjmp was called,
-+// except that non-volatile automatic variables in the function calling setjmp
-+// become undefined if they were changed after the setjmp call.
-+//
-+// Therefore, 'rowPointers' is declared as volatile. 'rgb' should be declared as
-+// volatile, but doing so would be inconvenient (try it) and since it is a
-+// struct, the compiler is unlikely to put it in a register. 'readResult' and
-+// 'writeResult' do not need to be declared as volatile because they are not
-+// modified between setjmp and longjmp. But GCC's -Wclobbered warning may have
-+// trouble figuring that out, so we preemptively declare them as volatile.
-
- avifBool avifPNGRead(avifImage * avif, const char * inputFilename, avifPixelFormat requestedFormat, uint32_t requestedDepth, uint32_t * outPNGDepth)
- {
-- avifBool readResult = AVIF_FALSE;
-+ volatile avifBool readResult = AVIF_FALSE;
- png_structp png = NULL;
- png_infop info = NULL;
-- png_bytep * rowPointers = NULL;
-+ png_bytep * volatile rowPointers = NULL;
-
- avifRGBImage rgb;
- memset(&rgb, 0, sizeof(avifRGBImage));
-@@ -149,10 +158,10 @@ avifBool avifPNGRead(avifImage * avif, const char * inputFilename, avifPixelForm
-
- avifBool avifPNGWrite(avifImage * avif, const char * outputFilename, uint32_t requestedDepth)
- {
-- avifBool writeResult = AVIF_FALSE;
-+ volatile avifBool writeResult = AVIF_FALSE;
- png_structp png = NULL;
- png_infop info = NULL;
-- png_bytep * rowPointers = NULL;
-+ png_bytep * volatile rowPointers = NULL;
-
- avifRGBImage rgb;
- memset(&rgb, 0, sizeof(avifRGBImage));
diff --git a/libavif.spec b/libavif.spec
index 1fc61f1..6c8b60a 100644
--- a/libavif.spec
+++ b/libavif.spec
@@ -1,20 +1,14 @@
%bcond_with aom
Name: libavif
-Version: 0.7.2
+Version: 0.7.3
Release: 1%{?dist}
Summary: Library for encoding and decoding .avif files
License: BSD
-Group: Development/Libraries/C and C++
Url: https://github.com/AOMediaCodec/libavif
Source0: https://github.com/AOMediaCodec/libavif/archive/v%{version}/%{name}-%{version}.tar.gz
-Patch0: e4e5d752ece581d6ef9fbb8bab0ab2edfde13fc5.patch
-Patch1: ebb29b37711c749681278f8b778f0e6c031c4ca2.patch
-# https://github.com/AOMediaCodec/libavif/pull/155
-Patch2: 155.patch
-
BuildRequires: cmake
BuildRequires: gcc-c++
BuildRequires: nasm
@@ -65,16 +59,12 @@ pushd obj
%endif
-DAVIF_BUILD_APPS:BOOL=ON \
-DAVIF_BUILD_EXAMPLES:BOOL=ON \
- %{_builddir}/%{name}-%{version}
-make %{?_smp_mflags}
+ ..
+%make_build
popd
%install
-pushd obj
-make %{?_smp_mflags} DESTDIR=%{buildroot} install
-popd
-
-%ldconfig_scriptlets
+%make_install -C obj
%files
%license LICENSE
@@ -94,6 +84,9 @@ popd
%{_bindir}/avifenc
%changelog
+* Fri May 22 2020 Igor Raits <ignatenkobrain@fedoraproject.org> - 0.7.3-1
+- Update to 0.7.3
+
* Wed Apr 29 2020 Andreas Schneider <asn@redhat.com> - 0.7.2-1
- Update to version 0.7.2
* https://github.com/AOMediaCodec/libavif/blob/master/CHANGELOG.md
reply other threads:[~2026-07-14 21:39 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=178406518638.1.5978060381020691911.rpms-libavif-01fe6c8ab9cb@fedoraproject.org \
--to=ignatenkobrain@fedoraproject.org \
--cc=git-commits@fedoraproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox