Attached the backported patch

Best,
-- 
Carl

From: Carl Keinath <[email protected]>
Date: Sun, 4 Oct 2026 09:53:17 +0200
Subject: do not list static dependencies of shared libraries in pkgconfig

---
 CMake/GeneratePkgConfig.cmake | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/CMake/GeneratePkgConfig.cmake b/CMake/GeneratePkgConfig.cmake
index cee0209..3bd2a2a 100644
--- a/CMake/GeneratePkgConfig.cmake
+++ b/CMake/GeneratePkgConfig.cmake
@@ -32,10 +32,17 @@ function(generate_pkgconfig TARGET DESCRIPTION)
   get_filename_component(PREFIX "${CMAKE_INSTALL_PREFIX}" REALPATH)
 
   get_target_property(LIST "${TARGET}" LINK_LIBRARIES)
+  get_target_property(LIBRARY_TYPE "${TARGET}" TYPE)
   set(REQS "")
   set(LIBS "")
   foreach (LIB ${LIST})
     if (TARGET "${LIB}")
+      if ("${LIBRARY_TYPE}" STREQUAL "SHARED_LIBRARY")
+        get_target_property(LIB_TYPE "${LIB}" TYPE)
+        if ("${LIB_TYPE}" STREQUAL "STATIC_LIBRARY")
+          continue()
+        endif()
+      endif()
       set(HAS_REQS 1)
       list(APPEND REQS "${LIB}")
     else()
@@ -98,7 +105,6 @@ CFlags: -I\"${PKGCONFIG_INCLUDEDIR}\"
 Libs: -L\"${PKGCONFIG_LIBDIR}\" -l${TARGET}
 ${REQUIRES}${LIBRARIES}")
 
-  get_target_property(LIBRARY_TYPE "${TARGET}" TYPE)
   if (LIBRARY_TYPE STREQUAL "STATIC_LIBRARY" OR LIBRARY_TYPE STREQUAL "SHARED_LIBRARY")
     install(FILES "${CMAKE_CURRENT_BINARY_DIR}/pkgconfig/${PKGCONFIG_NAME}.pc" DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
   elseif (LIBRARY_TYPE STREQUAL "INTERFACE_LIBRARY")

Attachment: signature.asc
Description: PGP signature

Reply via email to