python3-orocos-kdl: rebuild for Python 3.9, fix breakage with sip

This commit is contained in:
Andrew J. Hesford 2020-10-07 09:55:53 -04:00
parent 31613b2194
commit 6f61cdb3e3
2 changed files with 116 additions and 3 deletions

View file

@ -0,0 +1,113 @@
From f8d488cad733d2c2c6fe6911dc2e72e014ad0002 Mon Sep 17 00:00:00 2001
From: Jochen Sprickerhof <git@jochen.sprickerhof.de>
Date: Fri, 26 Jun 2020 17:04:12 +0200
Subject: [PATCH] Declare assignment operator private for SIP (Closes: #260)
Starting with v4.19.23 SIP expects a working operator= or one marked
private explicitly. All classes in this PR have a reference member
(&chain) resulting in the compiler deleting the default assignment
operator. This PR makes this known to SIP as well.
[ Rebased against release version by Andrew J. Hesford. ]
---
diff -ur python_orocos_kdl/PyKDL.orig/dynamics.sip python_orocos_kdl/PyKDL/dynamics.sip
--- python_orocos_kdl/PyKDL.orig/dynamics.sip 2020-10-08 09:41:13.830476720 -0400
+++ python_orocos_kdl/PyKDL/dynamics.sip 2020-10-08 09:41:58.875476576 -0400
@@ -72,4 +72,6 @@
int JntToCoriolis(const JntArray &q, const JntArray &q_dot, JntArray &coriolis);
int JntToMass(const JntArray &q, JntSpaceInertiaMatrix& H);
int JntToGravity(const JntArray &q,JntArray &gravity);
+private:
+ ChainDynParam& operator=(const ChainDynParam&);
};
diff -ur python_orocos_kdl/PyKDL.orig/kinfam.sip python_orocos_kdl/PyKDL/kinfam.sip
--- python_orocos_kdl/PyKDL.orig/kinfam.sip 2020-10-08 09:41:13.830476720 -0400
+++ python_orocos_kdl/PyKDL/kinfam.sip 2020-10-08 09:47:26.314475457 -0400
@@ -344,6 +344,8 @@
ChainFkSolverPos_recursive(const Chain& chain);
virtual int JntToCart(const JntArray& q_in, Frame& p_out,int segmentNr=-1);
virtual void updateInternalDataStructures();
+private:
+ ChainFkSolverPos_recursive& operator=(const ChainFkSolverPos_recursive&);
};
class ChainFkSolverVel_recursive : ChainFkSolverVel
@@ -357,6 +359,8 @@
virtual int JntToCart(const JntArrayVel& q_in ,FrameVel& out,int
segmentNr=-1 );
virtual void updateInternalDataStructures();
+private:
+ ChainFkSolverVel_recursive& operator=(const ChainFkSolverVel_recursive&);
};
class ChainIkSolverPos : SolverI {
@@ -392,6 +396,8 @@
virtual int CartToJnt(const JntArray& q_init , const Frame& p_in ,JntArray& q_out);
virtual void updateInternalDataStructures();
+private:
+ ChainIkSolverPos_NR& operator=(const ChainIkSolverPos_NR&);
};
class ChainIkSolverPos_NR_JL : ChainIkSolverPos
@@ -407,6 +413,8 @@
virtual int CartToJnt(const JntArray& q_init , const Frame& p_in ,JntArray& q_out);
virtual void updateInternalDataStructures();
+private:
+ ChainIkSolverPos_NR_JL& operator=(const ChainIkSolverPos_NR_JL&);
};
class ChainIkSolverVel_pinv : ChainIkSolverVel
@@ -420,6 +428,8 @@
virtual int CartToJnt(const JntArray& q_in, const Twist& v_in, JntArray& qdot_out);
virtual void updateInternalDataStructures();
+private:
+ ChainIkSolverVel_pinv& operator=(const ChainIkSolverVel_pinv&);
};
class ChainIkSolverVel_wdls : ChainIkSolverVel
@@ -506,6 +516,8 @@
void setLambda(const double& lambda);
+private:
+ ChainIkSolverVel_wdls& operator=(const ChainIkSolverVel_wdls&);
};
@@ -520,6 +532,8 @@
virtual int CartToJnt(const JntArray& q_init , const Frame& p_in ,JntArray& q_out);
virtual void updateInternalDataStructures();
+private:
+ ChainIkSolverPos_LMA& operator=(const ChainIkSolverPos_LMA&);
};
@@ -546,6 +560,8 @@
const JntArray& getOptPos()const /Factory/;
const double& getAlpha()const /Factory/;
+private:
+ ChainIkSolverVel_pinv_nso& operator=(const ChainIkSolverVel_pinv_nso&);
};
class ChainIkSolverVel_pinv_givens : ChainIkSolverVel
@@ -559,6 +575,8 @@
virtual int CartToJnt(const JntArray& q_in, const Twist& v_in, JntArray& qdot_out);
virtual void updateInternalDataStructures();
+private:
+ ChainIkSolverVel_pinv_givens& operator=(const ChainIkSolverVel_pinv_givens&);
};
class ChainJntToJacSolver : SolverI
@@ -571,4 +589,6 @@
ChainJntToJacSolver(const Chain& chain);
int JntToJac(const JntArray& q_in,Jacobian& jac);
virtual void updateInternalDataStructures();
+private:
+ ChainJntToJacSolver& operator=(const ChainJntToJacSolver&);
};

View file

@ -1,12 +1,12 @@
# Template file for 'python3-orocos-kdl'
pkgname=python3-orocos-kdl
version=1.4.0
revision=2
revision=3
wrksrc=orocos_kinematics_dynamics-${version}
build_wrksrc=python_orocos_kdl
build_style=cmake
configure_args="-DPYTHON_VERSION=3"
hostmakedepends="python3 python3-sip"
configure_args="-DPYTHON_VERSION=3 -DSIP_EXECUTABLE=/usr/bin/sip"
hostmakedepends="python3 python3-sip sip"
makedepends="python3-sip-devel python3-devel orocos-kdl-devel eigen3.2"
depends="python3 python3-sip"
short_desc="Python3 Bindings for Orocos Kinematics and Dynamics C++ library"