aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/patches/jami-unbundle-dependencies.patch
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/patches/jami-unbundle-dependencies.patch')
-rw-r--r--gnu/packages/patches/jami-unbundle-dependencies.patch71
1 files changed, 71 insertions, 0 deletions
diff --git a/gnu/packages/patches/jami-unbundle-dependencies.patch b/gnu/packages/patches/jami-unbundle-dependencies.patch
new file mode 100644
index 0000000000..dab82b26cb
--- /dev/null
+++ b/gnu/packages/patches/jami-unbundle-dependencies.patch
@@ -0,0 +1,71 @@
+Forwarded here: https://lists.gnu.org/archive/html/jami/2024-01/msg00007.html
+
+From a302dc0a0faf2778331745a1d01bc3071e182d4d Mon Sep 17 00:00:00 2001
+From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
+Date: Mon, 8 Jan 2024 16:07:05 -0500
+Subject: [PATCH] build: Allow using system-provided md4c and tidy libraries.
+
+* CMakeLists.txt <md4c, tidy>: Search for libraries in the system
+first, falling back to bundled copies in case they aren't found.
+
+Series-to: jami@gnu.org
+Fixes: <https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/1506>
+Change-Id: I637959fefce6a21b0ee73a793acb6c3c42dcdce0
+---
+ CMakeLists.txt | 36 +++++++++++++++++++++++++-----------
+ 1 file changed, 25 insertions(+), 11 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 38e7a4e2..3f1bd599 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -545,19 +545,33 @@ add_subdirectory(3rdparty/SortFilterProxyModel)
+ set(SFPM_OBJECTS $<TARGET_OBJECTS:SortFilterProxyModel>)
+
+ # md4c
+-set(BUILD_SHARED_LIBS OFF CACHE BOOL "Don't build shared md4c library" FORCE)
+-add_subdirectory(3rdparty/md4c EXCLUDE_FROM_ALL)
+-list(APPEND CLIENT_LINK_DIRS ${MD4C_BINARY_DIR}/src)
+-list(APPEND CLIENT_INCLUDE_DIRS ${MD4C_SOURCE_DIR}/src)
+-list(APPEND CLIENT_LIBS md4c-html)
++find_package(md4c)
++if(md4c_FOUND)
++ message(STATUS "Using system-provided md4c-html")
++ list(APPEND CLIENT_LIBS md4c::md4c-html)
++else()
++ message("Using bundled md4c-html library")
++ set(BUILD_SHARED_LIBS OFF CACHE BOOL "Don't build shared md4c library" FORCE)
++ add_subdirectory(3rdparty/md4c EXCLUDE_FROM_ALL)
++ list(APPEND CLIENT_LINK_DIRS ${MD4C_BINARY_DIR}/src)
++ list(APPEND CLIENT_INCLUDE_DIRS ${MD4C_SOURCE_DIR}/src)
++ list(APPEND CLIENT_LIBS md4c-html)
++endif()
+
+ # tidy-html5
+-set(BUILD_SHARED_LIB OFF CACHE BOOL "Don't build shared tidy library" FORCE)
+-set(SUPPORT_CONSOLE_APP OFF CACHE BOOL "Don't build tidy console app" FORCE)
+-add_subdirectory(3rdparty/tidy-html5 EXCLUDE_FROM_ALL)
+-list(APPEND CLIENT_LINK_DIRS ${tidy_BINARY_DIR}/Release)
+-list(APPEND CLIENT_INCLUDE_DIRS ${tidy_SOURCE_DIR}/include)
+-list(APPEND CLIENT_LIBS tidy-static)
++pkg_check_modules(tidy IMPORTED_TARGET tidy)
++if(tidy_FOUND)
++ message(STATUS "Using system-provided tidy")
++ list(APPEND CLIENT_LIBS PkgConfig::tidy)
++else()
++ message("Using bundled tidy library")
++ set(BUILD_SHARED_LIB OFF CACHE BOOL "Don't build shared tidy library" FORCE)
++ set(SUPPORT_CONSOLE_APP OFF CACHE BOOL "Don't build tidy console app" FORCE)
++ add_subdirectory(3rdparty/tidy-html5 EXCLUDE_FROM_ALL)
++ list(APPEND CLIENT_LINK_DIRS ${tidy_BINARY_DIR}/Release)
++ list(APPEND CLIENT_INCLUDE_DIRS ${tidy_SOURCE_DIR}/include)
++ list(APPEND CLIENT_LIBS tidy-static)
++endif()
+
+ # common executable sources
+ qt_add_executable(
+
+base-commit: a4300308dc8d03d59f620bb5fed753df5cf31ed9
+--
+2.41.0
+