diff --git a/CMakeLists.txt b/CMakeLists.txt
index 13f8e5333d4f9184b5ef737241181dc5a60ca1fa..0f8a8490c7021a87a95112699ad65bb1286e7f2c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -153,7 +153,6 @@ SET(${PROJECT_NAME}_MULTIBODY_JOINT_HEADERS
   multibody/joint/joint-basic-visitors.hxx
   ) 
 
-
 SET(${PROJECT_NAME}_MULTIBODY_HEADERS
   multibody/fwd.hpp
   multibody/constraint.hpp
@@ -164,12 +163,6 @@ SET(${PROJECT_NAME}_MULTIBODY_HEADERS
   multibody/visitor.hpp
   )
 
-SET(${PROJECT_NAME}_PARSERS_HEADERS
-  parsers/sample-models.hpp
-  parsers/utils.hpp
-  parsers/srdf.hpp
-  ) 
-
 SET(${PROJECT_NAME}_ALGORITHM_HEADERS
   algorithm/aba.hpp
   algorithm/aba.hxx
@@ -214,19 +207,29 @@ IF(BUILD_PYTHON_INTERFACE)
     python/explog.hpp
     )
 
-  LIST(APPEND ${PROJECT_NAME}_PARSERS_HEADERS
-    parsers/python.hpp
-    )
-ENDIF(BUILD_PYTHON_INTERFACE)
-
-
-IF(HPP_FCL_FOUND AND BUILD_PYTHON_INTERFACE)
-  LIST(APPEND ${PROJECT_NAME}_PYTHON_HEADERS
+  IF(HPP_FCL_FOUND)
+    LIST(APPEND ${PROJECT_NAME}_PYTHON_HEADERS
       python/geometry-object.hpp
       python/geometry-model.hpp
       python/geometry-data.hpp
-    )
-ENDIF(HPP_FCL_FOUND AND BUILD_PYTHON_INTERFACE)
+      )
+  ENDIF(HPP_FCL_FOUND)
+
+ELSE(BUILD_PYTHON_INTERFACE)
+  SET(${PROJECT_NAME}_PYTHON_HEADERS "")
+ENDIF(BUILD_PYTHON_INTERFACE)
+
+SET(${PROJECT_NAME}_PARSERS_HEADERS
+  parsers/sample-models.hpp
+  parsers/utils.hpp
+  parsers/srdf.hpp
+  ) 
+
+IF(BUILD_PYTHON_INTERFACE)
+  LIST(APPEND ${PROJECT_NAME}_PARSERS_HEADERS
+     parsers/python.hpp
+     )
+ENDIF(BUILD_PYTHON_INTERFACE)
 
 IF(URDFDOM_FOUND)
   LIST(APPEND ${PROJECT_NAME}_PARSERS_HEADERS
@@ -235,7 +238,7 @@ IF(URDFDOM_FOUND)
     parsers/urdf/utils.hpp
     )
   
-  IF(HPP_FCL_FOUND )
+  IF(HPP_FCL_FOUND)
     LIST(APPEND ${PROJECT_NAME}_PARSERS_HEADERS
       parsers/urdf/geometry.hxx
       )
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 0bc13b37586ac787d13e919552d0af2efe7bd412..2ab9a5f374ed30ee7d7ea80a0f0c0d9099d41a02 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -52,26 +52,23 @@ SET(${PROJECT_NAME}_PARSERS_SOURCES
   )
 
 IF(BUILD_PYTHON_INTERFACE)
-SET(${PROJECT_NAME}_PARSERS_PYTHON_SOURCES
-  parsers/python.cpp
-  )
-ENDIF(BUILD_PYTHON_INTERFACE)
-
-SET(${PROJECT_NAME}_SOURCES ${${PROJECT_NAME}_MULTIBODY_SOURCES})
-
-IF(BUILD_PYTHON_INTERFACE)
-  LIST(APPEND ${PROJECT_NAME}_SOURCES ${${PROJECT_NAME}_PARSERS_SOURCES}
-                                      ${${PROJECT_NAME}_PARSERS_PYTHON_SOURCES})
+  LIST(APPEND ${PROJECT_NAME}_PARSERS_SOURCES
+    parsers/python.cpp
+    )
 ENDIF(BUILD_PYTHON_INTERFACE)
 
 IF(LUA5_1_FOUND)
-  SET(${PROJECT_NAME}_MULTIBODY_PARSER_LUA_SOURCES 
+  LIST(APPEND ${PROJECT_NAME}_PARSER_SOURCES 
       parsers/lua/lua_tables.cpp
       parsers/lua.cpp
     )
-  LIST(APPEND ${PROJECT_NAME}_SOURCES ${${PROJECT_NAME}_MULTIBODY_PARSER_LUA_SOURCES})
 ENDIF(LUA5_1_FOUND)
 
+SET(${PROJECT_NAME}_SOURCES
+  ${${PROJECT_NAME}_MULTIBODY_SOURCES}
+  ${${PROJECT_NAME}_PARSERS_SOURCES}
+)
+
 IF(UNIX)
     # Create target libpinocchio.so
     ADD_LIBRARY ( ${PROJECT_NAME} SHARED ${HEADERS} ${${PROJECT_NAME}_SOURCES} )