From 61a55ed66e4801682849a02446933156286071d1 Mon Sep 17 00:00:00 2001
From: Guilhem Saurel <guilhem.saurel@laas.fr>
Date: Tue, 5 Nov 2019 23:40:36 +0100
Subject: [PATCH] =?UTF-8?q?[wip/{=20=E2=86=92=20py-}roscontrol-sot]=20Upda?=
 =?UTF-8?q?te=20to=20v0.2.0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Changes since v0.1.0:
- Python 3 compatibility

Packaging changes:
- removed patch-aa, applied upstream
- use jrl-cmakemodules
- require c++11
- add patch-aa
---
 Makefile                                      |  2 +-
 prf-ros-controllers/Makefile                  |  1 +
 {roscontrol-sot => py-roscontrol-sot}/DESCR   |  0
 .../Makefile                                  | 28 ++++++--------
 {roscontrol-sot => py-roscontrol-sot}/PLIST   |  2 +-
 py-roscontrol-sot/depend.mk                   | 34 +++++++++++++++++
 py-roscontrol-sot/distinfo                    |  4 ++
 py-roscontrol-sot/patches/patch-aa            | 13 +++++++
 roscontrol-sot/depend.mk                      | 37 -------------------
 roscontrol-sot/distinfo                       |  4 --
 roscontrol-sot/patches/patch-aa               | 11 ------
 talos-metapkg-ros-control-sot/Makefile        |  3 +-
 tiago-metapkg-ros-control-sot/Makefile        |  3 +-
 13 files changed, 68 insertions(+), 74 deletions(-)
 rename {roscontrol-sot => py-roscontrol-sot}/DESCR (100%)
 rename {roscontrol-sot => py-roscontrol-sot}/Makefile (79%)
 rename {roscontrol-sot => py-roscontrol-sot}/PLIST (89%)
 create mode 100644 py-roscontrol-sot/depend.mk
 create mode 100644 py-roscontrol-sot/distinfo
 create mode 100644 py-roscontrol-sot/patches/patch-aa
 delete mode 100644 roscontrol-sot/depend.mk
 delete mode 100644 roscontrol-sot/distinfo
 delete mode 100644 roscontrol-sot/patches/patch-aa

diff --git a/Makefile b/Makefile
index ce34c07e..154f881c 100644
--- a/Makefile
+++ b/Makefile
@@ -96,6 +96,7 @@ SUBDIR+=	py-parametric-curves
 SUBDIR+=	py-qpoases
 SUBDIR+=	py-qt-gepetto-pythonqt
 SUBDIR+=	py-quadprog
+SUBDIR+=	py-roscontrol-sot
 SUBDIR+=	py-skeleton-model
 SUBDIR+=	py-solo-pybullet
 SUBDIR+=	py-sot-application-v3
@@ -112,7 +113,6 @@ SUBDIR+=	py-talos-rbprm
 SUBDIR+=	py-tsid
 SUBDIR+=	pyrene-motions
 SUBDIR+=	roralink
-SUBDIR+=	roscontrol-sot
 SUBDIR+=	ros-baxter-common
 SUBDIR+=	ros-moveit
 SUBDIR+=	ros-moveit-msgs
diff --git a/prf-ros-controllers/Makefile b/prf-ros-controllers/Makefile
index 9eb00f9a..f8002da5 100644
--- a/prf-ros-controllers/Makefile
+++ b/prf-ros-controllers/Makefile
@@ -28,6 +28,7 @@ CONFLICTS=	talos-ros-controllers
 # over system ros packages.
 # http://wiki.ros.org/catkin/what
 CMAKE_PREFIX_PATH+= ${PREFIX}
+CMAKE_PREFIX_PATH+= /opt/ros/melodic
 
 include ../../devel/boost-headers/depend.mk
 include ../../devel/boost-libs/depend.mk
diff --git a/roscontrol-sot/DESCR b/py-roscontrol-sot/DESCR
similarity index 100%
rename from roscontrol-sot/DESCR
rename to py-roscontrol-sot/DESCR
diff --git a/roscontrol-sot/Makefile b/py-roscontrol-sot/Makefile
similarity index 79%
rename from roscontrol-sot/Makefile
rename to py-roscontrol-sot/Makefile
index dbf6588a..3f534886 100644
--- a/roscontrol-sot/Makefile
+++ b/py-roscontrol-sot/Makefile
@@ -1,21 +1,17 @@
-# robotpkg Makefile for:	wip/roscontrol_sot
+# robotpkg Makefile for:	wip/py36-roscontrol-sot
+# Created:			Guilhem Saurel on Tue, 5 Nov 2019
 #
 
