From 503ad0d649b96f8cbfd119b1e3482d6af598b461 Mon Sep 17 00:00:00 2001
From: Mederic Fourmy <mederic.fourmy@gmail.com>
Date: Thu, 12 May 2022 13:02:15 +0200
Subject: [PATCH] [skip-ci] Fixing include and linking problem with csm and
 falkolib

---
 .gitignore                                    |  2 +-
 CMakeLists.txt                                |  3 ++-
 cmake_modules/laser_scan_utilsConfig.cmake.in |  2 ++
 src/CMakeLists.txt                            | 16 ++++++++++------
 4 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/.gitignore b/.gitignore
index c164a29..4f9c828 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,6 @@
 #Ignore build, bin and lib folders
 bin/
-build/
+build*/
 lib/
 .settings/language.settings.xml
 .project
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c1ff8b2..bbc8a71 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -6,7 +6,7 @@ PROJECT(laser_scan_utils)
 
 SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_SOURCE_DIR}/bin)
 SET(LIBRARY_OUTPUT_PATH ${CMAKE_CURRENT_SOURCE_DIR}/lib)
-set(INCLUDE_INSTALL_DIR include/iri-algorithms/wolf)
+set(INCLUDE_INSTALL_DIR include/iri-algorithms)
 set(LIB_INSTALL_DIR lib/)
 # SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake_modules")
 
@@ -25,6 +25,7 @@ FIND_PACKAGE(Eigen3 3.3 REQUIRED)
 FIND_PACKAGE(falkolib QUIET)
 find_package(PkgConfig)
 pkg_check_modules(csm QUIET csm )
+link_directories(${csm_LIBRARY_DIRS})
 
 
 #Build tests
diff --git a/cmake_modules/laser_scan_utilsConfig.cmake.in b/cmake_modules/laser_scan_utilsConfig.cmake.in
index 699253a..621f1e5 100644
--- a/cmake_modules/laser_scan_utilsConfig.cmake.in
+++ b/cmake_modules/laser_scan_utilsConfig.cmake.in
@@ -3,6 +3,8 @@ set(@PROJECT_NAME@_VERSION 0.0.1)
 
 @PACKAGE_INIT@
 
+FIND_DEPENDENCY(falkolib REQUIRED)
+# FIND_DEPENDENCY(csm REQUIRED)  # does not work!
 
 include("${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@Targets.cmake")
 
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 61267cf..f76436e 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -6,16 +6,15 @@ CMAKE_MINIMUM_REQUIRED(VERSION 3.10)
 INCLUDE_DIRECTORIES(.)
 
 IF(csm_FOUND)
-    INCLUDE_DIRECTORIES(${csm_INCLUDE_DIRS})
+  MESSAGE(STATUS "CSM lib found")
+  INCLUDE_DIRECTORIES(${csm_INCLUDE_DIRS})
 ENDIF(csm_FOUND)
 IF(faramotics_FOUND)
-    INCLUDE_DIRECTORIES(${faramotics_INCLUDE_DIRS})
+  MESSAGE(STATUS "FARAMOTICS lib found")
+  INCLUDE_DIRECTORIES(${faramotics_INCLUDE_DIRS})
 ENDIF(faramotics_FOUND)
 IF(falkolib_FOUND)
   MESSAGE(STATUS "FALKO lib found:")
-  MESSAGE(STATUS "  falkolib_INCLUDE_DIRS ${falkolib_INCLUDE_DIRS}")
-  MESSAGE(STATUS "  falkolib_LIBRARY_DIRS ${falkolib_LIBRARY_DIRS}")
-  MESSAGE(STATUS "  falkolib_LIBRARIES ${falkolib_LIBRARIES}")
   add_definitions(-DEIGEN_DISABLE_UNALIGNED_ARRAY_ASSERT)
   INCLUDE_DIRECTORIES(${falkolib_INCLUDE_DIRS})
   LINK_DIRECTORIES(${falkolib_LIBRARY_DIRS})
@@ -91,8 +90,13 @@ SET(SRCS
 # create the shared library
 ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS})
 target_link_libraries(${PROJECT_NAME} Eigen3::Eigen)
+# message(WARNING "csm_INCLUDE_DIRS: " ${csm_INCLUDE_DIRS})
+# message(WARNING "csm_LIBRARY: " ${csm_LIBRARY})
+# message(WARNING "csm_LIBRARIES: " ${csm_LIBRARIES})
+# message(WARNING "csm_LIBRARY_DIRS: " ${csm_LIBRARY_DIRS})
+
 IF(csm_FOUND)
-  target_link_libraries(${PROJECT_NAME} ${csm_LIBRARY})
+  target_link_libraries(${PROJECT_NAME} ${csm_LIBRARIES})
 ENDIF(csm_FOUND)
 
 IF(falkolib_FOUND)
-- 
GitLab