[petsc] 02/05: update lintian overrides and python dependencies

Drew Parsons dparsons at moszumanska.debian.org
Thu Oct 8 02:44:43 UTC 2015


This is an automated email from the git hooks/post-receive script.

dparsons pushed a commit to branch master
in repository petsc.

commit cbb569d647d87dec796bb077d667abacd6ea3f4b
Author: Drew Parsons <dparsons at debian.org>
Date:   Mon Oct 5 17:19:38 2015 +0800

    update lintian overrides and python dependencies
    
    Depends: ${python:Depends} together with dh --with-python2 should be
    able to set a sensible python dependency.
    
    libpetsc.so links are managed by alternatives.
---
 debian/control                                | 17 ++++++++++-------
 debian/libpetsc-complex-3.6.2-dev.postinst    |  3 ++-
 debian/libpetsc-complex-3.6.2-dev.prerm       |  2 +-
 debian/libpetsc-complex-3.6.lintian-overrides | 10 ++++++++++
 debian/libpetsc-complex-3.6.prerm             | 12 ++++++++++++
 debian/libpetsc3.6.2-dbg.overrides            |  2 --
 debian/libpetsc3.6.2-dbg.postinst             | 13 ++++++++-----
 debian/libpetsc3.6.2-dbg.prerm                |  2 +-
 debian/libpetsc3.6.2-dev.postinst             |  3 ++-
 debian/libpetsc3.6.2-dev.prerm                |  2 +-
 debian/libpetsc3.6.lintian-overrides          |  5 +++++
 debian/libpetsc3.6.overrides                  |  2 --
 debian/libpetsc3.6.prerm                      | 12 ++++++++++++
 debian/rules                                  | 15 ++++++++++-----
 14 files changed, 74 insertions(+), 26 deletions(-)

diff --git a/debian/control b/debian/control
index 1c6e994..73b754a 100644
--- a/debian/control
+++ b/debian/control
@@ -5,7 +5,7 @@ Maintainer: Debian Science Maintainers <debian-science-maintainers at lists.alioth.
 Uploaders: "Adam C. Powell, IV" <hazelsct at debian.org>, Drew Parsons <dparsons at debian.org>
 Standards-Version: 3.9.6
 Build-Depends: debhelper (>= 9), quilt, python (>= 2.2), gfortran, 
- autotools-dev, pkg-config,
+ autotools-dev, pkg-config, dh-python,
  mpi-default-dev (>= 1.0.2),
  libblas-dev, liblapack-dev,
  libsuitesparse-dev (>= 1:4.2.1),
@@ -19,13 +19,14 @@ Vcs-Browser: http://anonscm.debian.org/gitweb/?p=debian-science/packages/petsc.g
 Homepage: http://www.mcs.anl.gov/petsc
 
 Package: libpetsc3.6.2-dev
+Multi-Arch: same
 Architecture: linux-any hurd-any
 Section: libdevel
 Depends: libpetsc3.6 (= ${binary:Version}), mpi-default-dev (>= 1.0.2), libsuitesparse-dev, libsuperlu-dev, libspooles-dev,
  libhypre-dev (>= 2.0.0.dfsg-7), libptscotch-dev, ${misc:Depends}, libblacs-mpi-dev, libscalapack-mpi-dev,
- libmumps-dev, libfftw3-dev, libfftw3-mpi-dev
+ libmumps-dev, libfftw3-dev, libfftw3-mpi-dev, ${python:Depends}
 Recommends: libhdf5-mpi-dev (>= 1.8.8), libssl-dev,
- python, tcsh | csh | c-shell, ksh | mksh | pdksh | zsh
+ tcsh | csh | c-shell, ksh | mksh | pdksh | zsh
 Suggests: petsc-dev (= ${binary:Version}), libpetsc3.6.2-dbg (= ${binary:Version}), petsc3.6.2-doc (= ${binary:Version}), libluminate-dev
 Provides: petsc3.6.2-dev
 Description: Static libraries, shared links, header files for PETSc
@@ -76,8 +77,9 @@ Architecture: linux-any hurd-any
 Multi-Arch: same
 Section: debug
 Pre-Depends: ${misc:Pre-Depends}