-VERSION=		0.1.0
-PKGBASE=		roscontrol-sot
-PKGNAME=		${PKGBASE}-${VERSION}
-ROSNAME=		$(subst -,_,${PKGBASE})
+ORG=			stack-of-tasks
+VERSION=		0.2.0
+NAME=			roscontrol-sot
+PKGNAME=		${PKGTAG.python-}${NAME}-${VERSION}
+ROSNAME=		$(subst -,_,${NAME})
 DISTNAME=		${ROSNAME}-${VERSION}
 WRKSRC=			${WRKDIR}/${ROSNAME}-${VERSION}
-DIST_SUBDIR=		${PKGBASE}
-PKGREVISION=		1
+DIST_SUBDIR=		${NAME}
 
 CATEGORIES=		wip
-#MASTER_SITES=		${MASTER_SITE_OPENROBOTS:=roscontrol_sot/}
-HOMEPAGE=		${MASTER_SITE_GITHUB:=stack-of-tasks/${ROSNAME}}
-MASTER_SITES=		${MASTER_SITE_OPENROBOTS:=${ROSNAME}/}
-MASTER_REPOSITORY=	${MASTER_REPOSITORY_GITHUB}/stack-of-tasks/${ROSNAME}
-CHECKOUT_VCS_OPTS=	--recursive
 
 COMMENT=		This ROS package binds together the ROS control framework with the dynamic-graph real-time control architecture.
 LICENSE=		2-clause-bsd
@@ -29,15 +25,15 @@ CMAKE_ARGS+=		-DCXX_DISABLE_WERROR=yes
 
 # man pages location
 CMAKE_ARGS+=		-DMANDIR=${PREFIX}/${PKGMANDIR}
-# library location
-CMAKE_ARGS+=		-DCMAKE_INSTALL_LIBDIR=lib
 
 # Allows to have robotpkg ros packages with the highest priority
 # over system ros packages.
 # http://wiki.ros.org/catkin/what
-CMAKE_PREFIX_PATH+= ${PREFIX}
+CMAKE_PREFIX_PATH+=	${PREFIX}
+USE_PYTHON=		true
 
 
+include ../../devel/jrl-cmakemodules/Makefile.common
 include ../../sysutils/ros-rospack/depend.mk
 include ../../motion/dynamic-graph-bridge-msgs/depend.mk
 include ../../wip/py-dynamic-graph-bridge-v3/depend.mk
@@ -80,6 +76,6 @@ include ../../pkgtools/pkg-config/depend.mk
 include ../../mk/sysdep/bullet.mk
 include ../../mk/sysdep/python.mk
 include ../../mk/language/c.mk
-include ../../mk/language/c++.mk
+include ../../mk/language/c++11.mk
 include ../../mk/sysdep/cmake.mk
 include ../../mk/robotpkg.mk
diff --git a/roscontrol-sot/PLIST b/py-roscontrol-sot/PLIST
similarity index 89%
rename from roscontrol-sot/PLIST
rename to py-roscontrol-sot/PLIST
index d6594792..45e35027 100644
--- a/roscontrol-sot/PLIST
+++ b/py-roscontrol-sot/PLIST
@@ -8,7 +8,7 @@ lib/libsot-test-controller.so
 lib/libsot-test-device.so
 lib/pkgconfig/roscontrol_sot.pc
 ${PYTHON_SITELIB}/dynamic_graph/sot/test/sot_test_device/__init__.py
-${PYTHON_SITELIB}/dynamic_graph/sot/test/sot_test_device/wrap${PYTHON_EXT_SUFFIX}
+${PYTHON_SITELIB}/dynamic_graph/sot/test/sot_test_device/wrap.so
 share/roscontrol_sot/cmake/roscontrol_sotConfig-version.cmake
 share/roscontrol_sot/cmake/roscontrol_sotConfig.cmake
 share/roscontrol_sot/config/roscontrol_sot_controller_plugins.xml
