[med-svn] [SCM] mia branch, master, updated. upstream/2.0.8-75-g0666df1
Gert Wollny
gw.fossdev at gmail.com
Fri Apr 19 13:55:39 UTC 2013
The following commit has been merged in the master branch:
commit 9fa64827ff92b0d6b14de242bcf244d46be3b1cc
Author: Gert Wollny <gw.fossdev at gmail.com>
Date: Fri Apr 19 12:30:43 2013 +0200
remove patches and update changelog for new release
diff --git a/debian/changelog b/debian/changelog
index 31d0755..ba8584a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,9 +1,17 @@
-mia (2.0.8-2) UNRELEASED; urgency=low
+mia (2.0.9-1) UNRELEASED; urgency=low
- * correct tests on i386
- * correct pkg-config provided include path
+ * Upstream version bump
+ * Fix "FTBFS on i386: 3 tests failed out of 228" - Lower accuracy
+ in floating-point related tests to account for the lower number of
+ available FB registers on i386 (Closes: #705383)
+ * Fix "FTBFS on architectures such as ia64 lacking SSE or Altivec
+ support" - test for availability of SSE or Altivec in the build and
+ disable according modules if not available (Closes: #705384)
+ * Temporal work around "FTBFS on powerpc: test suite hangs" by forcing the
+ number of running threads to 1 on powerpc and with threading building
+ blocks version lower than 4.1u2 (see: #705385)
- -- Gert Wollny <gw.fossdev at gmail.com> Wed, 06 Mar 2013 13:11:25 +0100
+ -- Gert Wollny <gw.fossdev at gmail.com> Fri, 19 Apr 2013 12:02:43 +0200
mia (2.0.8-1) unstable; urgency=low
diff --git a/debian/patches/02_2dmyoset-manpage-lintian-fix.patch b/debian/patches/02_2dmyoset-manpage-lintian-fix.patch
deleted file mode 100644
index 5f97ee8..0000000
--- a/debian/patches/02_2dmyoset-manpage-lintian-fix.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Description: Avoid a lintian manpage warning
- This patch breaks the line of the help example in order to avoid a lintian
- warning about an error with the manpages.
- .
- mia (2.0.8-1) UNRELEASED; urgency=low
- .
- * Initial release (Closes: #694437)
-Author: Gert Wollny <gw.fossdev at gmail.com>
-Origin: upstream
-Forwarded: not-needed
-Last-Update: 2013-02-25
-
---- mia-2.0.8.orig/src/2dmyoset-all2one-nonrigid.cc
-+++ mia-2.0.8/src/2dmyoset-all2one-nonrigid.cc
-@@ -52,7 +52,8 @@ const SProgramDescription g_description
- {pdi_example_descr, "Register the perfusion series given in segment.set by optimizing a "
- "spline based transformation with a coefficient rate of 16 pixel using Mutual Information "
- "and penalize the transformation by using divcurl with aweight of 2.0."},
-- {pdi_example_code, "-i segment.set -o registered.set -f spline:rate=16,penalty=[divcurl:weight=2.0] "
-+ {pdi_example_code, "-i segment.set -o registered.set \n"
-+ " -f spline:rate=16,penalty=[divcurl:weight=2.0] "
- "image:cost=mi,weight=2.0"}
- };
-
diff --git a/debian/patches/03_fix_test_close_to_zero.patch b/debian/patches/03_fix_test_close_to_zero.patch
deleted file mode 100644
index 176675b..0000000
--- a/debian/patches/03_fix_test_close_to_zero.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-Description: Fix failing tests on powerpc 32 bit
- Some tests fail becaus ethe values are close to zero and comparing
- the values show a high relative difference
- .
- mia (2.0.8-1) UNRELEASED; urgency=low
- .
- * Initial release (Closes: #694437)
-Author: Gert Wollny <gw.fossdev at gmail.com>
-Origin: upstream
-Bug: https://sourceforge.net/p/mia/tickets/74/
-Forwarded: not-needed
-Last-Update: 2013-02-26
-
---- mia-2.0.8.orig/mia/3d/filter/test_scale.cc
-+++ mia-2.0.8/mia/3d/filter/test_scale.cc
-@@ -203,7 +203,10 @@ BOOST_AUTO_TEST_CASE( test_downscale_flo
- for (size_t i = 0; i < 64; ++i) {
-
- cvdebug() << i << ":" << fscaled[i] << " - " << test_float[i] << '\n';
-- BOOST_CHECK_CLOSE(fscaled[i], test_float[i], 0.1);
-+ if (fabs(test_float[i]) > 1e-16)
-+ BOOST_CHECK_CLOSE(fscaled[i], test_float[i], 0.1);
-+ else
-+ BOOST_CHECK((fabs(fscaled[i]) < 1e-16));
- }
-
-
---- mia-2.0.8.orig/mia/core/test_splineparzenmi.cc
-+++ mia-2.0.8/mia/core/test_splineparzenmi.cc
-@@ -254,9 +254,12 @@ BOOST_FIXTURE_TEST_CASE( test_self, CSpl
- cvdebug() << self_grad << " vs " << test_grad << ":" << self_grad / test_grad<<"\n";
-
-
-- if (test_grad != 0)
-+ // if the gradient is very small test against 'close to zero'
-+ if (fabs(test_grad) > 1e-16)
- BOOST_CHECK_CLOSE(self_grad, test_grad, 0.1);
-- }
-+ else
-+ BOOST_CHECK(fabs(self_grad) < 1e-16);
-+ }
-
- }
-
diff --git a/debian/patches/04_silence_ambiguous_function_warning.patch b/debian/patches/04_silence_ambiguous_function_warning.patch
deleted file mode 100644
index 88b8580..0000000
--- a/debian/patches/04_silence_ambiguous_function_warning.patch
+++ /dev/null
@@ -1,150 +0,0 @@
-Description: Silence some warnings about ambiguos functions
- The wrapper around gsl_vector offers two options to interpret the []
- operator. The index tyoe size_t makes shure the right one is usd.
- .
- mia (2.0.8-1) UNRELEASED; urgency=low
- .
- * Initial release (Closes: #694437)
-Author: Gert Wollny <gw.fossdev at gmail.com>
-Origin: upstream
-Forwarded: not-needed
-Last-Update: 2013-02-26
-
---- mia-2.0.8.orig/gsl++/test_vector.cc
-+++ mia-2.0.8/gsl++/test_vector.cc
-@@ -126,8 +126,10 @@ BOOST_AUTO_TEST_CASE( test_vector_non_ow
- {
- gsl_vector *x = gsl_vector_calloc(10);
- DoubleVector wx(x);
-+
-+ const size_t i2 = 2;
-
-- wx[2] = 2.0;
-+ wx[i2] = 2.0;
-
- BOOST_CHECK_EQUAL(gsl_vector_get(x,2), 2.0);
-
-@@ -140,16 +142,17 @@ BOOST_AUTO_TEST_CASE( test_vector_copy )
- DoubleVector wx(10, false);
- DoubleVector wy(5, false);
-
-- wx[2] = 3.0;
-- BOOST_CHECK_EQUAL(wx[2], 3.0);
-+ const size_t i2 = 2;
-+ wx[i2] = 3.0;
-+ BOOST_CHECK_EQUAL(wx[i2], 3.0);
-
-- wy[2] = 2.0;
-- BOOST_CHECK_EQUAL(wy[2], 2.0);
-+ wy[i2] = 2.0;
-+ BOOST_CHECK_EQUAL(wy[i2], 2.0);
-
- BOOST_CHECK_EQUAL(wx.size(), 10u);
- wx = wy;
- BOOST_CHECK_EQUAL(wx.size(), 5u);
-- BOOST_CHECK_EQUAL(wx[2], 2.0);
-+ BOOST_CHECK_EQUAL(wx[i2], 2.0);
-
- }
-
---- mia-2.0.8.orig/gsl++/vector_template.hh
-+++ mia-2.0.8/gsl++/vector_template.hh
-@@ -133,7 +133,7 @@ protected:
- a compatibility layer to make it possible to use STL algorithms and constructs.
- */
- template <typename T>
--class TVector : public gsl_vector_dispatch<T> {
-+class TVector : gsl_vector_dispatch<T> {
- public:
- typedef typename gsl_vector_dispatch<T>::iterator iterator;
- typedef typename gsl_vector_dispatch<T>::const_iterator const_iterator;
---- mia-2.0.8.orig/gsl++/test_multimin.cc
-+++ mia-2.0.8/gsl++/test_multimin.cc
-@@ -48,12 +48,15 @@ BOOST_AUTO_TEST_CASE(test_cfdf_multmin )
- CFDFMinimizer minimizer(CFDFMinimizer::PProblem(new TestCFDFProblem), gsl_multimin_fdfminimizer_conjugate_fr );
-
- DoubleVector x(2, false);
-- x[0] = 5.0;
-- x[1] = 7.0;
-+ const size_t i0 = 0;
-+ const size_t i1 = 1;
-+
-+ x[i0] = 5.0;
-+ x[i1] = 7.0;
-
- BOOST_REQUIRE(minimizer.run(x)== GSL_SUCCESS);
-- BOOST_CHECK_CLOSE(x[0], 1.0, 0.1);
-- BOOST_CHECK_CLOSE(x[1], 2.0, 0.1);
-+ BOOST_CHECK_CLOSE(x[i0], 1.0, 0.1);
-+ BOOST_CHECK_CLOSE(x[i1], 2.0, 0.1);
- }
-
- TestCFDFProblem::TestCFDFProblem():
-@@ -68,8 +71,11 @@ TestCFDFProblem::TestCFDFProblem():
- double TestCFDFProblem::do_f(const DoubleVector& v)
- {
-
-- const double x = v[0];
-- const double y = v[1];
-+ const size_t i0 = 0;
-+ const size_t i1 = 1;
-+
-+ const double x = v[i0];
-+ const double y = v[i1];
-
- return m_p[2] * (x - m_p[0]) * (x - m_p[0]) +
- m_p[3] * (y - m_p[1]) * (y - m_p[1]) + m_p[4];
-@@ -78,11 +84,14 @@ double TestCFDFProblem::do_f(const Doub
-
- void TestCFDFProblem::do_df(const DoubleVector& v, DoubleVector& g)
- {
-- const double x = v[0];
-- const double y = v[1];
-+ const size_t i0 = 0;
-+ const size_t i1 = 1;
-+
-+ const double x = v[i0];
-+ const double y = v[i1];
-
-- g[0] = 2.0 * m_p[2] * (x - m_p[0]);
-- g[1] = 2.0 * m_p[3] * (y - m_p[1]);
-+ g[i0] = 2.0 * m_p[2] * (x - m_p[0]);
-+ g[i1] = 2.0 * m_p[3] * (y - m_p[1]);
- }
-
- double TestCFDFProblem::do_fdf(const DoubleVector& x, DoubleVector& g)
-@@ -105,13 +114,16 @@ BOOST_AUTO_TEST_CASE(test_cf_multmin )
- {
- CFMinimizer minimizer(CFMinimizer::PProblem(new TestCFProblem), gsl_multimin_fminimizer_nmsimplex );
-
-+ const size_t i0 = 0;
-+ const size_t i1 = 1;
-+
- DoubleVector x(2, false);
-- x[0] = 5.0;
-- x[1] = 7.0;
-+ x[i0] = 5.0;
-+ x[i1] = 7.0;
-
- BOOST_REQUIRE(minimizer.run(x)== GSL_SUCCESS);
-- BOOST_CHECK_CLOSE(x[0], 1.0, 1);
-- BOOST_CHECK_CLOSE(x[1], 2.0, 1);
-+ BOOST_CHECK_CLOSE(x[i0], 1.0, 1);
-+ BOOST_CHECK_CLOSE(x[i1], 2.0, 1);
- }
-
-
-@@ -126,8 +138,11 @@ TestCFProblem::TestCFProblem():
- double TestCFProblem::do_f(const DoubleVector& v)
- {
-
-- const double x = v[0];
-- const double y = v[1];
-+ const size_t i0 = 0;
-+ const size_t i1 = 1;
-+
-+ const double x = v[i0];
-+ const double y = v[i1];
-
- return m_p[2] * (x - m_p[0]) * (x - m_p[0]) +
- m_p[3] * (y - m_p[1]) * (y - m_p[1]) + m_p[4];
diff --git a/debian/patches/05_relax_floating_point_test_comparisons.patch b/debian/patches/05_relax_floating_point_test_comparisons.patch
deleted file mode 100644
index 08f7bed..0000000
--- a/debian/patches/05_relax_floating_point_test_comparisons.patch
+++ /dev/null
@@ -1,144 +0,0 @@
-Description: This patch relaxes floating point comparisons in tests
- This patch changes some tests to better compare valus that should be zero.
- Since floating point operations are normally not completely accurate,
- some tests that would otherwise fail on i386 are not passing.
- .
- mia (2.0.8-2) UNRELEASE; urgency=low
- .
- * backport to Ubuntu precise
-Author: Gert Wollny <gw.fossdev at gmail.com>
-
-Origin: upstream
-Forwarded: not-needed
-Last-Update: 2013-03-01
-
---- mia-2.0.8.orig/mia/2d/test_segframe.cc
-+++ mia-2.0.8/mia/2d/test_segframe.cc
-@@ -258,9 +258,9 @@ BOOST_FIXTURE_TEST_CASE(test_frame_get_m
- BOOST_FIXTURE_TEST_CASE(test_frame_get_mask_different, FrameTestRead)
- {
-
-- CSegPoint2D center(7.5,7.5);
-+ CSegPoint2D center(7.6,7.59);
- float r = 4;
-- CSegPoint2D d1(1.0,0);
-+ CSegPoint2D d1(1.0, 0.0);
- CSegPoint2D d2(0.0,-1.0);
- CSegPoint2D d3(-1.0,0.0);
- CSegStar star(center, r, d1, d2, d3);
-@@ -310,15 +310,15 @@ BOOST_FIXTURE_TEST_CASE(test_frame_get_m
- /* x */
- /*8*/ 0, 4, 4, 4, 4, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,
-
-- /*9*/ 0, 4, 4, 4, 4, 4, 0, 0, 2, 1, 1, 1, 1, 0, 0, 0,
-+ /*9*/ 0, 4, 4, 4, 4, 4, 0, 0, 2, 2, 1, 1, 1, 0, 0, 0,
-
-- /*10*/ 0, 0, 4, 4, 4, 4, 3, 3, 2, 2, 2, 1, 0, 0, 0, 0,
-+ /*10*/ 0, 0, 4, 4, 4, 4, 3, 3, 2, 2, 2, 1, 1, 0, 0, 0,
-
- /*11*/ 0, 0, 4, 4, 4, 3, 3, 3, 2, 2, 2, 2, 0, 0, 0, 0,
-
- /*12*/ 0, 0, 0, 4, 3, 3, 3, 3, 2, 2, 2, 0, 0, 0, 0, 0,
-
-- /*13*/ 0, 0, 0, 0, 0, 3, 3, 3, 2, 0, 0, 0, 0, 0, 0, 0,
-+ /*13*/ 0, 0, 0, 0, 0, 3, 3, 3, 2, 2, 0, 0, 0, 0, 0, 0,
-
- /*14*/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-
---- mia-2.0.8.orig/mia/2d/test_rigidregister.cc
-+++ mia-2.0.8/mia/2d/test_rigidregister.cc
-@@ -243,7 +243,7 @@ BOOST_AUTO_TEST_CASE( test_rigidreg_affi
-
- BOOST_FIXTURE_TEST_CASE( test_rigidreg_rigid_gd, RigidRegisterFixture )
- {
-- auto tr_creator = C2DTransformCreatorHandler::instance().produce("rigid:imgboundary=repeat");
-+ auto tr_creator = C2DTransformCreatorHandler::instance().produce("rigid:imgboundary=zero");
- auto transformation = tr_creator->create(size);
- auto params = transformation->get_parameters();
- params[0] = 1.0;
---- mia-2.0.8.orig/mia/2d/SegFrame.cc
-+++ mia-2.0.8/mia/2d/SegFrame.cc
-@@ -267,7 +267,8 @@ C2DUBImage CSegFrame::get_section_masks(
- for (size_t y = 0; y < result.get_size().y; ++y) {
- for (size_t x = 0; x < result.get_size().x; ++x, ++i) {
- if (*i) {
-- const C2DFVector ray_b(x - m_star.m_center.x, y - m_star.m_center.y);
-+ const C2DFVector ray_b(static_cast<float>(x) - m_star.m_center.x,
-+ static_cast<float>(y) - m_star.m_center.y);
- double a = scale * angle(ray_a, ray_b);
- if (a >= n_sections)
- a -= n_sections;
---- mia-2.0.8.orig/mia/2d/transform/test_vectorfield.cc
-+++ mia-2.0.8/mia/2d/transform/test_vectorfield.cc
-@@ -94,17 +94,25 @@ BOOST_FIXTURE_TEST_CASE(test_gridtransfo
- C2DFMatrix dv = field.derivative_at(x, y);
- if ( x > 0 && x < size.x- 1) {
- BOOST_CHECK_CLOSE(dv.x.x, 1.0f - dfx_x(x, y), 1);
-- BOOST_CHECK_CLOSE(dv.x.y, -dfy_x(x, y), 1);
-+ float test_value = -dfy_x(x, y);
-+ if (fabs(test_value) < 1e-10)
-+ BOOST_CHECK_SMALL(dv.x.y,1e-10f);
-+ else
-+ BOOST_CHECK_CLOSE(dv.x.y, test_value, 0.1);
- }else {
-- BOOST_CHECK_EQUAL(dv.x.x, 1.0f);
-- BOOST_CHECK_EQUAL(dv.x.y, 0);
-+ BOOST_CHECK_CLOSE(dv.x.x, 1.0f, 0.1);
-+ BOOST_CHECK_SMALL(dv.x.y, 1e-10f);
- }
- if ( y > 0 && y < size.y - 1) {
-- BOOST_CHECK_CLOSE(dv.y.x, -dfx_y(x, y), 1);
-+ float test_value = -dfx_y(x, y);
-+ if (fabs(test_value) < 1e-10)
-+ BOOST_CHECK_SMALL(dv.y.x, 1e-10f);
-+ else
-+ BOOST_CHECK_CLOSE(dv.y.x, test_value , 1);
- BOOST_CHECK_CLOSE(dv.y.y, 1.0f - dfy_y(x, y), 1);
- }else {
-- BOOST_CHECK_EQUAL(dv.y.x, 0);
-- BOOST_CHECK_EQUAL(dv.y.y, 1.0f);
-+ BOOST_CHECK_SMALL(dv.y.x, 1e-10f);
-+ BOOST_CHECK_CLOSE(dv.y.y, 1.0f, 0.1);
- }
- }
-
---- mia-2.0.8.orig/mia/2d/cost/test_lsd.cc
-+++ mia-2.0.8/mia/2d/cost/test_lsd.cc
-@@ -46,14 +46,14 @@ BOOST_FIXTURE_TEST_CASE( test_LSD_2D_sel
- cost.set_reference(*src);
-
- double cost_value = cost.value(*src);
-- BOOST_CHECK_CLOSE(cost_value, 0.0, 0.1);
-+ BOOST_CHECK_SMALL(cost_value, 1e-10);
-
- C2DFVectorfield force(C2DBounds(8,8));
-
- BOOST_CHECK_CLOSE(cost.evaluate_force(*src, force), 0.0, 0.1);
-
-- BOOST_CHECK_EQUAL(force(1,1).x, 0.0f);
-- BOOST_CHECK_EQUAL(force(1,1).y, 0.0f);
-+ BOOST_CHECK_SMALL(force(1,1).x, 1e-10f);
-+ BOOST_CHECK_SMALL(force(1,1).y, 1e-10f);
-
- }
-
-@@ -71,8 +71,17 @@ BOOST_FIXTURE_TEST_CASE( test_LSD_2D, LS
-
-
- for (auto iforce = force.begin(), ig = grad.begin(); ig != grad.end(); ++ig, ++iforce) {
-- BOOST_CHECK_CLOSE(iforce->x, ig->x, 0.1f);
-- BOOST_CHECK_CLOSE(iforce->y, ig->y, 0.1f);
-+ if (ig->x == 0.0)
-+ BOOST_CHECK_SMALL(iforce->x, 1e-10f);
-+ else
-+ BOOST_CHECK_CLOSE(iforce->x, ig->x, 0.1f);
-+
-+ if (ig->y == 0.0)
-+ BOOST_CHECK_SMALL(iforce->y, 1e-10f);
-+ else
-+ BOOST_CHECK_CLOSE(iforce->y, ig->y, 0.1f);
-+
-+
- };
- }
-
diff --git a/debian/patches/06_correct_pkgconfig_include_path.patch b/debian/patches/06_correct_pkgconfig_include_path.patch
deleted file mode 100644
index e874978..0000000
--- a/debian/patches/06_correct_pkgconfig_include_path.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-Description: Correct the pkg-config file for proper include path specification
- This patch corrects an error in the include path specification of the pkg-config
- files required by software using MIA.
- .
- mia (2.0.8-2) UNRELEASE; urgency=low
- .
- * backport to Ubuntu precise
-Author: Gert Wollny <gw.fossdev at gmail.com>
-
-Origin: upstream
-Forwarded: not-needed
-Last-Update: 2013-03-04
-
-diff --git a/miacore.pc.cmake b/miacore.pc.cmake
-index 7b66318..feefd63 100644
---- a/miacore.pc.cmake
-+++ b/miacore.pc.cmake
-@@ -14,4 +14,4 @@ Version: @PACKAGE_VERSION@
- Conflicts:
- Requires: @PKG_CONFIG_DEPS@
- Libs: -lmiacore- at VERSION@ @MIA_DEPEND_LIBRARIES@ -L${prefix}/@LIBRARY_INSTALL_PATH@
--Cflags: -I${prefix}/@INCLUDE_INSTALL_PATH@ -I${prefix}/@LIB_INCLUDE_INSTALL_PATH@
-+Cflags: -I${prefix}/@INCLUDE_INSTALL_PATH@ -I at LIB_INCLUDE_INSTALL_PATH@
diff --git a/debian/patches/series b/debian/patches/series
index acc1723..8526e67 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,6 +1 @@
01_disable-treeview-for-jquery-compatibility.patch
-02_2dmyoset-manpage-lintian-fix.patch
-03_fix_test_close_to_zero.patch
-04_silence_ambiguous_function_warning.patch
-05_relax_floating_point_test_comparisons.patch
-06_correct_pkgconfig_include_path.patch
diff --git a/debian/rules b/debian/rules
index 5aa6584..cb0507c 100755
--- a/debian/rules
+++ b/debian/rules
@@ -9,7 +9,7 @@ LDFLAGS += -Wl,--as-needed
export DH_ALWAYS_EXCLUDE=jquery.js
-.PHONY: override_dh_strip
+.PHONY: override_dh_strip override_dh_shlibdeps
%:
dh $@ --parallel
@@ -25,4 +25,6 @@ override_dh_builddeb:
override_dh_strip:
`pwd`/debian/run_strip
+override_dh_shlibdeps:
+ dh_shlibdeps -- $(shell find debian/libmia-2.0-8/ -name "*.mia")
--
Packaging of mia in Debian
More information about the debian-med-commit
mailing list