-Depends: libpetsc3.6.2-dev (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}
-Recommends: python, tcsh | csh | c-shell, ksh | mksh | pdksh | zsh
+Depends: libpetsc3.6.2-dev (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends},
+ ${python:Depends}
+Recommends: tcsh | csh | c-shell, ksh | mksh | pdksh | zsh
 Provides: petsc3.6.2-dbg
 Description: Static debugging libraries for PETSc
  PETSc is the "Portable Extensible Toolkit for Scientific Computation", a suite
@@ -110,12 +112,13 @@ Description: Documentation and examples for PETSc
 
 Package: libpetsc-complex-3.6.2-dev
 Architecture: linux-any hurd-any
+Multi-Arch: same
 Section: libdevel
 Depends: libpetsc-complex-3.6 (= ${binary:Version}), mpi-default-dev (>= 1.0.2), libsuitesparse-dev, libsuperlu-dev, libspooles-dev,
  libhypre-dev (>= 2.0.0.dfsg-7), libptscotch-dev, ${misc:Depends}, libblacs-mpi-dev, libscalapack-mpi-dev,
- libmumps-dev, libfftw3-dev, libfftw3-mpi-dev
+ libmumps-dev, libfftw3-dev, libfftw3-mpi-dev, ${python:Depends}
 Recommends: libhdf5-mpi-dev (>= 1.8.8), libssl-dev,
- python, tcsh | csh | c-shell, ksh | mksh | pdksh | zsh
+ tcsh | csh | c-shell, ksh | mksh | pdksh | zsh
 Suggests: petsc-dev (= ${binary:Version}), libpetsc3.6.2-dbg (= ${binary:Version}), petsc3.6.2-doc (= ${binary:Version}), libluminate-dev
 Provides: petsc-complex-3.6.2-dev
 Description: Static libraries, shared links, header files for PETSc
diff --git a/debian/libpetsc-complex-3.6.2-dev.postinst b/debian/libpetsc-complex-3.6.2-dev.postinst
index facb950..f78b9d5 100644
--- a/debian/libpetsc-complex-3.6.2-dev.postinst
+++ b/debian/libpetsc-complex-3.6.2-dev.postinst
@@ -9,7 +9,8 @@ PETSC_COMPLEX_ARCH=${PETSC_ARCH}-complex
 # Make alternatives links
 if [ "$1" = "configure" ]; then
 update-alternatives --install /usr/lib/petsc petsc /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_COMPLEX_ARCH} 3620 \
-  --slave /usr/lib/${DEB_HOST_MULTIARCH}/libpetsc.so libpetsc.so /usr/lib/${DEB_HOST_MULTIARCH}/libpetsc-complex.so.${PETSC_VERSION} \
+  --slave /usr/lib/libpetsc.so libpetsc.so /usr/lib/${DEB_HOST_MULTIARCH}/libpetsc-complex.so.${PETSC_VERSION} \
+  --slave /usr/lib/${DEB_HOST_MULTIARCH}/libpetsc.so libpetsc.so.multiarch /usr/lib/${DEB_HOST_MULTIARCH}/libpetsc-complex.so.${PETSC_VERSION} \
   --slave /usr/include/petsc petscinclude /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_COMPLEX_ARCH}/include \
   --slave /usr/lib/pkgconfig/PETSc.pc PETSc.pc /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_COMPLEX_ARCH}/lib/pkgconfig/PETSc.pc \
   --slave /usr/share/octave/site/m/petsc petsc-octave /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_COMPLEX_ARCH}/share/petsc/matlab
diff --git a/debian/libpetsc-complex-3.6.2-dev.prerm b/debian/libpetsc-complex-3.6.2-dev.prerm
index 167dbb1..066a26e 100644
--- a/debian/libpetsc-complex-3.6.2-dev.prerm
+++ b/debian/libpetsc-complex-3.6.2-dev.prerm
@@ -2,7 +2,7 @@
 
 # Remove alternatives links
 if [ "$1" = "remove" ]; then
-  update-alternatives --remove petsc /usr/lib/petsc
+  update-alternatives --remove-all petsc
 fi
 
 #DEBHELPER#
