apteryx pushed a commit to branch master
in repository guix.

commit d9831cd4399b0f81a8bd4eddab1a0c075bc7751f
Author: Maxim Cournoyer <[email protected]>
AuthorDate: Wed Apr 23 21:52:07 2025 +0900

    gnu: mia: Fix build.
    
    * gnu/packages/patches/mia-gcc11.patch: New file.
    * gnu/packages/patches/mia-openexr3.patch: New file.
    * gnu/local.mk (dist_patch_DATA): Register them.
    * gnu/packages/image-processing.scm (mia) [patches]: Apply them.
    [inputs]: Replace hdf5 with hdf5-1.10.  Add lapack.  Replace openxr-2 with
    openxr.  Move doxygen to...
    [native-inputs]: ... here.
    
    Fixes: bug#47561
    Reported-by: Ludovic Courtès <[email protected]>
    Change-Id: I337df14370a589c7c15d15bcc69b948b43c2e61b
---
 gnu/local.mk                            |   2 +
 gnu/packages/image-processing.scm       |  13 ++--
 gnu/packages/patches/mia-gcc11.patch    | 106 ++++++++++++++++++++++++++++++++
 gnu/packages/patches/mia-openexr3.patch |  27 ++++++++
 4 files changed, 143 insertions(+), 5 deletions(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index 6ae94d24c1..4aa84f8ef9 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1854,6 +1854,8 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/mercurial-hg-extension-path.patch       \
   %D%/packages/patches/mhash-keygen-test-segfault.patch                \
   %D%/packages/patches/mia-fix-boost-headers.patch             \
+  %D%/packages/patches/mia-gcc11.patch                         \
+  %D%/packages/patches/mia-openexr3.patch                      \
   %D%/packages/patches/mia-vtk9.patch                          \
   %D%/packages/patches/mia-vtk92.patch                         \
   %D%/packages/patches/mia-vtk-version.patch                   \
diff --git a/gnu/packages/image-processing.scm 
b/gnu/packages/image-processing.scm
index 5a3e6f69ef..14bfdbfb20 100644
--- a/gnu/packages/image-processing.scm
+++ b/gnu/packages/image-processing.scm
@@ -19,7 +19,7 @@
 ;;; Copyright © 2021 Paul Garlick <[email protected]>
 ;;; Copyright © 2021 Guillaume Le Vaillant <[email protected]>
 ;;; Copyright © 2021 Ivan Gankevich <[email protected]>
-;;; Copyright © 2022 Maxim Cournoyer <[email protected]>
+;;; Copyright © 2022, 2025 Maxim Cournoyer <[email protected]>
 ;;; Copyright © 2022 Tomasz Jeneralczyk <[email protected]>
 ;;; Copyright © 2022 Paul A. Patience <[email protected]>
 ;;; Copyright © 2023 Cairn <[email protected]>
@@ -219,6 +219,8 @@ licences similar to the Modified BSD licence."))))
                (base32
                 "0qpcd3n26q52dpyibm11f5l6cgscdr54p2jish39gc3p1f5h3ws1"))
               (patches (search-patches "mia-fix-boost-headers.patch"
+                                       "mia-gcc11.patch"
+                                       "mia-openexr3.patch"
                                        "mia-vtk9.patch"
                                        "mia-vtk92.patch"
                                        "mia-vtk-version.patch"))))
