[petsc] 01/07: update build dependencies and debian files

Drew Parsons dparsons at moszumanska.debian.org
Thu Oct 1 18:32:29 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 a09daf80d25f332a794c051c7c52d0041d074dcf
Author: Drew Parsons <dparsons at debian.org>
Date:   Thu Oct 1 18:10:25 2015 +0800

    update build dependencies and debian files
    
    Remove build-conflicts with atlas. Atlas doesn't seem to interfere
    with the build.
---
 debian/control                                     |  8 ++---
 debian/libpetsc3.6.1-dbg.postinst                  | 16 ++++++++++
 debian/libpetsc3.6.1-dbg.prerm                     |  8 +++++
 ...tsc3.6.1-dev.docs.in => libpetsc3.6.1-dev.docs} |  0
 debian/libpetsc3.6.1-dev.postinst                  | 16 ++++++++++
 debian/libpetsc3.6.1-dev.postinst.in               | 34 ----------------------
 debian/libpetsc3.6.1-dev.prerm                     |  8 +++++
 debian/libpetsc3.6.1-dev.prerm.in                  | 13 ---------
 debian/rules                                       | 18 ++++++++----
 9 files changed, 64 insertions(+), 57 deletions(-)

diff --git a/debian/control b/debian/control
index 788bb64..8430bdf 100644
--- a/debian/control
+++ b/debian/control
@@ -5,14 +5,13 @@ 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.5
 Build-Depends: debhelper (>= 9), quilt, python (>= 2.2), gfortran, autotools-dev,
- libx11-dev, mpi-default-dev (>= 1.0.2),
+ mpi-default-dev (>= 1.0.2),
  libblas-dev, liblapack-dev,
  libsuitesparse-dev (>= 1:4.2.1),
  libspooles-dev (>= 2.2-6), libhypre-dev (>= 2.4.0), libptscotch-dev,
  libhdf5-mpi-dev (>= 1.8.8),
  libblacs-mpi-dev, libscalapack-mpi-dev, libmumps-dev,
- libfftw3-dev, libfftw3-mpi-dev
-Build-Conflicts: libatlas3-base, libatlas-base-dev, lam4-dev
+ libfftw3-dev, libfftw3-mpi-dev, libssl-dev
 Vcs-Git: git://anonscm.debian.org/debian-science/packages/petsc.git
 Vcs-Browser: http://anonscm.debian.org/gitweb/?p=debian-science/packages/petsc.git
 Homepage: http://www.mcs.anl.gov/petsc
@@ -20,9 +19,10 @@ Homepage: http://www.mcs.anl.gov/petsc
 Package: libpetsc3.6.1-dev
 Architecture: linux-any hurd-any
 Section: libdevel
