diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1d1d7b8274c48f93a5b4900b19319777293b9fd7..bb57c0ff0e3a5d8d63f840060a47484b40411318 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -556,13 +556,15 @@ endif(ENABLE_ONELAB2)
 
 if(ENABLE_ONELAB)
   set_config_option(HAVE_ONELAB "ONELAB")
-  if(ENABLE_ONELAB_METAMODEL)
-    add_subdirectory(contrib/onelab)
-    include_directories(contrib/onelab)
-    set_config_option(HAVE_ONELAB_METAMODEL "ONELABMetamodel")
-  endif(ENABLE_ONELAB_METAMODEL)
-  file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/contrib/onelab/python/onelab.py
-            DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
+  if(EXISTS contrib/onelab)
+    if(ENABLE_ONELAB_METAMODEL)
+      add_subdirectory(contrib/onelab)
+      include_directories(contrib/onelab)
+      set_config_option(HAVE_ONELAB_METAMODEL "ONELABMetamodel")
+    endif(ENABLE_ONELAB_METAMODEL)
+    file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/contrib/onelab/python/onelab.py
+              DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
+  endif(EXISTS contrib/onelab)
 endif(ENABLE_ONELAB)
 
 if(ENABLE_BUILD_IOS)