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)