2023-08-18 05:11:25 +00:00
|
|
|
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
|
2024-03-26 20:44:05 +00:00
|
|
|
index e802357f..6d2dccfb 100644
|
2023-08-18 05:11:25 +00:00
|
|
|
--- a/CMakeLists.txt
|
|
|
|
+++ b/CMakeLists.txt
|
2024-03-26 20:44:05 +00:00
|
|
|
@@ -600,20 +600,34 @@ add_subdirectory(3rdparty/SortFilterProxyModel)
|
2023-08-18 05:11:25 +00:00
|
|
|
set(SFPM_OBJECTS $<TARGET_OBJECTS:SortFilterProxyModel>)
|
|
|
|
|
|
|
|
# md4c
|
2024-03-26 20:44:05 +00:00
|
|
|
-set(BUILD_MD2HTML_EXECUTABLE OFF CACHE BOOL "Don't build md2html executable" FORCE)
|
2023-08-18 05:11:25 +00:00
|
|
|
-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")
|
2024-03-26 20:44:05 +00:00
|
|
|
+ set(BUILD_MD2HTML_EXECUTABLE OFF CACHE BOOL "Don't build md2html executable" FORCE)
|
2023-08-18 05:11:25 +00:00
|
|
|
+ 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
|
|
|
|
|