diff --git a/VirtualRobot/CMakeLists.txt b/VirtualRobot/CMakeLists.txt
index 04d522012455f6db077d9500489424b45d573b4f..636d6b0ff013cfdd72613005f52d270efe89e2fc 100644
--- a/VirtualRobot/CMakeLists.txt
+++ b/VirtualRobot/CMakeLists.txt
@@ -440,43 +440,7 @@ endif ()
 #    )
 #endif ()
 
-
-#check for URDF
-if (Simox_USE_URDF)
-    include(SearchForTinyXML)
-    FIND_PACKAGE(urdfdom)
-    #FIND_PACKAGE(PkgConfig)
-    #PKG_CHECK_MODULES(URDFDOM REQUIRED urdfdom>=0.2.9)
-    #PKG_CHECK_MODULES(URDFDOM_HEADERS REQUIRED urdfdom_headers>=0.2.3)
-
-    if (tinyxml_library AND URDF_FOUND)
-        MESSAGE(STATUS " ** Including URDF importer")
-
-        include_directories(SYSTEM ${tinyxml_include_dirs})
-        link_directories(${tinyxml_library_dirs})
-        add_definitions(${tinyxml_cflags})
-        add_definitions(" -DTIXML_USE_STL ")
-
-        INCLUDE_DIRECTORIES (SYSTEM
-            ${URDFDOM_INCLUDE_DIRS}
-            ${URDFDOM_PARSER_INCLUDE_DIRS}
-            ${URDFDOM_HEADERS_INCLUDE_DIRS}
-        )
-
-        SET(SOURCES
-          ${SOURCES}
-            Import/URDF/SimoxURDFFactory.cpp
-            )
-        SET(INCLUDES
-          ${INCLUDES}
-            Import/URDF/SimoxURDFFactory.h
-            )
-
-        SET(Simox_EXTERNAL_LIBRARIES ${Simox_EXTERNAL_LIBRARIES} ${URDFDOM_LIBRARIES})
-    else()
-        MESSAGE(STATUS " *** urdfDom or TinyXML not found: skipping URDF importer...")
-    endif()
-endif()
+ADD_SUBDIRECTORY(Import/URDF)
 
 # include collision detection
 INCLUDE (CollisionDetection/CMakeLists.txt)
diff --git a/VirtualRobot/Import/URDF/CMakeLists.txt b/VirtualRobot/Import/URDF/CMakeLists.txt
index f01dc5cb375b3aa10e093a4a7b5584bea58a5f36..01b3e2505eb4771c8752eaf13c277de4dbbf11f9 100644
--- a/VirtualRobot/Import/URDF/CMakeLists.txt
+++ b/VirtualRobot/Import/URDF/CMakeLists.txt
@@ -1,47 +1,32 @@
-PROJECT (SIMOX_URDFREADER)
-
-LIST( APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/CMake )
+PROJECT (VirtualRobotImportUrdf)
 
 include(SearchForTinyXML)
 FIND_PACKAGE(urdfdom)
-#FIND_PACKAGE(PkgConfig)
-#PKG_CHECK_MODULES(URDFDOM REQUIRED urdfdom>=0.2.9)
-#PKG_CHECK_MODULES(URDFDOM_HEADERS REQUIRED urdfdom_headers>=0.2.3)
-
 if (tinyxml_library AND URDF_FOUND)
+    message(STATUS "Building VirtualRobotImportUrdf")
 
     include_directories(SYSTEM ${tinyxml_include_dirs})
     link_directories(${tinyxml_library_dirs})
     add_definitions(${tinyxml_cflags})
     add_definitions("-DTIXML_USE_STL")
 
-    FIND_PACKAGE(simox REQUIRED)
     INCLUDE_DIRECTORIES (
 	    ${URDFDOM_INCLUDE_DIRS}
 	    ${URDFDOM_PARSER_INCLUDE_DIRS}
 	    ${URDFDOM_HEADERS_INCLUDE_DIRS}
     )
-    setupSimoxExternalLibraries()
-
 
-    SET (CMAKE_SKIP_BUILD_RPATH FALSE)
-    SET (CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
-    SET (CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib")
-    SET (CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
+    SET ( SOURCES SimoxURDFFactory.cpp)
+    SET ( HEADERS SimoxURDFFactory.h  )
 
-    SET ( URDFIMPORT_SOURCES
-	    SimoxURDFFactory.cpp
-	    )
-    SET ( URDFIMPORT_HEADERS
-	    SimoxURDFFactory.h
-	    )
-
-    ADD_LIBRARY ( simox_urdfimport SHARED ${URDFIMPORT_SOURCES}  ${URDFIMPORT_HEADERS}  )
-
-    add_definitions("-DDEMO_BASE_PATH=\"${PROJECT_SOURCE_DIR}\"")
-    ADD_EXECUTABLE (loadURDFobot loadURDFobot.cpp)
+    ADD_LIBRARY ( VirtualRobotImportUrdf SHARED ${SOURCES}  ${HEADERS}  )
     
-    TARGET_LINK_LIBRARIES (simox_urdfimport VirtualRobot ${URDFDOM_LIBRARIES})
-    TARGET_LINK_LIBRARIES(loadURDFobot simox_urdfimport VirtualRobot ${URDFDOM_LIBRARIES})
-
+    TARGET_LINK_LIBRARIES (VirtualRobotImportUrdf VirtualRobot ${URDFDOM_LIBRARIES})
+else()
+    if (NOT tinyxml_library)
+    message(STATUS "Not building VirtualRobotImportUrdf: tinyxml not found")
+    endif()
+    if (NOT URDF_FOUND)
+    message(STATUS "Not building VirtualRobotImportUrdf: urdfdom not found")
+    endif()
 endif()
diff --git a/VirtualRobot/examples/loadURDFRobot/CMakeLists.txt b/VirtualRobot/examples/loadURDFRobot/CMakeLists.txt
index c5f9fa93324bd76873ce367ed5a598c76063e5be..de5a88701a0001ef16b5c50af996c0621a73c758 100644
--- a/VirtualRobot/examples/loadURDFRobot/CMakeLists.txt
+++ b/VirtualRobot/examples/loadURDFRobot/CMakeLists.txt
@@ -1,6 +1,6 @@
 PROJECT ( loadURDFRobot )
 
-if (tinyxml_library AND URDF_FOUND)
+if (TARGET VirtualRobotImportUrdf)
 
   include_directories(SYSTEM ${tinyxml_include_dirs})
   link_directories(${tinyxml_library_dirs})
@@ -17,7 +17,7 @@ if (tinyxml_library AND URDF_FOUND)
   SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${Simox_BIN_DIR})
   SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES FOLDER "Examples")
 
-  TARGET_LINK_LIBRARIES(${PROJECT_NAME} VirtualRobot ${URDFDOM_LIBRARIES})
+  TARGET_LINK_LIBRARIES(${PROJECT_NAME} VirtualRobot VirtualRobotImportUrdf ${URDFDOM_LIBRARIES})
   
   
   #######################################################################################