SDL_image: Revert "Use stb_image by default for CMake builds"

From dcf68332b64c781fe3451f81044692ed56073b38 Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Tue, 10 May 2022 16:28:42 -0700
Subject: [PATCH] Revert "Use stb_image by default for CMake builds"

This reverts commit 600a331930da209429751e6a5d34eed9bdef54ec.

This is in favor of https://github.com/libsdl-org/SDL_image/pull/189
---
 CMakeLists.txt | 100 +++++++++++++------------------------------------
 1 file changed, 27 insertions(+), 73 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index c5ff08f..4689f64 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -72,12 +72,8 @@ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DSDL_BUILD_MAJOR_VERSION=${MAJOR_VERSION}")
 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DSDL_BUILD_MINOR_VERSION=${MINOR_VERSION}")
 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DSDL_BUILD_MICRO_VERSION=${MICRO_VERSION}")
 
-option(USE_STBIMAGE "Use stb_imge for loading JPEG and PNG images" ON)
-option(SUPPORT_AVIF "Support loading AVIF images" OFF)
 option(SUPPORT_JPG "Support loading JPEG images" ON)
-option(SUPPORT_JXL "Support loading JPEG-XL images" OFF)
 option(SUPPORT_PNG "Support loading PNG images" ON)
-option(SUPPORT_TIFF "Support loading TIFF images" OFF)
 option(SUPPORT_WEBP "Support loading WEBP images" OFF)
 option(BUILD_SHOWIMAGE "Build the showimage sample program" OFF)
 option(BUILD_SHARED_LIBS "Build the library as a shared library" ON)
@@ -113,96 +109,54 @@ if (APPLE)
 	endif()
 endif()
 
-target_sources(SDL2_image PRIVATE
-		IMG.c IMG_avif.c IMG_bmp.c IMG_gif.c IMG_jpg.c IMG_jxl.c
-		IMG_lbm.c IMG_pcx.c IMG_png.c IMG_pnm.c IMG_qoi.c IMG_stb.c
-		IMG_svg.c IMG_tga.c IMG_tif.c IMG_webp.c IMG_WIC.c IMG_xcf.c
-		IMG_xpm.c IMG_xv.c IMG_xxx.c
+target_sources(SDL2_image PRIVATE IMG.c IMG_png.c IMG_bmp.c IMG_gif.c
+		IMG_jpg.c IMG_lbm.c IMG_pcx.c IMG_pnm.c IMG_svg.c IMG_tga.c
+		IMG_tif.c IMG_webp.c IMG_WIC.c IMG_xcf.c IMG_xpm.c IMG_xv.c
+		IMG_qoi.c IMG_avif.c IMG_jxl.c IMG_stb.c IMG_xxx.c
 		${IMAGEIO_SOURCES}
 )
 
 target_compile_definitions(SDL2_image PRIVATE
 		-DLOAD_BMP -DLOAD_GIF -DLOAD_LBM -DLOAD_PCX -DLOAD_PNM
-		-DLOAD_QOI -DLOAD_TGA -DLOAD_XCF -DLOAD_XPM -DLOAD_XPM
-		-DLOAD_XV
-)
-
-if (SUPPORT_AVIF)
-	target_compile_definitions(SDL2_image PRIVATE -DLOAD_AVIF)
-	set(AVIF_CODEC_DAV1D ON)
-	add_subdirectory(external/libavif)
-	include_directories(external/libavif/include)
-	target_link_libraries(SDL2_image PRIVATE avif)
-endif()
-
-if (USE_STBIMAGE)
-	target_compile_definitions(SDL2_image PRIVATE -DUSE_STBIMAGE -DLOAD_JPG -DLOAD_PNG)
-endif()
+		-DLOAD_TGA -DLOAD_XCF -DLOAD_XPM -DLOAD_XV -DLOAD_XPM
+		-DLOAD_QOI)
 
 if (SUPPORT_JPG)
 	target_compile_definitions(SDL2_image PRIVATE -DLOAD_JPG)