diff --git a/py-roscontrol-sot/depend.mk b/py-roscontrol-sot/depend.mk
new file mode 100644
index 00000000..28874b62
--- /dev/null
+++ b/py-roscontrol-sot/depend.mk
@@ -0,0 +1,34 @@
+# robotpkg depend.mk for:	wip/py36-roscontrol-sot
+# Created:			Guilhem Saurel on Tue, 5 Nov 2019
+#
+
+DEPEND_DEPTH:=			${DEPEND_DEPTH}+
+PY_ROSCONTROL_SOT_DEPEND_MK:=	${PY_ROSCONTROL_SOT_DEPEND_MK}+
+
+ifeq (+,$(DEPEND_DEPTH))
+DEPEND_PKG+=			py-roscontrol-sot
+endif
+
+ifeq (+,$(PY_ROSCONTROL_SOT_DEPEND_MK)) # --------------------------------------
+
+DEPEND_USE+=			py-roscontrol-sot
+ROS_DEPEND_USE+=		py-roscontrol-sot
+
+DEPEND_ABI.py-roscontrol-sot?=		${PKGTAG.python-}roscontrol-sot>=0.2.0
+DEPEND_DIR.py-roscontrol-sot?=		../../wip/py-roscontrol-sot
+
+SYSTEM_SEARCH.py-roscontrol-sot=\
+  'include/roscontrol/sot/config.hh'						\
+  'lib/librcsot_controller.so'							\
+  '${PYTHON_SYSLIBSEARCH}/dynamic_graph/sot/test/sot_test_device/__init__.py'	\
+  'lib/pkgconfig/roscontrol_sot.pc:/Version/s/[^0-9.]//gp'			\
+  'share/controller_interface/cmake/controller_interfaceConfig.cmake'
+
+# headers leak the ros dependency ...
+include ../../middleware/ros-comm/depend.mk
+
+include ../../mk/sysdep/python.mk
+
+endif # PY_ROSCONTROL_SOT_DEPEND_MK --------------------------------------------
+
+DEPEND_DEPTH:=		${DEPEND_DEPTH:+=}
diff --git a/py-roscontrol-sot/distinfo b/py-roscontrol-sot/distinfo
new file mode 100644
index 00000000..65917785
--- /dev/null
+++ b/py-roscontrol-sot/distinfo
@@ -0,0 +1,4 @@
+SHA1 (roscontrol-sot/roscontrol_sot-0.2.0.tar.gz) = dcc37d0e59a7671a77a72de0b8d51c247b9fabb8
+RMD160 (roscontrol-sot/roscontrol_sot-0.2.0.tar.gz) = 58879b0ba88bf3eda431a6e34df2956c68df18df
+Size (roscontrol-sot/roscontrol_sot-0.2.0.tar.gz) = 1285602 bytes
+SHA1 (patch-aa) = 3826bb4e8794bdc8af94306d2637377d8eeacd11
diff --git a/py-roscontrol-sot/patches/patch-aa b/py-roscontrol-sot/patches/patch-aa
new file mode 100644
index 00000000..7ddf9a17
--- /dev/null
+++ b/py-roscontrol-sot/patches/patch-aa
@@ -0,0 +1,13 @@
+fix version for catkin, as it overrides the .pc
+
+--- package.xml.orig	2019-11-05 21:52:59.000000000 +0100
++++ package.xml	2019-11-12 14:32:27.848246273 +0100
+@@ -1,7 +1,7 @@
+ <?xml version="1.0"?>
+ <package>
+   <name>roscontrol_sot</name>
+-  <version>0.1.0</version>
++  <version>0.2.0</version>
+   <description>Wrapping the Stack-of-tasks framework in ros-control</description>
+ 
+   <!-- Maintainer email --> 
diff --git a/roscontrol-sot/depend.mk b/roscontrol-sot/depend.mk
deleted file mode 100644
index 275cead9..00000000
--- a/roscontrol-sot/depend.mk
+++ /dev/null
@@ -1,37 +0,0 @@
-# robotpkg Makefile for:	wip/dynamic-graph-bridge
-#
-
-DEPEND_DEPTH:=			${DEPEND_DEPTH}+
-ROSCONTROL_SOT_DEPEND_MK:=	${ROSCONTROL_SOT_DEPEND_MK}+
-
-ifeq (+,$(DEPEND_DEPTH))
-DEPEND_PKG+=			roscontrol-sot
-endif
-
-ifeq (+,$(ROSCONTROL_SOT_DEPEND_MK)) # --------------------------------------
-
-DEPEND_USE+=			roscontrol-sot
-ROS_DEPEND_USE+=		roscontrol-sot
-
-DEPEND_ABI.ros+=		ros>=groovy
-
-DEPEND_ABI.roscontrol-sot?=		roscontrol-sot>=0.0.3
-DEPEND_DIR.roscontrol-sot?=		../../wip/roscontrol-sot
-
-DEPEND_ABI.roscontrol-sot.groovy?=	roscontrol-sot>=0.0.3
-DEPEND_ABI.roscontrol-sot.hydro?=	roscontrol-sot>=0.0.3
-
-SYSTEM_SEARCH.roscontrol-sot=\
-  'include/roscontrol/sot/config.hh'				\
-  'lib/librcsot_controller.so'					\
-  'lib/pkgconfig/roscontrol_sot.pc:/Version/s/[^0-9.]//gp'	\
-  'share/controller_interface/cmake/controller_interfaceConfig.cmake'
-
-# headers leak the ros dependency ...
-include ../../middleware/ros-comm/depend.mk
-
-include ../../mk/sysdep/python.mk
-
-endif # ROS_REALTIMETOOLS_DEPEND_MK --------------------------------------------
-
-DEPEND_DEPTH:=		${DEPEND_DEPTH:+=}
diff --git a/roscontrol-sot/distinfo b/roscontrol-sot/distinfo
deleted file mode 100644
index dae0130d..00000000
--- a/roscontrol-sot/distinfo
+++ /dev/null
@@ -1,4 +0,0 @@
-SHA1 (roscontrol-sot/roscontrol_sot-0.1.0.tar.gz) = 76143a98396369ab8e5ea6ff8f54e64b7e6d0265
-RMD160 (roscontrol-sot/roscontrol_sot-0.1.0.tar.gz) = 2202fa977745faff51772be35d6ddaab3a82771e
-Size (roscontrol-sot/roscontrol_sot-0.1.0.tar.gz) = 1265429 bytes
-SHA1 (patch-aa) = caf3d236c6669f99220139ccf071b42a4faa5336
diff --git a/roscontrol-sot/patches/patch-aa b/roscontrol-sot/patches/patch-aa
deleted file mode 100644
index 1dbfc10a..00000000
--- a/roscontrol-sot/patches/patch-aa
+++ /dev/null
@@ -1,11 +0,0 @@
---- tests/sot-test-controller.cpp.orig	2019-08-26 08:45:34.000000000 +0200
-+++ tests/sot-test-controller.cpp	2019-10-09 13:30:06.505324824 +0200
-@@ -8,6 +8,8 @@
-  *
-  */
- 
-+#include <pinocchio/fwd.hpp>
-+
- #include <sot/core/debug.hh>
- #include <sot/core/exception-abstract.hh>
- #include <dynamic_graph_bridge/ros_init.hh>
diff --git a/talos-metapkg-ros-control-sot/Makefile b/talos-metapkg-ros-control-sot/Makefile
index 965632d1..da544c32 100644
--- a/talos-metapkg-ros-control-sot/Makefile
+++ b/talos-metapkg-ros-control-sot/Makefile
@@ -63,8 +63,7 @@ displaytalosmetapkg:
 
 endif
 
-include ../../wip/roscontrol-sot/depend.mk
+include ../../wip/py-roscontrol-sot/depend.mk
 include ../../mk/language/c++.mk
 include ../../mk/language/c.mk
 include ../../mk/robotpkg.mk
-
diff --git a/tiago-metapkg-ros-control-sot/Makefile b/tiago-metapkg-ros-control-sot/Makefile
index c3265ad8..20484d5c 100644
--- a/tiago-metapkg-ros-control-sot/Makefile
+++ b/tiago-metapkg-ros-control-sot/Makefile
@@ -61,8 +61,7 @@ displaytiagometapkg:
 
 endif
 
-include ../../wip/roscontrol-sot/depend.mk
+include ../../wip/py-roscontrol-sot/depend.mk
 include ../../mk/language/c++.mk
 include ../../mk/language/c.mk
 include ../../mk/robotpkg.mk
-
-- 
GitLab