diff --git a/CMakeLists.txt b/CMakeLists.txt
index 43816ecd3fcfc32dadad57da11cd0963d5f4fe54..f91cd87bca4572475de6a9ce13f6e4d45ab838ee 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -256,9 +256,8 @@ ADD_SUBDIRECTORY(src)
 # --- EXECUTABLES --------------------------------------------------------------
 # --- EXECUTABLES --------------------------------------------------------------
 ADD_SUBDIRECTORY(unittest)
-IF (BUILD_BENCHMARK)
-  ADD_SUBDIRECTORY (benchmark)
-ENDIF (BUILD_BENCHMARK)
+ADD_SUBDIRECTORY (benchmark)
+
 IF (BUILD_UTILS)
   ADD_SUBDIRECTORY (utils)
 ENDIF (BUILD_UTILS)
diff --git a/benchmark/CMakeLists.txt b/benchmark/CMakeLists.txt
index b4c4885703940c8ec056135ee8ef60bf22cb20ed..33aa3d241be3cd73cf7636be68aff31bdb7fc237 100644
--- a/benchmark/CMakeLists.txt
+++ b/benchmark/CMakeLists.txt
@@ -24,7 +24,11 @@ ENDMACRO(ADD_TEST_CFLAGS)
 
 # timings
 # 
-ADD_EXECUTABLE(timings timings.cpp)
+IF(BUILD_BENCHMARK)
+  ADD_EXECUTABLE(timings timings.cpp)
+ELSE(BUILD_BENCHMARK)
+  ADD_EXECUTABLE(timings EXCLUDE_FROM_ALL timings.cpp)
+ENDIF(BUILD_BENCHMARK)
 PKG_CONFIG_USE_DEPENDENCY(timings eigen3)
 IF(URDFDOM_FOUND)
   PKG_CONFIG_USE_DEPENDENCY(timings urdfdom)
@@ -35,7 +39,11 @@ SET_TARGET_PROPERTIES (timings PROPERTIES COMPILE_DEFINITIONS PINOCCHIO_SOURCE_D
 # geomTimings
 # 
 IF(URDFDOM_FOUND AND HPP_FCL_FOUND)
-  ADD_EXECUTABLE(geomTimings timings-geometry.cpp)
+  IF(BUILD_BENCHMARK)
+    ADD_EXECUTABLE(geomTimings timings-geometry.cpp)
+  ELSE(BUILD_BENCHMARK)
+    ADD_EXECUTABLE(geomTimings EXCLUDE_FROM_ALL timings-geometry.cpp)
+  ENDIF(BUILD_BENCHMARK)
   PKG_CONFIG_USE_DEPENDENCY(geomTimings eigen3)
   PKG_CONFIG_USE_DEPENDENCY(geomTimings urdfdom)
   PKG_CONFIG_USE_DEPENDENCY(geomTimings assimp)