[SCM] Packaging for getfem++ branch, master, updated. c4edb51d371a4d4119028c696f8289dc82e6ba07

Anton Gladky gladky.anton at gmail.com
Tue Jan 17 20:55:55 UTC 2012


The following commit has been merged in the master branch:
commit 789654feb3e7bbaf953f1424ddf7f2b6d60e2733
Author: Anton Gladky <gladky.anton at gmail.com>
Date:   Tue Jan 17 21:39:26 2012 +0100

    Add debian-directory.

diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..2039082
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,28 @@
+getfem++ (4.0.0-4) unstable; urgency=low
+
+  * Missing dependency on python-numpy
+  * Standards-Version updated to 3.8.4
+  * Package moved to Debian Science
+  * ${misc:Depends} missing for libgetfem++-dev
+
+ -- Sylvestre Ledru <sylvestre at debian.org>  Fri, 19 Mar 2010 15:21:51 +0100
+
+getfem++ (4.0.0-3) unstable; urgency=low
+
+  * Fix broken superlu interface in libgmm++-dev (Closes: #552709)
+
+ -- Konstantinos Poulios <poulios.konstantinos at gmail.com>  Tue, 22 Dec 2009 14:41:24 +0100
+
+getfem++ (4.0.0-2) unstable; urgency=low
+
+  * Rebuild with python-support (>= 1.0.4). See #549283.
+  * debian/control (Build-Depends): add version restriction (>= 1.0.4)
+    to python-support
+
+ -- Konstantinos Poulios <poulios.konstantinos at gmail.com>  Fri, 09 Oct 2009 12:51:52 +0200
+
+getfem++ (4.0.0-1) unstable; urgency=low
+
+  * Initial release (Closes: #453065)
+
+ -- Konstantinos Poulios <poulios.konstantinos at gmail.com>  Tue, 29 Sep 2009 13:34:52 +0200
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..7f8f011
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+7
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..9734c0b
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,77 @@
+Source: getfem++
+Priority: extra
+Maintainer: Debian Science Team <debian-science-maintainers at lists.alioth.debian.org>
+Uploaders: Konstantinos Poulios <poulios.konstantinos at gmail.com>
+Build-Depends: debhelper (>= 7),
+    autotools-dev, libtool, automake, autoconf, quilt (>= 0.46-4),
+    libblas-dev, libboost-dev, libqhull-dev, libsuperlu3-dev,
+    python-numpy, python-all-dev, python-support (>= 1.0.4)
+XS-Python-Version: all
+Standards-Version: 3.8.4
+Section: libs
+Homepage: http://home.gna.org/getfem/
+Vcs-Svn: svn://svn.debian.org/svn/debian-science/packages/getfem++/
+Vcs-Browser: http://svn.debian.org/wsvn/debian-science/packages/getfem++/
+
+Package: libgetfem4++
+Section: libs
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: GETFEM++ generic finite element library
+ GETFEM++ is a library allowing the computation of any elementary matrix (even
+ for mixed finite element methods) on the largest class of methods and elements,
+ and for arbitrary dimension.
+
+
+Package: libgetfem++-dbg
+Section: debug
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, libgetfem4++ (= ${binary:Version})
+Description: Debugging symbols for the GETFEM++ generic finite element library
+ GETFEM++ is a library allowing the computation of any elementary matrix (even
+ for mixed finite element methods) on the largest class of methods and elements,
+ and for arbitrary dimension.
+ .
+ This package contains debugging files used to investigate problems with
+ binaries included in the GETFEM++ packages.
+
+
+Package: libgetfem++-dev
+Section: libdevel
+Architecture: any
+Depends: ${misc:Depends}, libgetfem4++ (= ${binary:Version}), libboost-dev
+Description: Development files for the GETFEM++ generic finite element library
+ GETFEM++ is a library allowing the computation of any elementary matrix (even
+ for mixed finite element methods) on the largest class of methods and elements,
+ and for arbitrary dimension.
+ .
+ This package contains development files for building software that uses the
+ GETFEM++ library.
+
+
+Package: libgmm++-dev
+Section: libdevel
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: Generic C++ template library for sparse, dense and skyline matrices
+ GMM++ is a framework of pre-defined methods for matrix computation. It is built
+ as a set of generic algorithms for any interfaced vector type or matrix type.
+ .
+ It can be viewed as a glue library allowing cooperation between several vector
+ and matrix types. However, basic sparse, dense and skyline matrix/vector types
+ are built-in, hence it can be used as a standalone linear algebra library.
+
+
+Package: python-getfem++
+Section: python
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends},
+    libgetfem4++ (= ${binary:Version}), python-numpy
+XB-Python-Version: ${python:Versions}
+Provides: ${python:Provides}
+Description: Python interface to the GETFEM++ generic finite element library
+ GETFEM++ is a library allowing the computation of any elementary matrix (even
+ for mixed finite element methods) on the largest class of methods and elements,
+ and for arbitrary dimension.
+ .
+ This package contains the Python interface to GETFEM++.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..205623e
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,154 @@
+Format-Specification: http://svn.debian.org/wsvn/dep/web/deps/dep5.mdwn?op=file&rev=REVISION
+Name: GETFEM++
+Maintainer: Yves Renard <Yves.Renard at insa-lyon.fr>
+            Julien Pommier <Julien.Pommier at insa-toulouse.fr>
+
+Source: http://home.gna.org/getfem/
+
+Copyright: 1995-2009, Yves Renard <Yves.Renard at insa-lyon.fr>
+           2000-2009, Julien Pommier <Julien.Pommier at insa-toulouse.fr>
+           2001-2009, Jeremie Lasry
+           2002-2009, Vanessa Lleras
+           2002-2008, Michel Salaün
+           2002-2008, Houari Khenous
+           2002-2008, Jean-Yves Heddebaut
+           Thorsten Ottosen
+License: LGPL-2.1+
+ On Debian systems the full text of the GNU Lesser General Public
+ License can be found in the `/usr/share/common-licenses/LGPL'
+ file.
+
+Files: internal_tools/simplexification_refelt.cc
+Copyright: 2002-2009, Yves Renard <Yves.Renard at insa-lyon.fr>
+           2002-2009, Julien Pommier <Julien.Pommier at insa-toulouse.fr>
+License: LGPL-2.1
+ On Debian systems the full text of the GNU Lesser General Public
+ License can be found in the `/usr/share/common-licenses/LGPL-2.1'
+ file.
+
+Files: contrib/icare/icare.cc
+Copyright: 2002-2009, Michel Fournié
+           2002-2009, Nicolas Renon
+           2002-2009, Nicolas Roux
+License: LGPL-2.1
+ On Debian systems the full text of the GNU Lesser General Public
+ License can be found in the `/usr/share/common-licenses/LGPL-2.1'
+ file.
+
+Files: src/gmm/gmm_dense_lu.h
+       src/gmm/gmm_precond_ildlt.h
+       src/gmm/gmm_precond_ilu.h
+       src/gmm/gmm_precond_mr_approx_inverse.h
+       src/gmm/gmm_solver_bicgstab.h
+       src/gmm/gmm_solver_cg.h
+       src/gmm/gmm_solver_gmres.h
+       src/gmm/gmm_solver_qmr.h
+Copyright: 1997-2001, The Trustees of Indiana University
+           1997-2008, Yves Renard
+License: BSD and LGPL-2.1+
+ On Debian systems the full text of the Berkeley software distribution
+ License can be found in the `/usr/share/common-licenses/BSD' file.
+ On Debian systems the full text of the GNU Lesser General Public
+ License can be found in the `/usr/share/common-licenses/LGPL-2.1'
+ file.
+
+Files: superlu/*
+Copyright: 1987-1990, John Gilbert
+           1992-1994, Univ. of Tennessee
+           1992-1994, NAG Ltd.
+           1992-1994, Courant Institute
+           1992-1994, Argonne National Lab
+           1992-1994, Rice University
+           1994, Xerox Corporation
+           1992-2003, Univ. of California Berkeley
+           1997-2003, Xerox Palo Alto Research Center
+           1997-2003, Lawrence Berkeley National Lab
+           1998-2003, University of Florida
+License: BSD and BSD/superlu and Xerox
+ On Debian systems the full text of the Berkeley software distribution
+ License can be found in the `/usr/share/common-licenses/BSD' file.
+
+Files: src/getfem_boost/*
+Copyright: 1999-2003, Beman Dawes
+           2001-2002, Peter Dimov
+           2002, David Abrahams
+License: Boost-1.0
+
+Files: debian/*
+Copyright: 2009, Konstantinos Poulios
+License: GPL
+ On Debian systems the full text of the GNU General Public
+ License can be found in the `/usr/share/common-licenses/GPL'
+ file.
+
+
+License: BSD/superlu
+ The Regents of the University of California, through Lawrence Berkeley National
+ Laboratory (subject to receipt of any required approvals from U.S. Dept. of
+ Energy)
+
+ All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without modification,
+ are permitted provided that the following conditions are met:
+
+ (1) Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ (2) 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.
+ (3) Neither the name of Lawrence Berkeley National Laboratory, U.S. Dept. of
+ Energy 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.
+
+
+License: Xerox
+ 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.
+
+
+License: Boost-1.0
+ Boost Software License - Version 1.0 - August 17th, 2003
+
+ Permission is hereby granted, free of charge, to any person or organization
+ obtaining a copy of the software and accompanying documentation covered by
+ this license (the "Software") to use, reproduce, display, distribute,
+ execute, and transmit the Software, and to prepare derivative works of the
+ Software, and to permit third-parties to whom the Software is furnished to
+ do so, all subject to the following:
+
+ The copyright notices in the Software and this entire statement, including
+ the above license grant, this restriction and the following disclaimer,
+ must be included in all copies of the Software, in whole or in part, and
+ all derivative works of the Software, unless such copies or derivative
+ works are solely in the form of machine-executable object code generated by
+ a source language processor.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
+ SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
+ FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
+ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ DEALINGS IN THE SOFTWARE.
+
diff --git a/debian/docs b/debian/docs
new file mode 100644
index 0000000..5203c23
--- /dev/null
+++ b/debian/docs
@@ -0,0 +1,3 @@
+BUGS
+NEWS
+README
diff --git a/debian/libgetfem++-dev.install b/debian/libgetfem++-dev.install
new file mode 100644
index 0000000..192080f
--- /dev/null
+++ b/debian/libgetfem++-dev.install
@@ -0,0 +1,6 @@
+usr/bin/getfem-config
+usr/include/getfem
+usr/include/getfem_boost
+usr/lib/libgetfem.so
+usr/lib/libgetfem.a
+usr/lib/libgetfem.la
diff --git a/debian/libgetfem4++.install b/debian/libgetfem4++.install
new file mode 100644
index 0000000..eec7936
--- /dev/null
+++ b/debian/libgetfem4++.install
@@ -0,0 +1 @@
+usr/lib/libgetfem.so.4*
diff --git a/debian/libgmm++-dev.install b/debian/libgmm++-dev.install
new file mode 100644
index 0000000..e345ed8
--- /dev/null
+++ b/debian/libgmm++-dev.install
@@ -0,0 +1 @@
+usr/include/gmm/
diff --git a/debian/patches/gmm_superlu_interface.patch b/debian/patches/gmm_superlu_interface.patch
new file mode 100644
index 0000000..b075153
--- /dev/null
+++ b/debian/patches/gmm_superlu_interface.patch
@@ -0,0 +1,27 @@
+--- getfem-4.0.0/src/gmm/gmm_superlu_interface.h.orig	2009-02-21 17:29:49.000000000 +0100
++++ getfem-4.0.0/src/gmm/gmm_superlu_interface.h	2009-12-08 09:53:44.816055000 +0100
+@@ -195,8 +195,8 @@ namespace gmm {
+     StatInit(&stat);
+ 
+     SuperMatrix SA, SL, SU, SB, SX; // SuperLU format.
+-    Create_CompCol_Matrix(&SA, m, n, nz, csc_A.pr,
+-			  (int *)(csc_A.ir), (int *)(csc_A.jc));
++    Create_CompCol_Matrix(&SA, m, n, nz, (double *)(&(csc_A.pr[0])),
++			  (int *)(&(csc_A.ir[0])), (int *)(&(csc_A.jc[0])));
+     Create_Dense_Matrix(&SB, m, nrhs, &rhs[0], m);
+     Create_Dense_Matrix(&SX, m, nrhs, &sol[0], m);
+     memset(&SL,0,sizeof SL);
+@@ -314,9 +314,10 @@ namespace gmm {
+       case 3 : options.ColPerm = COLAMD; break;
+       }
+       StatInit(&stat);
+-      
+-      Create_CompCol_Matrix(&SA, m, n, nz, csc_A.pr,
+-			    (int *)(csc_A.ir), (int *)(csc_A.jc));
++
++      Create_CompCol_Matrix(&SA, m, n, nz, (double *)(&(csc_A.pr[0])),
++			    (int *)(&(csc_A.ir[0])), (int *)(&(csc_A.jc[0])));
++
+       Create_Dense_Matrix(&SB, m, 0, &rhs[0], m);
+       Create_Dense_Matrix(&SX, m, 0, &sol[0], m);
+       memset(&SL,0,sizeof SL);
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..9555702
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1 @@
+gmm_superlu_interface.patch
diff --git a/debian/python-getfem++.install b/debian/python-getfem++.install
new file mode 100644
index 0000000..3fb9379
--- /dev/null
+++ b/debian/python-getfem++.install
@@ -0,0 +1,2 @@
+usr/lib/python*/*-packages/getfem/*.so
+usr/lib/python*/*-packages/getfem/*.py
diff --git a/debian/pyversions b/debian/pyversions
new file mode 100644
index 0000000..b3dc41e
--- /dev/null
+++ b/debian/pyversions
@@ -0,0 +1 @@
+2.5-
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..62b1e72
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,126 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+# Sample debian/rules that uses debhelper.
+# This file was originally written by Joey Hess and Craig Small.
+# As a special exception, when this file is copied by dh-make into a
+# dh-make output file, you may use that output file without restriction.
+# This special exception was added by Craig Small in version 0.37 of dh-make.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+
+# These are used for cross-compiling and for saving the configure script
+# from having to guess our platform (since we know it already)
+DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE))
+CROSS= --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE)
+else
+CROSS= --build $(DEB_BUILD_GNU_TYPE)
+endif
+
+
+PYVERS=$(shell pyversions -vr)
+
+configure_flags= $(CROSS) --prefix=/usr \
+		--enable-boost --enable-shared --with-pic \
+		--enable-python --disable-matlab --disable-superlu \
+		CFLAGS="$(CFLAGS)"
+
+
+# shared library versions, option 1
+version=4.0.0
+major=4
+# option 2, assuming the library is created as src/.libs/libfoo.so.2.0.5 or so
+#version=`ls src/.libs/lib*.so.* | \
+# awk '{if (match($$0,/[0-9]+\.[0-9]+\.[0-9]+$$/)) print substr($$0,RSTART)}'`
+#major=`ls src/.libs/lib*.so.* | \
+# awk '{if (match($$0,/\.so\.[0-9]+$$/)) print substr($$0,RSTART+4)}'`
+
+configure: configure-stamp
+configure-stamp:
+	dh_testdir
+	QUILT_PATCHES=debian/patches quilt push -a || test $$? = 2
+	# Add here commands to configure the package.
+	aclocal -I ./m4
+	libtoolize -f
+	autoheader
+	autoreconf
+	autoconf
+	automake -a --gnu `find . -name Makefile.am | sed -e 's@\./\(.*\)\.am@\1 at g'`
+	./configure $(configure_flags)
+
+	touch configure-stamp
+
+
+build: build-stamp
+build-stamp: configure-stamp  
+	dh_testdir
+
+	# Add here commands to compile the package.
+	$(MAKE)
+
+	touch $@
+
+clean: 
+	dh_testdir
+	dh_testroot
+	rm -f build-stamp configure-stamp
+	QUILT_PATCHES=debian/patches quilt pop -a -R || test $$? = 2
+
+	# Add here commands to clean up after the build process.
+	[ ! -f Makefile ] || $(MAKE) clean
+
+	dh_clean 
+
+install: build
+	dh_testdir
+	dh_testroot
+	dh_prep
+	dh_installdirs
+
+	# Add here commands to install the package into debian/tmp
+	$(MAKE) DESTDIR=$(CURDIR)/debian/tmp install
+
+
+# Build architecture-independent files here.
+binary-indep: install
+	dh_testdir
+	dh_testroot
+	dh_installchangelogs -i ChangeLog
+	dh_installdocs -i
+	dh_installexamples -i #not really needed
+	dh_install -i --list-missing --sourcedir=debian/tmp
+#	dh_installman -i
+	dh_compress -i
+	dh_fixperms -i
+	dh_installdeb -i
+	dh_gencontrol -i
+	dh_md5sums -i
+	dh_builddeb -i
+
+# Build architecture-dependent files here.
+binary-arch: install
+	dh_testdir
+	dh_testroot
+	dh_installchangelogs -a ChangeLog
+	dh_installdocs -a
+	dh_installexamples -a #not really needed
+	dh_install -a --list-missing --sourcedir=debian/tmp
+#	dh_installman -a
+	dh_link -a
+	dh_strip -a --dbg-package=libgetfem++-dbg
+	dh_compress -a
+	dh_fixperms -a
+	dh_pysupport --package=python-getfem++
+	dh_makeshlibs -a
+	dh_installdeb -a
+	dh_shlibdeps -a
+	dh_gencontrol -a
+	dh_md5sums -a
+	dh_builddeb -a
+
+binary: binary-indep binary-arch
+
+.PHONY: build clean binary-indep binary-arch binary install configure
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 0000000..73dbb1f
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,2 @@
+version=3
+http://download.gna.org/getfem/stable/getfem-([\d.]+)\.tar\.gz

-- 
Packaging for getfem++



More information about the debian-science-commits mailing list