diff --git a/debian/libpetsc-complex-3.6.lintian-overrides b/debian/libpetsc-complex-3.6.lintian-overrides
new file mode 100644
index 0000000..01e3fd0
--- /dev/null
+++ b/debian/libpetsc-complex-3.6.lintian-overrides
@@ -0,0 +1,10 @@
+# libpetsc-complex-3.6 provides an alternative (libpetc.so.3.6) for libpetsc3.6
+libpetsc-complex-3.6: package-name-doesnt-match-sonames libpetsc3.6
+
+# libpetsc.so.3.6 soname links are managed by alternatives (libpetc.so.3.6)
+libpetsc-complex-3.6: ldconfig-symlink-missing-for-shlib usr/lib/x86_64-linux-gnu/libpetsc.so.3.6 usr/lib/x86_64-linux-gnu/libpetsc-complex.so.3.6.2 libpetsc.so.3.6
+
+# the libpetsc.so link is managed by alternatives in libpetsc-complex-3.6.2-dev (alternative petsc)
+libpetsc-complex-3.6: dev-pkg-without-shlib-symlink usr/lib/x86_64-linux-gnu/libpetsc-complex.so.3.6.2 usr/lib/x86_64-linux-gnu/libpetsc.so
+
+
diff --git a/debian/libpetsc-complex-3.6.prerm b/debian/libpetsc-complex-3.6.prerm
new file mode 100644
index 0000000..f2cb867
--- /dev/null
+++ b/debian/libpetsc-complex-3.6.prerm
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+# Remove alternatives links
+if [ "$1" = "remove" ]; then
+  PETSC_VERSION=__PETSC_VERSION__
+  # use only major.minor as general soname (rather than major.minor.patch.build)
+  SONAME=$( echo ${PETSC_VERSION} | awk 'BEGIN { FS="."}; {print $1"."$2 }' )
+
+  update-alternatives --remove-all libpetsc.so.${SONAME}
+fi
+
+#DEBHELPER#
diff --git a/debian/libpetsc3.6.2-dbg.overrides b/debian/libpetsc3.6.2-dbg.overrides
deleted file mode 100644
index 8ddaeb5..0000000
--- a/debian/libpetsc3.6.2-dbg.overrides
+++ /dev/null
@@ -1,2 +0,0 @@
-# False positive: the copyright notice is somewhat buried in the upstream text
-libpetsc3.6.2-dbg: copyright-without-copyright-notice
diff --git a/debian/libpetsc3.6.2-dbg.postinst b/debian/libpetsc3.6.2-dbg.postinst
index 90f1293..cc58c2a 100644
--- a/debian/libpetsc3.6.2-dbg.postinst
+++ b/debian/libpetsc3.6.2-dbg.postinst
@@ -3,14 +3,17 @@
 DEB_HOST_MULTIARCH=__DEB_HOST_MULTIARCH__
 
 PETSC_VERSION=__PETSC_VERSION__
-PETSC_ARCH=${DEB_HOST_MULTIARCH}-debug
+PETSC_ARCH=${DEB_HOST_MULTIARCH}
+PETSC_DEBUG_ARCH=${PETSC_ARCH}-debug
 
 # Make alternatives links
 if [ "$1" = "configure" ]; then
-update-alternatives --install /usr/lib/petsc petsc /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_ARCH} 361 \
-  --slave /usr/include/petsc petscinclude /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_ARCH}/include \
-  --slave /usr/lib/libpetsc.so libpetsc.so /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_ARCH}/lib/libpetsc.so.${PETSC_VERSION} \
-  --slave /usr/lib/pkgconfig/PETSc.pc PETSc.pc /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_ARCH}/lib/pkgconfig/PETSc.pc
+update-alternatives --install /usr/lib/petsc petsc /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_DEBUG_ARCH} 362 \
+  --slave /usr/lib/libpetsc.so libpetsc.so /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_DEBUG_ARCH}/lib/libpetsc.so.${PETSC_VERSION} \
+  --slave /usr/lib/${DEB_HOST_MULTIARCH}/libpetsc.so libpetsc.so.multiarch /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_DEBUG_ARCH}/lib/libpetsc.so.${PETSC_VERSION} \
+  --slave /usr/include/petsc petscinclude /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_DEBUG_ARCH}/include \
+  --slave /usr/lib/pkgconfig/PETSc.pc PETSc.pc /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_DEBUG_ARCH}/lib/pkgconfig/PETSc.pc \
+  --slave /usr/share/octave/site/m/petsc petsc-octave /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_DEBUG_ARCH}/share/petsc/matlab
 fi
 
 
