diff --git a/Makefile b/Makefile
index b7d72d740a2288f4248f6d44063b890092b20b33..4d7b80132fe2b7efcdc494f129bdf8caea11c9f8 100644
--- a/Makefile
+++ b/Makefile
@@ -48,6 +48,7 @@ SUBDIR+=	MPC_planner-genom
 SUBDIR+=	MPC_DEMTreatment-genom
 SUBDIR+=	msgconnector
 SUBDIR+=	mumps
+SUBDIR+= 	ompl
 SUBDIR+=	oro-view
 SUBDIR+=	poisson
 SUBDIR+=	pr2-pick-object
diff --git a/ompl/DESCR b/ompl/DESCR
new file mode 100644
index 0000000000000000000000000000000000000000..44afae153b8680185a0cf5759aa3a74a57c35ae1
--- /dev/null
+++ b/ompl/DESCR
@@ -0,0 +1,5 @@
+OMPL, the Open Motion Planning Library, consists of many state-of-the-art
+sampling-based motion planning algorithms. OMPL itself does not contain any
+code related to, e.g., collision checking or visualization. This is a
+deliberate design choice, so that OMPL is not tied to a particular collision
+checker or visualization front end.
diff --git a/ompl/Makefile b/ompl/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..e42d437e783b7e8e92bcee844a971f018daced0c
--- /dev/null
+++ b/ompl/Makefile
@@ -0,0 +1,41 @@
+# robotpkg Makefile for:	motion/ompl
+# Created:			Arnaud Degroote on Wed, 24 Apr 2013
+#
+
+DISTNAME=	ompl-${PKGVERSION_NOREV}-Source
+PKGVERSION=	0.12.2
+PKGNAME=	ompl-${PKGVERSION}
+
+CATEGORIES=		motion
+MASTER_SITES=	https://bitbucket.org/ompl/ompl/downloads/
+
+HOMEPAGE=	http://ompl.kavrakilab.org
+
+COMMENT=	A library containing state-of-the-art sampling-based motion planning algorithms
+
+LICENSE=	modified-bsd
+
+CMAKE_ARGS+=	-DBOOST_INCLUDEDIR=${PREFIX.boost-headers}/include
+CMAKE_ARGS+=	-DBOOST_LIBDIR=${PREFIX.boost-libs}/include
+CMAKE_ARGS+= 	-DOMPL_REGISTRATION=OFF
+
+PKG_SUPPORTED_OPTIONS+=		python
+PKG_OPTION_DESCR.python=	Enable python bindings
+define PKG_OPTION_SET.python
+  CMAKE_ARGS+=			-DOMPL_BUILD_PYBINDINGS=ON
+  CMAKE_ARGS+=          -DOMPL_BUILD_PYTESTS=ON
+
+  include ../../mk/sysdep/python.mk
+endef
+define PKG_OPTION_UNSET.qdisplay
+  CMAKE_ARGS+=			-DOMPL_BUILD_PYBINDINGS=OFF
+  CMAKE_ARGS+=          -DOMPL_BUILD_PYTESTS=OFF
+endef
+
+
+include ../../devel/boost-headers/depend.mk
+include ../../devel/boost-libs/depend.mk
+include ../../mk/sysdep/cmake.mk
+include ../../mk/language/c.mk
+include ../../mk/language/c++.mk
+include ../../mk/robotpkg.mk
diff --git a/ompl/PLIST b/ompl/PLIST
new file mode 100644
index 0000000000000000000000000000000000000000..7d9844417568d95edf0950554676918f0fd5445b
--- /dev/null
+++ b/ompl/PLIST
@@ -0,0 +1,262 @@
+@comment Wed Apr 24 16:18:45 CEST 2013
+bin/ompl_benchmark_statistics.py
+include/ompl/base/DiscreteMotionValidator.h
+include/ompl/base/GenericParam.h
+include/ompl/base/Goal.h
+include/ompl/base/GoalTypes.h
+include/ompl/base/MotionValidator.h
+include/ompl/base/OptimizationObjective.h
+include/ompl/base/Path.h
+include/ompl/base/Planner.h
+include/ompl/base/PlannerData.h
+include/ompl/base/PlannerDataGraph.h
+include/ompl/base/PlannerDataStorage.h
+include/ompl/base/PlannerStatus.h
+include/ompl/base/PlannerTerminationCondition.h
+include/ompl/base/PrecomputedStateSampler.h
+include/ompl/base/ProblemDefinition.h
+include/ompl/base/ProjectionEvaluator.h
+include/ompl/base/ScopedState.h
+include/ompl/base/SolutionNonExistenceProof.h
+include/ompl/base/SpaceInformation.h
+include/ompl/base/State.h
+include/ompl/base/StateSampler.h
+include/ompl/base/StateSamplerArray.h
+include/ompl/base/StateSpace.h
+include/ompl/base/StateSpaceTypes.h
+include/ompl/base/StateStorage.h
+include/ompl/base/StateValidityChecker.h
+include/ompl/base/ValidStateSampler.h
+include/ompl/base/goals/GoalLazySamples.h
+include/ompl/base/goals/GoalRegion.h
+include/ompl/base/goals/GoalSampleableRegion.h
+include/ompl/base/goals/GoalState.h
+include/ompl/base/goals/GoalStates.h
+include/ompl/base/samplers/GaussianValidStateSampler.h
+include/ompl/base/samplers/MaximizeClearanceValidStateSampler.h
+include/ompl/base/samplers/ObstacleBasedValidStateSampler.h
+include/ompl/base/samplers/UniformValidStateSampler.h
+include/ompl/base/spaces/DiscreteStateSpace.h
+include/ompl/base/spaces/DubinsStateSpace.h
+include/ompl/base/spaces/RealVectorBounds.h
+include/ompl/base/spaces/RealVectorStateProjections.h
+include/ompl/base/spaces/RealVectorStateSpace.h
+include/ompl/base/spaces/ReedsSheppStateSpace.h
+include/ompl/base/spaces/SE2StateSpace.h
+include/ompl/base/spaces/SE3StateSpace.h
+include/ompl/base/spaces/SO2StateSpace.h
+include/ompl/base/spaces/SO3StateSpace.h
+include/ompl/base/spaces/TimeStateSpace.h
+include/ompl/config.h
+include/ompl/contrib/rrt_star/BallTreeRRTstar.h
+include/ompl/contrib/rrt_star/RRTstar.h
+include/ompl/control/Control.h
+include/ompl/control/ControlSampler.h
+include/ompl/control/ControlSpace.h
+include/ompl/control/ControlSpaceTypes.h
+include/ompl/control/DirectedControlSampler.h
+include/ompl/control/ODESolver.h
+include/ompl/control/PathControl.h
+include/ompl/control/PlannerData.h
+include/ompl/control/PlannerDataStorage.h
+include/ompl/control/SimpleDirectedControlSampler.h
+include/ompl/control/SimpleSetup.h
+include/ompl/control/SpaceInformation.h
+include/ompl/control/StatePropagator.h
+include/ompl/control/planners/PlannerIncludes.h
+include/ompl/control/planners/est/EST.h
+include/ompl/control/planners/kpiece/KPIECE1.h
+include/ompl/control/planners/rrt/RRT.h
+include/ompl/control/planners/syclop/Decomposition.h
+include/ompl/control/planners/syclop/GridDecomposition.h
+include/ompl/control/planners/syclop/Syclop.h
+include/ompl/control/planners/syclop/SyclopEST.h
+include/ompl/control/planners/syclop/SyclopRRT.h
+include/ompl/control/spaces/DiscreteControlSpace.h
+include/ompl/control/spaces/RealVectorControlSpace.h
+include/ompl/datastructures/BinaryHeap.h
+include/ompl/datastructures/GreedyKCenters.h
+include/ompl/datastructures/Grid.h
+include/ompl/datastructures/GridB.h
+include/ompl/datastructures/GridN.h
+include/ompl/datastructures/NearestNeighbors.h
+include/ompl/datastructures/NearestNeighborsFLANN.h
+include/ompl/datastructures/NearestNeighborsGNAT.h
+include/ompl/datastructures/NearestNeighborsLinear.h
+include/ompl/datastructures/NearestNeighborsSqrtApprox.h
+include/ompl/datastructures/PDF.h
+include/ompl/extensions/opende/OpenDEControlSpace.h
+include/ompl/extensions/opende/OpenDEEnvironment.h
+include/ompl/extensions/opende/OpenDESimpleSetup.h
+include/ompl/extensions/opende/OpenDEStatePropagator.h
+include/ompl/extensions/opende/OpenDEStateSpace.h
+include/ompl/extensions/opende/OpenDEStateValidityChecker.h
+include/ompl/geometric/PathGeometric.h
+include/ompl/geometric/PathHybridization.h
+include/ompl/geometric/PathSimplifier.h
+include/ompl/geometric/SimpleSetup.h
+include/ompl/geometric/ik/GAIK.h
+include/ompl/geometric/ik/HCIK.h
+include/ompl/geometric/planners/PlannerIncludes.h
+include/ompl/geometric/planners/est/EST.h
+include/ompl/geometric/planners/kpiece/BKPIECE1.h
+include/ompl/geometric/planners/kpiece/Discretization.h
+include/ompl/geometric/planners/kpiece/KPIECE1.h
+include/ompl/geometric/planners/kpiece/LBKPIECE1.h
+include/ompl/geometric/planners/prm/ConnectionStrategy.h
+include/ompl/geometric/planners/prm/PRM.h
+include/ompl/geometric/planners/rrt/LazyRRT.h
+include/ompl/geometric/planners/rrt/RRT.h
+include/ompl/geometric/planners/rrt/RRTConnect.h
+include/ompl/geometric/planners/rrt/TRRT.h
+include/ompl/geometric/planners/rrt/pRRT.h
+include/ompl/geometric/planners/sbl/SBL.h
+include/ompl/geometric/planners/sbl/pSBL.h
+include/ompl/tools/benchmark/Benchmark.h
+include/ompl/tools/benchmark/MachineSpecs.h
+include/ompl/tools/config/MagicConstants.h
+include/ompl/tools/config/SelfConfig.h
+include/ompl/tools/debug/Profiler.h
+include/ompl/tools/multiplan/OptimizePlan.h
+include/ompl/tools/multiplan/ParallelPlan.h
+include/ompl/util/ClassForward.h
+include/ompl/util/Console.h
+include/ompl/util/Deprecation.h
+include/ompl/util/Exception.h
+include/ompl/util/RandomNumbers.h
+include/ompl/util/Time.h
+include/omplext_odeint/FixupSource.py
+include/omplext_odeint/LICENSE_1_0.txt
+include/omplext_odeint/boost/numeric/odeint.hpp
+include/omplext_odeint/boost/numeric/odeint/algebra/array_algebra.hpp
+include/omplext_odeint/boost/numeric/odeint/algebra/default_operations.hpp
+include/omplext_odeint/boost/numeric/odeint/algebra/detail/for_each.hpp
+include/omplext_odeint/boost/numeric/odeint/algebra/detail/macros.hpp
+include/omplext_odeint/boost/numeric/odeint/algebra/detail/reduce.hpp
+include/omplext_odeint/boost/numeric/odeint/algebra/fusion_algebra.hpp
+include/omplext_odeint/boost/numeric/odeint/algebra/range_algebra.hpp
+include/omplext_odeint/boost/numeric/odeint/algebra/vector_space_algebra.hpp
+include/omplext_odeint/boost/numeric/odeint/config.hpp
+include/omplext_odeint/boost/numeric/odeint/external/gsl/gsl_wrapper.hpp
+include/omplext_odeint/boost/numeric/odeint/external/mkl/mkl_operations.hpp
+include/omplext_odeint/boost/numeric/odeint/external/thrust/thrust_algebra.hpp
+include/omplext_odeint/boost/numeric/odeint/external/thrust/thrust_operations.hpp
+include/omplext_odeint/boost/numeric/odeint/external/thrust/thrust_resize.hpp
+include/omplext_odeint/boost/numeric/odeint/external/vexcl/vexcl_resize.hpp
+include/omplext_odeint/boost/numeric/odeint/integrate/detail/integrate_adaptive.hpp
+include/omplext_odeint/boost/numeric/odeint/integrate/detail/integrate_n_steps.hpp
+include/omplext_odeint/boost/numeric/odeint/integrate/detail/integrate_times.hpp
+include/omplext_odeint/boost/numeric/odeint/integrate/integrate.hpp
+include/omplext_odeint/boost/numeric/odeint/integrate/integrate_adaptive.hpp
+include/omplext_odeint/boost/numeric/odeint/integrate/integrate_const.hpp
+include/omplext_odeint/boost/numeric/odeint/integrate/integrate_n_steps.hpp
+include/omplext_odeint/boost/numeric/odeint/integrate/integrate_times.hpp
+include/omplext_odeint/boost/numeric/odeint/integrate/null_observer.hpp
+include/omplext_odeint/boost/numeric/odeint/integrate/observer_collection.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/adams_bashforth.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/adams_bashforth_moulton.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/adams_moulton.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/base/algebra_stepper_base.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/base/explicit_error_stepper_base.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/base/explicit_error_stepper_fsal_base.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/base/explicit_stepper_base.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/base/symplectic_rkn_stepper_base.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/bulirsch_stoer.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/bulirsch_stoer_dense_out.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/controlled_step_result.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/dense_output_runge_kutta.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/detail/adams_bashforth_call_algebra.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/detail/adams_bashforth_coefficients.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/detail/adams_moulton_call_algebra.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/detail/adams_moulton_coefficients.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/detail/generic_rk_algorithm.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/detail/generic_rk_call_algebra.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/detail/generic_rk_operations.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/detail/rotating_buffer.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/euler.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/explicit_error_generic_rk.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/explicit_generic_rk.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/generation.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/generation/generation_controlled_runge_kutta.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/generation/generation_dense_output_runge_kutta.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/generation/generation_rosenbrock4.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/generation/generation_runge_kutta_cash_karp54.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/generation/generation_runge_kutta_cash_karp54_classic.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/generation/generation_runge_kutta_dopri5.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/generation/generation_runge_kutta_fehlberg78.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/generation/make_controlled.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/generation/make_dense_output.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/implicit_euler.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/modified_midpoint.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/rosenbrock4.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/rosenbrock4_controller.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/rosenbrock4_dense_output.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/runge_kutta4.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/runge_kutta4_classic.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/runge_kutta_cash_karp54.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/runge_kutta_cash_karp54_classic.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/runge_kutta_dopri5.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/runge_kutta_fehlberg78.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/stepper_categories.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/symplectic_euler.hpp
+include/omplext_odeint/boost/numeric/odeint/stepper/symplectic_rkn_sb3a_mclachlan.hpp
+include/omplext_odeint/boost/numeric/odeint/util/bind.hpp
+include/omplext_odeint/boost/numeric/odeint/util/copy.hpp
+include/omplext_odeint/boost/numeric/odeint/util/detail/is_range.hpp
+include/omplext_odeint/boost/numeric/odeint/util/detail/less_with_sign.hpp
+include/omplext_odeint/boost/numeric/odeint/util/is_pair.hpp
+include/omplext_odeint/boost/numeric/odeint/util/is_resizeable.hpp
+include/omplext_odeint/boost/numeric/odeint/util/resize.hpp
+include/omplext_odeint/boost/numeric/odeint/util/resizer.hpp
+include/omplext_odeint/boost/numeric/odeint/util/same_size.hpp
+include/omplext_odeint/boost/numeric/odeint/util/state_wrapper.hpp
+include/omplext_odeint/boost/numeric/odeint/util/ublas_wrapper.hpp
+include/omplext_odeint/boost/numeric/odeint/util/unit_helper.hpp
+include/omplext_odeint/boost/numeric/odeint/util/unwrap_reference.hpp
+include/omplext_odeint/boost/numeric/odeint/version.hpp
+include/omplext_odeint/version.txt
+lib/libompl.so
+lib/libompl.so.${PKGVERSION}
+lib/libompl.so.6
+lib/pkgconfig/ompl.pc
+share/ompl/demos/GeometricCarPlanning.cpp
+share/ompl/demos/HybridSystemPlanning.cpp
+share/ompl/demos/OpenDERigidBodyPlanning.cpp
+share/ompl/demos/PlannerData.cpp
+share/ompl/demos/PlannerData.py
+share/ompl/demos/RigidBodyPlanning.cpp
+share/ompl/demos/RigidBodyPlanning.py
+share/ompl/demos/RigidBodyPlanningWithControls.cpp
+share/ompl/demos/RigidBodyPlanningWithControls.py
+share/ompl/demos/RigidBodyPlanningWithIK.cpp
+share/ompl/demos/RigidBodyPlanningWithIntegrationAndControls.cpp
+share/ompl/demos/RigidBodyPlanningWithODESolverAndControls.cpp
+share/ompl/demos/RigidBodyPlanningWithODESolverAndControls.py
+share/ompl/demos/StateSampling.cpp
+share/ompl/demos/StateSampling.py
+share/ompl/ompl-config-version.cmake
+share/ompl/ompl-config.cmake
+@pkgdir include/ompl/contrib/rrt_star/py-bindings/ompl/rrtstar
+@pkgdir include/ompl/contrib/rrt_star/py-bindings/CMakeFiles/clean_rrtstar_bindings.dir
+@pkgdir include/ompl/contrib/rrt_star/CMakeFiles/test_rrt_star.dir
+@pkgdir include/ompl/CMakeFiles/ompl.dir/util
+@pkgdir include/ompl/CMakeFiles/ompl.dir/tools/multiplan
+@pkgdir include/ompl/CMakeFiles/ompl.dir/tools/debug
+@pkgdir include/ompl/CMakeFiles/ompl.dir/tools/config
+@pkgdir include/ompl/CMakeFiles/ompl.dir/tools/benchmark
+@pkgdir include/ompl/CMakeFiles/ompl.dir/geometric/planners/sbl
+@pkgdir include/ompl/CMakeFiles/ompl.dir/geometric/planners/rrt
+@pkgdir include/ompl/CMakeFiles/ompl.dir/geometric/planners/prm
+@pkgdir include/ompl/CMakeFiles/ompl.dir/geometric/planners/kpiece
+@pkgdir include/ompl/CMakeFiles/ompl.dir/geometric/planners/est
+@pkgdir include/ompl/CMakeFiles/ompl.dir/geometric/ik
+@pkgdir include/ompl/CMakeFiles/ompl.dir/control/spaces
+@pkgdir include/ompl/CMakeFiles/ompl.dir/control/planners/syclop
+@pkgdir include/ompl/CMakeFiles/ompl.dir/control/planners/rrt
+@pkgdir include/ompl/CMakeFiles/ompl.dir/control/planners/kpiece
+@pkgdir include/ompl/CMakeFiles/ompl.dir/control/planners/est
+@pkgdir include/ompl/CMakeFiles/ompl.dir/contrib/rrt_star
+@pkgdir include/ompl/CMakeFiles/ompl.dir/base/spaces
+@pkgdir include/ompl/CMakeFiles/ompl.dir/base/samplers
+@pkgdir include/ompl/CMakeFiles/ompl.dir/base/goals
diff --git a/ompl/depend.mk b/ompl/depend.mk
new file mode 100644
index 0000000000000000000000000000000000000000..a19063791b18f33811636544e33213e19a15039c
--- /dev/null
+++ b/ompl/depend.mk
@@ -0,0 +1,28 @@
+# robotpkg depend.mk for:	motion/ompl
+# Created:			Arnaud Degroote on Wed, 24 Apr 2013
+#
+
+DEPEND_DEPTH:=		${DEPEND_DEPTH}+
+OMPL_DEPEND_MK:=	${OMPL_DEPEND_MK}+
+
+ifeq (+,$(DEPEND_DEPTH))
+DEPEND_PKG+=		ompl
+endif
+
+ifeq (+,$(OMPL_DEPEND_MK)) # ---------------------------------------------
+
+PREFER.ompl?=		robotpkg
+
+DEPEND_USE+=		ompl
+
+DEPEND_ABI.ompl?=	ompl>=0.12.2
+DEPEND_DIR.ompl?=	../../wip/ompl
+
+SYSTEM_SEARCH.ompl= \
+	include/ompl/config.h	\
+	lib/libompl.so \
+	'lib/pkgconfig/ompl.pc:/Version/s/[^0-9.]//gp'
+
+endif # OMPL_DEPEND_MK ---------------------------------------------------
+
+DEPEND_DEPTH:=		${DEPEND_DEPTH:+=}
diff --git a/ompl/distinfo b/ompl/distinfo
new file mode 100644
index 0000000000000000000000000000000000000000..9050f512a4ace43d37a2d7f1f1156ab2e0911480
--- /dev/null
+++ b/ompl/distinfo
@@ -0,0 +1,3 @@
+SHA1 (ompl-0.12.2-Source.tar.gz) = 16c835b4760c5dd5633c3b83ad506da97dbc3adb
+RMD160 (ompl-0.12.2-Source.tar.gz) = 5ab25b46dc3623c8e9a13ce34960ae52545f6dd6
+Size (ompl-0.12.2-Source.tar.gz) = 3478772 bytes