From 0efca848be3c6a922b84f19c4f9e71c101933c23 Mon Sep 17 00:00:00 2001 From: Joscha Schmiedt <joscha@schmiedt.dev> Date: Tue, 12 Nov 2024 22:03:58 +0100 Subject: [PATCH] WIP: Fix include errors for tests and Conan 2 --- CMakeLists.txt | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index e0f69aa..419be6f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -107,10 +107,15 @@ message("INCLUDE_DIRS: ${CMAKE_INCLUDE_PATH}") message("LIB_DIRS: ${CMAKE_LIBRARY_PATH}") message("LIBS: ${LIBS}") - +# TODO: What is the purpose of this? string(REGEX REPLACE ";" ";-I" _MKOCTFILE_INCLUDES "-I${CMAKE_INCLUDE_PATH}") string(REGEX REPLACE ";" ";-L" _MKOCTFILE_LIB_DIRS "-L${CMAKE_LIBRARY_PATH};${_MAOX_LIB_DIR}") string(REGEX REPLACE ";" ";-l" _MKOCTFILE_LIBS "-lmaoxdb;linkahead") + +message("INCLUDE_DIRS: ${CMAKE_INCLUDE_PATH}") +message("LIB_DIRS: ${CMAKE_LIBRARY_PATH}") +message("LIBS: ${LIBS}") + # Needs this in front: -Wl,-rpath, string(REGEX REPLACE ";" ",-rpath," _MKOCTFILE_RPATH "${CMAKE_LIBRARY_PATH}") set(_MKOCTFILE_OPTIONS "-Wl,-rpath,${_MKOCTFILE_RPATH}" "--mex" "-std=gnu++17" @@ -224,7 +229,13 @@ if(TEST) ${OCTINCLUDEDIR} ${MAOXDB_DIR}) target_link_libraries(${test_case_name} PUBLIC - maoxdb ${OCTLIBS} linkahead::linkahead GTest::gtest ${Boost_LIBRARIES}) + maoxdb ${OCTLIBS} linkahead::linkahead GTest::gtest + gRPC::grpc++ gRPC::grpc protobuf::libprotobuf ${Boost_LIBRARIES} + ) + # TODO: For some reason, this causes: fatal error: absl/synchronization/mutex.h: No such file or directory + # Handling include directories should be handled by Conan, but it is not. + target_include_directories(${test_case_name} PUBLIC ${Boost_INCLUDE_DIRS} ${gRPC_INCLUDE_DIRS} ${protobuf_INCLUDE_DIRS} ${linkahead_INCLUDE_DIRS} ${CMAKE_INCLUDE_PATH} ) + target_link_directories(${test_case_name} PUBLIC ${OCTLIBDIR}) message(STATUS "CMAKE_CURRENT_BINARY_DIR: ${CMAKE_CURRENT_BINARY_DIR}") gtest_discover_tests(${test_case_name} -- GitLab