Control: tags -1 + patch pending

Dear Maintainer,

Le vendredi 31 mai 2013 à 23:36 +0200, David Suárez a écrit :
> Source: openmeeg
> Version: 2.0.0.dfsg-5
> Severity: serious
> Tags: jessie sid
> User: debian...@lists.debian.org
> Usertags: qa-ftbfs-20130529 qa-ftbfs
> Justification: FTBFS on amd64

> During a rebuild of all packages in sid, your package failed to build on
> amd64.

I have uploaded to DELAYED/2 a NMU fixing this bug and versioned
2.0.0.dfsg-5.1. Feel free to tell me if I should delay it longer. The
debdiff is attached.

Cheers,

-- 
 .''`.    Sébastien Villemot
: :' :    Debian Developer
`. `'     http://www.dynare.org/sebastien
  `-      GPG Key: 4096R/381A7594

diff -Nru openmeeg-2.0.0.dfsg/debian/changelog openmeeg-2.0.0.dfsg/debian/changelog
--- openmeeg-2.0.0.dfsg/debian/changelog	2012-06-25 19:02:02.000000000 +0200
+++ openmeeg-2.0.0.dfsg/debian/changelog	2013-06-19 12:55:06.000000000 +0200
@@ -1,3 +1,15 @@
+openmeeg (2.0.0.dfsg-5.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Adapt for API changes in MatIO 1.5
+    + debian/patches/matio_1.5: new patch
+    + debian/control: add versioned build dependency on libmatio-dev
+    (Closes: #706804)
+  * debian/patches/cmake_clean: new patch, fixes FTBFS with recent versions of
+    cmake
+
+ -- Sébastien Villemot <sebast...@debian.org>  Wed, 19 Jun 2013 12:53:37 +0200
+
 openmeeg (2.0.0.dfsg-5) unstable; urgency=low
 
   * debian/rules:
diff -Nru openmeeg-2.0.0.dfsg/debian/control openmeeg-2.0.0.dfsg/debian/control
--- openmeeg-2.0.0.dfsg/debian/control	2012-06-25 19:02:02.000000000 +0200
+++ openmeeg-2.0.0.dfsg/debian/control	2013-06-19 12:53:27.000000000 +0200
@@ -3,7 +3,7 @@
 Priority: extra
 Maintainer: NeuroDebian Team <t...@neuro.debian.net>
 Uploaders: Yaroslav Halchenko <deb...@onerussian.com>, Michael Hanke <michael.ha...@gmail.com>
-Build-Depends: debhelper (>= 7.0.50~), cmake, doxygen, python-numpy, swig, python-dev (>= 2.4), python-support (>= 0.6), libatlas-base-dev, libvtk5-dev, libtiff4-dev | libtiff-dev, libmatio-dev
+Build-Depends: debhelper (>= 7.0.50~), cmake, doxygen, python-numpy, swig, python-dev (>= 2.4), python-support (>= 0.6), libatlas-base-dev, libvtk5-dev, libtiff4-dev | libtiff-dev, libmatio-dev (>= 1.5)
 Standards-Version: 3.9.3
 Homepage: http://www-sop.inria.fr/odyssee/software/OpenMEEG/
 Vcs-Browser: http://git.debian.org/?p=pkg-exppsy/openmeeg.git
diff -Nru openmeeg-2.0.0.dfsg/debian/patches/cmake_clean openmeeg-2.0.0.dfsg/debian/patches/cmake_clean
--- openmeeg-2.0.0.dfsg/debian/patches/cmake_clean	1970-01-01 01:00:00.000000000 +0100
+++ openmeeg-2.0.0.dfsg/debian/patches/cmake_clean	2013-06-19 12:51:31.000000000 +0200
@@ -0,0 +1,16 @@
+Description: Fix REMOVE_DUPLICATES rule in cmake file
+Author: Sébastien Villemot <sebast...@debian.org>
+Forwarded: no
+Last-Update: 2013-06-19
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/tests/clean_tests.cmake
++++ b/tests/clean_tests.cmake
+@@ -1,6 +1,6 @@
+ FILE(GLOB OLD_FILES "${CMAKE_CURRENT_BINARY_DIR}/../tests/Head*")
+ SET(TMP_FILE "Head-tmp.txt")
+ LIST(APPEND OLD_FILES ${OLD_FILES} ${TMP_FILE})
+-LIST(REMOVE_DUPLICATES OLD_FILES ${OLD_FILES})
++LIST(REMOVE_DUPLICATES OLD_FILES)
+ EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E touch ${TMP_FILE})
+ EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E remove -f ${OLD_FILES})
diff -Nru openmeeg-2.0.0.dfsg/debian/patches/matio_1.5 openmeeg-2.0.0.dfsg/debian/patches/matio_1.5
--- openmeeg-2.0.0.dfsg/debian/patches/matio_1.5	1970-01-01 01:00:00.000000000 +0100
+++ openmeeg-2.0.0.dfsg/debian/patches/matio_1.5	2013-06-19 12:53:12.000000000 +0200
@@ -0,0 +1,107 @@
+Description: Adapt for API changes in MatIO 1.5
+ See the PDF in package libmatio-doc for description of the API changes.
+Author: Sébastien Villemot <sebast...@debian.org>
+Bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=706804
+Forwarded: no
+Last-Update: 2013-06-19
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/libs/MatLib/MatLib/MatlabIO.H
++++ b/libs/MatLib/MatLib/MatlabIO.H
+@@ -56,8 +56,8 @@
+             template <>
+             struct helper<Vector> {
+                 static const int dim = 1;
+-                static int* dims(const Vector& m) {
+-                    static int dims[1];
++                static size_t* dims(const Vector& m) {
++                    static size_t dims[1];
+                     dims[0] = m.nlin();
+                     return dims;
+                 }
+@@ -77,8 +77,8 @@
+             template <>
+             struct helper<Matrix> {
+                 static const int dim = 2;
+-                static int* dims(const Matrix& m) {
+-                    static int dims[2];
++                static size_t* dims(const Matrix& m) {
++                    static size_t dims[2];
+                     dims[0] = m.nlin();
+                     dims[1] = m.ncol();
+                     return dims;
+@@ -113,7 +113,7 @@
+                     static const void* size = "size";
+                     linop.dimension()   = 2;
+                     linop.storageType() = LinOpInfo::SYMMETRIC;
+-                    const matvar_t* sizevar = Mat_VarGetStructField(matvar,const_cast<void*>(size),BY_NAME,0);
++                    const matvar_t* sizevar = Mat_VarGetStructField(matvar,const_cast<void*>(size),MAT_BY_NAME,0);
+                     linop.nlin() = linop.ncol() = *static_cast<int*>(sizevar->data);
+                     return adjust(matvar);
+                 }
+@@ -122,7 +122,7 @@
+                 }
+                 static matvar_t* adjust(matvar_t* structvar) {
+                     static const void* data = "data";
+-                    matvar_t* matvar = Mat_VarGetStructField(structvar,const_cast<void*>(data),BY_NAME,0);
++                    matvar_t* matvar = Mat_VarGetStructField(structvar,const_cast<void*>(data),MAT_BY_NAME,0);
+                     saved = structvar;
+                     return matvar;
+                 }
+@@ -276,7 +276,7 @@
+                 SparseMatrix& m      = dynamic_cast<SparseMatrix&>(linop);
+                 std::cout << "Using variable with name : " << matvar->name << std::endl;
+ 
+-                sparse_t* sparse = static_cast<sparse_t*>(matvar->data);
++                mat_sparse_t* sparse = static_cast<mat_sparse_t*>(matvar->data);
+                 size_t _nz = sparse->nzmax;
+ 
+                 double *data = static_cast<double*>(sparse->data);
+@@ -299,23 +299,23 @@
+             template <typename TYPE>
+             void write(mat_t* mat,const LinOp& linop) const {
+                 const TYPE& m = dynamic_cast<const TYPE&>(linop);
+-                int* dims = details::helper<TYPE>::dims(m);
++                size_t* dims = details::helper<TYPE>::dims(m);
+                 matvar_t* matvar = Mat_VarCreate("linop",MAT_C_DOUBLE,MAT_T_DOUBLE,details::helper<TYPE>::dim,dims,m.data(),0);
+-                Mat_VarWrite(mat,matvar,COMPRESSION_ZLIB);
++                Mat_VarWrite(mat,matvar,MAT_COMPRESSION_ZLIB);
+                 Mat_VarFree(matvar);
+             }
+ 
+             void write_symmetric(mat_t* mat,const LinOp& linop) const {
+                 const SymMatrix& m  = dynamic_cast<const SymMatrix&>(linop);
+-                int dims[2] = { m.size(),1 };
+-                int dims1[2] = { 1, 1 };
++                size_t dims[2] = { m.size(),1 };
++                size_t dims1[2] = { 1, 1 };
+                 int size[1]  = { m.nlin() };
+                 matvar_t** matvar = new matvar_t*[3];
+                 matvar[0] = Mat_VarCreate("size",MAT_C_UINT32,MAT_T_UINT32,2,dims1,size,0);
+-                matvar[1] = Mat_VarCreate("data",MAT_C_DOUBLE,MAT_T_DOUBLE,2,dims,m.data(),MEM_CONSERVE);
++                matvar[1] = Mat_VarCreate("data",MAT_C_DOUBLE,MAT_T_DOUBLE,2,dims,m.data(),MAT_F_DONT_COPY_DATA);
+                 matvar[2] = NULL;
+                 matvar_t* structvar = Mat_VarCreate("symmatrix",MAT_C_STRUCT,MAT_T_STRUCT,2,dims1,matvar,0);
+-                Mat_VarWrite(mat,structvar,COMPRESSION_NONE);
++                Mat_VarWrite(mat,structvar,MAT_COMPRESSION_NONE);
+                 //Mat_VarWrite(mat,structvar,COMPRESSION_ZLIB); Does not work
+                 delete[] matvar;
+                 Mat_VarFree(structvar);
+@@ -356,13 +356,13 @@
+                 for (size_t k = current_col+1; k <= linop.ncol(); ++k)
+                     jc[k] = linop.size();
+ 
+-                int dims[2] = { linop.nlin(), linop.ncol() };
++                size_t dims[2] = { linop.nlin(), linop.ncol() };
+                 matvar_t *matvar;
+                 const int sz = linop.size();
+-                sparse_t  sparse = { sz, ir, sz, jc, linop.ncol()+1, sz, t};
++                mat_sparse_t  sparse = { sz, ir, sz, jc, linop.ncol()+1, sz, t};
+ 
+-                matvar = Mat_VarCreate("matrix",MAT_C_SPARSE,MAT_T_DOUBLE,2,dims,&sparse,MEM_CONSERVE);
+-                Mat_VarWrite(mat,matvar,COMPRESSION_ZLIB);
++                matvar = Mat_VarCreate("matrix",MAT_C_SPARSE,MAT_T_DOUBLE,2,dims,&sparse,MAT_F_DONT_COPY_DATA);
++                Mat_VarWrite(mat,matvar,MAT_COMPRESSION_ZLIB);
+                 Mat_VarFree(matvar);
+                 delete[] t;
+                 delete[] ir;
diff -Nru openmeeg-2.0.0.dfsg/debian/patches/series openmeeg-2.0.0.dfsg/debian/patches/series
--- openmeeg-2.0.0.dfsg/debian/patches/series	2012-06-25 19:02:02.000000000 +0200
+++ openmeeg-2.0.0.dfsg/debian/patches/series	2013-06-19 12:50:27.000000000 +0200
@@ -2,3 +2,5 @@
 includes_path
 shared_libs
 up_integrator_thiss
+matio_1.5
+cmake_clean

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to