Newer
Older
Justin Carpentier
committed
# Copyright (c) 2015-2020 CNRS INRIA
# ----------------------------------------------------
# --- BENCHMARK --------------------------------------
# ----------------------------------------------------
IF(WIN32)
ADD_DEFINITIONS("-DNOMINMAX")
ENDIF()
MACRO(ADD_BENCH bench_name)
IF(BUILD_BENCHMARK)
ADD_EXECUTABLE(${bench_name} ${bench_name}.cpp)
ELSE(BUILD_BENCHMARK)
ADD_EXECUTABLE(${bench_name} EXCLUDE_FROM_ALL ${bench_name}.cpp)
ENDIF(BUILD_BENCHMARK)
SET(ExtraMacroArgs ${ARGN})
LIST(LENGTH ExtraMacroArgs NumExtraMacroArgs)
IF(NumExtraMacroArgs GREATER 0)
SET(link_to_main_lib ${ARGV1})
IF(link_to_main_lib)
SET_TARGET_PROPERTIES(${bench_name} PROPERTIES COMPILE_DEFINITIONS PINOCCHIO_MODEL_DIR="${PINOCCHIO_MODEL_DIR}")
TARGET_LINK_LIBRARIES(${bench_name} PUBLIC ${PROJECT_NAME})
ENDIF(link_to_main_lib)
ENDIF()
ADD_DEPENDENCIES(bench ${bench_name})
Valenza Florian
committed
MACRO(ADD_TEST_CFLAGS target flag)
SET_PROPERTY(TARGET ${target} APPEND_STRING PROPERTY COMPILE_FLAGS " ${flag}")
ENDMACRO(ADD_TEST_CFLAGS)
IF(CPPAD_FOUND)
INCLUDE_DIRECTORIES(${cppad_INCLUDE_DIR})
ENDIF(CPPAD_FOUND)
IF(CPPADCG_FOUND)
INCLUDE_DIRECTORIES(${cppadcg_INCLUDE_DIR})
ENDIF(CPPADCG_FOUND)
Valenza Florian
committed
# timings
#
IF(CPPADCG_FOUND)
ADD_BENCH(timings-cg TRUE)
SET_PROPERTY(TARGET timings-cg PROPERTY CXX_STANDARD 11)
TARGET_LINK_LIBRARIES(timings-cg PUBLIC ${CMAKE_DL_LIBS})
ENDIF(CPPADCG_FOUND)
# timings
#
ADD_BENCH(timings-cholesky TRUE)
ADD_BENCH(timings-derivatives TRUE)
IF(CPPAD_FOUND)
TARGET_LINK_LIBRARIES(timings-derivatives PUBLIC ${cppad_LIBRARY})
ENDIF(CPPAD_FOUND)
IF(CPPADCG_FOUND)
SET_PROPERTY(TARGET timings-derivatives PROPERTY CXX_STANDARD 11)
ENDIF(CPPADCG_FOUND)
Valenza Florian
committed
#
ADD_BENCH(timings-eigen)
TARGET_INCLUDE_DIRECTORIES(timings-eigen PUBLIC ${EIGEN3_INCLUDE_DIR})
Valenza Florian
committed
Valenza Florian
committed
#
IF(URDFDOM_FOUND AND HPP_FCL_FOUND)
ADD_BENCH(timings-geometry TRUE)
Valenza Florian
committed
ENDIF(URDFDOM_FOUND AND HPP_FCL_FOUND)