[med-svn] [opensurgsim] 03/14: Remove patches that have been applied upstream

Paul Novotny paulnovo-guest at moszumanska.debian.org
Sun Oct 16 21:01:31 UTC 2016


This is an automated email from the git hooks/post-receive script.

paulnovo-guest pushed a commit to branch master
in repository opensurgsim.

commit 416703cdd5350eea310654d8180778954e78e485
Author: Paul Novotny <paul at paulnovo.us>
Date:   Fri Oct 14 10:49:11 2016 -0400

    Remove patches that have been applied upstream
---
 debian/patches/add-version-to-libs.patch           |  32 ---
 debian/patches/backport-03c10f32d.patch            | 103 -------
 debian/patches/backport-5fa47c607.patch            | 314 ---------------------
 debian/patches/backport-7b1d8836f.patch            |  34 ---
 debian/patches/backport-b9584d8c1.patch            |  45 ---
 debian/patches/backport-c7925c91f.patch            |  37 ---
 debian/patches/backport-cb568a34f.patch            | 119 --------
 debian/patches/backport-d0a635981.patch            |  48 ----
 debian/patches/backport-e762a2ea9.patch            |  76 -----
 .../patches/dont-install-testing-libraries.patch   |  36 ---
 debian/patches/fix-build-with-eigen-3-3.patch      |  65 +----
 debian/patches/fix-epsilon-for-tests.patch         |  60 ----
 debian/patches/fix-fem-ply-reading.patch           |  26 --
 debian/patches/fix-timer.patch                     |  18 --
 debian/patches/gcc6.patch                          |  16 --
 debian/patches/series                              |  15 -
 debian/patches/use-debian-yaml-cpp.patch           |  38 ---
 17 files changed, 2 insertions(+), 1080 deletions(-)