-
-	if (NOT USE_STBIMAGE)
-		add_subdirectory(external/jpeg)
-		target_link_libraries(SDL2_image PRIVATE jpeg)
-	endif()
+	add_subdirectory(external/jpeg)
+	target_link_libraries(SDL2_image PRIVATE jpeg)
 endif()
 
 if (SUPPORT_PNG)
+	# missing libpng.vers
+	set(HAVE_LD_VERSION_SCRIPT OFF CACHE BOOL "" FORCE)
 	target_compile_definitions(SDL2_image PRIVATE -DLOAD_PNG)
 
-	if (NOT USE_STBIMAGE)
-		# missing libpng.vers
-		set(HAVE_LD_VERSION_SCRIPT OFF CACHE BOOL "" FORCE)
-
-		if (NOT TARGET zlib)
-			# SDL_image doesn't support installing currently
-			set(SKIP_INSTALL_ALL ON CACHE BOOL "" FORCE)
+	if (NOT TARGET zlib)
+		# SDL_image doesn't support installing currently
+		set(SKIP_INSTALL_ALL ON CACHE BOOL "" FORCE)
 
-			# if zlib not included from another source, add_subdirectory
-			add_subdirectory(external/zlib)
+		# if zlib not included from another source, add_subdirectory
+		add_subdirectory(external/zlib)
 
-			# libpng find_package(zlib) requires ZLIB_INCLUDE_DIR set
-			get_target_property(ZLIB_INCLUDE_DIR zlib INCLUDE_DIRECTORIES)
+		# libpng find_package(zlib) requires ZLIB_INCLUDE_DIR set
+		get_target_property(ZLIB_INCLUDE_DIR zlib INCLUDE_DIRECTORIES)
 
-			# libpng find_package(zlib) requires ZLIB_LIBRARY
-			if (BUILD_SHARED_LIBS)
-				set(ZLIB_LIBRARY zlib)
-			else()
-				set(ZLIB_LIBRARY zlibstatic)
-			endif()
-		endif()
-
-		add_subdirectory(external/libpng)
-		include_directories(external/libpng)
+		# libpng find_package(zlib) requires ZLIB_LIBRARY
 		if (BUILD_SHARED_LIBS)
-			target_link_libraries(SDL2_image PRIVATE png)
+			set(ZLIB_LIBRARY zlib)
 		else()
-			target_link_libraries(SDL2_image PRIVATE png_static)
+			set(ZLIB_LIBRARY zlibstatic)
 		endif()
 	endif()
-endif()
 
-if (SUPPORT_JXL)
-	target_compile_definitions(SDL2_image PRIVATE -DLOAD_JXL)
-	set(JPEGXL_ENABLE_FUZZERS false)
-	set(JPEGXL_ENABLE_TOOLS false)
-	set(JPEGXL_ENABLE_MANPAGES false)
-	set(JPEGXL_ENABLE_BENCHMARK false)
-	set(JPEGXL_ENABLE_EXAMPLES false)
-	set(JPEGXL_ENABLE_SJPEG false)
-	set(JPEGXL_ENABLE_OPENEXR false)
-	set(JPEGXL_ENABLE_SKCMS false)
-	add_subdirectory(external/libjxl)
-	include_directories(external/libjxl/lib/include)
-	include_directories(${CMAKE_BINARY_DIR}/external/libjxl/lib/include)
-	target_link_libraries(SDL2_image PRIVATE jxl)
-endif()
-
-if (SUPPORT_TIFF)
-	target_compile_definitions(SDL2_image PRIVATE -DLOAD_TIF)
-	add_subdirectory(external/libtiff)
-	target_link_libraries(SDL2_image PRIVATE tiff)
+	add_subdirectory(external/libpng)
+	include_directories(external/libpng)
+	if(BUILD_SHARED_LIBS)
+		target_link_libraries(SDL2_image PRIVATE png)
+	else()
+		target_link_libraries(SDL2_image PRIVATE png_static)
+	endif()
 endif()
 
 if (SUPPORT_WEBP)