From 4af9cd25709a1220317b344d010e3d3e54991e77 Mon Sep 17 00:00:00 2001
From: Guilhem Saurel <guilhem.saurel@laas.fr>
Date: Mon, 24 Aug 2020 15:32:12 +0200
Subject: [PATCH] [CMake] Boost: use only components

---
 CMakeLists.txt       | 5 +++--
 tests/CMakeLists.txt | 9 +++++----
 2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 72df510..f5c0702 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -55,8 +55,9 @@ ADD_LIBRARY(${PROJECT_NAME} SHARED
   ${${PROJECT_NAME}_SOURCES} ${${PROJECT_NAME}_HEADERS})
 TARGET_INCLUDE_DIRECTORIES(${PROJECT_NAME} SYSTEM PUBLIC ${PYTHON_INCLUDE_DIRS})
 TARGET_INCLUDE_DIRECTORIES(${PROJECT_NAME} PUBLIC $<INSTALL_INTERFACE:include>)
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} PUBLIC ${Boost_LIBRARIES}
-  ${PYTHON_LIBRARY} Boost::python dynamic-graph::dynamic-graph)
+TARGET_LINK_LIBRARIES(${PROJECT_NAME} PUBLIC ${PYTHON_LIBRARY}
+  dynamic-graph::dynamic-graph)
+TARGET_LINK_BOOST_PYTHON(${PROJECT_NAME} PRIVATE)
 
 IF(SUFFIX_SO_VERSION)
   SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION ${PROJECT_VERSION})
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index c090724..e0b6731 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -6,7 +6,7 @@ TARGET_LINK_LIBRARIES(interpreter-test ${PROJECT_NAME})
 
 # Test runfile
 ADD_UNIT_TEST(interpreter-test-runfile interpreter-test-runfile.cc)
-TARGET_LINK_LIBRARIES(interpreter-test-runfile ${PYTHON_LIBRARY} ${Boost_LIBRARIES} ${PROJECT_NAME})
+TARGET_LINK_LIBRARIES(interpreter-test-runfile ${PROJECT_NAME} Boost::unit_test_framework)
 TARGET_COMPILE_DEFINITIONS(interpreter-test-runfile PRIVATE PATH="${CMAKE_CURRENT_LIST_DIR}/")
 
 # Test the module generation
@@ -44,10 +44,11 @@ IF(UNIX AND NOT APPLE)
   TARGET_LINK_LIBRARIES(${PYTHON_MODULE} "-Wl,--no-as-needed")
 ENDIF(UNIX AND NOT APPLE)
 
-TARGET_LINK_LIBRARIES(${PYTHON_MODULE}
+TARGET_LINK_LIBRARIES(${PYTHON_MODULE} PRIVATE
   ${LIBRARY_NAME} dynamic-graph-python
-  ${PYTHON_LIBRARY} ${Boost_PYTHON_LIBRARIES})
-TARGET_INCLUDE_DIRECTORIES(${PYTHON_MODULE} SYSTEM PUBLIC ${PYTHON_INCLUDE_DIRS})
+  ${PYTHON_LIBRARY})
+TARGET_LINK_BOOST_PYTHON(${PYTHON_MODULE} PRIVATE)
+TARGET_INCLUDE_DIRECTORIES(${PYTHON_MODULE} SYSTEM PRIVATE ${PYTHON_INCLUDE_DIRS})
 
 ## Test it
 ADD_PYTHON_UNIT_TEST("test-custom-entity" "tests/test_custom_entity.py" src tests)
-- 
GitLab