From 596f0b3fae68658b170c1529f97bf1b37d7fb984 Mon Sep 17 00:00:00 2001 From: Pierre Fernbach <pierre.fernbach@laas.fr> Date: Wed, 24 Jan 2018 13:45:54 +0100 Subject: [PATCH] change test/CMakelist to uniformize with hpp packages --- CMakeLists.txt | 2 +- test/CMakeLists.txt | 45 +++++++++++++++++++++++++++++++++------------ 2 files changed, 34 insertions(+), 13 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 3f26dba..5029d5d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -11,7 +11,7 @@ SET(PROJECT_URL "") set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/;${PROJECT_SOURCE_DIR}/cmake2/") set(LIBRARY_OUTPUT_PATH "${PROJECT_SOURCE_DIR}/lib/") -set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/bin/") +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/build/") set(SRC_DIR "${PROJECT_SOURCE_DIR}/src") set(INCLUDE_DIR "${PROJECT_SOURCE_DIR}/include") diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 5d559ab..18bb1a7 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -1,24 +1,45 @@ cmake_minimum_required(VERSION 2.6) -include_directories("${SRC_DIR}") + +INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIRS}) +INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src) include_directories("${INCLUDE_DIR}") include_directories("${EIGEN3_INCLUDE_DIR}") include_directories("${CDD_INCLUDE_DIR}") -# no need to include directories for qpOASES as it is automatically done through pkgconfig -if(CLP_FOUND) - include_directories("${CLP_INCLUDE_DIR}") -endif() -PROJECT(centroidal-dynamics-lib) + +# Make Boost.Test generates the main function in test cases. +#ADD_DEFINITIONS(-DBOOST_TEST_DYN_LINK -DBOOST_TEST_MAIN) + +# ADD_TESTCASE(NAME) +# ------------------------ +# +# Define a test named `NAME'. +# +# This macro will create a binary from `NAME.cc', link it against +# Boost and add it to the test suite. +# +MACRO(ADD_TESTCASE NAME GENERATED) + IF (${GENERATED} STREQUAL TRUE) + ADD_EXECUTABLE(${NAME} ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.cpp) + ELSE() + ADD_EXECUTABLE(${NAME} ${NAME}.cpp) + ENDIF() + ADD_TEST(${NAME} ${RUNTIME_OUTPUT_DIRECTORY}/${NAME}) + + # Link against Boost and project library. + TARGET_LINK_LIBRARIES(${NAME} + ${Boost_LIBRARIES} + ${PROJECT_NAME} + ) + +ENDMACRO(ADD_TESTCASE) + if ( MSVC ) SET(CMAKE_DEBUG_POSTFIX d) endif ( MSVC ) -add_executable(test_static_equilibrium test_static_equilibrium.cpp) -add_executable(test_LP_solvers test_LP_solvers.cpp) +ADD_TESTCASE(test_static_equilibrium FALSE) +ADD_TESTCASE(test_LP_solvers FALSE) -TARGET_LINK_LIBRARIES(test_LP_solvers centroidal-dynamics-lib) -PKG_CONFIG_USE_DEPENDENCY(test_LP_solvers qpOASES) -TARGET_LINK_LIBRARIES(test_static_equilibrium centroidal-dynamics-lib) -#~ TARGET_LINK_LIBRARIES(polytopetest polytope ${SRC_DIR}/../external/cddlib-094b/lib-src/libcdd.a) -- GitLab