diff --git a/debian/libpetsc3.6.2-dbg.prerm b/debian/libpetsc3.6.2-dbg.prerm
index 167dbb1..066a26e 100644
--- a/debian/libpetsc3.6.2-dbg.prerm
+++ b/debian/libpetsc3.6.2-dbg.prerm
@@ -2,7 +2,7 @@
 
 # Remove alternatives links
 if [ "$1" = "remove" ]; then
-  update-alternatives --remove petsc /usr/lib/petsc
+  update-alternatives --remove-all petsc
 fi
 
 #DEBHELPER#
diff --git a/debian/libpetsc3.6.2-dev.postinst b/debian/libpetsc3.6.2-dev.postinst
index 189f303..be9d067 100644
--- a/debian/libpetsc3.6.2-dev.postinst
+++ b/debian/libpetsc3.6.2-dev.postinst
@@ -9,7 +9,8 @@ PETSC_REAL_ARCH=${PETSC_ARCH}-real
 # Make alternatives links
 if [ "$1" = "configure" ]; then
 update-alternatives --install /usr/lib/petsc petsc /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_REAL_ARCH} 3622 \
-  --slave /usr/lib/${DEB_HOST_MULTIARCH}/libpetsc.so libpetsc.so /usr/lib/${DEB_HOST_MULTIARCH}/libpetsc-real.so.${PETSC_VERSION} \
+  --slave /usr/lib/libpetsc.so libpetsc.so /usr/lib/${DEB_HOST_MULTIARCH}/libpetsc-real.so.${PETSC_VERSION} \
+  --slave /usr/lib/${DEB_HOST_MULTIARCH}/libpetsc.so libpetsc.so.multiarch /usr/lib/${DEB_HOST_MULTIARCH}/libpetsc-real.so.${PETSC_VERSION} \
   --slave /usr/include/petsc petscinclude /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_REAL_ARCH}/include \
   --slave /usr/lib/pkgconfig/PETSc.pc PETSc.pc /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_REAL_ARCH}/lib/pkgconfig/PETSc.pc \
   --slave /usr/share/octave/site/m/petsc petsc-octave /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_REAL_ARCH}/share/petsc/matlab
diff --git a/debian/libpetsc3.6.2-dev.prerm b/debian/libpetsc3.6.2-dev.prerm
index 167dbb1..066a26e 100644
--- a/debian/libpetsc3.6.2-dev.prerm
+++ b/debian/libpetsc3.6.2-dev.prerm
@@ -2,7 +2,7 @@
 
 # Remove alternatives links
 if [ "$1" = "remove" ]; then
-  update-alternatives --remove petsc /usr/lib/petsc
+  update-alternatives --remove-all petsc
 fi
 
 #DEBHELPER#
diff --git a/debian/libpetsc3.6.lintian-overrides b/debian/libpetsc3.6.lintian-overrides
new file mode 100644
index 0000000..3f882c5
--- /dev/null
+++ b/debian/libpetsc3.6.lintian-overrides
@@ -0,0 +1,5 @@
+# libpetsc.so.3.6 soname links are managed by alternatives (libpetc.so.3.6)
+libpetsc3.6: ldconfig-symlink-missing-for-shlib usr/lib/x86_64-linux-gnu/libpetsc.so.3.6 usr/lib/x86_64-linux-gnu/libpetsc-real.so.3.6.2 libpetsc.so.3.6
+
+# the libpetsc.so link is managed by alternatives in libpetsc3.6.2-dev (alternative petsc)
+libpetsc3.6: dev-pkg-without-shlib-symlink usr/lib/x86_64-linux-gnu/libpetsc-real.so.3.6.2 usr/lib/x86_64-linux-gnu/libpetsc.so
diff --git a/debian/libpetsc3.6.overrides b/debian/libpetsc3.6.overrides
deleted file mode 100644
index 61fd4b8..0000000
--- a/debian/libpetsc3.6.overrides
+++ /dev/null
@@ -1,2 +0,0 @@
-# False positive: the copyright notice is somewhat buried in the upstream text
-libpetsc3.6: copyright-without-copyright-notice
diff --git a/debian/libpetsc3.6.prerm b/debian/libpetsc3.6.prerm
new file mode 100644
index 0000000..f2cb867
--- /dev/null
+++ b/debian/libpetsc3.6.prerm
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+# Remove alternatives links
+if [ "$1" = "remove" ]; then
+  PETSC_VERSION=__PETSC_VERSION__
+  # use only major.minor as general soname (rather than major.minor.patch.build)
+  SONAME=$( echo ${PETSC_VERSION} | awk 'BEGIN { FS="."}; {print $1"."$2 }' )
+
+  update-alternatives --remove-all libpetsc.so.${SONAME}
+fi
+
+#DEBHELPER#
diff --git a/debian/rules b/debian/rules
index b585a18..b62d4ab 100755
--- a/debian/rules
+++ b/debian/rules
@@ -39,7 +39,7 @@ PETSC_MPI_DIR=/usr/lib/$(PETSC_MPI)
 
 PETSC_HDF5_FLAGS=$(shell if [ -e /usr/lib/libhdf5.so ]; then echo "--with-hdf5=1 --with-hdf5-dir=/usr"; fi)
 
