From 7e438a973ddbe44f2d5bb48e8bc7712bec899a83 Mon Sep 17 00:00:00 2001
From: Justin Carpentier <justin.carpentier@inria.fr>
Date: Thu, 5 Dec 2019 14:57:29 +0100
Subject: [PATCH] cmake: small refactoring of the code for nice export

---
 python/CMakeLists.txt |  5 ++---
 src/CMakeLists.txt    | 19 +++++++++++++------
 test/CMakeLists.txt   |  1 +
 3 files changed, 16 insertions(+), 9 deletions(-)

diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt
index 6204ed71..56b3269e 100644
--- a/python/CMakeLists.txt
+++ b/python/CMakeLists.txt
@@ -47,9 +47,8 @@ ADD_LIBRARY(${LIBRARY_NAME} SHARED
   distance.cc
   fcl.cc)
 
-TARGET_LINK_BOOST_PYTHON(${LIBRARY_NAME})
-TARGET_LINK_LIBRARIES(${LIBRARY_NAME} ${Boost_LIBRARIES})
-TARGET_LINK_LIBRARIES(${LIBRARY_NAME} ${PROJECT_NAME})
+TARGET_LINK_BOOST_PYTHON(${LIBRARY_NAME} PUBLIC)
+TARGET_LINK_LIBRARIES(${LIBRARY_NAME} PUBLIC ${PROJECT_NAME})
 PKG_CONFIG_USE_DEPENDENCY(${LIBRARY_NAME} eigenpy)
 
 SET_TARGET_PROPERTIES(${LIBRARY_NAME} PROPERTIES
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index cbf9dd39..88db53f8 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -82,19 +82,28 @@ set(${LIBRARY_NAME}_SOURCES
   mesh_loader/loader.cpp
   )
 
-link_directories(${Boost_LIBRARY_DIRS})
-
 add_library(${LIBRARY_NAME}
   SHARED
   ${${LIBRARY_NAME}_SOURCES}
   )
-TARGET_LINK_LIBRARIES(${LIBRARY_NAME} ${Boost_LIBRARIES})
 
-target_include_directories(${LIBRARY_NAME} SYSTEM PUBLIC
+TARGET_LINK_LIBRARIES(${LIBRARY_NAME} 
+  PUBLIC 
+  ${Boost_thread_LIBRARY}
+  ${Boost_date_time_LIBRARY}
+  ${Boost_system_LIBRARY})
+
+target_include_directories(${LIBRARY_NAME} 
+  SYSTEM PUBLIC
   ${EIGEN3_INCLUDE_DIRS}
   ${Boost_INCLUDE_DIRS}
   )
 
+target_include_directories(${LIBRARY_NAME} 
+  PUBLIC
+  $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
+)
+
 PKG_CONFIG_USE_DEPENDENCY(${LIBRARY_NAME} assimp)
 if (NOT ${ASSIMP_VERSION} VERSION_LESS "2.0.1150")
   target_compile_definitions(${LIBRARY_NAME} PRIVATE -DHPP_FCL_USE_ASSIMP_UNIFIED_HEADER_NAMES)
@@ -111,8 +120,6 @@ IF(OCTOMAP_FOUND)
     -DOCTOMAP_PATCH_VERSION=${OCTOMAP_PATCH_VERSION})
 ENDIF(OCTOMAP_FOUND)
 
-target_include_directories(${LIBRARY_NAME} PUBLIC
-  $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
 install(TARGETS ${LIBRARY_NAME}
   EXPORT ${TARGETS_EXPORT_NAME}
   DESTINATION ${CMAKE_INSTALL_LIBDIR})
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index b9308e3b..4409a949 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -11,6 +11,7 @@ endmacro(add_fcl_template_test)
 macro(add_fcl_test test_name)
   add_executable(${ARGV})
   target_link_libraries(${test_name}
+    PUBLIC
     hpp-fcl
     ${Boost_LIBRARIES}
     utility
-- 
GitLab