diff --git a/debian/patches/add-version-to-libs.patch b/debian/patches/add-version-to-libs.patch
deleted file mode 100644
index 1797521..0000000
--- a/debian/patches/add-version-to-libs.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Description: Add version to shared libraries
- Add the VERSION and SOVERSION to the libs in CMake. This appends the version
- number to the shared libraries. Also, update the version number in CMake to
- the correct 0.6.0.
-Author: Paul Novotny <paul at paulnovo.us>
-Last-Update: 2015-02-23
-
---- a/CMake/SurgSimUtilities.cmake
-+++ b/CMake/SurgSimUtilities.cmake
-@@ -169,7 +169,10 @@
- 	if (SOURCE_FILES)
- 		add_library(${LIBRARY_NAME} ${SOURCE_FILES} ${HEADER_FILES})
- 
--		set_target_properties(${LIBRARY_NAME} PROPERTIES PUBLIC_HEADER "${HEADER_FILES}")
-+		set_target_properties(${LIBRARY_NAME} PROPERTIES
-+			PUBLIC_HEADER "${HEADER_FILES}"
-+            VERSION ${OPENSURGSIM_VERSION}
-+			SOVERSION ${OPENSURGSIM_VERSION})
- 		install(TARGETS ${LIBRARY_NAME}
- 			EXPORT ${PROJECT_NAME}Targets
- 			RUNTIME DESTINATION "${INSTALL_BIN_DIR}"
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -19,7 +19,7 @@
- set_property(GLOBAL PROPERTY USE_FOLDERS ON)
- 
- set(OPENSURGSIM_MAJOR_VERSION 0)
--set(OPENSURGSIM_MINOR_VERSION 0)
-+set(OPENSURGSIM_MINOR_VERSION 6)
- set(OPENSURGSIM_PATCH_VERSION 0)
- set(OPENSURGSIM_VERSION
- 	${OPENSURGSIM_MAJOR_VERSION}.${OPENSURGSIM_MINOR_VERSION}.${OPENSURGSIM_PATCH_VERSION})
diff --git a/debian/patches/backport-03c10f32d.patch b/debian/patches/backport-03c10f32d.patch
deleted file mode 100644
index 948ee8b..0000000
--- a/debian/patches/backport-03c10f32d.patch
+++ /dev/null
@@ -1,103 +0,0 @@
-Description: Fix failing unit tests due to missing yaml properties
- This was fixed by cherry-picking a commit from upstream. This commit provides
- handling of yaml nodes that don't have all the expected properties, and
- therefor fixed the failing unit tests.
-Author: Paul Novotny <paul at paulnovo.us>
-Origin: upstream, https://github.com/simquest/opensurgsim/commit/03c10f32d
-Last-Update: 2015-02-21
-
---- a/SurgSim/Framework/Accessible.cpp
-+++ b/SurgSim/Framework/Accessible.cpp
-@@ -13,7 +13,9 @@
- // See the License for the specific language governing permissions and
- // limitations under the License.
- 
-+#include <algorithm>
- #include "SurgSim/Framework/Accessible.h"
-+#include "SurgSim/Framework/Log.h"
- #include "SurgSim/Math/Matrix.h"
- 
- namespace SurgSim
-@@ -136,26 +138,43 @@
- 	return result;
- }
- 
--void  Accessible::decode(const YAML::Node& node)
-+void Accessible::decode(const YAML::Node& node, const std::vector<std::string>& ignoredProperties)
- {
--	SURGSIM_ASSERT(node.IsMap()) << "Node to decode accessible has to be map.";
--	for (auto functors = m_functors.cbegin(); functors != m_functors.cend(); ++functors)
-+	SURGSIM_ASSERT(node.IsMap()) << "Node to be decoded has to be map.";
-+
-+	for (auto data = node.begin(); data != node.end(); ++data)
- 	{
--		auto decoder = functors->second.decoder;
--		if (decoder != nullptr)
-+		std::string name = data->first.as<std::string>();
-+		if (std::find(std::begin(ignoredProperties), std::end(ignoredProperties), name) != std::end(ignoredProperties))
-+		{
-+			continue;
-+		}
-+
-+		auto functors = m_functors.find(name);
-+		if (functors == std::end(m_functors) || !functors->second.decoder)
- 		{
--			YAML::Node temporary = node[functors->first];
-+			SURGSIM_LOG_WARNING(SurgSim::Framework::Logger::getLogger("Framework/Accessible"))
-+				<< "No decoder registered for the property " << name;
-+		}
-+		else
-+		{
-+			YAML::Node temporary = data->second;
- 			if (!temporary.IsNull() && temporary.IsDefined())
- 			{
- 				try
- 				{
--					decoder(&temporary);
-+					functors->second.decoder(&temporary);
- 				}
- 				catch (std::exception e)
- 				{
- 					SURGSIM_FAILURE() << e.what();
- 				}
- 			}
-+			else
-+			{
-+				SURGSIM_LOG_INFO(SurgSim::Framework::Logger::getLogger("Framework/Accessible"))
-+					<< "No value associated with property " << name;
-+			}
- 		}
- 	}
- }
---- a/SurgSim/Framework/Accessible.h
-+++ b/SurgSim/Framework/Accessible.h
-@@ -140,9 +140,10 @@
- 	/// Decode this Accessible from a YAML::Node, will throw an exception if the data type cannot
- 	/// be converted.
- 	/// \throws SurgSim::Framework::AssertionFailure if node is not of YAML::NodeType::Map.
--	/// \param node The node that carries the data to be, properties with names that don't
--	///             match up with properties in the Accessible are ignored
--	void decode(const YAML::Node& node);
-+	/// \param node The node that carries the data to be decoded, properties with names that don't
-+	///             match up with properties in the Accessible will be reported.
-+	/// \param ignoredProperties Properties that will be ignored.
-+	void decode(const YAML::Node& node, const std::vector<std::string>& ignoredProperties = std::vector<std::string>());
- 
- private:
- 
---- a/SurgSim/Framework/FrameworkConvert.cpp
-+++ b/SurgSim/Framework/FrameworkConvert.cpp
-@@ -91,7 +91,12 @@
- 				}
- 			}
- 		}
--		rhs->decode(data);
-+
-+		std::vector<std::string> ignoredProperties;
-+		ignoredProperties.push_back(NamePropertyName);
-+		ignoredProperties.push_back(IdPropertyName);
-+
-+		rhs->decode(data, ignoredProperties);
- 		result = true;
- 	}
- 	return result;
diff --git a/debian/patches/backport-5fa47c607.patch b/debian/patches/backport-5fa47c607.patch
deleted file mode 100644
index 37c2730..0000000
--- a/debian/patches/backport-5fa47c607.patch
+++ /dev/null
@@ -1,314 +0,0 @@
-Description: Fix FTBFS with eigen3 3.3~beta2-1
- MultiplyVectorScalar and MultiplyScalarVector tests in VectorTests were
- failing on at least amd64. This was fixed upstream by relaxing the expected
- precision of the failing unit tests. The precision was previously to strict
- for single precision floats.
-Author: Paul Novotny <paul at paulnovo.us>
-Bug-Debian: https://bugs.debian.org/835417
-Origin: upstream, https://github.com/simquest/opensurgsim/commit/5fa47c607
-Last-Update: 2016-09-08
-
---- a/SurgSim/Math/UnitTests/VectorTests.cpp
-+++ b/SurgSim/Math/UnitTests/VectorTests.cpp
-@@ -17,12 +17,12 @@
- /// Tests that exercise the functionality of our vector typedefs, which come
- /// straight from Eigen.
- 
-+#include <gtest/gtest.h>
-+#include <math.h>
- #include <vector>
- 
--#include <math.h>
--#include "SurgSim/Math/Vector.h"
- #include "SurgSim/Math/MathConvert.h"
--#include "gtest/gtest.h"
-+#include "SurgSim/Math/Vector.h"
- 
- // Define test fixture class templates.
- // We don't really need fixtures as such, but the templatization encodes type.
-@@ -284,7 +284,7 @@
- 	Vector2 vector;
- 	// Initialize elements in order.  Do NOT put parentheses around the list!
- 	vector << static_cast<T>(1.1), static_cast<T>(1.2);
--	EXPECT_NEAR(2.3, vector.sum(), 1e-6) << "initialization was incorrect: " << vector;
-+	EXPECT_NEAR(2.3, vector.sum(), 5e-6) << "initialization was incorrect: " << vector;
- }
- 
- /// Test setting the vector using the << syntax.
-@@ -296,7 +296,7 @@
- 	Vector3 vector;
- 	// Initialize elements in order.  Do NOT put parentheses around the list!
- 	vector << static_cast<T>(1.1), static_cast<T>(1.2), static_cast<T>(1.3);
--	EXPECT_NEAR(3.6, vector.sum(), 1e-6) << "initialization was incorrect: " << vector;
-+	EXPECT_NEAR(3.6, vector.sum(), 5e-6) << "initialization was incorrect: " << vector;
- }
- 
- /// Test setting the vector using the << syntax.
-@@ -308,7 +308,7 @@
- 	Vector4 vector;
- 	// Initialize elements in order.  Do NOT put parentheses around the list!
- 	vector << static_cast<T>(1.1), static_cast<T>(1.2), static_cast<T>(1.3), static_cast<T>(1.4);
--	EXPECT_NEAR(5.0, vector.sum(), 1e-6) << "initialization was incorrect: " << vector;
-+	EXPECT_NEAR(5.0, vector.sum(), 5e-6) << "initialization was incorrect: " << vector;
- }
- 
- /// Test setting the vector using the << syntax.
-@@ -321,7 +321,7 @@
- 	// Initialize elements in order.  Do NOT put parentheses around the list!
- 	vector << static_cast<T>(1.1), static_cast<T>(1.2), static_cast<T>(1.3), static_cast<T>(1.4),
- 		static_cast<T>(1.5), static_cast<T>(1.6);
--	EXPECT_NEAR(8.1, vector.sum(), 1e-6) << "initialization was incorrect: " << vector;
-+	EXPECT_NEAR(8.1, vector.sum(), 5e-6) << "initialization was incorrect: " << vector;
- }
- 
- /// Test getting a zero value usable in expressions.
-@@ -461,7 +461,7 @@
- 
- 	Vector v(inputArray);
- 	Vector n = -v;
--	EXPECT_NEAR(static_cast<T>(-expectedSum), n.sum(), 1e-6);
-+	EXPECT_NEAR(static_cast<T>(-expectedSum), n.sum(), 5e-6);
- }
- 
- /// Addition.
-@@ -479,7 +479,7 @@
- 	Vector v(inputArray);
- 	Vector w = v + Vector::Ones() + v;
- 
--	EXPECT_NEAR(static_cast<T>(2 * expectedSum) + SIZE, w.sum(), 1e-6);
-+	EXPECT_NEAR(static_cast<T>(2 * expectedSum) + SIZE, w.sum(), 5e-6);
- }
- 
- /// Subtraction.
-@@ -497,7 +497,7 @@
- 	Vector v(inputArray);
- 	Vector w = v - Vector::Ones();
- 
--	EXPECT_NEAR(static_cast<T>(expectedSum) - SIZE, w.sum(), 1e-6);
-+	EXPECT_NEAR(static_cast<T>(expectedSum) - SIZE, w.sum(), 5e-6);
- }
- 
- /// Incrementing by a value.
-@@ -514,7 +514,7 @@
- 
- 	Vector v(inputArray);
- 	v += Vector::Ones();
--	EXPECT_NEAR(static_cast<T>(expectedSum) + SIZE, v.sum(), 1e-6);
-+	EXPECT_NEAR(static_cast<T>(expectedSum) + SIZE, v.sum(), 5e-6);
- }
- 
- /// Decrementing by a value.
-@@ -531,7 +531,7 @@
- 
- 	Vector v(inputArray);
- 	v -= Vector::Ones();
--	EXPECT_NEAR(static_cast<T>(expectedSum) - SIZE, v.sum(), 1e-6);
-+	EXPECT_NEAR(static_cast<T>(expectedSum) - SIZE, v.sum(), 5e-6);
- }
- 
- /// Vector-scalar multiplication.
-@@ -549,7 +549,7 @@
- 	Vector v(inputArray);
- 	Vector w = v * static_cast<T>(1.23);
- 
--	EXPECT_NEAR(static_cast<T>(1.23 * expectedSum), w.sum(), 1e-6);
-+	EXPECT_NEAR(static_cast<T>(1.23 * expectedSum), w.sum(), 5e-6);
- }
- 
- /// Scalar-vector multiplication.
-@@ -567,7 +567,7 @@
- 	Vector v(inputArray);
- 	Vector w = static_cast<T>(1.23) * v;
- 
--	EXPECT_NEAR(static_cast<T>(1.23 * expectedSum), w.sum(), 1e-6);
-+	EXPECT_NEAR(static_cast<T>(1.23 * expectedSum), w.sum(), 5e-6);
- }
- 
- /// Division by scalar.
-@@ -585,7 +585,7 @@
- 	Vector v(inputArray);
- 	Vector w = v / static_cast<T>(1.23);
- 
--	EXPECT_NEAR(static_cast<T>(expectedSum / 1.23), w.sum(), 1e-6);
-+	EXPECT_NEAR(static_cast<T>(expectedSum / 1.23), w.sum(), 5e-6);
- }
- 
- /// Component-wise multiplication.
-@@ -603,10 +603,10 @@
- 	Vector v(inputArray);
- 	// use the component-wise Eigen matrix operation:
- 	Vector w = v.cwiseProduct(v);
--	EXPECT_NEAR(static_cast<T>(expectedSumSquares), w.sum(), 1e-6);
-+	EXPECT_NEAR(static_cast<T>(expectedSumSquares), w.sum(), 5e-6);
- 	// OR, the same thing done via conversion to arrays:
- 	w = v.array() * v.array();
--	EXPECT_NEAR(static_cast<T>(expectedSumSquares), w.sum(), 1e-6);
-+	EXPECT_NEAR(static_cast<T>(expectedSumSquares), w.sum(), 5e-6);
- }
- 
- /// Component-wise division.
-@@ -623,10 +623,10 @@
- 	Vector u = static_cast<T>(2)*v;
- 	// use the component-wise Eigen matrix operation:
- 	Vector w = u.cwiseQuotient(v);
--	EXPECT_NEAR(static_cast<T>(2*SIZE), w.sum(), 1e-6);
-+	EXPECT_NEAR(static_cast<T>(2*SIZE), w.sum(), 5e-6);
- 	// OR, the same thing done via conversion to arrays:
- 	w = u.array() / v.array();
--	EXPECT_NEAR(static_cast<T>(2*SIZE), w.sum(), 1e-6);
-+	EXPECT_NEAR(static_cast<T>(2*SIZE), w.sum(), 5e-6);
- }
- 
- /// Dot product.
-@@ -642,7 +642,7 @@
- 	double expectedSumSquares = SIZE * (SIZE * (SIZE*0.03 + 0.885) + 8.695);
- 
- 	Vector v(inputArray);
--	EXPECT_NEAR(static_cast<T>(expectedSumSquares), v.dot(v), 1e-6);
-+	EXPECT_NEAR(static_cast<T>(expectedSumSquares), v.dot(v), 5e-6);
- }
- 
- /// Cross product.
-@@ -697,8 +697,8 @@
- 	double expectedSumSquares = SIZE * (SIZE * (SIZE*0.03 + 0.885) + 8.695);
- 
- 	Vector v(inputArray);
--	EXPECT_NEAR(static_cast<T>(expectedSumSquares), v.squaredNorm(), 1e-6);
--	EXPECT_NEAR(sqrt(static_cast<T>(expectedSumSquares)), v.norm(), 1e-6);
-+	EXPECT_NEAR(static_cast<T>(expectedSumSquares), v.squaredNorm(), 5e-6);
-+	EXPECT_NEAR(sqrt(static_cast<T>(expectedSumSquares)), v.norm(), 5e-6);
- }
- 
- /// L1 (Manhattan) norm and L_Infinity (largest absolute value) norm.
-@@ -718,8 +718,8 @@
- 	// Ugh, "template" is required to get this to parse properly.  This is
- 	// triggered because the test is a part of a template class; you don't
- 	// need to do this in a non-template context.
--	EXPECT_NEAR(static_cast<T>(expectedSum), v.template lpNorm<1>(), 1e-6);
--	EXPECT_NEAR(static_cast<T>(expectedSum), w.template lpNorm<1>(), 1e-6);
-+	EXPECT_NEAR(static_cast<T>(expectedSum), v.template lpNorm<1>(), 5e-6);
-+	EXPECT_NEAR(static_cast<T>(expectedSum), w.template lpNorm<1>(), 5e-6);
- 	EXPECT_NEAR(inputArray[SIZE-1], v.template lpNorm<Eigen::Infinity>(), 1e-6);
- 	EXPECT_NEAR(inputArray[SIZE-1], w.template lpNorm<Eigen::Infinity>(), 1e-6);
- }
-@@ -737,16 +737,16 @@
- 	double expectedSumSquares = SIZE * (SIZE * (SIZE*0.03 + 0.885) + 8.695);
- 
- 	Vector v(inputArray);
--	EXPECT_NEAR(sqrt(expectedSumSquares), v.norm(), 1e-6);
-+	EXPECT_NEAR(sqrt(expectedSumSquares), v.norm(), 5e-6);
- 
- 	// normalized() RETURNS the normalized vector, leaving original unchanged.
- 	Vector u = v.normalized();
--	EXPECT_NEAR(static_cast<T>(1), u.norm(), 1e-6);
--	EXPECT_NEAR(sqrt(static_cast<T>(expectedSumSquares)), v.norm(), 1e-6);
-+	EXPECT_NEAR(static_cast<T>(1), u.norm(), 5e-6);
-+	EXPECT_NEAR(sqrt(static_cast<T>(expectedSumSquares)), v.norm(), 5e-6);
- 	// normalize() NORMALIZES the vector, modifying it.
- 	v.normalize();
--	EXPECT_NEAR(static_cast<T>(1), v.norm(), 1e-6);
--	EXPECT_NEAR(static_cast<T>(0), (u - v).norm(), 1e-6);
-+	EXPECT_NEAR(static_cast<T>(1), v.norm(), 5e-6);
-+	EXPECT_NEAR(static_cast<T>(0), (u - v).norm(), 5e-6);
- }
- 
- /// Minimum and maximum elements.
-@@ -782,7 +782,7 @@
- 	// class; you don't need to do this in a non-template context.
- 	vector3.template head<2>() = vector2;
- 	vector3[2] = static_cast<T>(0);
--	EXPECT_NEAR(2.3, vector3.sum(), 1e-6) << "extending was incorrect: " << vector3;
-+	EXPECT_NEAR(2.3, vector3.sum(), 5e-6) << "extending was incorrect: " << vector3;
- }
- 
- /// Extending vectors using the head(r) syntax.
-@@ -798,7 +798,7 @@
- 	Vector3 vector3;
- 	vector3.head(2) = vector2;
- 	vector3[2] = static_cast<T>(0);
--	EXPECT_NEAR(2.3, vector3.sum(), 1e-6) << "extending was incorrect: " << vector3;
-+	EXPECT_NEAR(2.3, vector3.sum(), 5e-6) << "extending was incorrect: " << vector3;
- }
- 
- /// Extending vectors using the block<r,c>() syntax.
-@@ -817,7 +817,7 @@
- 	// class; you don't need to do this in a non-template context.
- 	vector3.template block<2, 1>(0, 0) = vector2;
- 	vector3(2, 0) = static_cast<T>(0);
--	EXPECT_NEAR(2.3, vector3.sum(), 1e-6) << "extending was incorrect: " << vector3;
-+	EXPECT_NEAR(2.3, vector3.sum(), 5e-6) << "extending was incorrect: " << vector3;
- }
- 
- /// Extending vectors using the block(i,j,r,c) syntax.
-@@ -833,7 +833,7 @@
- 	Vector3 vector3;
- 	vector3.block(0, 0, 2, 1) = vector2;
- 	vector3(2, 0) = static_cast<T>(0);
--	EXPECT_NEAR(2.3, vector3.sum(), 1e-6) << "extending was incorrect: " << vector3;
-+	EXPECT_NEAR(2.3, vector3.sum(), 5e-6) << "extending was incorrect: " << vector3;
- }
- 
- /// Shrinking vectors using the head<r>() syntax.
-@@ -851,7 +851,7 @@
- 	// properly.  This is triggered because the test is a part of a template
- 	// class; you don't need to do this in a non-template context.
- 	vector2 = vector3.template head<2>();
--	EXPECT_NEAR(2.3, vector2.sum(), 1e-6) << "shrinking was incorrect: " << vector2;
-+	EXPECT_NEAR(2.3, vector2.sum(), 5e-6) << "shrinking was incorrect: " << vector2;
- }
- 
- /// Extending vectors using the head<r>() syntax.
-@@ -870,7 +870,7 @@
- 	// class; you don't need to do this in a non-template context.
- 	vector3.template head<2>() = vector2;
- 	vector3[2] = static_cast<T>(0);
--	EXPECT_NEAR(2.3, vector3.sum(), 1e-6) << "extending was incorrect: " << vector3;
-+	EXPECT_NEAR(2.3, vector3.sum(), 5e-6) << "extending was incorrect: " << vector3;
- }
- 
- /// Shrinking vectors using the head<r>() syntax.
-@@ -888,7 +888,7 @@
- 	// properly.  This is triggered because the test is a part of a template
- 	// class; you don't need to do this in a non-template context.
- 	vector2 = vector3.template head<2>();
--	EXPECT_NEAR(2.3, vector2.sum(), 1e-6) << "shrinking was incorrect" << vector2;
-+	EXPECT_NEAR(2.3, vector2.sum(), 5e-6) << "shrinking was incorrect" << vector2;
- }
- 
- /// Extending vectors using the head<r>() syntax.
-@@ -907,7 +907,7 @@
- 	// class; you don't need to do this in a non-template context.
- 	vector4.template head<3>() = vector3;
- 	vector4[3] = static_cast<T>(0);
--	EXPECT_NEAR(3.6, vector4.sum(), 1e-6) << "extending was incorrect" << vector4;
-+	EXPECT_NEAR(3.6, vector4.sum(), 5e-6) << "extending was incorrect" << vector4;
- }
- 
- /// Shrinking vectors using the head<r>() syntax.
-@@ -925,7 +925,7 @@
- 	// properly.  This is triggered because the test is a part of a template
- 	// class; you don't need to do this in a non-template context.
- 	vector3 = vector4.template head<3>();
--	EXPECT_NEAR(3.6, vector3.sum(), 1e-6) << "shrinking was incorrect" << vector3;
-+	EXPECT_NEAR(3.6, vector3.sum(), 5e-6) << "shrinking was incorrect" << vector3;
- }
- 
- /// Extending vectors using the head<r>() syntax.
-@@ -944,7 +944,7 @@
- 	// class; you don't need to do this in a non-template context.
- 	vector4.template head<3>() = vector3;
- 	vector4[3] = static_cast<T>(0);
--	EXPECT_NEAR(3.6, vector4.sum(), 1e-6) << "extending was incorrect" << vector4;
-+	EXPECT_NEAR(3.6, vector4.sum(), 5e-6) << "extending was incorrect" << vector4;
- }
- 
- /// Shrinking vectors using the head<r>() syntax.
-@@ -962,7 +962,7 @@
- 	// properly.  This is triggered because the test is a part of a template
- 	// class; you don't need to do this in a non-template context.
- 	vector3 = vector4.template head<3>();
--	EXPECT_NEAR(3.6, vector3.sum(), 1e-6) << "shrinking was incorrect" << vector3;
-+	EXPECT_NEAR(3.6, vector3.sum(), 5e-6) << "shrinking was incorrect" << vector3;
- }
- 
- /// Extend Euclidean N-vector [a_i] to homogeneous (N+1)-vector [a_i 1].
diff --git a/debian/patches/backport-7b1d8836f.patch b/debian/patches/backport-7b1d8836f.patch
deleted file mode 100644
index b47ef72..0000000
--- a/debian/patches/backport-7b1d8836f.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-Description: Fixes TriangleMeshTriangleMeshContactCalculationTests [Patch 2/2]
- The NonintersectionTest unit test was failing on arm64, ppc64el, s390x, and
- ppc64. This was addressed upstream in two commits.
-Author: Paul Novotny <paul at paulnovo.us>
-Origin: upstream, https://github.com/simquest/opensurgsim/commit/7b1d8836f
-Bug-Debian: https://bugs.debian.org/798717
-Last-Update: 2015-09-19
-
---- a/SurgSim/Math/TriangleTriangleIntersection-inl.h
-+++ b/SurgSim/Math/TriangleTriangleIntersection-inl.h
-@@ -136,7 +136,7 @@
- 	size_t s1Index = 0;
- 	size_t s2Index = 0;
- 
--	// Loop through the edges of each triangle and find the intersectio of these edges onto
-+	// Loop through the edges of each triangle and find the intersection of these edges onto
- 	// the plane of the other triangle.
- 	for (int i = 0; i < 3; ++i)
- 	{
-@@ -150,8 +150,12 @@
- 			<< "The intersection between the triangle and the separating axis is not a line segment."
- 			<< " This scenario cannot happen, at this point in the algorithm.";
- 
--	return !(std::abs(s1[0] - s2[0]) <= DistanceEpsilon && std::abs(s1[0] - s2[1]) <= DistanceEpsilon &&
--		     std::abs(s1[1] - s2[0]) <= DistanceEpsilon && std::abs(s1[1] - s2[1]) <= DistanceEpsilon) &&
-+	// s1[0], s1[1] are the (unordered) extents of the projection of T1 on D.
-+	// s2[0], s2[1] are the (unordered) extents of the projection of T2 on D.
-+	// If both these are line segments (i.e. the distance between them is > epsilon),
-+	// and if they overlap, then the two triangles intersect.
-+
-+	return !(std::abs(s1[0] - s1[1]) <= DistanceEpsilon && std::abs(s2[0] - s2[1]) <= DistanceEpsilon) &&
- 		   !(s1[0] <= s2[0] && s1[0] <= s2[1] && s1[1] <= s2[0] && s1[1] <= s2[1]) &&
- 		   !(s1[0] >= s2[0] && s1[0] >= s2[1] && s1[1] >= s2[0] && s1[1] >= s2[1]);
- }
diff --git a/debian/patches/backport-b9584d8c1.patch b/debian/patches/backport-b9584d8c1.patch
deleted file mode 100644
index 471731e..0000000
--- a/debian/patches/backport-b9584d8c1.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-Description: Fix long running physics tests
- Calling inverse on these large matrices is not necessary, causes the tests to
- run long, and causes build failures due to timeouts on armel, armhf, mips,
- mipsel, alpha, and hppa. This uses the LU factorization to solve the equation,
- instead of using the inverse.
-Author: Paul Novotny <paul at paulnovo.us>
-Origin: upstream, https://github.com/simquest/opensurgsim/commit/b9584d8c1
-Last-Update: 2015-11-14
-
---- a/SurgSim/Physics/RenderTests/Fem3DvsTruthCubeRenderTest.cpp
-+++ b/SurgSim/Physics/RenderTests/Fem3DvsTruthCubeRenderTest.cpp
-@@ -1,5 +1,5 @@
- // This file is a part of the OpenSurgSim project.
--// Copyright 2013, SimQuest Solutions Inc.
-+// Copyright 2013-2015, SimQuest Solutions Inc.
- //
- // Licensed under the Apache License, Version 2.0 (the "License");
- // you may not use this file except in compliance with the License.
-@@ -435,7 +435,7 @@
- 	buildConstrainedSystem(truthCubeRepresentation, A, B);
- 
- 	// Solve the constrained system A.X = B
--	SurgSim::Math::Vector X = A.inverse() * B;
-+	SurgSim::Math::Vector X = A.partialPivLu().solve(B);
- 
- 	// Extract the dof displacement vector from the solution X
- 	return X.segment(0, numDof);
---- a/SurgSim/Physics/UnitTests/Fem2DMechanicalValidationTests.cpp
-+++ b/SurgSim/Physics/UnitTests/Fem2DMechanicalValidationTests.cpp
-@@ -1,5 +1,5 @@
- // This file is a part of the OpenSurgSim project.
--// Copyright 2013, SimQuest Solutions Inc.
-+// Copyright 2013-2015, SimQuest Solutions Inc.
- //
- // Licensed under the Apache License, Version 2.0 (the "License");
- // you may not use this file except in compliance with the License.
-@@ -171,7 +171,7 @@
- 		Matrix K = m_fem->computeK(*(m_fem->getCurrentState()));
- 		m_fem->getCurrentState()->applyBoundaryConditionsToMatrix(&K);
- 		m_fem->getCurrentState()->applyBoundaryConditionsToVector(&m_F);
--		m_U = K.inverse() * m_F;
-+		m_U = K.partialPivLu().solve(m_F);
- 	}
- 
- 	double getUx(size_t nodeId) const
diff --git a/debian/patches/backport-c7925c91f.patch b/debian/patches/backport-c7925c91f.patch
deleted file mode 100644
index a239535..0000000
--- a/debian/patches/backport-c7925c91f.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-Description: Fixes TriangleMeshTriangleMeshContactCalculationTests [Patch 1/2]
- The NonintersectionTest unit test was failing on arm64, ppc64el, s390x, and
- ppc64. This was addressed upstream in two commits.
-Author: Paul Novotny <paul at paulnovo.us>
-Origin: upstream, https://github.com/simquest/opensurgsim/commit/c7925c91f
-Bug-Debian: https://bugs.debian.org/798717
-Last-Update: 2015-09-19
-
---- a/SurgSim/Math/TriangleTriangleIntersection-inl.h
-+++ b/SurgSim/Math/TriangleTriangleIntersection-inl.h
-@@ -16,7 +16,6 @@
- #ifndef SURGSIM_MATH_TRIANGLETRIANGLEINTERSECTION_INL_H
- #define SURGSIM_MATH_TRIANGLETRIANGLEINTERSECTION_INL_H
- 
--
- namespace
- {
- static const double EPSILOND = 1e-12;
-@@ -79,6 +78,7 @@
- 	const Eigen::Matrix<T, 3, 1, MOpt>& t1n)
- {
- 	typedef Eigen::Matrix<T, 3, 1, MOpt> Vector3;
-+	using SurgSim::Math::Geometry::DistanceEpsilon;
- 
- 	if (t0n.isZero() || t1n.isZero())
- 	{
-@@ -150,7 +150,9 @@
- 			<< "The intersection between the triangle and the separating axis is not a line segment."
- 			<< " This scenario cannot happen, at this point in the algorithm.";
- 
--	return !(s1[0] <= s2[0] && s1[0] <= s2[1] && s1[1] <= s2[0] && s1[1] <= s2[1]) &&
-+	return !(std::abs(s1[0] - s2[0]) <= DistanceEpsilon && std::abs(s1[0] - s2[1]) <= DistanceEpsilon &&
-+		     std::abs(s1[1] - s2[0]) <= DistanceEpsilon && std::abs(s1[1] - s2[1]) <= DistanceEpsilon) &&
-+		   !(s1[0] <= s2[0] && s1[0] <= s2[1] && s1[1] <= s2[0] && s1[1] <= s2[1]) &&
- 		   !(s1[0] >= s2[0] && s1[0] >= s2[1] && s1[1] >= s2[0] && s1[1] >= s2[1]);
- }
- 
diff --git a/debian/patches/backport-cb568a34f.patch b/debian/patches/backport-cb568a34f.patch
deleted file mode 100644
index f530e63..0000000
--- a/debian/patches/backport-cb568a34f.patch
+++ /dev/null
@@ -1,119 +0,0 @@
-Description: Use libjs-mathjax for Doxygen documentation
- Cherry-picked a commit from upstream that looks if mathjax is installed
- locally before using the online version in the html doxygen documentation.
- This fixes the "privacy-breach-may-use-debian-package" lintian error.
-Author: Paul Novotny <paul at paulnovo.us>
-Origin: upstream, https://github.com/simquest/opensurgsim/commit/cb568a34f
-Last-Update: 2015-02-24
-
---- a/Documentation/CMakeLists.txt
-+++ b/Documentation/CMakeLists.txt
-@@ -28,22 +28,11 @@
- 
- find_package(Doxygen REQUIRED)
- 
--if(EXISTS "${SURGSIM_THIRD_PARTY_DIR}/mathjax")
--	set(MATHJAX_LOCAL "${SURGSIM_THIRD_PARTY_DIR}/mathjax")
--else()
--	set(MATHJAX_LOCAL "")
--endif()
--
- set(SURGSIM_DOCUMENTATION_EXCLUDE_LIST
- 	*/UnitTests/*
- 	CACHE STRING "Directories and files to ignore when generating documentation")
- mark_as_advanced(SURGSIM_DOCUMENTATION_EXCLUDE_LIST)
- 
--set(SURGSIM_DOCUMENTATION_MATHJAX_LOCAL
--	"${MATHJAX_LOCAL}"
--	CACHE PATH "A local copy of MathJax to be used for HTML documentation")
--mark_as_advanced(SURGSIM_DOCUMENTATION_LOCAL_MATHJAX)
--
- set(PROJECT_LOGO "${CMAKE_CURRENT_SOURCE_DIR}/OpenSurgSim-dox.png")
- set(HTML_HEADER "${CMAKE_CURRENT_SOURCE_DIR}/header.html")
- set(HTML_FOOTER "${CMAKE_CURRENT_SOURCE_DIR}/footer.html")
-@@ -66,20 +55,13 @@
- 	set(WARN_FORMAT "\"$file:$line: $text\"")
- endif(MSVC)
- 
--if(SURGSIM_DOCUMENTATION_MATHJAX_LOCAL STREQUAL "")
--	# Use MathJax directly from the web
--	set(MATHJAX_RELPATH http://www.mathjax.org/mathjax)
-+find_package(MathJax)
-+if(MATHJAX_FOUND)
-+	set(MATHJAX_RELPATH ${MATHJAX_DIR})
-+	message(STATUS "Using local MathJax:" ${MATHJAX_DIR})
- else()
--	# Copy MathJax directly into the generated documentation
--	if(NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/html/mathjax")
--		message("Copying local MathJax (please be patient)...")
--		file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/html/")
--		file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/html/mathjax/")
--		file(COPY "${SURGSIM_THIRD_PARTY_DIR}/mathjax/."
--			DESTINATION "${CMAKE_CURRENT_BINARY_DIR}/html/")
--		message("...done!")
--	endif()
--	set(MATHJAX_RELPATH ./mathjax)
-+	set(MATHJAX_RELPATH "http://cdn.mathjax.org/mathjax/latest")
-+	message(STATUS "Using web-based MathJax: " ${MATHJAX_RELPATH})
- endif()
- 
- # Generate Doxyfile from Doxyfile.in, with @VARIABLE@ substitution.
---- a/README
-+++ b/README
-@@ -45,8 +45,8 @@
- system for the dependencies (see Appendix). For Debian/Ubuntu based systems, the
- dependencies are easily installed through apt-get:
- 
--    sudo apt-get install libboost-all-dev cmake doxygen
--    sudo apt-get install libeigen3-dev google-mock libopenscenegraph-dev
-+    sudo apt-get install libboost-all-dev cmake doxygen libeigen3-dev
-+    sudo apt-get install google-mock libjs-mathjax libopenscenegraph-dev
- 
- To build OpenSurgSim, issue the following commands from the same directory used
- to obtain OpenSurgSim (see Section 1)
-@@ -141,3 +141,7 @@
-   Homepage: https://code.google.com/p/googlemock/  
-   Minimum Version: 1.7.0  
- 
-+* MathJax  
-+  Homepage: http://www.mathjax.org/  
-+  Minimum Version: 2.4
-+
---- /dev/null
-+++ b/CMake/FindMathJax.cmake
-@@ -0,0 +1,35 @@
-+# This file is a part of the OpenSurgSim project.
-+# Copyright 2014, SimQuest Solutions Inc.
-+#
-+# Licensed under the Apache License, Version 2.0 (the "License");
-+# you may not use this file except in compliance with the License.
-+# You may obtain a copy of the License at
-+#
-+#     http://www.apache.org/licenses/LICENSE-2.0
-+#
-+# Unless required by applicable law or agreed to in writing, software
-+# distributed under the License is distributed on an "AS IS" BASIS,
-+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-+# See the License for the specific language governing permissions and
-+# limitations under the License.
-+
-+
-+# - Try to find MathJax
-+#
-+# Once done this will define
-+#  MATHJAX_FOUND
-+#  MATHJAX_DIR
-+#
-+
-+if(NOT MATHJAX_DIR)
-+	find_path(MATHJAX_DIR
-+		NAMES MathJax.js
-+		PATHS "$ENV{MATHJAX_DIR}" "/usr/share/javascript/mathjax/"
-+		DOC "Path to local MathJax.js"
-+	)
-+endif()
-+
-+include(FindPackageHandleStandardArgs)
-+find_package_handle_standard_args(MathJax DEFAULT_MSG MATHJAX_DIR)
-+
-+mark_as_advanced(MATHJAX_DIR)
diff --git a/debian/patches/backport-d0a635981.patch b/debian/patches/backport-d0a635981.patch
deleted file mode 100644
index 90d19ed..0000000
--- a/debian/patches/backport-d0a635981.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-Description: Fix gcc5 related issues [Patch 2/2]
- Backported commits from upstream that fix building with GCC 5.
- This commit prevents GCC from optimizing out unused static variables
- that should not be removed.
-Author: Paul Novotny <paul at paulnovo.us>
-Origin: upstream, https://github.com/simquest/opensurgsim/commit/d0a635981
-Last-Update: 2015-09-08
-
---- a/SurgSim/Framework/Macros.h
-+++ b/SurgSim/Framework/Macros.h
-@@ -21,11 +21,11 @@
- #define SURGSIM_CLASSNAME(ClassName) \
- 	virtual std::string getClassName() const {return #ClassName;}
- 
--/// GCC macro to suppress unused-variable warnings
-+/// Macro to tell GCC this is a used variable, and not to optimize it out
- #ifdef __GNUC__
--#define SURGSIM_UNUSED_VARIABLE(x) __attribute__((unused)) x
-+#define SURGSIM_USED_VARIABLE(x) x __attribute__((used))
- #else
--#define SURGSIM_UNUSED_VARIABLE(x) x
-+#define SURGSIM_USED_VARIABLE(x) x
- #endif
- 
- ///@{
---- a/SurgSim/Framework/ObjectFactory.h
-+++ b/SurgSim/Framework/ObjectFactory.h
-@@ -126,8 +126,8 @@
- /// 'DerivedClass' is 'ClassName' with namespace prefixes,
- /// and 'ClassName' is the name of the class without namespace prefix.
- #define SURGSIM_REGISTER(BaseClass, DerivedClass, ClassName) \
--	SURGSIM_UNUSED_VARIABLE(bool SURGSIM_CONCATENATE(ClassName, Registered) = \
--		BaseClass::getFactory().registerClass<DerivedClass>(#DerivedClass));
-+	SURGSIM_USED_VARIABLE(bool SURGSIM_CONCATENATE(ClassName, Registered)) = \
-+		BaseClass::getFactory().registerClass<DerivedClass>(#DerivedClass);
- 
- /// Force compilation of the boolean symbol SURGSIM_CONCATENATE(ClassName, Registered) in SURGSIM_REGISTER macro,
- /// which in turn registers DerivedClass into BaseClass's ObjectFactory.
-@@ -144,7 +144,7 @@
- /// 'ClassName' should be the name of the class without any prefix.
- #define SURGSIM_STATIC_REGISTRATION(ClassName) \
- 	extern bool SURGSIM_CONCATENATE(ClassName, Registered); \
--	SURGSIM_UNUSED_VARIABLE(static bool SURGSIM_CONCATENATE(ClassName, IsRegistered) = \
--		SURGSIM_CONCATENATE(ClassName, Registered));
-+	SURGSIM_USED_VARIABLE(static bool SURGSIM_CONCATENATE(ClassName, IsRegistered)) = \
-+		SURGSIM_CONCATENATE(ClassName, Registered);
- 
- #endif // SURGSIM_FRAMEWORK_OBJECTFACTORY_H
diff --git a/debian/patches/backport-e762a2ea9.patch b/debian/patches/backport-e762a2ea9.patch
deleted file mode 100644
index 51afdad..0000000
--- a/debian/patches/backport-e762a2ea9.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-Description: Fix gcc5 related issues [Patch 1/2]
- Backported commits from upstream that fix building with GCC 5.
- This commit fixes an error with a ObjectFactory, a couple of
- failing unit tests, and a variable might be used uninitialized
- warning.
-Author: Paul Novotny <paul at paulnovo.us>
-Origin: upstream, https://github.com/simquest/opensurgsim/commit/e762a2ea9
-Last-Update: 2015-09-08
-
---- a/SurgSim/Framework/Macros.h
-+++ b/SurgSim/Framework/Macros.h
-@@ -21,11 +21,11 @@
- #define SURGSIM_CLASSNAME(ClassName) \
- 	virtual std::string getClassName() const {return #ClassName;}
- 
--/// GCC macro to write out an _Pragma statement inside a macro, disabled for other platforms
-+/// GCC macro to suppress unused-variable warnings
- #ifdef __GNUC__
--#define SURGSIM_DO_PRAGMA(x) _Pragma (#x)
-+#define SURGSIM_UNUSED_VARIABLE(x) __attribute__((unused)) x
- #else
--#define SURGSIM_DO_PRAGMA(x)
-+#define SURGSIM_UNUSED_VARIABLE(x) x
- #endif
- 
- ///@{
---- a/SurgSim/Framework/ObjectFactory.h
-+++ b/SurgSim/Framework/ObjectFactory.h
-@@ -105,7 +105,7 @@
- 
- private:
- 
--	typedef boost::function<std::shared_ptr<Base>(Parameter1)> Constructor;
-+	typedef boost::function<std::shared_ptr<Base>(const Parameter1&)> Constructor;
- 
- 	/// All the constructors.
- 	std::map<std::string, Constructor> m_constructors;
-@@ -126,8 +126,8 @@
- /// 'DerivedClass' is 'ClassName' with namespace prefixes,
- /// and 'ClassName' is the name of the class without namespace prefix.
- #define SURGSIM_REGISTER(BaseClass, DerivedClass, ClassName) \
--	bool SURGSIM_CONCATENATE(ClassName, Registered) = \
--		BaseClass::getFactory().registerClass<DerivedClass>(#DerivedClass); \
-+	SURGSIM_UNUSED_VARIABLE(bool SURGSIM_CONCATENATE(ClassName, Registered) = \
-+		BaseClass::getFactory().registerClass<DerivedClass>(#DerivedClass));
- 
- /// Force compilation of the boolean symbol SURGSIM_CONCATENATE(ClassName, Registered) in SURGSIM_REGISTER macro,
- /// which in turn registers DerivedClass into BaseClass's ObjectFactory.
-@@ -143,10 +143,8 @@
- /// This macro should be put in the DerivedClass's header file, under the same namespace in which the DerivedClass is.
- /// 'ClassName' should be the name of the class without any prefix.
- #define SURGSIM_STATIC_REGISTRATION(ClassName) \
--	SURGSIM_DO_PRAGMA (GCC diagnostic push); \
--	SURGSIM_DO_PRAGMA (GCC diagnostic ignored "-Wunused-variable"); \
- 	extern bool SURGSIM_CONCATENATE(ClassName, Registered); \
--	static bool SURGSIM_CONCATENATE(ClassName, IsRegistered) = SURGSIM_CONCATENATE(ClassName, Registered); \
--	SURGSIM_DO_PRAGMA (GCC diagnostic pop)
-+	SURGSIM_UNUSED_VARIABLE(static bool SURGSIM_CONCATENATE(ClassName, IsRegistered) = \
-+		SURGSIM_CONCATENATE(ClassName, Registered));
- 
--#endif // SURGSIM_FRAMEWORK_OBJECTFACTORY_H
-\ No newline at end of file
-+#endif // SURGSIM_FRAMEWORK_OBJECTFACTORY_H
---- a/SurgSim/Physics/Fem3DElementCorotationalTetrahedron.cpp
-+++ b/SurgSim/Physics/Fem3DElementCorotationalTetrahedron.cpp
-@@ -180,8 +180,8 @@
- 	// Now we compute some useful matrices for the next step
- 	double determinant;
- 	bool invertible;
--	SurgSim::Math::Matrix33d G, Ginv;
--	G = (scaling.trace() * SurgSim::Math::Matrix33d::Identity() - scaling) * m_rotation.transpose();
-+	Math::Matrix33d G = (scaling.trace() * Math::Matrix33d::Identity() - scaling) * m_rotation.transpose();
-+	Math::Matrix33d Ginv = Math::Matrix33d::Zero();
- 	G.computeInverseAndDetWithCheck(Ginv, determinant, invertible);
- 	if (!invertible)
- 	{
diff --git a/debian/patches/dont-install-testing-libraries.patch b/debian/patches/dont-install-testing-libraries.patch
deleted file mode 100644
index 562badc..0000000
--- a/debian/patches/dont-install-testing-libraries.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-Description: Do not install the libraries used for testing
- This change prevents the OpenSurgSim testing libraries from being installed
- and part of the package. These libraries are just used for the unit tests.
-Author: Paul Novotny <paul at paulnovo.us>
-Last-Update: 2015-09-09
-
---- a/SurgSim/Testing/CMakeLists.txt
-+++ b/SurgSim/Testing/CMakeLists.txt
-@@ -34,11 +34,10 @@
- 	TestCube.h
- )
- 
--surgsim_add_library(
-+add_library(
- 	SurgSimTesting
- 	"${SURGSIM_TESTING_SOURCES}"
- 	"${SURGSIM_TESTING_HEADERS}"
--	"SurgSim/Testing"
- )
- add_dependencies(SurgSimTesting yaml-cpp)
- 
---- a/SurgSim/Testing/MlcpIO/CMakeLists.txt
-+++ b/SurgSim/Testing/MlcpIO/CMakeLists.txt
-@@ -34,11 +34,10 @@
- # The headers etc. for this do not need to be shipped, so do NOT use
- # surgsim_add_library here.
- 
--surgsim_add_library(
-+add_library(
- 	MlcpTestIO
- 	"${MLCP_IO_SOURCES}"
- 	"${MLCP_IO_HEADERS}"
--	"SurgSim/MlcpTestIO"
- )
- 
- SET(LIBS
diff --git a/debian/patches/fix-build-with-eigen-3-3.patch b/debian/patches/fix-build-with-eigen-3-3.patch
index 754dad0..6c1a544 100644
--- a/debian/patches/fix-build-with-eigen-3-3.patch
+++ b/debian/patches/fix-build-with-eigen-3-3.patch
@@ -1,59 +1,9 @@
 Description: Fixes failing build with Eigen 3.3-alpha1
- The update to Eigen 3.3-alpha1 caused the build to break due to changes in the
- Quaternion constructor Also, this tweaks a couple of epsilon values in the
- unit tests due to changes in Eigen.
+ This tweaks an epsilon values in the unit tests due to changes in Eigen.
 Author: Paul Novotny <paul at paulnovo.us>
 Bug-Debian: https://bugs.debian.org/803145
-Last-Update: 2015-11-05
+Last-Update: 2016-10-14
 
---- a/SurgSim/Collision/UnitTests/BoxDoubleSidedPlaneContactCalculationTests.cpp
-+++ b/SurgSim/Collision/UnitTests/BoxDoubleSidedPlaneContactCalculationTests.cpp
-@@ -143,8 +143,8 @@
- 		SCOPED_TRACE("Intersection in front of plane, one contact, rotated plane");
- 		globalQuat = SurgSim::Math::makeRotationQuaternion(-0.3257, Vector3d(-0.4575,-0.8563,0.63457).normalized());
- 		double angle = -35.264389682754654315377000330019*(M_PI/180.0);
--		boxQuat = globalQuat * Quaterniond(SurgSim::Math::makeRotationMatrix(angle, Vector3d(0.0,1.0,0.0)) *
--				  SurgSim::Math::makeRotationMatrix(-M_PI_4, Vector3d(0.0,0.0,1.0)));
-+		boxQuat = globalQuat * SurgSim::Math::makeRotationQuaternion(angle, Vector3d(0.0,1.0,0.0)) *
-+				  SurgSim::Math::makeRotationQuaternion(-M_PI_4, Vector3d(0.0,0.0,1.0));
- 		boxTrans = Vector3d(std::sqrt(0.75),0.0,0.0);
- 		planeQuat = globalQuat * SurgSim::Math::makeRotationQuaternion(-M_PI_2, Vector3d(0.0,0.0,1.0));
- 		planeTrans = boxTrans + globalQuat * Vector3d(-std::sqrt(0.75),0.0,0.0);
-@@ -159,8 +159,8 @@
- 		SCOPED_TRACE("Intersection inside of plane, one contact, rotated plane");
- 		globalQuat = SurgSim::Math::makeRotationQuaternion(-0.3257, Vector3d(-0.4575,-0.8563,0.63457).normalized());
- 		double angle = -35.264389682754654315377000330019*(M_PI/180.0);
--		boxQuat = globalQuat * Quaterniond(SurgSim::Math::makeRotationMatrix(angle, Vector3d(0.0,1.0,0.0)) *
--				  SurgSim::Math::makeRotationMatrix(-M_PI_4, Vector3d(0.0,0.0,1.0)));
-+		boxQuat = globalQuat * SurgSim::Math::makeRotationQuaternion(angle, Vector3d(0.0,1.0,0.0)) *
-+				  SurgSim::Math::makeRotationQuaternion(-M_PI_4, Vector3d(0.0,0.0,1.0));
- 		boxTrans = Vector3d(std::sqrt(0.75),0.0,0.0);
- 		planeQuat = globalQuat * SurgSim::Math::makeRotationQuaternion(-M_PI_2, Vector3d(0.0,0.0,1.0));
- 		planeTrans = boxTrans + globalQuat * Vector3d(-std::sqrt(0.74),0.0,0.0);
---- a/SurgSim/Collision/UnitTests/BoxPlaneContactCalculationTests.cpp
-+++ b/SurgSim/Collision/UnitTests/BoxPlaneContactCalculationTests.cpp
-@@ -131,8 +131,8 @@
- 		SCOPED_TRACE("Intersection in front of plane, one contact, rotated plane");
- 		globalQuat = SurgSim::Math::makeRotationQuaternion(-0.3257, Vector3d(-0.4575,-0.8563,0.63457).normalized());
- 		double angle = -35.264389682754654315377000330019*(M_PI/180.0);
--		boxQuat = globalQuat * Quaterniond(SurgSim::Math::makeRotationMatrix(angle, Vector3d(0.0,1.0,0.0)) *
--				  SurgSim::Math::makeRotationMatrix(-M_PI_4, Vector3d(0.0,0.0,1.0)));
-+		boxQuat = globalQuat * SurgSim::Math::makeRotationQuaternion(angle, Vector3d(0.0,1.0,0.0)) *
-+				  SurgSim::Math::makeRotationQuaternion(-M_PI_4, Vector3d(0.0,0.0,1.0));
- 		boxTrans = Vector3d(std::sqrt(0.75),0.0,0.0);
- 		planeQuat = globalQuat * SurgSim::Math::makeRotationQuaternion(-M_PI_2, Vector3d(0.0,0.0,1.0));
- 		planeTrans = boxTrans + globalQuat * Vector3d(-std::sqrt(0.75),0.0,0.0);
-@@ -146,8 +146,8 @@
- 		SCOPED_TRACE("Intersection inside of plane, one contact, rotated plane");
- 		globalQuat = SurgSim::Math::makeRotationQuaternion(0.3465, Vector3d(54.4575,76.8563,43.63457).normalized());
- 		double angle = -35.264389682754654315377000330019*(M_PI/180.0);
--		boxQuat = globalQuat * Quaterniond(SurgSim::Math::makeRotationMatrix(angle, Vector3d(0.0,1.0,0.0)) *
--				  SurgSim::Math::makeRotationMatrix(-M_PI_4, Vector3d(0.0,0.0,1.0)));
-+		boxQuat = globalQuat * SurgSim::Math::makeRotationQuaternion(angle, Vector3d(0.0,1.0,0.0)) *
-+				  SurgSim::Math::makeRotationQuaternion(-M_PI_4, Vector3d(0.0,0.0,1.0));
- 		boxTrans = Vector3d(std::sqrt(0.73),0.0,0.0);
- 		planeQuat = globalQuat * SurgSim::Math::makeRotationQuaternion(-M_PI_2, Vector3d(0.0,0.0,1.0));
- 		planeTrans = boxTrans + globalQuat * Vector3d(-std::sqrt(0.75),0.0,0.0);
 --- a/SurgSim/Physics/UnitTests/Fem3DElementCorotationalTetrahedronTests.cpp
 +++ b/SurgSim/Physics/UnitTests/Fem3DElementCorotationalTetrahedronTests.cpp
 @@ -30,7 +30,7 @@
@@ -65,14 +15,3 @@ Last-Update: 2015-11-05
  const double epsilonAddMatVec = 1e-10;
  };
  
---- a/SurgSim/Physics/UnitTests/RigidRepresentationTest.cpp
-+++ b/SurgSim/Physics/UnitTests/RigidRepresentationTest.cpp
-@@ -446,7 +446,7 @@
- 	{
- 		SCOPED_TRACE("Almost Identity pose, limitted development in use");
- 
--		Eigen::AngleAxisd angleAxis(0.2e-8, Vector3d(1.1, -1.4, 3.23).normalized());
-+		Eigen::AngleAxisd angleAxis(5e-8, Vector3d(1.1, -1.4, 3.23).normalized());
- 		Vector3d t(1.1, 2.2, 3.3);
- 		RigidTransform3d transform = makeRigidTransform(Quaterniond(angleAxis), t);
- 
diff --git a/debian/patches/fix-epsilon-for-tests.patch b/debian/patches/fix-epsilon-for-tests.patch
deleted file mode 100644
index fe97f66..0000000
--- a/debian/patches/fix-epsilon-for-tests.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-Description: Fixes failing tests due to floating point precision
- On arm64, ppc64el, powerpc, and ppc64 the
- GeometryTest.SegmentTriangleIntersection, GeometryTest.TrianglePlaneTest and
- Fem3DElementTetrahedronTests.ForceAndMatricesTest unit tests were failing due
- to floating point precision issues. This loosens the equality epsilon in the
- Fem3DElementTetrahedronTests and uses an epsilon when doing floating point
- comparisons in doesCollideSegmentTriangle.
-Author: Paul Novotny <paul at paulnovo.us>
-Bug-Debian: https://bugs.debian.org/798717
-Last-Update: 2015-09-20
-
---- a/SurgSim/Math/Geometry.h
-+++ b/SurgSim/Math/Geometry.h
-@@ -911,7 +911,7 @@
- 	// Ray is parallel to triangle plane
- 	if (std::abs(b) <= Geometry::AngularEpsilon)
- 	{
--		if (a == 0)
-+		if (std::abs(a) <= Geometry::AngularEpsilon)
- 		{
- 			// Ray lies in triangle plane
- 			Eigen::Matrix<T, 3, 1, MOpt> baryCoords;
-@@ -960,13 +960,13 @@
- 	// Get and test parametric coords
- 	T s = (uv * wv - vv * wu) / D;
- 	// I is outside T
--	if (s < 0 || s > 1)
-+	if (s < -Geometry::DistanceEpsilon || s > 1 + Geometry::DistanceEpsilon)
- 	{
- 		return false;
- 	}
- 	T t = (uv * wu - uu * wv) / D;
- 	// I is outside T
--	if (t < 0 || (s + t) > 1)
-+	if (t < -Geometry::DistanceEpsilon || (s + t) > 1 + Geometry::DistanceEpsilon)
- 	{
- 		return false;
- 	}
---- a/SurgSim/Physics/UnitTests/Fem3DElementTetrahedronTests.cpp
-+++ b/SurgSim/Physics/UnitTests/Fem3DElementTetrahedronTests.cpp
-@@ -42,7 +42,7 @@
- 	return inv6V * (ai[i] + bi[i] * p[0] + ci[i] * p[1] + di[i] * p[2]);
- }
- 
--const double epsilon = 1e-9;
-+const double epsilon = 1e-8;
- };
- 
- class MockFem3DElementTet : public Fem3DElementTetrahedron
---- a/SurgSim/Math/UnitTests/GeometryTests.cpp
-+++ b/SurgSim/Math/UnitTests/GeometryTests.cpp
-@@ -1041,7 +1041,7 @@
- 
- 	distance = distanceTrianglePlane(tri.v0, tri.v1, tri.v2, n, d, &triangleResultPoint, &planeResultPoint);
- 	EXPECT_NEAR((planeResultPoint - triangleResultPoint).norm(), std::abs(distance), epsilon);
--	EXPECT_TRUE(distance * sign > 0 || distance == static_cast<double>(sign));
-+	EXPECT_TRUE((sign == 0 && std::abs(distance) <= epsilon) || (distance * sign > 0));
- 	EXPECT_TRUE(expectedTrianglePoint.isApprox(triangleResultPoint));
- 	EXPECT_TRUE(expectedPlanePoint.isApprox(planeResultPoint));
- }
diff --git a/debian/patches/fix-fem-ply-reading.patch b/debian/patches/fix-fem-ply-reading.patch
deleted file mode 100644
index 94d988a..0000000
--- a/debian/patches/fix-fem-ply-reading.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Description: Removes reading memory as size_t when it is unsinged int
- In the FEM ply reader, boundary condition indexes were being read from memory
- as size_t when they were in fact unsigned int. This caused the values to be
- incorrect on 64-bit big endian architectures (s390x and ppc64).
-Author: Paul Novotny <paul at paulnovo.us>
-Bug-Debian: https://bugs.debian.org/798715
-Last-Update: 2015-09-19
-
---- a/SurgSim/Physics/FemPlyReaderDelegate.h
-+++ b/SurgSim/Physics/FemPlyReaderDelegate.h
-@@ -109,7 +109,7 @@
- 	bool m_hasBoundaryConditions;
- 
- 	/// Internal data to receive the "boundary_condition" element
--	size_t m_boundaryConditionData;
-+	unsigned int m_boundaryConditionData;
- 
- 	/// Internal iterator to save the "vertex" element
- 	double* m_vertexIterator;
-@@ -146,4 +146,4 @@
- } // namespace Physics
- } // namespace SurgSim
- 
--#endif // SURGSIM_PHYSICS_FEMPLYREADERDELEGATE_H
-\ No newline at end of file
-+#endif // SURGSIM_PHYSICS_FEMPLYREADERDELEGATE_H
diff --git a/debian/patches/fix-timer.patch b/debian/patches/fix-timer.patch
deleted file mode 100644
index 11634c8..0000000
--- a/debian/patches/fix-timer.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Description: Fix Timer that caused test failures on mips, mipsel, and s390x 
- std::accumulate was given an uninitialized value for its initial value. This
- explicitly sets it to zero.
-Author: Paul Novotny <paul at paulnovo.us>
-Bug-Debian: https://bugs.debian.org/798718
-Last-Update: 2015-09-19
-
---- a/SurgSim/Framework/Timer.cpp
-+++ b/SurgSim/Framework/Timer.cpp
-@@ -60,7 +60,7 @@
- 	SURGSIM_ASSERT(m_frameDurations.size() > 0) <<
- 		"Attempted to access the frames for a Timer with no frames.";
- 	TimerDuration cumulativeTime = std::accumulate(std::begin(m_frameDurations), std::end(m_frameDurations),
--		TimerDuration());
-+		TimerDuration::zero());
- 	return cumulativeTime.count();
- }
- 
diff --git a/debian/patches/gcc6.patch b/debian/patches/gcc6.patch
deleted file mode 100644
index 192cef9..0000000
--- a/debian/patches/gcc6.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Description: Fix FTBFS with GCC 6
- See: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70129
-Bug-Debian: https://bugs.debian.org/831096
-Author: Graham Inggs <ginggs at debian.org>
-Last-Update: 2016-08-23
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -93,7 +93,7 @@ else(USE_SYSTEM_YAMLCPP)
- endif(USE_SYSTEM_YAMLCPP)
- 
- include_directories(${SURGSIM_SOURCE_DIR})
--include_directories(SYSTEM
-+include_directories(
- 	${Boost_INCLUDE_DIR}
- 	${EIGEN3_INCLUDE_DIR}
- 	${YAML_CPP_INCLUDE_DIR}
diff --git a/debian/patches/series b/debian/patches/series
index 549cd0e..9167b36 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,17 +1,2 @@
-backport-03c10f32d.patch
-use-debian-yaml-cpp.patch
-add-version-to-libs.patch
-backport-cb568a34f.patch
-backport-e762a2ea9.patch
-backport-d0a635981.patch
-dont-install-testing-libraries.patch
-fix-timer.patch
-backport-c7925c91f.patch
-backport-7b1d8836f.patch
-fix-epsilon-for-tests.patch
-fix-fem-ply-reading.patch
 fix-build-with-eigen-3-3.patch
-backport-b9584d8c1.patch
 disable-sensitive-tests.patch
-gcc6.patch
-backport-5fa47c607.patch
diff --git a/debian/patches/use-debian-yaml-cpp.patch b/debian/patches/use-debian-yaml-cpp.patch
deleted file mode 100644
index 1515752..0000000
--- a/debian/patches/use-debian-yaml-cpp.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-Description: Update yaml-cpp name for Flow Style
- In the forked yaml-cpp used in OpenSurgSim, the name to indicate flow style is
- FlowStyle. With the latest version of yaml-cpp (0.5.1+hg20150210), this has
- been changed to EmitterStyle::Flow.
-Author: Paul Novotny <paul at paulnovo.us>
-Last-Update: 2015-04-24
-
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -87,7 +87,7 @@
- 
- option(USE_SYSTEM_YAMLCPP "Should we use the system yaml-cpp?" OFF)
- if(USE_SYSTEM_YAMLCPP)
--	find_package(yaml-cpp 0.5.1.2 EXACT REQUIRED)
-+	find_package(yaml-cpp 0.5.2 REQUIRED)
- else(USE_SYSTEM_YAMLCPP)
- 	include(External_yamlcpp)
- endif(USE_SYSTEM_YAMLCPP)
---- opensurgsim.orig/SurgSim/Math/MathConvert-inl.h
-+++ opensurgsim/SurgSim/Math/MathConvert-inl.h
-@@ -33,7 +33,7 @@
- 	const typename Eigen::Matrix<Type, Rows, 1, MOpt>& rhs)
- {
- 	Node node;
--	node.SetStyle(YAML::FlowStyle);
-+	node.SetStyle(YAML::EmitterStyle::Flow);
- 	for (int i = 0; i < rhs.size(); ++i)
- 	{
- 		node.push_back(rhs[i]);
-@@ -75,7 +75,7 @@
- 	const typename Eigen::Matrix<Type, Rows, Cols, MOpt>& rhs)
- {
- 	YAML::Node node;
--	node.SetStyle(YAML::FlowStyle);
-+	node.SetStyle(YAML::EmitterStyle::Flow);
- 	for (int row = 0; row < Rows; ++row)
- 	{
- 		YAML::Node rowNode;

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-med/opensurgsim.git



More information about the debian-med-commit mailing list