From 925b1e6e28505060ac4d82053e71bc5c538dc4e3 Mon Sep 17 00:00:00 2001 From: Joscha Schmiedt <joscha@schmiedt.dev> Date: Mon, 29 Jul 2024 22:37:38 +0200 Subject: [PATCH] CHG: Adapt CmakeLists.txt for Conan 2.0 - Remove references to CONAN_LIBS variables - use find_package --- CMakeLists.txt | 24 ++++++++++-------------- conanfile.txt | 2 ++ test/CMakeLists.txt | 18 ++++++++++-------- 3 files changed, 22 insertions(+), 22 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index e4c84cf..7f9f58f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -28,20 +28,16 @@ set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) - -# dependency management with conan -include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake) -conan_basic_setup() - -# fix grpc - remove unsecure (no-op ssl implementations) -string(REGEX REPLACE "grpc\\+?\\+?_unsecure" "" CONAN_LIBS_GRPC - "${CONAN_LIBS_GRPC}") -string(REGEX REPLACE "grpc\\+?\\+?_unsecure" "" CONAN_PKG_LIBS_GRPC - "${CONAN_PKG_LIBS_GRPC}") -string(REGEX REPLACE "grpc\\+?\\+?_unsecure" "" CONAN_LIBS - "${CONAN_LIBS}") -string(REGEX REPLACE "grpc\\+?\\+?_unsecure" "" CONAN_PKG_LIBS - "${CONAN_PKG_LIBS}") +# # fix grpc - remove unsecure (no-op ssl implementations) +# TODO: Find out if this is still necessary +# string(REGEX REPLACE "grpc\\+?\\+?_unsecure" "" CONAN_LIBS_GRPC +# "${CONAN_LIBS_GRPC}") +# string(REGEX REPLACE "grpc\\+?\\+?_unsecure" "" CONAN_PKG_LIBS_GRPC +# "${CONAN_PKG_LIBS_GRPC}") +# string(REGEX REPLACE "grpc\\+?\\+?_unsecure" "" CONAN_LIBS +# "${CONAN_LIBS}") +# string(REGEX REPLACE "grpc\\+?\\+?_unsecure" "" CONAN_PKG_LIBS +# "${CONAN_PKG_LIBS}") set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH}) diff --git a/conanfile.txt b/conanfile.txt index f0bcf87..05e1980 100644 --- a/conanfile.txt +++ b/conanfile.txt @@ -1,5 +1,7 @@ [requires] caosdb/[>=0.3.0-dev, include_prerelease=True] +protobuf/3.21.12 +grpc/1.48.4 [test_requires] gtest/1.11.0 diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 4c74001..8877e3c 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -86,8 +86,7 @@ if(LINTING) else() message(STATUS "clang-tidy: ${clang_tidy}") set(_CMAKE_CXX_CLANG_TIDY "${clang_tidy}" - "--header-filter=caosdb/.*[^\(\.pb\.h\)]$" - "--fix") + "--header-filter=caosdb/.*[^\(\.pb\.h\)]$") set(_CMAKE_CXX_CLANG_TIDY_CHECKS "--checks=*,-fuchsia-*,-llvmlibc-*,-cert-err58-cpp,-cppcoreguidelines-avoid-non-const-global-variables,-cppcoreguidelines-owning-memory,-modernize-use-trailing-return-type,-google-readability-avoid-underscore-in-googletest-name,-cppcoreguidelines-avoid-magic-numbers,-readability-magic-numbers,-cppcoreguidelines-avoid-goto,-hicpp-avoid-goto,-readability-function-cognitive-complexity,-cppcoreguidelines-pro-type-vararg,-cppcoreguidelines-non-private-member-variables-in-classes,-misc-non-private-member-variables-in-classes,-cppcoreguidelines-pro-type-vararg,-cppcoreguidelines-pro-bounds-array-to-pointer-decay,-hicpp-no-array-decay,-altera-*") endif() @@ -103,22 +102,25 @@ endif() # add special cmake functions for gtest include(GoogleTest REQUIRED) +find_package(caosdb) +find_package(GTest) +find_package(gRPC) +find_package(protobuf) + # loop over all test cases and add them to the test runner list(LENGTH test_cases len_test_cases) math(EXPR len_test_cases "${len_test_cases} - 1") foreach (i RANGE "${len_test_cases}") list(GET test_cases ${i} test_case_name) add_executable(${test_case_name} ${test_case_name}.cpp) - target_link_libraries(${test_case_name} PRIVATE ${CONAN_LIBS_CAOSDB} - ${CONAN_LIBS_GTEST} ${CONAN_LIBS_GRPC} ${CONAN_LIBS_ABSEIL} - ${CONAN_LIBS_OPENSSL} ${CONAN_LIBS_C-ARES} ${CONAN_LIBS_BZIP2} - ${CONAN_LIBS_PROTOBUF} ${CONAN_LIBS_ZLIB} ${CONAN_LIBS_RE2} - ${CONAN_LIBS_BOOST}) + target_link_libraries(${test_case_name} PRIVATE + caosdb::caosdb gtest::gtest grpc::grpc protobuf::protobuf + ) if("${CMAKE_BUILD_TYPE}" MATCHES "Debug") target_link_libraries(${test_case_name} PRIVATE caosdb_grpc) endif() target_include_directories(${test_case_name} - PUBLIC ${CONAN_INCLUDE_DIRS} ${CMAKE_CURRENT_SOURCE_DIR}) + PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) if(LINTING) set_target_properties(${test_case_name} PROPERTIES -- GitLab