-Depends: libpetsc3.6.1 (= ${binary:Version}), libx11-dev, libsuitesparse-dev, libsuperlu-dev, libspooles-dev,
+Depends: libpetsc3.6.1 (= ${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
+Recommends: libhdf5-mpi-dev (>= 1.8.8), libssl-dev
 Suggests: petsc-dev (= ${binary:Version}), libpetsc3.6.1-dbg (= ${binary:Version}), petsc3.6.1-doc (= ${binary:Version}), libluminate-dev
 Provides: petsc3.6.1-dev
 Description: Static libraries, shared links, header files for PETSc
diff --git a/debian/libpetsc3.6.1-dbg.postinst b/debian/libpetsc3.6.1-dbg.postinst
new file mode 100644
index 0000000..cee1ed7
--- /dev/null
+++ b/debian/libpetsc3.6.1-dbg.postinst
@@ -0,0 +1,16 @@
+#!/bin/sh -e
+
+DEB_HOST_MULTIARCH=__DEB_HOST_MULTIARCH__
+
+PETSC_VERSION=__PETSC_VERSION__
+PETSC_ARCH=${DEB_HOST_MULTIARCH}-cxx-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}
+fi
+
+
+#DEBHELPER#
diff --git a/debian/libpetsc3.6.1-dbg.prerm b/debian/libpetsc3.6.1-dbg.prerm
new file mode 100644
index 0000000..167dbb1
--- /dev/null
+++ b/debian/libpetsc3.6.1-dbg.prerm
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+# Remove alternatives links
+if [ "$1" = "remove" ]; then
+  update-alternatives --remove petsc /usr/lib/petsc
+fi
+
+#DEBHELPER#
diff --git a/debian/libpetsc3.6.1-dev.docs.in b/debian/libpetsc3.6.1-dev.docs
similarity index 100%
rename from debian/libpetsc3.6.1-dev.docs.in
rename to debian/libpetsc3.6.1-dev.docs
diff --git a/debian/libpetsc3.6.1-dev.postinst b/debian/libpetsc3.6.1-dev.postinst
new file mode 100644
index 0000000..24cd2ba
--- /dev/null
+++ b/debian/libpetsc3.6.1-dev.postinst
@@ -0,0 +1,16 @@
+#!/bin/sh -e
+
+DEB_HOST_MULTIARCH=__DEB_HOST_MULTIARCH__
+
+PETSC_VERSION=__PETSC_VERSION__
+PETSC_ARCH=${DEB_HOST_MULTIARCH}-cxx-opt
+
+# Make alternatives links
+if [ "$1" = "configure" ]; then
+update-alternatives --install /usr/lib/petsc petsc /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_ARCH} 3610 \
+  --slave /usr/include/petsc petscinclude /usr/lib/petscdir/${PETSC_VERSION}/${PETSC_ARCH}/include \
+  --slave /usr/lib/libpetsc.so libpetsc.so /usr/lib/${DEB_HOST_MULTIARCH}/libpetsc.so.${PETSC_VERSION}
+fi
+
+
+#DEBHELPER#
diff --git a/debian/libpetsc3.6.1-dev.postinst.in b/debian/libpetsc3.6.1-dev.postinst.in
deleted file mode 100644
index efbb036..0000000
--- a/debian/libpetsc3.6.1-dev.postinst.in
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/sh -e
-
-# Make alternatives links
-if [ "$1" = "configure" ]; then
-install -d /usr/share/aclocal
-update-alternatives --install /usr/lib/petsc petsc /usr/lib/petscdir/petsc_ver 3420 \
-  --slave /usr/bin/petscarch petscarch /usr/lib/petscdir/petsc_ver/bin/petscarch \
-  --slave /usr/bin/mpirun_lam mpirun_lam /usr/lib/petscdir/petsc_ver/bin/mpirun_lam \
-  --slave /usr/share/man/man1/petscarch.1.gz petscarch.1.gz /usr/lib/petscdir/petsc_ver/bin/petscarch.1.gz \
-  --slave /usr/share/man/man1/mpirun_lam.1.gz mpirun_lam.1.gz /usr/lib/petscdir/petsc_ver/bin/mpirun_lam.1.gz \
-  --slave /usr/include/petsc petscinclude /usr/lib/petscdir/petsc_ver/include \
-  --slave /usr/share/aclocal/petsc.m4 petsc.m4 /usr/lib/petscdir/petsc_ver/aclocal/petsc.m4 \
-  --slave /usr/lib/libpetsc.a libpetsc.a /usr/lib/petscdir/petsc_ver/lib/libO/libpetsc.a \
-  --slave /usr/lib/libpetsc.so libpetsc.so /usr/lib/libpetsc.so.petsc_ver \
-  --slave /usr/lib/libpetscdm.a libpetscdm.a /usr/lib/petscdir/petsc_ver/lib/libO/libpetsc.a \
-  --slave /usr/lib/libpetscdm.so libpetscdm.so /usr/lib/libpetsc.so.petsc_ver \
-  --slave /usr/lib/libpetscfortran.a libpetscfortran.a /usr/lib/petscdir/petsc_ver/lib/libO/libpetsc.a \
-  --slave /usr/lib/libpetscmat.a libpetscmat.a /usr/lib/petscdir/petsc_ver/lib/libO/libpetsc.a \
-  --slave /usr/lib/libpetscmat.so libpetscmat.so /usr/lib/libpetsc.so.petsc_ver \
-  --slave /usr/lib/libpetscksp.a libpetscksp.a /usr/lib/petscdir/petsc_ver/lib/libO/libpetsc.a \
-  --slave /usr/lib/libpetscksp.so libpetscksp.so /usr/lib/libpetsc.so.petsc_ver \
-  --slave /usr/lib/libpetscsnes.a libpetscsnes.a /usr/lib/petscdir/petsc_ver/lib/libO/libpetsc.a \
-  --slave /usr/lib/libpetscsnes.so libpetscsnes.so /usr/lib/libpetsc.so.petsc_ver \
-  --slave /usr/lib/libpetscts.a libpetscts.a /usr/lib/petscdir/petsc_ver/lib/libO/libpetsc.a \
-  --slave /usr/lib/libpetscts.so libpetscts.so /usr/lib/libpetsc.so.petsc_ver \
-  --slave /usr/lib/libpetscvec.a libpetscvec.a /usr/lib/petscdir/petsc_ver/lib/libO/libpetsc.a \
-  --slave /usr/lib/libpetscvec.so libpetscvec.so /usr/lib/libpetsc.so.petsc_ver
-
-update-alternatives --install /usr/share/aclocal/math-blaslapack.m4 math-blaslapack.m4 /usr/lib/petscdir/petsc_ver/aclocal/math-blaslapack.m4 1
-
-fi
-
-
-#DEBHELPER#
diff --git a/debian/libpetsc3.6.1-dev.prerm b/debian/libpetsc3.6.1-dev.prerm
new file mode 100644
index 0000000..167dbb1
--- /dev/null
+++ b/debian/libpetsc3.6.1-dev.prerm
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+# Remove alternatives links
+if [ "$1" = "remove" ]; then
+  update-alternatives --remove petsc /usr/lib/petsc
+fi
+
+#DEBHELPER#
diff --git a/debian/libpetsc3.6.1-dev.prerm.in b/debian/libpetsc3.6.1-dev.prerm.in
deleted file mode 100644
index a23038c..0000000
--- a/debian/libpetsc3.6.1-dev.prerm.in
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/bin/sh -e
-
-# Remove alternatives links
-if [ "$1" = "remove" ]; then
-  update-alternatives --remove petsc /usr/lib/petscdir/petsc_ver
-  update-alternatives --remove math-blaslapack.m4 /usr/lib/petscdir/petsc_ver/aclocal/math-blaslapack.m4
-  # Somewhat inelegant, but there's no test for empty dir
-  if [ -z "`ls /usr/share/aclocal`" ]; then
-    rmdir /usr/share/aclocal
-  fi
-fi
-
-#DEBHELPER#
diff --git a/debian/rules b/debian/rules
index 18683de..4920329 100755
--- a/debian/rules
+++ b/debian/rules
@@ -19,7 +19,6 @@ include /usr/share/dpkg/default.mk
 # Overriding this with "contrib" attempts to link with parmetis (unimplemented).
 DEBIAN_DIST=main
 