@@ -230,14 +232,14 @@ licences similar to the Modified BSD licence."))))
     (inputs
      (list boost
            dcmtk
-           doxygen
            eigen
            fftw
            fftwf
            gsl
            gts
-           hdf5
+           hdf5-1.10
            itpp
+           lapack
            libjpeg-turbo
            libpng
            libtiff
@@ -246,11 +248,12 @@ licences similar to the Modified BSD licence."))))
            maxflow
            niftilib
            nlopt
-           openexr-2
+           openexr
            python-lxml
            vtk))
     (native-inputs
-     (list pkg-config
+     (list doxygen
+           pkg-config
            python-wrapper))
     (home-page "https://mia.sourceforge.net";)
     (synopsis "Toolkit for gray scale medical image analysis")
diff --git a/gnu/packages/patches/mia-gcc11.patch 
b/gnu/packages/patches/mia-gcc11.patch
new file mode 100644
index 0000000000..4dfaeeab1a
--- /dev/null
+++ b/gnu/packages/patches/mia-gcc11.patch
@@ -0,0 +1,106 @@
+Author: Gert Wollny <[email protected]>
+Debian-Bug: https://bugs.debian.org/984233
+--- a/mia/2d/test_segframe.cc
++++ b/mia/2d/test_segframe.cc
+@@ -27,8 +27,9 @@
+ #include <mia/2d/transformfactory.hh>
+ #include <mia/core/xmlinterface.hh>
+ 
++using std::vector;
++using std::string; 
+ using namespace mia;
+-using namespace std;
+ using namespace ::boost::unit_test;
+ namespace bfs = boost::filesystem;
+ 
+--- a/mia/2d/test_segmentation.cc
++++ b/mia/2d/test_segmentation.cc
+@@ -31,8 +31,11 @@
+ 
+ 
+ NS_MIA_USE
+-using namespace std;
+ using namespace ::boost::unit_test;
++using std::vector;
++using std::string;
++using std::invalid_argument;
++using std::runtime_error;
+ 
+ const char *testpoint_init  =
+        "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<test><point x=\"10\" 
y=\"20\"/></test>\n";
+@@ -403,7 +406,7 @@
+               for ( string::const_iterator x = xmldoc.begin(), t = 
testdoc.begin();
+                     x != xmldoc.end() && t != testdoc.end(); ++x, ++t ) {
+                      if (*x != *t) {
+-                            cvfail() << "'" << *x << "' vs '" << *t << "'" << 
endl;
++                           cvfail() << "'" << *x << "' vs '" << *t << "'" << 
std::endl;
+                      }
+               }
+        }
+--- a/mia/3d/filter/test_mask.cc
++++ b/mia/3d/filter/test_mask.cc
+@@ -23,7 +23,6 @@
+ #include <mia/3d/filter/mask.hh>
+ 
+ NS_MIA_USE
+-using namespace std;
+ using namespace ::boost::unit_test;
+ using namespace mask_3dimage_filter;
+ 
+--- a/mia/3d/test_ica.cc
++++ b/mia/3d/test_ica.cc
+@@ -22,8 +22,9 @@
+ #include <mia/3d/ica.hh>
+ 
+ using namespace mia;
+-using namespace std;
+ using namespace boost::unit_test;
++using std::vector;
++using std::invalid_argument;
+ 
+ const size_t slices = 5;
+ const size_t nx = 2;
+--- a/mia/3d/test_imagedraw.cc
++++ b/mia/3d/test_imagedraw.cc
+@@ -102,7 +102,7 @@
+ 
+ 
+ struct compare_coordinate  {
+-       bool operator () (const C3DBounds& lhs, const C3DBounds& rhs)
++       bool operator () (const C3DBounds& lhs, const C3DBounds& rhs) const
+        {
+               return (lhs.z < rhs.z) ||
+                      ((lhs.z == rhs.z) && ((lhs.y < rhs.y) ||
+--- a/mia/mesh/filter/test_deltrianglesbynormal.cc
++++ b/mia/mesh/filter/test_deltrianglesbynormal.cc
+@@ -39,7 +39,7 @@
+ 
+ template <typename T>
+ struct compare_vertex_ordered  {
+-       bool operator () (const T3DVector<T>& lhs, const T3DVector<T>& rhs)
++       bool operator () (const T3DVector<T>& lhs, const T3DVector<T>& rhs) 
const
+        {
+               return (lhs.z < rhs.z) ||
+                      ((lhs.z == rhs.z) && ((lhs.y < rhs.y) ||
+--- a/mia/mesh/filter/test_selectbig.cc
++++ b/mia/mesh/filter/test_selectbig.cc
+@@ -39,7 +39,7 @@
+ 
+ template <typename T>
+ struct compare_vertex_ordered  {
+-       bool operator () (const T3DVector<T>& lhs, const T3DVector<T>& rhs)
++       bool operator () (const T3DVector<T>& lhs, const T3DVector<T>& rhs) 
const
+        {
+               return (lhs.z < rhs.z) ||
+                      ((lhs.z == rhs.z) && ((lhs.y < rhs.y) ||
+--- a/mia/mesh/triangularMesh.cc
++++ b/mia/mesh/triangularMesh.cc
+@@ -508,7 +508,7 @@
+ };
+ 
+ struct compare_vertex  {
+-       bool operator () (const VertexWithIndex& lhs, const VertexWithIndex& 
rhs)
++       bool operator () (const VertexWithIndex& lhs, const VertexWithIndex& 
rhs) const
+        {
+               return (lhs.v.z < rhs.v.z) ||
+                      ((lhs.v.z == rhs.v.z) && ((lhs.v.y < rhs.v.y) ||
diff --git a/gnu/packages/patches/mia-openexr3.patch 
b/gnu/packages/patches/mia-openexr3.patch
new file mode 100644
index 0000000000..5205d73355
--- /dev/null
+++ b/gnu/packages/patches/mia-openexr3.patch
@@ -0,0 +1,27 @@
+Description: Fix compilation with openexr 3.x
+Author: Mathieu Malaterre <[email protected]>
+Bug-Debian: https://bugs.debian.org/1017517
+
+--- mia-2.4.7.orig/addons/openexr/2dimgexr.cc
++++ mia-2.4.7/addons/openexr/2dimgexr.cc
+@@ -25,6 +25,9 @@
+ #include <ImfChannelList.h>
+ #include <ImfStringAttribute.h>
+ #include <ImfMatrixAttribute.h>
++#include <ImathBox.h>
++#include <ImfFrameBuffer.h>
++#include <ImfHeader.h>
+ 
+ #include <mia/core/file.hh>
+ #include <mia/core/filter.hh>
+--- mia-2.4.7.orig/addons/openexr/2dvfexr.cc
++++ mia-2.4.7/addons/openexr/2dvfexr.cc
+@@ -25,6 +25,8 @@
+ #include <ImfChannelList.h>
+ #include <ImfStringAttribute.h>
+ #include <ImfMatrixAttribute.h>
++#include <ImfHeader.h>
++#include <ImfFrameBuffer.h>
+ 
+ #include <mia/core/file.hh>
+ #include <mia/core/filter.hh>

Reply via email to