SDL_image: cmake: set exported name of vendored libraries to known name

From 7930121c0762c72350a5786dd2db4ae51b878900 Mon Sep 17 00:00:00 2001
From: Anonymous Maarten <[EMAIL REDACTED]>
Date: Tue, 11 Oct 2022 18:44:26 +0200
Subject: [PATCH] cmake: set exported name of vendored libraries to known name

---
 CMakeLists.txt | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index b6fc6a5a..badaea0d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -331,6 +331,8 @@ if(SDL2IMAGE_ZLIB)
             set(ZLIB_LIBRARY zlibstatic)
         endif()
         list(APPEND INSTALL_EXTRA_TARGETS ${ZLIB_LIBRARY})
+        set_target_properties(${ZLIB_LIBRARY} PROPERTIES EXPORT_NAME external_zlib)
+        add_library(SDL2_image::external_zlib ALIAS ${ZLIB_LIBRARY})
     else()
         message(STATUS "${PROJECT_NAME}: Using system zlib")
         find_package(ZLIB REQUIRED)
@@ -346,6 +348,8 @@ if(SDL2IMAGE_AVIF)
         set(BUILD_SHARED_LIBS ${SDL2IMAGE_AVIF_SHARED})
         add_subdirectory(external/libavif EXCLUDE_FROM_ALL)
         list(APPEND INSTALL_EXTRA_TARGETS libavif)
+        set_target_properties(libavif PROPERTIES EXPORT_NAME external_libavif)
+        add_library(SDL2_image::external_libavif ALIAS libavif)
         if(NOT SDL2IMAGE_AVIF_SHARED)
             list(APPEND PC_LIBS -l$<TARGET_FILE_BASE_NAME:avif>)
         endif()
@@ -391,6 +395,8 @@ if(SDL2IMAGE_JPG)
             set(BUILD_SHARED_LIBS ${SDL2IMAGE_JPG_SHARED})
             add_subdirectory(external/jpeg EXCLUDE_FROM_ALL)
             list(APPEND INSTALL_EXTRA_TARGETS jpeg)
+            set_target_properties(jpeg PROPERTIES EXPORT_NAME external_libjpeg)
+            add_library(SDL2_image::external_libjpeg ALIAS jpeg)
             if(NOT SDL2IMAGE_JPG_SHARED)
                 list(APPEND PC_LIBS -l$<TARGET_FILE_BASE_NAME:jpeg>)
             endif()
@@ -447,6 +453,8 @@ if(SDL2IMAGE_JXL)
             set(jxl_lib jxl_dec-static)
             list(APPEND INSTALL_EXTRA_TARGETS brotlidec-static brotlicommon-static hwy ${jxl_lib})
         endif()
+        set_target_properties(${jxl_lib} PROPERTIES EXPORT_NAME external_libjxl)
+        add_library(SDL2_image::external_libjxl ALIAS ${jxl_lib})
         if(NOT TARGET libjxl::libjxl)
             add_library(libjxl::libjxl ALIAS ${jxl_lib})
         endif()
@@ -499,6 +507,8 @@ if(SDL2IMAGE_PNG)
             add_library(PNG::PNG ALIAS ${PNG_LIBRARY})
             target_include_directories(SDL2_image PRIVATE external/libpng)
             list(APPEND INSTALL_EXTRA_TARGETS ${PNG_LIBRARY})
+            set_target_properties(${PNG_LIBRARY} PROPERTIES EXPORT_NAME external_libpng)
+            add_library(SDL2_image::external_libpng ALIAS ${PNG_LIBRARY})
             if(NOT SDL2IMAGE_PNG_SHARED)
                 list(APPEND PC_LIBS -l$<TARGET_FILE_BASE_NAME:${PNG_LIBRARY}>)
                 if(SDL2IMAGE_ZLIB_VENDORED)
@@ -575,6 +585,8 @@ if(SDL2IMAGE_TIF)
         add_subdirectory(external/libtiff EXCLUDE_FROM_ALL)
         add_library(TIFF::TIFF ALIAS tiff)
         list(APPEND INSTALL_EXTRA_TARGETS tiff)
+        set_target_properties(tiff PROPERTIES EXPORT_NAME external_libtiff)
+        add_library(SDL2_image::external_libtiff ALIAS tiff)
         if(NOT SDL2IMAGE_TIF_SHARED)
             list(APPEND PC_LIBS -l$<TARGET_FILE_BASE_NAME:tiff>)
         endif()
@@ -611,6 +623,8 @@ if(SDL2IMAGE_WEBP)
         target_include_directories(SDL2_image PRIVATE external/libwebp/src)
         add_library(WebP::webp ALIAS webp)
         list(APPEND INSTALL_EXTRA_TARGETS webp)
+        set_target_properties(webp PROPERTIES EXPORT_NAME "external_libwebp")
+        add_library(SDL2_image::external_libwebp ALIAS webp)
     else()
         message(STATUS "${PROJECT_NAME}: Using system libwebp")
         find_package(webp REQUIRED)