-DEB_HOST_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
 DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
 
 # On Alpha, override this with debian/rules PETSC_ARCH=linux_alpha_dec binary
@@ -57,9 +56,10 @@ PETSC_VERSIONED_PACKAGE=lib$(PETSC_NAME)
 PETSC_DEBUG_PACKAGE=lib$(PETSC_NAME)-dbg
 PETSC_DOC_PACKAGE=$(PETSC_NAME)-doc
 
-
-PETSC_DIR_PREFIX=/usr/lib/petsc/$(PETSC_VERSION)/$(PETSC_ARCH)-cxx-opt
-PETSC_DIR_DEBUG_PREFIX=/usr/lib/petsc/$(PETSC_VERSION)/$(PETSC_ARCH)-cxx-debug
+# install into /usr/lib/petscdir rather than /usr/lib/petsc 
+# to allow /usr/lib/petsc to be configured by alternatives
+PETSC_DIR_PREFIX=/usr/lib/petscdir/$(PETSC_VERSION)/$(PETSC_ARCH)-cxx-opt
+PETSC_DIR_DEBUG_PREFIX=/usr/lib/petscdir/$(PETSC_VERSION)/$(PETSC_ARCH)-cxx-debug
 
 PACKAGE_INSTALL_BASEDIR=debian/tmp/$(PETSC_NAME)
 PACKAGE_INSTALL_DIR=$(PACKAGE_INSTALL_BASEDIR)/$(PETSC_DIR_PREFIX)
