diff options
| author | Felix Morgner <felix.morgner@gmail.com> | 2019-11-29 11:33:34 +0100 |
|---|---|---|
| committer | Felix Morgner <felix.morgner@gmail.com> | 2019-11-29 11:33:34 +0100 |
| commit | 19a333165631f30556ee675ffb1cd5769eb82789 (patch) | |
| tree | ebdcd317598bad84f2f57539a9a98bd4e4821fc4 | |
| parent | 16b821f0b921105b2fb40c222d97f1dcadd613d7 (diff) | |
| download | wanda-19a333165631f30556ee675ffb1cd5769eb82789.tar.xz wanda-19a333165631f30556ee675ffb1cd5769eb82789.zip | |
build: use CUTE via conan
| -rw-r--r-- | .gitmodules | 3 | ||||
| -rw-r--r-- | CMakeLists.txt | 33 | ||||
| -rw-r--r-- | cmake/Modules/CUTE.cmake | 35 | ||||
| -rw-r--r-- | conanfile.py | 1 |
4 files changed, 30 insertions, 42 deletions
diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index eab90a7..0000000 --- a/.gitmodules +++ /dev/null @@ -1,3 +0,0 @@ -[submodule "cute"] - path = lib/cute - url = https://github.com/PeterSommerlad/CUTE diff --git a/CMakeLists.txt b/CMakeLists.txt index 628fd37..b116b82 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -28,7 +28,7 @@ if(NOT CMAKE_ARCHIVE_OUTPUT_DIRECTORY) set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/lib") endif() -include("CUTE") +enable_testing() # Conan Dependencies @@ -37,6 +37,9 @@ include("Conan") conan_add_remote(NAME "bincrafters" URL "https://api.bintray.com/conan/bincrafters/public-conan" ) +conan_add_remote(NAME "bincrafters" + URL "https://api.bintray.com/conan/fmorgner/conan-public" +) conan_cmake_run(CONANFILE "conanfile.py" BASIC_SETUP CMAKE_TARGETS @@ -132,9 +135,31 @@ target_link_libraries("${PROJECT_NAME}c" # Automated Tests -if(CUTE_FOUND) - cute_test("xdg") -endif() +add_library("${PROJECT_NAME}_test_driver" OBJECT + "tests/${PROJECT_NAME}/driver.cpp" +) +target_link_libraries("${PROJECT_NAME}_test_driver" + "CONAN_PKG::CUTE" +) + +function("cute_test" SUITE_NAME) + if(NOT SUITE_NAME) + message(FATAL_ERROR "Missing argument 'SUITE_NAME'!") + endif() + + add_executable("${PROJECT_NAME}_${SUITE_NAME}_tests" + "tests/${PROJECT_NAME}/test_suite_${SUITE_NAME}.cpp" + ) + target_link_libraries("${PROJECT_NAME}_${SUITE_NAME}_tests" + "${PROJECT_NAME}_test_driver" + "${PROJECT_NAME}" + ) + add_test(NAME "${SUITE_NAME}_tests" + COMMAND "${PROJECT_NAME}_${SUITE_NAME}_tests" + ) +endfunction() + +cute_test("xdg") # Install Targets diff --git a/cmake/Modules/CUTE.cmake b/cmake/Modules/CUTE.cmake index 77dd95b..e69de29 100644 --- a/cmake/Modules/CUTE.cmake +++ b/cmake/Modules/CUTE.cmake @@ -1,35 +0,0 @@ -if(NOT EXISTS "${PROJECT_SOURCE_DIR}/lib/cute/cute/cute.h") - message(STATUS "CUTE: Submodule 'lib/cute' not checked out. Disabling tests.") - set(CUTE_FOUND OFF) -else() - message(STATUS "CUTE: Found submodule 'lib/cute'. Enabling tests.") - include("CTest") - enable_testing() - add_library("LIB::CUTE" INTERFACE IMPORTED) - set_property(TARGET "LIB::CUTE" PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${PROJECT_SOURCE_DIR}/lib/cute") - set(CUTE_FOUND ON) - - add_library("${PROJECT_NAME}_test_driver" OBJECT - "tests/${PROJECT_NAME}/driver.cpp" - ) - target_include_directories("${PROJECT_NAME}_test_driver" SYSTEM - PUBLIC "${PROJECT_SOURCE_DIR}/lib/cute" - ) - - function("cute_test" SUITE_NAME) - if(NOT SUITE_NAME) - message(FATAL_ERROR "Missing argument 'SUITE_NAME'!") - endif() - - add_executable("${PROJECT_NAME}_${SUITE_NAME}_tests" - "tests/${PROJECT_NAME}/test_suite_${SUITE_NAME}.cpp" - ) - target_link_libraries("${PROJECT_NAME}_${SUITE_NAME}_tests" - "${PROJECT_NAME}_test_driver" - "${PROJECT_NAME}" - ) - add_test(NAME "${SUITE_NAME}_tests" - COMMAND "${PROJECT_NAME}_${SUITE_NAME}_tests" - ) - endfunction() -endif()
\ No newline at end of file diff --git a/conanfile.py b/conanfile.py index 2a77b01..a24cc33 100644 --- a/conanfile.py +++ b/conanfile.py @@ -28,6 +28,7 @@ class Wanda(ConanFile): "clara/1.1.5@bincrafters/stable", "spdlog/1.2.1@bincrafters/stable", "range-v3/0.4.0@ericniebler/stable", + "CUTE/2.2.6@fmorgner/stable", ) default_options = { "asio:standalone": True, |
