Bug#835734: Bug#833817: kido: FTBFS on non-x86 architectures due to hard-wired compiler flags

Gianfranco Costamagna locutusofborg at debian.org
Mon Aug 29 12:31:11 UTC 2016


control: tags -1 patch

attached a patch, unfortunately I can't upload because it seems the latest flann.
(I'm opening a bug)

G.
-------------- next part --------------
diff -Nru kido-0.1.0+dfsg/debian/changelog kido-0.1.0+dfsg/debian/changelog
--- kido-0.1.0+dfsg/debian/changelog	2016-07-21 16:33:19.000000000 +0200
+++ kido-0.1.0+dfsg/debian/changelog	2016-08-29 13:25:42.000000000 +0200
@@ -1,3 +1,16 @@
+kido (0.1.0+dfsg-1.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * debian/patches/fix-msse2-flag: 
+    - remove msse3 hard-coded flag (Closes: #833817)
+  * debian/patches/update-new-fcl.patch:
+    - fix boost issue with new fcl.
+  * debian/patches/2841967fc6628c9aea58c93227b28abdf5dfbcc2.patch:
+    - cherry-pick part of upstream fix for new fcl and tinyxml2.
+      (Closes: #835734)
+
+ -- Gianfranco Costamagna <locutusofborg at debian.org>  Mon, 29 Aug 2016 12:22:34 +0200
+
 kido (0.1.0+dfsg-1) unstable; urgency=medium
 
   * Initial release. (Closes: #812126)
diff -Nru kido-0.1.0+dfsg/debian/patches/2841967fc6628c9aea58c93227b28abdf5dfbcc2.patch kido-0.1.0+dfsg/debian/patches/2841967fc6628c9aea58c93227b28abdf5dfbcc2.patch
--- kido-0.1.0+dfsg/debian/patches/2841967fc6628c9aea58c93227b28abdf5dfbcc2.patch	1970-01-01 01:00:00.000000000 +0100
+++ kido-0.1.0+dfsg/debian/patches/2841967fc6628c9aea58c93227b28abdf5dfbcc2.patch	2016-08-29 12:50:17.000000000 +0200
@@ -0,0 +1,66 @@
+From 2841967fc6628c9aea58c93227b28abdf5dfbcc2 Mon Sep 17 00:00:00 2001
+From: Jeongseok Lee <jslee02 at users.noreply.github.com>
+Date: Thu, 21 Jul 2016 17:34:40 -0400
+Subject: [PATCH] Update API to support fcl 0.5 and tinyxml 4.0 -- for DART 6.1
+ (#750)
+
+* Update API to support fcl 0.5.0
+
+* Update changelog
+
+* Use type aliasing rather than boilerplate preprocessors
+
+* Switch to use XML_SUCCESS rather than XML_NO_ERROR
+---
+ kido/utils/XmlHelpers.cpp                   | 10 +++++-----
+ 7 files changed, 24 insertions(+), 17 deletions(-)
+
+Index: kido-0.1.0+dfsg/kido/utils/XmlHelpers.cpp
+===================================================================
+--- kido-0.1.0+dfsg.orig/kido/utils/XmlHelpers.cpp
++++ kido-0.1.0+dfsg/kido/utils/XmlHelpers.cpp
+@@ -731,7 +731,7 @@
+   const int result = element->QueryBoolAttribute(attributeName.c_str(),
+                                                  &val);
+ 
+-  if (result != tinyxml2::XML_NO_ERROR)
++  if (result != tinyxml2::XML_SUCCESS)
+   {
+     dtwarn << "[getAttribute] Error in parsing bool type attribute ["
+            << attributeName << "] of an element [" << element->Name()
+@@ -749,7 +749,7 @@
+   int val = 0;
+   const int result = element->QueryIntAttribute(attributeName.c_str(), &val);
+ 
+-  if (result != tinyxml2::XML_NO_ERROR)
++  if (result != tinyxml2::XML_SUCCESS)
+   {
+     dtwarn << "[getAttribute] Error in parsing int type attribute ["
+            << attributeName << "] of an element [" << element->Name()
+@@ -768,7 +768,7 @@
+   const int result = element->QueryUnsignedAttribute(attributeName.c_str(),
+                                                      &val);
+ 
+-  if (result != tinyxml2::XML_NO_ERROR)
++  if (result != tinyxml2::XML_SUCCESS)
+   {
+     dtwarn << "[getAttribute] Error in parsing unsiged int type attribute ["
+            << attributeName << "] of an element [" << element->Name()
+@@ -787,7 +787,7 @@
+   const int result = element->QueryFloatAttribute(attributeName.c_str(),
+                                                   &val);
+ 
+-  if (result != tinyxml2::XML_NO_ERROR)
++  if (result != tinyxml2::XML_SUCCESS)
+   {
+     dtwarn << "[getAttribute] Error in parsing float type attribute ["
+            << attributeName << "] of an element [" << element->Name()
+@@ -806,7 +806,7 @@
+   const int result = element->QueryDoubleAttribute(attributeName.c_str(),
+                                                    &val);
+ 
+-  if (result != tinyxml2::XML_NO_ERROR)
++  if (result != tinyxml2::XML_SUCCESS)
+   {
+     dtwarn << "[getAttribute] Error in parsing double type attribute ["
+            << attributeName << "] of an element [" << element->Name()
diff -Nru kido-0.1.0+dfsg/debian/patches/fix-msse2-flag.patch kido-0.1.0+dfsg/debian/patches/fix-msse2-flag.patch
--- kido-0.1.0+dfsg/debian/patches/fix-msse2-flag.patch	1970-01-01 01:00:00.000000000 +0100
+++ kido-0.1.0+dfsg/debian/patches/fix-msse2-flag.patch	2016-08-29 13:25:17.000000000 +0200
@@ -0,0 +1,37 @@
+Description: Remove msse2 flag
+Author: Gianfranco Costamagna <locutusofborg at debian.org>
+Bug-Debian: https://bugs.debian.org/833817
+
+---
+The information above should follow the Patch Tagging Guidelines, please
+checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
+are templates for supplementary fields that you might want to add:
+
+Origin: <vendor|upstream|other>, <url of original patch>
+Bug: <url in upstream bugtracker>
+Bug-Debian: https://bugs.debian.org/<bugnumber>
+Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
+Forwarded: <no|not-needed|url proving that it has been forwarded>
+Reviewed-By: <name and email of someone who approved the patch>
+Last-Update: <YYYY-MM-DD>
+
+--- kido-0.1.0+dfsg.orig/CMakeLists.txt
++++ kido-0.1.0+dfsg/CMakeLists.txt
+@@ -492,7 +492,7 @@ if(MSVC)
+     set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${KIDO_RUNTIME_LIBRARY} /Zi /GL /Gy /W1 /EHsc /arch:SSE2")
+   endif(NOT KIDO_MSVC_DEFAULT_OPTIONS)
+ elseif(CMAKE_COMPILER_IS_GNUCXX)
+-  set(CMAKE_CXX_FLAGS "-Wall -msse2 -fPIC")
++  set(CMAKE_CXX_FLAGS "-Wall -fPIC")
+   execute_process(
+     COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION)
+   set(CXX_COMPILER_VERSION ${GCC_VERSION})
+@@ -506,7 +506,7 @@ elseif(CMAKE_COMPILER_IS_GNUCXX)
+   set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
+   set(CMAKE_CXX_FLAGS_PROFILE "${CMAKE_CXX_FLAGS_DEBUG} -pg")
+ elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
+-  set(CMAKE_CXX_FLAGS "-msse2 -fPIC")
++  set(CMAKE_CXX_FLAGS "-fPIC")
+   execute_process(
+     COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE CLANG_VERSION)
+   set(CXX_COMPILER_VERSION ${CLANG_VERSION})
diff -Nru kido-0.1.0+dfsg/debian/patches/series kido-0.1.0+dfsg/debian/patches/series
--- kido-0.1.0+dfsg/debian/patches/series	2016-07-21 16:33:19.000000000 +0200
+++ kido-0.1.0+dfsg/debian/patches/series	2016-08-29 13:24:59.000000000 +0200
@@ -1 +1,4 @@
 0001-respect-cflags.patch
+update-new-fcl.patch
+2841967fc6628c9aea58c93227b28abdf5dfbcc2.patch
+fix-msse2-flag.patch
diff -Nru kido-0.1.0+dfsg/debian/patches/update-new-fcl.patch kido-0.1.0+dfsg/debian/patches/update-new-fcl.patch
--- kido-0.1.0+dfsg/debian/patches/update-new-fcl.patch	1970-01-01 01:00:00.000000000 +0100
+++ kido-0.1.0+dfsg/debian/patches/update-new-fcl.patch	2016-08-29 12:23:27.000000000 +0200
@@ -0,0 +1,42 @@
+Description: New fcl is not using boost::shared_ptr anymore, but the standard version
+Author: Gianfranco Costamagna <locutusofborg at debian.org>
+
+Index: kido-0.1.0+dfsg/kido/collision/fcl/FCLCollisionNode.cpp
+===================================================================
+--- kido-0.1.0+dfsg.orig/kido/collision/fcl/FCLCollisionNode.cpp
++++ kido-0.1.0+dfsg/kido/collision/fcl/FCLCollisionNode.cpp
+@@ -351,7 +351,7 @@
+   {
+     dynamics::ShapePtr shape = _bodyNode->getCollisionShape(i);
+ 
+-    boost::shared_ptr<fcl::CollisionGeometry> fclCollGeom;
++    std::shared_ptr<fcl::CollisionGeometry> fclCollGeom;
+ 
+     switch (shape->getShapeType())
+     {
+Index: kido-0.1.0+dfsg/kido/utils/urdf/KidoLoader.cpp
+===================================================================
+--- kido-0.1.0+dfsg.orig/kido/utils/urdf/KidoLoader.cpp
++++ kido-0.1.0+dfsg/kido/utils/urdf/KidoLoader.cpp
+@@ -23,7 +23,7 @@
+ #include "kido/simulation/World.hpp"
+ #include "kido/utils/urdf/urdf_world_parser.hpp"
+ 
+-using ModelInterfacePtr = boost::shared_ptr<urdf::ModelInterface>;
++using ModelInterfacePtr = std::shared_ptr<urdf::ModelInterface>;
+ 
+ namespace kido {
+ namespace utils {
+Index: kido-0.1.0+dfsg/kido/utils/urdf/urdf_world_parser.hpp
+===================================================================
+--- kido-0.1.0+dfsg.orig/kido/utils/urdf/urdf_world_parser.hpp
++++ kido-0.1.0+dfsg/kido/utils/urdf/urdf_world_parser.hpp
+@@ -63,7 +63,7 @@
+   /// Copy over a standard urdfEntity
+   Entity(const urdf::Entity& urdfEntity);
+ 
+-  boost::shared_ptr<urdf::ModelInterface> model;
++  std::shared_ptr<urdf::ModelInterface> model;
+   urdf::Pose origin;
+   urdf::Twist twist;
+ 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.alioth.debian.org/pipermail/debian-science-maintainers/attachments/20160829/c23ab5c8/attachment-0003.sig>


More information about the debian-science-maintainers mailing list