-PETSC_BUILD_DIR=$(PETSC_ARCH)
+PETSC_BUILD_DIR=$(PETSC_ARCH)-real
 PETSC_DEBUG_BUILD_DIR=$(PETSC_ARCH)-debug
 PETSC_COMPLEX_BUILD_DIR=$(PETSC_ARCH)-complex
 
@@ -70,11 +70,11 @@ PETSC_DIR_PREFIX=/usr/lib/petscdir/$(PETSC_VERSION)/$(PETSC_ARCH)-real
 PETSC_DIR_DEBUG_PREFIX=/usr/lib/petscdir/$(PETSC_VERSION)/$(PETSC_ARCH)-debug
 PETSC_COMPLEX_DIR_PREFIX=/usr/lib/petscdir/$(PETSC_VERSION)/$(PETSC_ARCH)-complex
 
-PACKAGE_INSTALL_BASEDIR=debian/tmp/$(PETSC_NAME)
+PACKAGE_INSTALL_BASEDIR=debian/tmp/$(PETSC_NAME)-real
 PACKAGE_INSTALL_DIR=$(PACKAGE_INSTALL_BASEDIR)/$(PETSC_DIR_PREFIX)
-PACKAGE_DEBUG_INSTALL_BASEDIR=debian/tmp/$(PETSC_NAME)-dbg
+PACKAGE_DEBUG_INSTALL_BASEDIR=debian/tmp/$(PETSC_NAME)-debug
 PACKAGE_DEBUG_INSTALL_DIR=$(PACKAGE_DEBUG_INSTALL_BASEDIR)/$(PETSC_DIR_DEBUG_PREFIX)
-PACKAGE_COMPLEX_INSTALL_BASEDIR=debian/tmp/$(PETSC_COMPLEX_NAME)
+PACKAGE_COMPLEX_INSTALL_BASEDIR=debian/tmp/$(PETSC_NAME)-complex
 PACKAGE_COMPLEX_INSTALL_DIR=$(PACKAGE_COMPLEX_INSTALL_BASEDIR)/$(PETSC_COMPLEX_DIR_PREFIX)
 
 CONFIGURATION_OPTIONS=--with-shared-libraries \
@@ -95,7 +95,7 @@ CONFIGURATION_OPTIONS=--with-shared-libraries \
 
 # main packaging script based on dh7 syntax
 %:
-	dh $@ 
+	dh $@ --with python2
 
 
 override_dh_auto_clean:
@@ -202,6 +202,11 @@ override_dh_installdocs:
 override_dh_installchangelogs:
 	dh_installchangelogs --exclude=docs/changes
 
+override_dh_python2:
+	dh_python2
+	dh_python2 -p$(PETSC_VERSIONED_DEV_PACKAGE) $(PETSC_DIR_PREFIX)/bin
+	dh_python2 -p$(PETSC_DEBUG_PACKAGE) $(PETSC_DIR_DEBUG_PREFIX)/bin
+	dh_python2 -p$(PETSC_COMPLEX_VERSIONED_DEV_PACKAGE) $(PETSC_COMPLEX_DIR_PREFIX)/bin
 
 override_dh_installdeb:
 	dh_installdeb

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/petsc.git



More information about the debian-science-commits mailing list