aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@gmail.com>2019-11-29 11:33:34 +0100
committerFelix Morgner <felix.morgner@gmail.com>2019-11-29 11:33:34 +0100
commit19a333165631f30556ee675ffb1cd5769eb82789 (patch)
treeebdcd317598bad84f2f57539a9a98bd4e4821fc4
parent16b821f0b921105b2fb40c222d97f1dcadd613d7 (diff)
downloadwanda-19a333165631f30556ee675ffb1cd5769eb82789.tar.xz
wanda-19a333165631f30556ee675ffb1cd5769eb82789.zip
build: use CUTE via conan
-rw-r--r--.gitmodules3
-rw-r--r--CMakeLists.txt33
-rw-r--r--cmake/Modules/CUTE.cmake35
-rw-r--r--conanfile.py1
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,