Use ABI Manager.
authorPino Toscano <pino@debian.org>
Fri, 16 Dec 2022 17:21:09 +0000 (10:21 -0700)
committerPino Toscano <pino@debian.org>
Fri, 14 Jul 2023 06:02:51 +0000 (07:02 +0100)
Forwarded: not-needed

Gbp-Pq: Name enable_debianabimanager.diff

CMakeLists.txt

index b9bb00ab7389433e3d7ab02899406e28aca870de..723dd8e2d463d59d89c3242fec0d77652ce08dac 100644 (file)
@@ -52,3 +52,20 @@ add_subdirectory(src)
 if(BUILD_TESTING)
     add_subdirectory(tests)
 endif()
+
+# XXX workaround the fact that DebianABIManager only works if the build type
+# is "Debian"
+set(OLD_CMAKE_BUILD_TYPE ${CMAKE_BUILD_TYPE})
+set(CMAKE_BUILD_TYPE "Debian")
+include(/usr/share/pkg-kde-tools/cmake/DebianABIManager.cmake)
+# XXX kludge: append the "Debian" link flags created by DebianABIManager
+# to the actually used link flags
+get_target_property(debabi_link_flags libappimage LINK_FLAGS_DEBIAN)
+get_target_property(link_flags libappimage LINK_FLAGS)
+if(NOT(link_flags) OR (link_flags STREQUAL "NOTFOUND"))
+    set(link_flags "")
+endif()
+set_target_properties(libappimage PROPERTIES LINK_FLAGS ${link_flags} ${debabi_link_flags})
+# XXX reset the build type to what was originally set, as it apparently
+# does make a difference to cmake
+set(CMAKE_BUILD_TYPE ${OLD_CMAKE_BUILD_TYPE})