From ce441a9ba5136ebd8e8c6bcf37013407db3a4f0b Mon Sep 17 00:00:00 2001 From: Kosta Date: Mon, 5 Aug 2013 12:40:33 +0200 Subject: [PATCH] initial checkin of cmake and travis config files --- .travis.yml | 19 +++++++++++++++ projects/CMake/CMakeLists.txt | 46 +++++++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 .travis.yml create mode 100644 projects/CMake/CMakeLists.txt diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 00000000..dbe73718 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,19 @@ +language: cpp + +compiler: + - clang + - gcc + +env: + - BUILD_TYPE=Debug + - BUILD_TYPE=Release + +install: + - cmake -Hprojects/CMake -BBuild -DCMAKE_BUILD_TYPE=$BUILD_TYPE + - cd Build + - make + - cd .. + +script: + - cd Build + - ctest -VV diff --git a/projects/CMake/CMakeLists.txt b/projects/CMake/CMakeLists.txt new file mode 100644 index 00000000..9584c19b --- /dev/null +++ b/projects/CMake/CMakeLists.txt @@ -0,0 +1,46 @@ +cmake_minimum_required(VERSION 2.8) + +project(Catch C CXX) +message("configure: Catch/SelfTest") + +# switch to the right compiler +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") +if(APPLE) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++") +endif(APPLE) + +# define some folders +set(CATCH_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../") +set(SELF_TEST_DIR ${CATCH_DIR}/projects/SelfTest) +set(SCRIPTS_DIR ${CATCH_DIR}/scripts/) + +# define the sources of the self test +set( + SOURCES + ${SELF_TEST_DIR}/ApproxTests.cpp + ${SELF_TEST_DIR}/BDDTests.cpp + ${SELF_TEST_DIR}/catch_self_test.cpp + ${SELF_TEST_DIR}/ClassTests.cpp + ${SELF_TEST_DIR}/CmdLineTests.cpp + ${SELF_TEST_DIR}/ConditionTests.cpp + ${SELF_TEST_DIR}/ExceptionTests.cpp + ${SELF_TEST_DIR}/GeneratorTests.cpp + ${SELF_TEST_DIR}/MessageTests.cpp + ${SELF_TEST_DIR}/MiscTests.cpp + ${SELF_TEST_DIR}/SectionTrackerTests.cpp + ${SELF_TEST_DIR}/TestMain.cpp + ${SELF_TEST_DIR}/TrickyTests.cpp + ${SELF_TEST_DIR}/VariadicMacrosTests.cpp +) + +# configure the executable +include_directories(${CATCH_DIR}/include/) +add_executable(SelfTest ${SOURCES}) + +# configure unit tests via ctest +enable_testing() +add_test(NAME SelfTest_run COMMAND python ${SCRIPTS_DIR}/approvalTests.py "${CATCH_DIR}" "${CMAKE_CURRENT_BINARY_DIR}/SelfTest") + +#add_custom_target(SelfTest_scripts ALL +# COMMAND ${CMAKE_COMMAND} -E create_symlink \"${CMAKE_CURRENT_SOURCE_DIR}/../../../Data/Resources/mentor2wkt.json\" \"${CMAKE_CURRENT_BINARY_DIR}/mentor2wkt.json\" +#)