diff --git a/CMakeLists.txt b/CMakeLists.txt index c67436a527cfda16a9c239583151343e0def0a1e..971e078d6c095a836920bcaa73e4c61517ab1c83 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -33,6 +33,12 @@ ENDIF(WIN32) # ---------------------------------------------------- ADD_REQUIRED_DEPENDENCY("eigenpy >= v1.0.1") ADD_REQUIRED_DEPENDENCY("urdfdom >= v0.3.0") +ADD_REQUIRED_DEPENDENCY("eigen3 >= v3.0.5") + +# ---------------------------------------------------- +# --- BENCHMARKS ------------------------------------- +# ---------------------------------------------------- +OPTION (BUILD_BENCHMARK "Build the benchmarks" OFF) # ---------------------------------------------------- # --- INCLUDE ---------------------------------------- @@ -149,52 +155,12 @@ FOREACH(python ${PYTHON_FILES}) DESTINATION ${PYTHON_SITELIB}/${PROJECT_NAME}) ENDFOREACH(python) -# ---------------------------------------------------- -# --- UNITTESTS -------------------------------------- -# ---------------------------------------------------- -ADD_EXECUTABLE(tspatial EXCLUDE_FROM_ALL unittest/tspatial.cpp) -PKG_CONFIG_USE_DEPENDENCY(tspatial eigenpy) - -ADD_EXECUTABLE(symmetric EXCLUDE_FROM_ALL unittest/symmetric.cpp) -PKG_CONFIG_USE_DEPENDENCY(symmetric eigenpy) - -ADD_EXECUTABLE(constraint EXCLUDE_FROM_ALL unittest/constraint.cpp) -PKG_CONFIG_USE_DEPENDENCY(constraint eigenpy) - -ADD_EXECUTABLE(rnea EXCLUDE_FROM_ALL unittest/rnea.cpp) -PKG_CONFIG_USE_DEPENDENCY(rnea eigenpy) - -ADD_EXECUTABLE(crba EXCLUDE_FROM_ALL unittest/crba.cpp) -PKG_CONFIG_USE_DEPENDENCY(crba eigenpy) -PKG_CONFIG_USE_DEPENDENCY(crba urdfdom) - -ADD_EXECUTABLE(timings EXCLUDE_FROM_ALL unittest/timings.cpp) -PKG_CONFIG_USE_DEPENDENCY(timings eigenpy) -PKG_CONFIG_USE_DEPENDENCY(timings urdfdom) - -ADD_EXECUTABLE(jacobian EXCLUDE_FROM_ALL unittest/jacobian.cpp) -PKG_CONFIG_USE_DEPENDENCY(jacobian eigenpy) - -ADD_EXECUTABLE(com EXCLUDE_FROM_ALL unittest/com.cpp) -PKG_CONFIG_USE_DEPENDENCY(com eigenpy) - -ADD_EXECUTABLE(cholesky EXCLUDE_FROM_ALL unittest/cholesky.cpp) -PKG_CONFIG_USE_DEPENDENCY(cholesky eigenpy) -PKG_CONFIG_USE_DEPENDENCY(cholesky urdfdom) - -ADD_EXECUTABLE(dg EXCLUDE_FROM_ALL unittest/dg.cpp) -PKG_CONFIG_USE_DEPENDENCY(dg eigenpy) - -ADD_EXECUTABLE(urdf EXCLUDE_FROM_ALL unittest/urdf.cpp) -PKG_CONFIG_USE_DEPENDENCY(urdf eigenpy) -PKG_CONFIG_USE_DEPENDENCY(urdf urdfdom) -ADD_EXECUTABLE(value EXCLUDE_FROM_ALL unittest/value.cpp) -PKG_CONFIG_USE_DEPENDENCY(value eigenpy) -PKG_CONFIG_USE_DEPENDENCY(value urdfdom) +ADD_SUBDIRECTORY(unittest) -ADD_EXECUTABLE(variant EXCLUDE_FROM_ALL unittest/variant.cpp) -PKG_CONFIG_USE_DEPENDENCY(variant eigenpy) +IF (BUILD_BENCHMARK) + ADD_SUBDIRECTORY (benchmark) +ENDIF (BUILD_BENCHMARK) SETUP_PROJECT_FINALIZE() SETUP_PROJECT_CPACK() diff --git a/benchmark/CMakeLists.txt b/benchmark/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..7db2d9a2ff72a99c84d8a38b62982cb0938191f5 --- /dev/null +++ b/benchmark/CMakeLists.txt @@ -0,0 +1,8 @@ +# ---------------------------------------------------- +# --- BENCHMARK -------------------------------------- +# ---------------------------------------------------- + +ADD_EXECUTABLE(timings timings.cpp) +PKG_CONFIG_USE_DEPENDENCY(timings eigenpy) # Should be eigen3, to be corrected. +PKG_CONFIG_USE_DEPENDENCY(timings urdfdom) + diff --git a/unittest/timings.cpp b/benchmark/timings.cpp similarity index 100% rename from unittest/timings.cpp rename to benchmark/timings.cpp diff --git a/unittest/CMakeLists.txt b/unittest/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..2c69043a0ad22161ff25d828503248eb18885a43 --- /dev/null +++ b/unittest/CMakeLists.txt @@ -0,0 +1,36 @@ +ADD_EXECUTABLE(tspatial EXCLUDE_FROM_ALL ./tspatial.cpp) +PKG_CONFIG_USE_DEPENDENCY(tspatial eigen3) + +ADD_EXECUTABLE(symmetric EXCLUDE_FROM_ALL ./symmetric.cpp) +PKG_CONFIG_USE_DEPENDENCY(symmetric eigen3) + +ADD_EXECUTABLE(constraint EXCLUDE_FROM_ALL ./constraint.cpp) +PKG_CONFIG_USE_DEPENDENCY(constraint eigen3) + +ADD_EXECUTABLE(rnea EXCLUDE_FROM_ALL ./rnea.cpp) +PKG_CONFIG_USE_DEPENDENCY(rnea eigen3) + +ADD_EXECUTABLE(crba EXCLUDE_FROM_ALL ./crba.cpp) +PKG_CONFIG_USE_DEPENDENCY(crba eigen3) +PKG_CONFIG_USE_DEPENDENCY(crba urdfdom) + +ADD_EXECUTABLE(jacobian EXCLUDE_FROM_ALL ./jacobian.cpp) +PKG_CONFIG_USE_DEPENDENCY(jacobian eigen3) + +ADD_EXECUTABLE(com EXCLUDE_FROM_ALL ./com.cpp) +PKG_CONFIG_USE_DEPENDENCY(com eigen3) + +ADD_EXECUTABLE(cholesky EXCLUDE_FROM_ALL ./cholesky.cpp) +PKG_CONFIG_USE_DEPENDENCY(cholesky eigen3) +PKG_CONFIG_USE_DEPENDENCY(cholesky urdfdom) + +ADD_EXECUTABLE(urdf EXCLUDE_FROM_ALL ./urdf.cpp) +PKG_CONFIG_USE_DEPENDENCY(urdf eigen3) +PKG_CONFIG_USE_DEPENDENCY(urdf urdfdom) + +ADD_EXECUTABLE(value EXCLUDE_FROM_ALL ./value.cpp) +PKG_CONFIG_USE_DEPENDENCY(value eigen3) +PKG_CONFIG_USE_DEPENDENCY(value urdfdom) + +ADD_EXECUTABLE(variant EXCLUDE_FROM_ALL ./variant.cpp) +PKG_CONFIG_USE_DEPENDENCY(variant eigen3)