Skip to content
Snippets Groups Projects
Commit 526ba9ab authored by Joscha Schmiedt's avatar Joscha Schmiedt
Browse files

WIP: Adapt test_package for Conan 2.0

parent b7d2dc5e
No related branches found
No related tags found
2 merge requests!61Release 0.3.0,!49Resolve "EXTERN: Adapt to Conan 2"
Checking pipeline status
cmake_minimum_required(VERSION 3.1) cmake_minimum_required(VERSION 3.13)
project(PackageTest CXX) project(PackageTest CXX)
####################################################################### #######################################################################
...@@ -12,9 +12,6 @@ set(test_cases ...@@ -12,9 +12,6 @@ set(test_cases
### Set up tests using GoogleTest (GTest) ### Set up tests using GoogleTest (GTest)
################################################### ###################################################
# dependencies
include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake)
conan_basic_setup(KEEP_RPATHS)
# supress warnings during build of gtest # supress warnings during build of gtest
cmake_policy(SET CMP0054 NEW) cmake_policy(SET CMP0054 NEW)
...@@ -29,10 +26,7 @@ math(EXPR len_test_cases "${len_test_cases} - 1") ...@@ -29,10 +26,7 @@ math(EXPR len_test_cases "${len_test_cases} - 1")
foreach (i RANGE "${len_test_cases}") foreach (i RANGE "${len_test_cases}")
list(GET test_cases ${i} test_case_name) list(GET test_cases ${i} test_case_name)
add_executable(${test_case_name} ${test_case_name}.cpp) add_executable(${test_case_name} ${test_case_name}.cpp)
target_link_libraries(${test_case_name} PRIVATE ${CONAN_LIBS_CAOSDB} target_link_libraries(${test_case_name} PRIVATE GTest::gtest GTest::gtest_main caosdb::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})
if("${CMAKE_BUILD_TYPE}" MATCHES "Debug") if("${CMAKE_BUILD_TYPE}" MATCHES "Debug")
target_link_libraries(${test_case_name} PRIVATE caosdb_grpc) target_link_libraries(${test_case_name} PRIVATE caosdb_grpc)
endif() endif()
......
import os from conan import ConanFile
from conan.tools.cmake import CMake, cmake_layout, CMakeDeps, CMakeToolchain
from conans import ConanFile, CMake, tools from conan.tools.files import copy
from conan.tools.build import cross_building
class LibcaosdbTestConan(ConanFile): class LibcaosdbTestConan(ConanFile):
settings = "os", "compiler", "build_type", "arch" settings = "os", "compiler", "build_type", "arch"
generators = "cmake"
build_requires = [ build_requires = [
("gtest/1.11.0"), ("gtest/1.11.0"),
] ]
def layout(self):
cmake_layout(self, src_folder=".")
def generate(self):
tc = CMakeToolchain(self)
tc.generate()
cmake = CMakeDeps(self)
cmake.generate()
def build(self): def build(self):
cmake = CMake(self) cmake = CMake(self)
# Current dir is "test_package/build/<build_id>" and CMakeLists.txt is
# in "test_package"
cmake.configure() cmake.configure()
cmake.build() cmake.build()
def imports(self): def imports(self):
self.copy("*.dll", dst="bin", src="bin") copy("*.dll", dst="bin", src="bin")
self.copy("*.dylib*", dst="bin", src="lib") copy("*.dylib*", dst="bin", src="lib")
self.copy('*.so*', dst='bin', src='lib') copy('*.so*', dst='bin', src='lib')
def test(self): def test(self):
if not tools.cross_building(self): if not cross_building(self):
cmake = CMake(self) cmake = CMake(self)
cmake.test() cmake.test()
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment