From 2b7a421e1fbf954a7ebfd9501a69a00f60899646 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Blin?=
 <sebastien.blin@savoirfairelinux.com>
Date: Thu, 29 Dec 2022 09:45:09 -0500
Subject: [PATCH] Revert "cmake: Simplify lookup logic for libjami headers."

This reverts commit 041b733cf4216f9f4cc878343dda22b1d35f27a7.

Reason for revert: Breaks build from jami-project

Change-Id: Ie93add3c76a88c0368cb9d23c415d921a06b49d9
---
 CMakeLists.txt                               |  2 +-
 extras/build/cmake/modules/FindLibJami.cmake | 21 ++++++++++++++------
 src/libclient/CMakeLists.txt                 |  2 +-
 src/libclient/qtwrapper/CMakeLists.txt       |  2 +-
 4 files changed, 18 insertions(+), 9 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3937191c6..b640c2c79 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -124,7 +124,7 @@ set(CMAKE_MODULE_PATH
   ${CMAKE_MODULE_PATH} "${EXTRAS_DIR}/build/cmake/modules")
 find_package(LibJami REQUIRED)
 if(LIBJAMI_FOUND)
-  include_directories(${LIBJAMI_INCLUDE_DIR})
+  include_directories(${LIBJAMI_INCLUDE_DIRS})
 endif()
 
 include(FindPython3)
diff --git a/extras/build/cmake/modules/FindLibJami.cmake b/extras/build/cmake/modules/FindLibJami.cmake
index a263889e0..1e271001e 100644
--- a/extras/build/cmake/modules/FindLibJami.cmake
+++ b/extras/build/cmake/modules/FindLibJami.cmake
@@ -20,19 +20,28 @@
 
 # Once done, this find module will set:
 #
-#   LIBJAMI_INCLUDE_DIR - libjami include directories
+#   LIBJAMI_INCLUDE_DIRS - libjami include directories
 #   LIBJAMI_FOUND - whether it was able to find the include directories
 #   LIBJAMI_LIB - path to libjami or libring library
 
 set(LIBJAMI_FOUND true)
 
 if(WITH_DAEMON_SUBMODULE)
-  set(LIBJAMI_INCLUDE_DIR ${DAEMON_DIR}/src/jami)
+  set(LIBJAMI_INCLUDE_DIRS ${DAEMON_DIR}/src/jami)
 else()
-  find_path(LIBJAMI_INCLUDE_DIR jami.h PATH_SUFFIXES jami)
-  if(NOT LIBJAMI_INCLUDE_DIR)
+  if(EXISTS ${LIBJAMI_INCLUDE_DIR}/jami.h)
+    set(LIBJAMI_INCLUDE_DIRS ${LIBJAMI_INCLUDE_DIR})
+  elseif(EXISTS ${LIBJAMI_BUILD_DIR}/jami/jami.h)
+    set(LIBJAMI_INCLUDE_DIRS ${LIBJAMI_BUILD_DIR}/jami)
+  elseif(EXISTS ${RING_INCLUDE_DIR}/jami.h)
+    set(LIBJAMI_INCLUDE_DIRS ${RING_INCLUDE_DIR})
+  elseif(EXISTS ${RING_BUILD_DIR}/jami/jami.h)
+    set(LIBJAMI_INCLUDE_DIRS ${RING_BUILD_DIR}/jami)
+  elseif(EXISTS ${CMAKE_INSTALL_PREFIX}/include/jami/jami.h)
+    set(LIBJAMI_INCLUDE_DIRS ${CMAKE_INSTALL_PREFIX}/include/jami)
+  else()
     message(STATUS "Jami daemon headers not found!
-Set -DCMAKE_INSTALL_PREFIX or use -DWITH_DAEMON_SUBMODULE")
+Set -DLIBJAMI_BUILD_DIR or -DCMAKE_INSTALL_PREFIX")
     set(LIBJAMI_FOUND false)
   endif()
 endif()
@@ -98,5 +107,5 @@ endif()
 # Restore the original value of CMAKE_FIND_LIBRARY_SUFFIXES.
 set(CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES_orig})
 
-message(STATUS "Jami daemon headers are in " ${LIBJAMI_INCLUDE_DIR})
+message(STATUS "Jami daemon headers are in " ${LIBJAMI_INCLUDE_DIRS})
 message(STATUS "Jami daemon library is at " ${LIBJAMI_LIB})
diff --git a/src/libclient/CMakeLists.txt b/src/libclient/CMakeLists.txt
index c12dc113e..4c0db810c 100644
--- a/src/libclient/CMakeLists.txt
+++ b/src/libclient/CMakeLists.txt
@@ -62,7 +62,7 @@ set(CMAKE_MODULE_PATH
   ${CMAKE_MODULE_PATH} "${EXTRAS_DIR}/build/cmake/modules")
 find_package(LibJami REQUIRED)
 if(LIBJAMI_FOUND)
-  include_directories(${LIBJAMI_INCLUDE_DIR})
+  include_directories(${LIBJAMI_INCLUDE_DIRS})
 endif()
 
 string(SUBSTRING ${CMAKE_GENERATOR} 0 14 CMAKE_GENERATOR_SHORT)
diff --git a/src/libclient/qtwrapper/CMakeLists.txt b/src/libclient/qtwrapper/CMakeLists.txt
index ba68aac44..acee0d0cd 100644
--- a/src/libclient/qtwrapper/CMakeLists.txt
+++ b/src/libclient/qtwrapper/CMakeLists.txt
@@ -46,7 +46,7 @@ else()
 endif()
 
 include_directories(${CMAKE_CURRENT_SOURCE_DIR})
-include_directories(${LIBJAMI_INCLUDE_DIR})
+include_directories(${LIBJAMI_INCLUDE_DIRS})
 include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../)
 include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../dbus)
 
-- 
GitLab