diff --git a/MPC/DESCR b/MPC/DESCR
new file mode 100644
index 0000000000000000000000000000000000000000..0b187c0f1fcfeabfc57e979235ee617df85dee01
--- /dev/null
+++ b/MPC/DESCR
@@ -0,0 +1,30 @@
+The MPC library propose several motion planning algorithms that may be devided
+into three parts :
+
+    - Local motion planning: real-time motion planning of a path or a trajectory
+      between two close end points.
+      Two main algorithms:
+        - A non-holonomic path generator using straight lines, circle bows and clothoids
+        - A variational trajectory generator by constraints optimization
+          designed to be used with arbitrary system dynamics 
+
+    - Global motion planning: deliberative motion planning to compute a
+      complete path or trajectory amidst static obstacles between two end
+      points.
+      Four main algorithms:
+        - A* search on a probabilitic roadmap
+        - A* search on a probabilistic occupancy grid using target and
+          obstacles potential fields
+        - Trajectory refinement thanks to the variational trajectory generator
+        - Path-velocity decomposition for arbitrary system dynamics 
+
+    - Reactive obstacle avoidance : Real-time algorithms allowing to move
+      safely amongst static and dynamic obstacles.
+      Three main algorithms :
+        - A trajectory selection algorithm computing several candidate motions
+          to execute and selecting the best one
+        -  A trajectory tracking algorithm aimed at following a reference
+           trajectory and avoiding obstacles without going out of a reference
+           corridor
+        - A trajectory deformation process aimed at anticipating the motion of
+          dynamic obstacles while keeping the convergence to the goal 
diff --git a/MPC/Makefile b/MPC/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..f09386130e05e4fbaaa2a6a21f7b9af2ac5bc2db
--- /dev/null
+++ b/MPC/Makefile
@@ -0,0 +1,30 @@
+# robotpkg Makefile for:	path/MPC
+# Created:			Arnaud Degroote on Tue, 10 Jan 2012
+#
+
+DISTNAME=		MPC-${VERSION}
+VERSION=		1.0
+CATEGORIES=		path
+MASTER_SITES=		${MASTER_SITE_OPENROBOTS:=MPC/}
+MASTER_REPOSITORY=	${MASTER_REPOSITORY_OPENROBOTS}MPC
+
+
+MAINTAINER=		openrobots@laas.fr
+COMMENT=		Libraries for outdoor robots navigation
+LICENSE=		isc
+
+USE_LANGUAGES=		c c++
+
+CMAKE_ARG_PATH=		MPC/
+CMAKE_ARGS+=		-DBOOST_INCLUDEDIR=${PREFIX.boost-headers}/include
+CMAKE_ARGS+=		-DBOOST_LIBDIR=${PREFIX.boost-libs}/include
+
+include ../../devel/boost-headers/depend.mk
+include ../../devel/boost-libs/depend.mk
+include ../../pkgtools/pkg-config/depend.mk
+include ../../mk/sysdep/cmake.mk
+include ../../mk/sysdep/freeglut.mk
+include ../../mk/sysdep/glib2.mk
+include ../../mk/sysdep/glu.mk
+include ../../mk/sysdep/libX11.mk
+include ../../mk/robotpkg.mk
diff --git a/MPC/PLIST b/MPC/PLIST
new file mode 100644
index 0000000000000000000000000000000000000000..3d297cf24b695900bf9396762b67eb9b6c051be8
--- /dev/null
+++ b/MPC/PLIST
@@ -0,0 +1,154 @@
+@comment Tue Jan 10 09:35:04 CET 2012
+include/MPC/avoidObs.hpp
+include/MPC/avoidObs/inc/AvoidTrajGen.hpp
+include/MPC/avoidObs/inc/CorridorZone.hpp
+include/MPC/avoidObs/inc/DD2AvoidTrajGen.hpp
+include/MPC/avoidObs/inc/GraphPassageway.hpp
+include/MPC/avoidObs/inc/Passageway.hpp
+include/MPC/avoidObs/inc/PassagewayTree.hpp
+include/MPC/avoidObs/inc/RefCorridor.hpp
+include/MPC/collisionCheck/inc/CollisionCheck.hpp
+include/MPC/common.hpp
+include/MPC/common/inc/BinTree.hpp
+include/MPC/common/inc/BoundingShape.hpp
+include/MPC/common/inc/Config.hpp
+include/MPC/common/inc/Control.hpp
+include/MPC/common/inc/ControlPoint.hpp
+include/MPC/common/inc/ControlTime.hpp
+include/MPC/common/inc/Graph.hpp
+include/MPC/common/inc/GraphInt.hpp
+include/MPC/common/inc/Object.hpp
+include/MPC/common/inc/Position.hpp
+include/MPC/common/inc/PositionTime.hpp
+include/MPC/common/inc/Speed.hpp
+include/MPC/common/inc/State.hpp
+include/MPC/common/inc/StateTime.hpp
+include/MPC/common/inc/StateTimeTree.hpp
+include/MPC/common/inc/Timer.hpp
+include/MPC/common/inc/Tree.hpp
+include/MPC/common/inc/Utils.hpp
+include/MPC/common/inc/Vec.hpp
+include/MPC/common/inc/Vector.hpp
+include/MPC/common/inc/utilsLuis.h
+include/MPC/controller.hpp
+include/MPC/controller/inc/ManaSimpleController.hpp
+include/MPC/controller/inc/SimpleController.hpp
+include/MPC/deformation.hpp
+include/MPC/deformation/inc/CLTrajDeform3.hpp
+include/MPC/deformation/inc/DDDeformation.hpp
+include/MPC/deformation/inc/DDTrajDeform.hpp
+include/MPC/deformation/inc/PMTrajDeform.hpp
+include/MPC/deformation/inc/STDeformIfc.hpp
+include/MPC/deformation/inc/STDeformation.hpp
+include/MPC/deformation/inc/STNHDeformation.hpp
+include/MPC/deformation/inc/TrajDeform.hpp
+include/MPC/deformation/inc/WCTrajDeform3.hpp
+include/MPC/environment.hpp
+include/MPC/environment/inc/BoolObsMap.hpp
+include/MPC/environment/inc/DEM.hpp
+include/MPC/environment/inc/DistObsMap.hpp
+include/MPC/environment/inc/Environment.hpp
+include/MPC/environment/inc/Map.hpp
+include/MPC/environment/inc/Map2D.hpp
+include/MPC/environment/inc/MapHugr.hpp
+include/MPC/environment/inc/Obs.hpp
+include/MPC/environment/inc/Pos.hpp
+include/MPC/environment/inc/RoadMap.hpp
+include/MPC/environment/inc/SlopeMap.hpp
+include/MPC/environment/inc/VarSlopeMap.hpp
+include/MPC/foxExtension.hpp
+include/MPC/gen-structs/structs_gen.h
+include/MPC/gnuplot.hpp
+include/MPC/gnuplot/inc/TrajPlot.hpp
+include/MPC/gnuplot/inc/gnuplot_i.hpp
+include/MPC/graphics/inc/RGBColor.hpp
+include/MPC/graphics/inc/RGBImage.hpp
+include/MPC/hugr.hpp
+include/MPC/math.hpp
+include/MPC/math/inc/CosFunc.hpp
+include/MPC/math/inc/Function.hpp
+include/MPC/math/inc/Interval.hpp
+include/MPC/math/inc/InvMatrix.hpp
+include/MPC/math/inc/ItgFunc.hpp
+include/MPC/math/inc/MathFunc.hpp
+include/MPC/math/inc/Matrix.hpp
+include/MPC/math/inc/MultFunc.hpp
+include/MPC/math/inc/MultiItvFunction.hpp
+include/MPC/math/inc/Operation.hpp
+include/MPC/math/inc/PascalTriangle.hpp
+include/MPC/math/inc/Polynomial.hpp
+include/MPC/math/inc/SinFunc.hpp
+include/MPC/math/inc/Variable.hpp
+include/MPC/math/inc/fresnel.hpp
+include/MPC/math/inc/matrix.h
+include/MPC/math/inc/nr.h
+include/MPC/math/inc/nrtypes.h
+include/MPC/math/inc/nrtypes_nr.h
+include/MPC/math/inc/nrutil.h
+include/MPC/math/inc/nrutil_nr.h
+include/MPC/math/inc/quadrature.h
+include/MPC/motion.hpp
+include/MPC/motion/inc/CTrajectory.hpp
+include/MPC/motion/inc/GeomPath.hpp
+include/MPC/motion/inc/PCTraj.hpp
+include/MPC/motion/inc/PSTraj.hpp
+include/MPC/motion/inc/Path.hpp
+include/MPC/motion/inc/STrajectory.hpp
+include/MPC/motion/inc/Shift.hpp
+include/MPC/motion/inc/ShiftRecord.hpp
+include/MPC/mpc-fox.hpp
+include/MPC/mpc-gen.hpp
+include/MPC/mpc-hugr.hpp
+include/MPC/mpc.hpp
+include/MPC/network.hpp
+include/MPC/network/inc/TCP_server.hpp
+include/MPC/planner.hpp
+include/MPC/planner/inc/CTrajPlanner.hpp
+include/MPC/planner/inc/ManaSimpleSTrajPlanner.hpp
+include/MPC/planner/inc/PFPathPlanner.hpp
+include/MPC/planner/inc/PVDTrajPlanner.hpp
+include/MPC/planner/inc/PathPlanner.hpp
+include/MPC/planner/inc/RoadMapPP.hpp
+include/MPC/planner/inc/RoadMapTP.hpp
+include/MPC/planner/inc/SimpleSTrajPlanner.hpp
+include/MPC/planner/inc/TrajPlanner.hpp
+include/MPC/planner/inc/utils.h
+include/MPC/robot.hpp
+include/MPC/sslattice.hpp
+include/MPC/sslattice/inc/CL_SSLattice.hpp
+include/MPC/sslattice/inc/SSLattice.hpp
+include/MPC/sslattice/inc/SS_SSLattice.hpp
+include/MPC/sslattice/inc/WC_SSLattice.hpp
+include/MPC/system.hpp
+include/MPC/system/inc/CarLikeSys.hpp
+include/MPC/system/inc/DiffDrive2Sys.hpp
+include/MPC/system/inc/DiffDriveSys.hpp
+include/MPC/system/inc/ManaSys.hpp
+include/MPC/system/inc/PointMass3DSys.hpp
+include/MPC/system/inc/PointMassSys.hpp
+include/MPC/system/inc/SpaceShipSys.hpp
+include/MPC/system/inc/SysComponent.hpp
+include/MPC/system/inc/System.hpp
+include/MPC/system/inc/WheelChairSys.hpp
+include/MPC/trajFollow.hpp
+include/MPC/trajFollow/inc/CCTrajFollow.hpp
+include/MPC/trajFollow/inc/CLTrajFollow.hpp
+include/MPC/trajFollow/inc/ManaTrajFollow.hpp
+include/MPC/trajFollow/inc/TrajFollow.hpp
+include/MPC/trajFollow/inc/WCTrajFollow.hpp
+include/MPC/trajGen.hpp
+include/MPC/trajGen/inc/CLInitialGuess.hpp
+include/MPC/trajGen/inc/CLTrajGen.hpp
+include/MPC/trajGen/inc/DDTrajGen.hpp
+include/MPC/trajGen/inc/InitialGuess.hpp
+include/MPC/trajGen/inc/ManaTrajGen.hpp
+include/MPC/trajGen/inc/SSTrajGen.hpp
+include/MPC/trajGen/inc/TrajGen.hpp
+include/MPC/trajGen/inc/UtilsTG.hpp
+include/MPC/trajGen/inc/WCInitialGuess.hpp
+include/MPC/trajGen/inc/WCTrajGen.hpp
+include/MPC/trajSel.hpp
+include/MPC/trajSel/inc/ManaTrajSel.hpp
+include/MPC/trajSel/inc/TrajSel.hpp
+lib/libMPC-core.so
+lib/pkgconfig/mpc-core.pc
diff --git a/MPC/depend.mk b/MPC/depend.mk
new file mode 100644
index 0000000000000000000000000000000000000000..192e4d75d184d4e7833f1521e52e45c66ad0455b
--- /dev/null
+++ b/MPC/depend.mk
@@ -0,0 +1,26 @@
+# robotpkg depend.mk for:	path/MPC
+# Created:			Arnaud Degroote on Tue, 10 Jan 2012
+#
+
+DEPEND_DEPTH:=		${DEPEND_DEPTH}+
+LIBMPC_DEPEND_MK:=${LIBMPC_DEPEND_MK}+
+
+ifeq (+,$(DEPEND_DEPTH))
+DEPEND_PKG+=		MPC
+endif
+
+ifeq (+,$(LIBMPC_DEPEND_MK))
+PREFER.MPC?=	robotpkg
+
+DEPEND_USE+=		MPC
+
+DEPEND_ABI.MPC?=	MPC>=1.0
+DEPEND_DIR.MPC?=	../../wip/MPC
+
+SYSTEM_SEARCH.MPC=\
+	include/MPC/mpc.hpp	\
+	lib/libMPC-core.so	\
+	lib/pkgconfig/mpc-core.pc
+endif
+
+DEPEND_DEPTH:=		${DEPEND_DEPTH:+=}
diff --git a/MPC/distinfo b/MPC/distinfo
new file mode 100644
index 0000000000000000000000000000000000000000..befc0441fffd6171b49c1fa8bd966b31047fdf46
--- /dev/null
+++ b/MPC/distinfo
@@ -0,0 +1,3 @@
+SHA1 (MPC-1.0.tar.gz) = a45fe2e16fb0d93673b014ddff38c074218a0517
+RMD160 (MPC-1.0.tar.gz) = 0383006d9f413d201b7b3dc6da8d6169beaf5a4e
+Size (MPC-1.0.tar.gz) = 803443 bytes
diff --git a/Makefile b/Makefile
index d2ac044c758fdfd78e8285a96cdb78e8e82c08a8..9fd0735df586ccc4f5f6942f81cb076a0f40662f 100644
--- a/Makefile
+++ b/Makefile
@@ -21,6 +21,7 @@ SUBDIR+=	libANN
 SUBDIR+=	libfreenect
 SUBDIR+=	libmove3d
 SUBDIR+=	lwr-genom
+SUBDIR+=	MPC
 SUBDIR+=	mhp-genom
 SUBDIR+=	morse-pocolibs
 SUBDIR+=	move3d-studio