[pysparse] 01/01: Initial debian-commit.
Anton Gladky
gladk at moszumanska.debian.org
Sat Sep 3 20:45:30 UTC 2016
This is an automated email from the git hooks/post-receive script.
gladk pushed a commit to branch master
in repository pysparse.
commit d12817d022c304e8e5450b54e1ff0707b15b0e3f
Author: Anton Gladky <gladk at debian.org>
Date: Sat Sep 3 22:43:32 2016 +0200
Initial debian-commit.
---
debian/README.source | 3 +
debian/changelog | 110 +++++++++++++++++++++
debian/compat | 1 +
debian/control | 43 +++++++++
debian/copyright | 169 +++++++++++++++++++++++++++++++++
debian/patches/no-g2c.patch | 13 +++
debian/patches/quiltrc | 2 +
debian/patches/series | 4 +
debian/patches/suitesparse-4.1.patch | 141 +++++++++++++++++++++++++++
debian/patches/superlu-4.3.patch | 18 ++++
debian/patches/use-debian-libs.patch | 56 +++++++++++
debian/python-sparse-examples.doc-base | 12 +++
debian/rules | 136 ++++++++++++++++++++++++++
debian/watch | 2 +
14 files changed, 710 insertions(+)
diff --git a/debian/README.source b/debian/README.source
new file mode 100644
index 0000000..44c2678
--- /dev/null
+++ b/debian/README.source
@@ -0,0 +1,3 @@
+Please refer to /usr/share/doc/quilt/README.source for information on how to
+manipulate the patches for this package, which are in the debian/patches
+directory.
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..e847447
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,110 @@
+pysparse (1.1-1.3) unstable; urgency=medium
+
+ * Non-maintainer upload.
+ * Transition to superlu 4.3:
+ - debian/control: replace libsuperlu3-dev by libsuperlu-dev.
+ - superlu-4.3.patch: new patch, fixes FTBFS against superlu 4.3
+ (Closes: #740636).
+ * Use new names of virtual -dev packages for BLAS and LAPACK.
+
+ -- Sébastien Villemot <sebastien at debian.org> Mon, 10 Mar 2014 17:49:01 +0100
+
+pysparse (1.1-1.2) unstable; urgency=low
+
+ * Non-maintainer upload.
+ * suitesparse-4.1.patch: new patch, fixes FTBFS against suitesparse 4.1
+ (Closes: #708379)
+
+ -- Sébastien Villemot <sebastien at debian.org> Mon, 05 Aug 2013 12:04:49 +0000
+
+pysparse (1.1-1.1) unstable; urgency=low
+
+ * Non-maintainer upload.
+ * Covnert to dh_python2 (Closes: #551697, #616986).
+
+ -- Andrea Colangelo <warp10 at ubuntu.com> Fri, 28 Jun 2013 16:51:51 +0200
+
+pysparse (1.1-1) unstable; urgency=low
+
+ * New upstream release.
+ * Small changes to package description.
+ * Bounds-checking eliminates many crashes (closes: #535318).
+ * Added --install-layout=deb to setup.py install (closes: #547839).
+ * Using quilt for patches, and added README.source describing it.
+ * Updated Standards-Version.
+
+ -- Adam C. Powell, IV <hazelsct at debian.org> Tue, 29 Sep 2009 19:28:55 -0400
+
+pysparse (1.0.1-6) unstable; urgency=low
+
+ * Added python-numpy to python-sparse Depends (closes: #539694).
+ * Updated watch file (closes: #450374).
+ * Updated Standards-Version.
+
+ -- Adam C. Powell, IV <hazelsct at debian.org> Tue, 04 Aug 2009 09:51:35 -0400
+
+pysparse (1.0.1-5.1) unstable; urgency=low
+
+ * Non-maintainer upload.
+ * Fix pysparse.superlu module port to superlu 3 based on reading
+ the docs. Closes: #526527
+
+ -- Thomas Viehmann <tv at beamnet.de> Fri, 01 May 2009 20:56:39 +0200
+
+pysparse (1.0.1-5) unstable; urgency=low
+
+ * Removed removal of /usr/lib and Build-Depends on python-central >= 0.6
+ (closes: #472026).
+
+ -- Adam C. Powell, IV <hazelsct at debian.org> Mon, 24 Mar 2008 16:29:44 -0400
+
+pysparse (1.0.1-4) unstable; urgency=low
+
+ * New upload for unstable.
+ * Removed a few unnecessary library linkages.
+
+ -- Adam C. Powell, IV <hazelsct at debian.org> Fri, 22 Feb 2008 10:39:25 -0500
+
+pysparse (1.0.1-3) experimental; urgency=low
+
+ * Rebuild against, and depend on, suitesparse with proper shared libs.
+
+ -- Adam C. Powell, IV <hazelsct at debian.org> Mon, 11 Feb 2008 18:28:48 -0500
+
+pysparse (1.0.1-2) experimental; urgency=low
+
+ * Changed build-depends to gfortran and its BLAS and LAPACK libs
+ (closes: #464973).
+ * Added build-depends on suitesparse and superlu, and changed build system to
+ use installed umfpack and superlu instead of included source.
+ * Doing this required forward-porting to superlu 3.0.
+
+ -- Adam C. Powell, IV <hazelsct at debian.org> Sun, 10 Feb 2008 07:56:54 -0500
+
+pysparse (1.0.1-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- Adam C. Powell, IV <hazelsct at debian.org> Wed, 20 Jun 2007 07:52:22 -0400
+
+pysparse (1.0-1) unstable; urgency=low
+
+ * New upstream release (closes: #419549).
+ * Adds the amd directory.
+
+ -- Adam C. Powell, IV <hazelsct at debian.org> Mon, 23 Apr 2007 18:10:11 -0400
+
+pysparse (0.34.032-2) unstable; urgency=low
+
+ * Updated copyright gives authors and licenses for files in superlu and
+ umfpack directories.
+
+ -- Adam C. Powell, IV <hazelsct at debian.org> Fri, 19 Jan 2007 17:56:30 -0500
+
+pysparse (0.34.032-1) unstable; urgency=low
+
+ * Initial release based on Mathias Klose' python-numeric package (closes:
+ #399505).
+ * Linking with -lblas-3 and -llapack-3.
+
+ -- Adam C. Powell, IV <hazelsct at debian.org> Fri, 24 Nov 2006 00:15:15 -0500
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..7ed6ff8
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+5
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..0640063
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,43 @@
+Source: pysparse
+Section: python
+Priority: optional
+Maintainer: Adam C. Powell, IV <hazelsct at debian.org>
+Build-Depends: debhelper (>= 5.0.37.2), quilt,
+ python-all-dev (>= 2.6.6-3~), python-numpy,
+ gfortran, libblas-dev | libblas.so, liblapack-dev | liblapack.so,
+ libsuitesparse-dev (>= 3.1.0), libsuperlu-dev
+Standards-Version: 3.8.3
+Homepage: http://pysparse.sourceforge.net/
+
+Package: python-sparse
+Architecture: any
+Depends: python-numpy, ${python:Depends}, ${shlibs:Depends}
+Suggests: python-sparse-examples
+Provides: ${python:Provides}
+Description: Sparse linear algebra extension for Python
+ This provides a set of sparse matrix types for Python, with modules which
+ implement:
+ - Iterative methods for solving linear systems of equations
+ - A set of standard preconditioners
+ - An interface to a direct solver for sparse linear systems of equations
+ - The JDSYM eigensolver
+ .
+ All of these modules are implemented as C extension modules based on standard
+ sparse and dense matrix libraries (UMFPACK/AMD, SuperLU, BLAS/LAPACK) for
+ maximum performance and robustness.
+
+Package: python-sparse-examples
+Architecture: all
+Depends: ${python:Depends}, python-sparse (>= ${binary:Version})
+XB-Python-Version: all
+Description: Sparse linear algebra extension for Python: documentation
+ This package provides documents and examples for python-sparse, a set of
+ sparse matrix types for Python, with modules which implement:
+ - Iterative methods for solving linear systems of equations
+ - A set of standard preconditioners
+ - An interface to a direct solver for sparse linear systems of equations
+ - The JDSYM eigensolver
+ .
+ All of these modules are implemented as C extension modules based on standard
+ sparse and dense matrix libraries (UMFPACK/AMD, SuperLU, BLAS/LAPACK) for
+ maximum performance.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..398a1f4
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,169 @@
+This package was debianized by Adam C. Powell, IV <hazelsct at debian.org> on
+November 20, 2006.
+
+It was downloaded from http://sourceforge.net/projects/pysparse/
+
+Copyright for the main package:
+
+Copyright (c) 2001-2003, ETH Zurich and Roman Geus
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+ * Neither the name of the ETH Zurich nor the names of its
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+------------------------------------------------------------------
+
+This is distributed also with SuperLU and UMFPack source (not used in the
+binary packages), which come with the following copyright notices:
+
+In the superlu directory, the following files have the text below:
+dcolumn_bmod.c, dcolumn_dfs.c, dcopy_to_ucol.c, dgstrf.c, dgstrs.c,
+dpanel_bmod.c, dpanel_dfs, dpivotL.c, dpruneL.c, dutil.c, relax_snode.c,
+superlu/util.c (dgstrf.c adds "Last modified: June 6, 2002")
+
+ * -- SuperLU routine (version 2.0) --
+ * Univ. of California Berkeley, Xerox Palo Alto Research Center,
+ * and Lawrence Berkeley National Lab.
+ * November 15, 1997
+
+ Copyright (c) 1994 by Xerox Corporation. All rights reserved.
+
+ THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY
+ EXPRESSED OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
+
+ Permission is hereby granted to use or copy this program for any
+ purpose, provided the above notices are retained on all copies.
+ Permission to modify the code and to distribute modified code is
+ granted, provided the above notices are retained, and a notice that
+ the code was modified is included with the above copyright notice.
+
+---------
+
+superlu/colamd.c and superlu/colamd.h have the following:
+
+ Authors:
+
+ The authors of the code itself are Stefan I. Larimore and Timothy A.
+ Davis (davis at cise.ufl.edu), University of Florida. The algorithm was
+ developed in collaboration with John Gilbert, Xerox PARC, and Esmond
+ Ng, Oak Ridge National Laboratory.
+
+ Date:
+
+ August 3, 1998. Version 1.0.
+
+ Acknowledgements:
+
+ This work was supported by the National Science Foundation, under
+ grants DMS-9504974 and DMS-9803599.
+
+ Notice:
+
+ Copyright (c) 1998 by the University of Florida. All Rights Reserved.
+
+ THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY
+ EXPRESSED OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
+
+ Permission is hereby granted to use or copy this program for any
+ purpose, provided the above notices are retained on all copies.
+ User documentation of any code that uses this code must cite the
+ Authors, the Copyright, and "Used by permission." If this code is
+ accessible from within Matlab, then typing "help colamd" or "colamd"
+ (with no arguments) must cite the Authors. Permission to modify the
+ code and to distribute modified code is granted, provided the above
+ notices are retained, and a notice that the code was modified is
+ included with the above copyright notice. You must also retain the
+ Availability information below, of the original version.
+
+ This software is provided free of charge.
+
+ Availability:
+
+ This file is located at
+
+ http://www.cise.ufl.edu/~davis/colamd/colamd.c
+
+ The colamd.h file is required, located in the same directory.
+ The colamdmex.c file provides a Matlab interface for colamd.
+ The symamdmex.c file provides a Matlab interface for symamd, which is
+ a symmetric ordering based on this code, colamd.c. All codes are
+ purely ANSI C compliant (they use no Unix-specific routines, include
+ files, etc.).
+
+---------
+
+The file umfpack/umfpack.h gives the copyright for files in that directory:
+
+#define UMFPACK_VERSION "UMFPACK V4.1 (Apr. 30, 2003)"
+
+#define UMFPACK_COPYRIGHT \
+"UMFPACK: Copyright (c) 2003 by Timothy A. Davis. All Rights Reserved.\n"
+
+#define UMFPACK_LICENSE_PART1 \
+"\nUMFPACK License:\n" \
+"\n" \
+" Your use or distribution of UMFPACK or any modified version of\n" \
+" UMFPACK implies that you agree to this License.\n" \
+"\n" \
+" THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY\n" \
+" EXPRESSED OR IMPLIED. ANY USE IS AT YOUR OWN RISK.\n"
+#define UMFPACK_LICENSE_PART2 \
+"\n" \
+" Permission is hereby granted to use or copy this program, provided\n" \
+" that the Copyright, this License, and the Availability of the original\n" \
+" version is retained on all copies. User documentation of any code that\n" \
+" uses UMFPACK or any modified version of UMFPACK code must cite the\n" \
+" Copyright, this License, the Availability note, and \"Used by permission.\"\n"
+#define UMFPACK_LICENSE_PART3 \
+" Permission to modify the code and to distribute modified code is granted,\n" \
+" provided the Copyright, this License, and the Availability note are\n" \
+" retained, and a notice that the code was modified is included. This\n" \
+" software was developed with support from the National Science Foundation,\n" \
+" and is provided to you free of charge.\n" \
+"\n" \
+"Availability: http://www.cise.ufl.edu/research/sparse/umfpack\n" \
+"\n"
+
+---------
+
+The directory amd is new to version 1.0. The copyright notice found in amd.h
+refers to the LGPL, which is found in /usr/share/common-licenses/LGPL-2.1:
+
+/* AMD Version 1.0 (Apr. 30, 2003), Copyright (c) 2003 by Timothy A. Davis, */
+/* Patrick R. Amestoy, and Iain S. Duff. See ../README for License. */
+/* email: davis at cise.ufl.edu CISE Department, Univ. of Florida. */
+/* web: http://www.cise.ufl.edu/research/sparse/amd */
+
+Unfortunately, ../README is the main pysparse README, not the amd README. But
+visiting the "web:" link above reveals:
+
+Copyright, and License:
+
+ Copyright (c) 2004-2006 by Timothy A. Davis, Patrick R. Amestoy, and Iain S. Duff. All Rights Reserved. Distributed under the GNU LGPL license.
+
+For details, see: http://www.cise.ufl.edu/research/sparse/amd/AMD/ which
+appears to include the README file, including the LGPL licensing language
+(Version 2.1 or any later).
diff --git a/debian/patches/no-g2c.patch b/debian/patches/no-g2c.patch
new file mode 100644
index 0000000..d2a2eea
--- /dev/null
+++ b/debian/patches/no-g2c.patch
@@ -0,0 +1,13 @@
+Remove g2c library no longer in Debian from consideration by setup.py.
+
+--- pysparse-1.1/setup.py~ 2009-07-29 18:06:29.000000000 -0400
++++ pysparse-1.1/setup.py 2009-09-27 18:17:28.000000000 -0400
+@@ -8,7 +8,7 @@
+
+ # default settings
+ library_dirs_list= []
+-libraries_list = ['lapack', 'blas', 'g2c']
++libraries_list = ['lapack', 'blas']
+ superlu_defs = [('USE_VENDOR_BLAS',1)]
+ if sys.platform == 'win32':
+ superlu_defs += [('NO_TIMER', 1)]
diff --git a/debian/patches/quiltrc b/debian/patches/quiltrc
new file mode 100644
index 0000000..16e8b47
--- /dev/null
+++ b/debian/patches/quiltrc
@@ -0,0 +1,2 @@
+QUILT_PATCHES="debian/patches"
+QUILT_NO_DIFF_TIMESTAMPS=1
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..75155a9
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,4 @@
+no-g2c.patch
+use-debian-libs.patch
+suitesparse-4.1.patch
+superlu-4.3.patch
diff --git a/debian/patches/suitesparse-4.1.patch b/debian/patches/suitesparse-4.1.patch
new file mode 100644
index 0000000..c3cf5f1
--- /dev/null
+++ b/debian/patches/suitesparse-4.1.patch
@@ -0,0 +1,141 @@
+Description: Fix build failure against SuiteSparse 4.1
+ In SuiteSparse 4.1, the 2by2 strategy for ordering and pivoting in UMFPACK has
+ been removed (it was already deprecated in SuiteSparse 3.4). This patch removes
+ the code and options in the python interface that are related to this strategy.
+Author: Sébastien Villemot <sebastien at debian.org>
+Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=708379
+Forwarded: no
+Last-Update: 2013-08-05
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/Src/umfpackmodule.c
++++ b/Src/umfpackmodule.c
+@@ -491,7 +491,7 @@
+ }
+
+ static PyObject *
+-newUMFPackObject(LLMatObject *matrix, int strategy, double tol2by2, int scale,
++newUMFPackObject(LLMatObject *matrix, int strategy, int scale,
+ double tolpivot, double tolsympivot)
+ {
+ UMFPackObject *self;
+@@ -544,9 +544,6 @@
+ if (strategy != -1)
+ self->Control[UMFPACK_STRATEGY] = strategy;
+
+- if (tol2by2 != -1)
+- self->Control[UMFPACK_2BY2_TOLERANCE] = tol2by2;
+-
+ if (scale != -1)
+ self->Control[UMFPACK_SCALE] = scale;
+
+@@ -662,9 +659,6 @@
+ \"UMFPACK_STRATEGY_AUTO\"\n\
+ \"UMFPACK_STRATEGY_UNSYMMETRIC\"\n\
+ \"UMFPACK_STRATEGY_SYMMETRIC\"\n\
+- \"UMFPACK_STRATEGY_2BY2\"\n\
+-\n\
+-tol2by2 tolerance for the 2 by 2 strategy\n\
+ \n\
+ scale scaling UMFPACK would use\n\
+ \"UMFPACK_SCALE_NONE\"\n\
+@@ -683,19 +677,17 @@
+ factorize(PyObject *self, PyObject *args, PyObject *keywds) {
+ LLMatObject *matrix;
+ char *strategy="UMFPACK_STRATEGY_AUTO";
+- double tol2by2 = 0.1;
+ char *scale="UMFPACK_SCALE_SUM";
+ double tolpivot = 0.1;
+ double tolsympivot = 0.0;
+ int res;
+ int strategyval = UMFPACK_STRATEGY_AUTO, scaleval = UMFPACK_SCALE_SUM;
+
+- static char *kwlist[] = {"", "strategy", "tol2by2", "scale", "tolpivot", "tolsympivot", NULL};
++ static char *kwlist[] = {"", "strategy", "scale", "tolpivot", "tolsympivot", NULL};
+
+- res = PyArg_ParseTupleAndKeywords(args, keywds, "O!|sdsdd", kwlist,
++ res = PyArg_ParseTupleAndKeywords(args, keywds, "O!|ssdd", kwlist,
+ &LLMatType, &matrix,
+ &strategy,
+- &tol2by2,
+ &scale,
+ &tolpivot,
+ &tolsympivot);
+@@ -708,8 +700,6 @@
+ strategyval = UMFPACK_STRATEGY_UNSYMMETRIC;
+ else if (strcmp("UMFPACK_STRATEGY_SYMMETRIC", strategy) == 0)
+ strategyval = UMFPACK_STRATEGY_SYMMETRIC;
+- else if (strcmp("UMFPACK_STRATEGY_2BY2", strategy) == 0)
+- strategyval = UMFPACK_STRATEGY_2BY2;
+
+ if (strcmp("UMFPACK_SCALE_NONE", scale) == 0)
+ scaleval = UMFPACK_SCALE_NONE;
+@@ -718,7 +708,7 @@
+ if (strcmp("UMFPACK_SCALE_MAX", scale) == 0)
+ scaleval = UMFPACK_SCALE_MAX;
+
+- return newUMFPackObject(matrix, strategyval, tol2by2, scaleval, tolpivot, tolsympivot);
++ return newUMFPackObject(matrix, strategyval, scaleval, tolpivot, tolsympivot);
+ }
+
+
+--- a/Lib/pysparseUmfpack.py
++++ b/Lib/pysparseUmfpack.py
+@@ -57,9 +57,7 @@
+
+ :strategy: string that specifies what kind of ordering and pivoting
+ strategy UMFPACK should use. Valid values are 'auto',
+- 'unsymmetric', 'symmetric' and '2by2'. Default: 'auto'
+-
+- :tol2by2: tolerance for the 2 by 2 strategy. Default: 0.1
++ 'unsymmetric' and 'symmetric'. Default: 'auto'
+
+ :scale: string that specifies the scaling UMFPACK should use. Valid
+ values are 'none', 'sum', and 'max'. Default: 'sum'.
+@@ -130,7 +128,7 @@
+
+ if 'strategy' in kwargs.keys():
+ strategy = upper(kwargs.get('strategy'))
+- if strategy not in ['AUTO', 'UNSYMMETRIC', 'SYMMETRIC', '2BY2']:
++ if strategy not in ['AUTO', 'UNSYMMETRIC', 'SYMMETRIC']:
+ strategy = 'AUTO'
+ kwargs['strategy'] = 'UMFPACK_STRATEGY_' + strategy
+
+--- a/Test/testUmfpack.py
++++ b/Test/testUmfpack.py
+@@ -52,11 +52,6 @@
+ self.LU.solve(self.b)
+ self.failUnless(self.computeError(self.LU.sol) < self.tol)
+
+- def test2by2(self):
+- self.LU = PysparseUmfpackSolver(self.A, strategy='2by2')
+- self.LU.solve(self.b)
+- self.failUnless(self.computeError(self.LU.sol) < self.tol)
+-
+ def testNoScaling(self):
+ self.LU = PysparseUmfpackSolver(self.A, scale='none')
+ self.LU.solve(self.b)
+@@ -114,11 +109,6 @@
+ self.LU.solve(self.b)
+ self.failUnless(self.computeError(self.LU.sol) < self.tol)
+
+- def testPoisson1d2by2(self):
+- self.LU = PysparseUmfpackSolver(self.B, strategy='2by2')
+- self.LU.solve(self.b)
+- self.failUnless(self.computeError(self.LU.sol) < self.tol)
+-
+ def testPoisson1dNoScaling(self):
+ self.LU = PysparseUmfpackSolver(self.B, scale='none')
+ self.LU.solve(self.b)
+@@ -180,11 +170,6 @@
+ self.LU.solve(self.b)
+ self.failUnless(self.computeError(self.LU.sol) < self.tol)
+
+- def testPoisson2d2by2(self):
+- self.LU = PysparseUmfpackSolver(self.B, strategy='2by2')
+- self.LU.solve(self.b)
+- self.failUnless(self.computeError(self.LU.sol) < self.tol)
+-
+ def testPoisson2dNoScaling(self):
+ self.LU = PysparseUmfpackSolver(self.B, scale='none')
+ self.LU.solve(self.b)
diff --git a/debian/patches/superlu-4.3.patch b/debian/patches/superlu-4.3.patch
new file mode 100644
index 0000000..07147bf
--- /dev/null
+++ b/debian/patches/superlu-4.3.patch
@@ -0,0 +1,18 @@
+Description: Fix FTBFS against superlu 4.3
+ The tolerance argument to dgstrf() has been dropped in superlu.
+Author: Sébastien Villemot <sebastien at debian.org>
+Forwarded: no
+Last-Update: 2014-03-03
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/Src/superlu3module.c
++++ b/Src/superlu3module.c
+@@ -267,7 +267,7 @@ static PyObject *newSuperLUObject(int n,
+ //printf("Factorizing with drop_tol = %g\n", drop_tol);
+ /* Perform factorization (perm_c and perm_r are swapped because our matrix
+ * is stored in compressed-row format and not in compressed-column format! */
+- dgstrf(&self->options, &AC, drop_tol, relax, panel_size,
++ dgstrf(&self->options, &AC, relax, panel_size,
+ etree, NULL, 0, self->perm_c, self->perm_r,
+ &self->L, &self->U, &self->stat, &info);
+
diff --git a/debian/patches/use-debian-libs.patch b/debian/patches/use-debian-libs.patch
new file mode 100644
index 0000000..3645cbc
--- /dev/null
+++ b/debian/patches/use-debian-libs.patch
@@ -0,0 +1,56 @@
+Tell pysparse to use built-in Debian suitesparse and superlu libraries.
+
+--- pysparse-1.1/setup.py~ 2009-09-29 17:54:21.000000000 -0400
++++ pysparse-1.1/setup.py 2009-09-29 18:06:15.000000000 -0400
+@@ -18,40 +18,40 @@
+ compily=[]
+
+ # Specify whether to link against user's SuperLU library
+-use_users_superlu = False #True
++use_users_superlu = True
+ umfpack_defs = [('DINT', 1), ('NBLAS', 1)] # No BLAS. Ok if using your system's BLAS.
+ #umfpack_defs = [('DINT', 1), ('CBLAS', 1)] # with atlas c-blas (http://math-atlas.sf.net)
+
+ if use_users_superlu:
+ # Specify location of include files
+- superlu_include_dirs = ['/Users/dpo/local/linalg/SuperLU/SuperLU_3.1/SRC']
++ superlu_include_dirs = ['/usr/include/superlu']
+ # AND specify ONE of the following:
+ # 1) Location of source files (overrides linking with existing library)
+- superlu_src_dir = '/Users/dpo/local/linalg/SuperLU/SuperLU_3.1/SRC'
++ superlu_src_dir = ''
+ # 2) Location of precompiled library
+ superlu_lib_dir = ['']
+- superlu_libraries = ['']
++ superlu_libraries = ['superlu']
+
+ # Specify whether to link against user's UMFPACK library
+-use_users_umfpack = False #True
++use_users_umfpack = True
+ if use_users_umfpack:
+ # Specify location of include files
+- umfpack_include_dirs = ['/Users/dpo/local/linalg/UMFPACK/UMFPACK/Include']
++ umfpack_include_dirs = ['/usr/include/suitesparse']
+ # AND specify ONE of the following:
+ # 1) Location of source files (overrides linking with existing library)
+- umfpack_src_dir = '/Users/dpo/local/linalg/UMFPACK/UMFPACK/Source'
++ umfpack_src_dir = ''
+ # 2) Location of precompiled library
+ umfpack_lib_dir = ['']
+- umfpack_libraries = ['']
++ umfpack_libraries = ['umfpack']
+
+ # Do the same for AMD
+- amd_include_dirs = ['/Users/dpo/local/linalg/UMFPACK/AMD/Include']
++ amd_include_dirs = ['/usr/include/suitesparse']
+ # AND specify ONE of the following:
+ # 1) Location of source files (overrides linking with existing library)
+- amd_src_dir = '/Users/dpo/local/linalg/UMFPACK/AMD/Source'
++ amd_src_dir = ''
+ # 2) Location of precompiled library
+ amd_lib_dir = ['']
+- amd_libraries = ['']
++ amd_libraries = ['amd']
+
+ else:
+ umfpack_libraries = []
diff --git a/debian/python-sparse-examples.doc-base b/debian/python-sparse-examples.doc-base
new file mode 100644
index 0000000..164e843
--- /dev/null
+++ b/debian/python-sparse-examples.doc-base
@@ -0,0 +1,12 @@
+Document: python-sparse
+Title: PySparse - a sparse linear algebra extension for Python
+Author: Roman Geus
+Abstract: PySparse provides a set of sparse matrix types for python, with
+ modules which implement: Iterative methods for solving linear systems of
+ equations; A set of standard preconditioners; An interface to a direct solver
+ for sparse linear systems of equations; The JDSYM eigensolver. All of these
+ modules are implemented as C extension modules for maximum performance.
+Section: Apps/Programming
+
+Format: pdf
+Files: /usr/share/doc/python-sparse-examples/spmatrix_manual.pdf
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..2fa2af5
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,136 @@
+#!/usr/bin/make -f
+# -*- mode: makefile -*-
+# Made with the aid of debmake, by Christoph Lameter,
+# based on the sample debian/rules file for GNU hello by Ian Jackson.
+
+export SHELL = /bin/bash
+
+# all versions
+PYVERS := $(filter-out 2.3, $(shell pyversions -vs))
+PYVERS := $(shell pyversions -vs)
+PYVER := $(shell python -c 'import sys; print sys.version[:3]')
+
+PYSITE = usr/lib/python$(PYVER)/site-packages
+
+p_sps = python-sparse
+p_exa = python-sparse-examples
+
+d_sps = debian/$(p_sps)
+
+d_exa = debian/$(p_exa)
+
+QUILT := quilt --quiltrc debian/patches/quiltrc
+
+DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH)
+
+build: stamp-patch stamp-build
+stamp-build: $(PYVERS:%=stamp-build-%)
+ touch $@
+
+stamp-build-%:
+ dh_testdir
+ python$* ./setup.py build
+ touch $@
+
+stamp-patch:
+ dh_testdir
+ $(QUILT) push -a || test $$? = 2
+ touch $@
+
+unpatch:
+ dh_testdir
+ if [ -e .pc ]; then \
+ $(QUILT) pop -a -R || test $$? = 2; \
+ rm -f patch-stamp; \
+ fi
+
+clean: unpatch
+ dh_testdir
+ dh_testroot
+ rm -f stamp-*
+ -rm -rf `find -name build -type d`
+
+ dh_clean
+
+install: build pre-install $(PYVERS:%=stamp-install-%)
+pre-install:
+ dh_testdir
+ dh_testroot
+ dh_clean -k
+ dh_installdirs
+
+stamp-install-%: stamp-build-%
+ python$* setup.py install --prefix=`pwd`/debian/python-sparse/usr --install-layout=deb
+
+ -find debian/python-sparse -name '*.py[co]' | xargs rm -f
+
+ : # Replace all '#!' calls to python with python
+ : # and make them executable
+ for i in `find debian/python-sparse -type f`; do \
+ sed '1s,#!.*python[^ ]*\(.*\),#! /usr/bin/python\1,' \
+ $$i > $$i.temp; \
+ if cmp --quiet $$i $$i.temp; then \
+ rm -f $$i.temp; \
+ else \
+ mv -f $$i.temp $$i; \
+ chmod 755 $$i; \
+ echo "fixed interpreter: $$i"; \
+ fi; \
+ done
+
+binary-indep: build install
+ dh_testdir
+ dh_testroot
+
+ dh_installdirs -p$(p_exa) $(PYSITE) usr/share/doc/$(p_exa)
+
+ dh_installdocs -p$(p_sps) README
+ dh_installdocs -i -X$(p_sps)
+ dh_installchangelogs -i CHANGES
+
+ install -d $(d_exa)/$(PYSITE)/SparsExamples
+ cp -a Examples/* $(d_exa)/$(PYSITE)/SparsExamples
+ install -m 644 Doc/spmatrix_manual.pdf $(d_exa)/usr/share/doc/$(p_exa)/
+
+ : # Replace all '#!' calls to python with python
+ : # and make them executable
+ for i in `find $(d_exa) -type f`; do \
+ sed '1s,#!.*python[^ ]*\(.*\),#! /usr/bin/python\1,' \
+ $$i > $$i.temp; \
+ if cmp --quiet $$i $$i.temp; then \
+ rm -f $$i.temp; \
+ else \
+ mv -f $$i.temp $$i; \
+ chmod 755 $$i; \
+ echo "fixed interpreter: $$i"; \
+ fi; \
+ done
+
+ dh_compress -i -X.py -X.pik -X.pdf -X.css
+ dh_python2 -i
+ dh_fixperms -i
+ dh_installdeb -i
+ dh_gencontrol -i
+ dh_md5sums -i
+ dh_builddeb -i
+
+binary-arch: build install
+ dh_testdir
+ dh_testroot
+
+ dh_installdocs -p$(p_sps) README
+
+ dh_installchangelogs -a CHANGES
+ dh_strip -a
+ dh_compress -a -X.py
+ dh_python2 -a
+ dh_fixperms -a
+ dh_installdeb -a
+ dh_shlibdeps -a
+ dh_gencontrol -a
+ dh_md5sums -a
+ dh_builddeb -a
+
+binary: binary-arch binary-indep
+
+.PHONY: binary binary-arch binary-indep clean
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 0000000..231b592
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,2 @@
+version=2
+http://sf.net/pysparse/pysparse-(.+)\.tar\.gz
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/pysparse.git
More information about the debian-science-commits
mailing list