SDL_image: upgrade vendored libavif to v1.1.1

From a483f1ab6df3d071175c62e4941564ceea162754 Mon Sep 17 00:00:00 2001
From: Anonymous Maarten <[EMAIL REDACTED]>
Date: Sun, 3 May 2026 18:58:12 +0200
Subject: [PATCH] upgrade vendored libavif to v1.1.1

---
 .gitmodules                               | 2 +-
 CMakeLists.txt                            | 8 ++++++--
 Xcode/avif/avif.xcodeproj/project.pbxproj | 4 ++++
 external/dav1d                            | 2 +-
 external/libavif                          | 2 +-
 5 files changed, 13 insertions(+), 5 deletions(-)

diff --git a/.gitmodules b/.gitmodules
index c13a57d28..684a91395 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -25,7 +25,7 @@
 [submodule "external/libavif"]
 	path = external/libavif
 	url = https://github.com/libsdl-org/libavif.git
-	branch = v1.0.4-SDL
+	branch = v1.1.1-SDL
 [submodule "external/dav1d"]
 	path = external/dav1d
 	url = https://github.com/libsdl-org/dav1d.git
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5fe161596..fa0fac80e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -409,9 +409,13 @@ if(SDL2IMAGE_AVIF)
         set(SDL2IMAGE_AVIF_ENABLED TRUE)
         message(STATUS "${PROJECT_NAME}: Using vendored libavif")
         sdl_check_project_in_subfolder(external/libavif libavif SDL2IMAGE_VENDORED)
+        set(LIBAVIF_SDLIMAGE_BUILD TRUE)
         set(BUILD_SHARED_LIBS ${SDL2IMAGE_AVIF_SHARED})
-        set(AVIF_CODEC_DAV1D ON CACHE BOOL "Use dav1d codec for decoding" FORCE)
-        set(AVIF_LOCAL_DAV1D OFF CACHE BOOL "Build dav1d by libaf" FORCE)
+        set(AVIF_CODEC_LIBGAV1 OFF CACHE STRING "Use libgav1 for avif" FORCE)
+        set(AVIF_LIBSHARPYUV OFF CACHE STRING "Use sharpyuv for avif" FORCE)
+        set(AVIF_LIBYUV OFF CACHE BOOL "Use libyuv for avif" FORCE)
+        set(AVIF_CODEC_DAV1D "SYSTEM" CACHE STRING "Use dav1d codec for decoding" FORCE)
+        set(AVIF_CODEC_AOM OFF CACHE STRING "Use aom codec for decoding" FORCE)
         #FIXME: This requires upgrading vendored libwebp to >= 1.2.4.
         #set(LIBAVIF_WITH_SHARPYUV_SDLIMAGE ${SDL2IMAGE_WEBP} CACHE BOOL "Build libavif with sharpyuv support (re-use sharpyuv built by libwebp)" FORCE)
         add_subdirectory(external/libavif EXCLUDE_FROM_ALL)
diff --git a/Xcode/avif/avif.xcodeproj/project.pbxproj b/Xcode/avif/avif.xcodeproj/project.pbxproj
index 937ac8e82..f971c5e32 100644
--- a/Xcode/avif/avif.xcodeproj/project.pbxproj
+++ b/Xcode/avif/avif.xcodeproj/project.pbxproj
@@ -7,6 +7,7 @@
 	objects = {
 
 /* Begin PBXBuildFile section */
+		631482712FA7F06600B88F2C /* colrconvert.c in Sources */ = {isa = PBXBuildFile; fileRef = 631482702FA7F06600B88F2C /* colrconvert.c */; };
 		F313F5A02ADDB009008B58D6 /* exif.c in Sources */ = {isa = PBXBuildFile; fileRef = F313F59F2ADDB009008B58D6 /* exif.c */; };
 		F313F5A22ADDB03F008B58D6 /* reformat_libsharpyuv.c in Sources */ = {isa = PBXBuildFile; fileRef = F313F5A12ADDB03F008B58D6 /* reformat_libsharpyuv.c */; };
 		F314CA242CB4C362008F776B /* scale_any.c in Sources */ = {isa = PBXBuildFile; fileRef = F314CA222CB4C362008F776B /* scale_any.c */; };
@@ -118,6 +119,7 @@
 /* End PBXCopyFilesBuildPhase section */
 
 /* Begin PBXFileReference section */
+		631482702FA7F06600B88F2C /* colrconvert.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = colrconvert.c; path = ../../external/libavif/src/colrconvert.c; sourceTree = SOURCE_ROOT; };
 		F313F59F2ADDB009008B58D6 /* exif.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = exif.c; path = ../../external/libavif/src/exif.c; sourceTree = "<group>"; };
 		F313F5A12ADDB03F008B58D6 /* reformat_libsharpyuv.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = reformat_libsharpyuv.c; path = ../../external/libavif/src/reformat_libsharpyuv.c; sourceTree = "<group>"; };
 		F314CA1F2CB4C362008F776B /* planar_functions.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = planar_functions.c; sourceTree = "<group>"; };
@@ -265,6 +267,7 @@
 				F35474782829A9CB007E9EDA /* avif.c */,
 				F35474952829A9E0007E9EDA /* codec_dav1d.c */,
 				F354747A2829A9CB007E9EDA /* colr.c */,
+				631482702FA7F06600B88F2C /* colrconvert.c */,
 				F354747B2829A9CB007E9EDA /* diag.c */,
 				F313F59F2ADDB009008B58D6 /* exif.c */,
 				F354747F2829A9CB007E9EDA /* io.c */,
@@ -517,6 +520,7 @@
 				F354748C2829A9CB007E9EDA /* reformat.c in Sources */,
 				F354748E2829A9CB007E9EDA /* io.c in Sources */,
 				F35474892829A9CB007E9EDA /* colr.c in Sources */,
+				631482712FA7F06600B88F2C /* colrconvert.c in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
diff --git a/external/dav1d b/external/dav1d
index 527d4cb44..759e049f4 160000
--- a/external/dav1d
+++ b/external/dav1d
@@ -1 +1 @@
-Subproject commit 527d4cb4442b6fafdbd92b60b0dc09647c4f4dfe
+Subproject commit 759e049f45bf55794f364ea76b96a9317553a142
diff --git a/external/libavif b/external/libavif
index 5bcd7d031..62cfd0858 160000
--- a/external/libavif
+++ b/external/libavif
@@ -1 +1 @@
-Subproject commit 5bcd7d031e058b171364916a4dbef5fc5d6a28e2
+Subproject commit 62cfd08583e85d77b88b2cb6ccd76ce5fbe46dbf