@@ -85,7 +85,7 @@ CONFIGURATION_OPTIONS=--with-shared-libraries \
 	  --with-ptscotch=1 --with-ptscotch-include=/usr/include/scotch \
 	  --with-ptscotch-lib=[/usr/lib/libptesmumps.so,/usr/lib/libptscotch.so,/usr/lib/libptscotcherr.so] \
 	  --with-fftw=1 --with-fftw-include=/usr/include \
-	  --with-fftw-lib=[/usr/lib/$(DEB_HOST_GNU_TYPE)/libfftw3.so,/usr/lib/$(DEB_HOST_GNU_TYPE)/libfftw3_mpi.so] \
+	  --with-fftw-lib=[/usr/lib/$(DEB_HOST_MULTIARCH)/libfftw3.so,/usr/lib/$(DEB_HOST_MULTIARCH)/libfftw3_mpi.so] \
 	  $(PETSC_HDF5_FLAGS) --CXX_LINKER_FLAGS="-Wl,--no-as-needed" 
 
 
@@ -142,7 +142,7 @@ override_dh_auto_install:
 override_dh_install:
 	dh_install -p$(PETSC_VERSIONED_PACKAGE) --sourcedir $(PACKAGE_INSTALL_BASEDIR) --exclude=*html  $(PETSC_DIR_PREFIX)/lib/libpetsc.so.$(PETSC_VERSION)  usr/lib/$(DEB_HOST_MULTIARCH)
 	dh_install -p$(PETSC_VERSIONED_DEV_PACKAGE) --sourcedir $(PACKAGE_INSTALL_BASEDIR) --autodest --exclude=*html --exclude=libpetsc.so.$(PETSC_VERSION)  usr
-	dh_link -p$(PETSC_VERSIONED_DEV_PACKAGE)  usr/lib/$(DEB_HOST_MULTIARCH)/libpetsc.so.$(PETSC_VERSION)  $(PETSC_DIR_PREFIX)/lib/libpetsc.so.$(PETSC_VERSION) 
+	dh_link -p$(PETSC_VERSIONED_DEV_PACKAGE)  usr/lib/$(DEB_HOST_MULTIARCH)/libpetsc.so.$(PETSC_VERSION)  $(PETSC_DIR_PREFIX)/lib/libpetsc.so.$(PETSC_VERSION)
 	dh_install -p$(PETSC_DEBUG_PACKAGE) --sourcedir $(PACKAGE_DEBUG_INSTALL_BASEDIR) --autodest --exclude=*html  usr
 
 
@@ -156,6 +156,12 @@ override_dh_installdocs:
 override_dh_installchangelogs:
 	dh_installchangelogs --exclude=docs/changes
 
+override_dh_installdeb:
+	dh_installdeb
+	for pkg in $$(dh_listpackages -a); do \
+	  sed -i -e 's/__PETSC_VERSION__/$(PETSC_VERSION)/; s/__DEB_HOST_MULTIARCH__/$(DEB_HOST_MULTIARCH)/' debian/$$pkg/DEBIAN/*; \
+	done
+
 
 DEB_SOURCE_PACKAGE = petsc
 DEB_UPSTREAM_VERSION = $(shell dpkg-parsechangelog | sed -ne 's/^Version: \(.*\)-.*/\1/p')

-- 
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