Followup-For: Bug #924452
Control: tag -1 patch

Hi,

attached is my attempt to modernize the alternatives (and clean up some
more bits). I've quickly tested upgrading in a chroot and it didn't
explode immediately.


Andreas
diff -Nru lam-7.1.4/debian/changelog lam-7.1.4/debian/changelog
--- lam-7.1.4/debian/changelog  2014-03-15 03:47:33.000000000 +0100
+++ lam-7.1.4/debian/changelog  2019-03-13 08:58:21.000000000 +0100
@@ -1,3 +1,17 @@
+lam (7.1.4-3.2) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Drop Conflicts/Replaces against packages predating oldoldstable.
+  * Remove maintainer script code for upgrades from ancient versions.
+  * Convert to Multi-Arch.
+  * Add Breaks against openmpi/mpich using old-style mpi alternatives.
+  * Align mpi alternatives with openmpi/mpich.  (Closes: #924452, #922633)
+  * Support parallel build, thanks to Aron Xu.  (Closes: #721437)
+  * Switch to Priority: optional.
+  * Whitespace cleanup.
+
+ -- Andreas Beckmann <a...@debian.org>  Wed, 13 Mar 2019 08:58:21 +0100
+
 lam (7.1.4-3.1) unstable; urgency=medium
 
   * Non-maintainer upload.
@@ -23,8 +37,8 @@
 
   * New upstream release
   * Bug fix: "typo in /etc/lam/lam-helpfile (hreq:timeout should be
-    rhreq:timeout)", thanks to Sergio Gelato (Closes: #495182).  
-    Applied hreq->rhreq in lam-helpfile 
+    rhreq:timeout)", thanks to Sergio Gelato (Closes: #495182).
+    Applied hreq->rhreq in lam-helpfile
   * Bug fix: "Suggest a specific ssh-client and ssh-server in Depends",
     thanks to Adam C Powell IV (Closes: #574002).  Dependencies modified
     to suggest openssh client/server.
@@ -100,7 +114,7 @@
 lam (7.1.2-1) unstable; urgency=low
 
   * New upstream release, Closes: #362168
-  * Accept NMU, Closes: #359118. Closes: #355245. 
+  * Accept NMU, Closes: #359118. Closes: #355245.
     Closes: #335721. Closes: #337843. Closes: #331881.
   * Update README.Debian, Closes: #360226
   * Add mpiexec to alternatives, Closes: #384065.
@@ -160,11 +174,11 @@
 
   * Non-maintainer upload.
   * share/boot/asc_run.c: Re-enable stdin for rank 0, accidently disabled in
-    7.1.1.  Pulled from upstream revision 9923 of branch-7-1 
+    7.1.1.  Pulled from upstream revision 9923 of branch-7-1
     (closes: #308554).
 
  -- Torsten Landschoff <tors...@debian.org>  Fri, 24 Jun 2005 22:16:52 +0200
-    
+
 lam (7.1.1-3) unstable; urgency=high
 
   * Bug fix: "lam4-dev: /usr/include/lam/mpi++.h is a dangling symlink",
@@ -595,24 +609,24 @@
 
   * Updated upstream-shipped config.guess and config.sub to latest from
   automake (closing #55908)
-  * Included 6.3.1 changes to configure.in to make sure correct compile 
-  flags are used on all systems.  (Previously released binaries were 
+  * Included 6.3.1 changes to configure.in to make sure correct compile
+  flags are used on all systems.  (Previously released binaries were
   correctly compiled anyway.)
 
  -- Camm Maguire <c...@enhanced.com>  Mon, 24 Jan 2000 14:31:25 -0500
 
 lam (6.3-6) unstable; urgency=low
 
-  * Moved sweep and manpage to lamsweep to avoid name conflict with 
+  * Moved sweep and manpage to lamsweep to avoid name conflict with
   geomview (closes #54699)
-  * Added upstream suggested #if !HAVE_IEEE_FP/#endif around all of 
+  * Added upstream suggested #if !HAVE_IEEE_FP/#endif around all of
   ieee.c to allow compilation on Debian sparc (closes #51871)
 
  -- Camm Maguire <c...@enhanced.com>  Wed, 12 Jan 2000 16:47:00 -0500
 
 lam (6.3-5) unstable; urgency=low
 
-  * Moved priority to extra, in keeping with policy descriptions, and 
+  * Moved priority to extra, in keeping with policy descriptions, and
   to make dependency on rsh work
 
  -- Camm Maguire <c...@enhanced.com>  Wed,  8 Dec 1999 15:58:37 -0500
@@ -630,8 +644,8 @@
     hcc,hcp,hf77,balky
   * Separated alternatives into devel set governed by mpi ->
     /usr/include/lam, and runtime set governed by mpirun ->
-    /usr/bin/mpirun_lam 
-  * Removed libmpi.so.2 and libmpi++.so.2 from alternatives, 
+    /usr/bin/mpirun_lam
+  * Removed libmpi.so.2 and libmpi++.so.2 from alternatives,
     as not used by system anyway
 
  -- Camm Maguire <c...@enhanced.com>  Tue, 30 Nov 1999 13:59:51 -0500
@@ -838,10 +852,6 @@
   * debian/rules sets config link back to sparc on clean
   * debian/rules sets config link to linux on build
   * Lam home set to /usr/lib/lam
-  * 
-  * 
   * Initial Release.
 
  -- Camm Maguire <c...@enhanced.com>  Tue, 15 Dec 1998 17:48:49 -0500
-
-
diff -Nru lam-7.1.4/debian/control lam-7.1.4/debian/control
--- lam-7.1.4/debian/control    2014-03-15 03:45:39.000000000 +0100
+++ lam-7.1.4/debian/control    2019-03-13 08:58:21.000000000 +0100
@@ -1,30 +1,38 @@
 Source: lam
 Section: devel
-Priority: extra
+Priority: optional
 Maintainer: Camm Maguire <c...@debian.org>
-Build-Depends: debhelper (>= 
4.1.16),gfortran,texinfo,autotools-dev,help2man,libltdl-dev
+Build-Depends:
+ debhelper (>= 5),
+ gfortran,
+ texinfo,
+ autotools-dev,
+ help2man,
+ libltdl-dev,
 Standards-Version: 3.9.3
 
 Package: lam-mpidoc
 Section: doc
 Architecture: all
-Conflicts: mpi-doc
-Replaces: mpi-doc
 Depends: ${misc:Depends}
 Description: Documentation for the Message Passing Interface standard
- This package contains man pages describing the Message Passing 
- Interface standard.  
+ This package contains man pages describing the Message Passing
+ Interface standard.
  .
  These pages are newly provided by the LAM package, and are also found
  in the mpi-doc package build from the mpich source package.
 
 Package: lam4-dev
-Section: devel
 Architecture: any
 Depends: liblam4 (= ${binary:Version}), libc6-dev,${misc:Depends}
 Provides: lam-dev
-Conflicts: lam-dev,lam,lam1-dev,mpi-doc (<< 1.2.7-4),lam-runtime (<= 7.1.2-2)
-Replaces: lam-dev,lam,lam1-dev,lam2-dev,lam3-dev,lam-runtime (<= 7.1.2-2)
+Conflicts: lam-dev
+Replaces: lam-dev
+Breaks:
+ libopenmpi-dev (<< 3.0.1~rc1-2),
+ openmpi-bin (<< 3.0.1~rc1-2),
+ mpich (<< 3.3~a3-2),
+ libmpich-dev (<< 3.3~a3-2),
 Description: Development of parallel programs using LAM
  LAM (Local Area Multicomputer) is an open source implementation of the
  Message Passing Interface (MPI) standard.
@@ -34,11 +42,14 @@
 Package: liblam4
 Section: libs
 Architecture: any
+Multi-Arch: same
 Depends: ${shlibs:Depends},${misc:Depends}
-Provides: mpi
-Conflicts: lam,lam1,lam4,lam4c2
-Replaces: lam,lam1,lam4,lam4c2
 Recommends: lam-runtime
+Breaks:
+ libopenmpi-dev (<< 3.0.1~rc1-2),
+ openmpi-bin (<< 3.0.1~rc1-2),
+ mpich (<< 3.3~a3-2),
+ libmpich-dev (<< 3.3~a3-2),
 Description: Shared libraries used by LAM parallel programs
  LAM (Local Area Multicomputer) is an open source implementation of the
  Message Passing Interface (MPI) standard.
@@ -48,28 +59,25 @@
 Package: lam-runtime
 Section: utils
 Architecture: any
-Conflicts: lam1-runtime,lam,lam4-dev (<= 7.1.2-2)
-Replaces: lam1-runtime,lam,lam4-dev (<= 7.1.2-2)
 Depends: ${shlibs:Depends},openssh-client | ssh-client | 
rsh-client,openssh-server | ssh-server | rsh-server,${misc:Depends}
 Description: LAM runtime environment for executing parallel programs
  LAM (Local Area Multicomputer) is an open source implementation of the
  Message Passing Interface (MPI) standard.
  .
- Some enhancements in LAM 6.3 are: 
-  o Added the MPI-2 C++ bindings package (chapter 10 from the MPI-2 
-      standard) from the Laboratory for Scientific Computing at the 
-      University of Notre Dame. 
-  o Added ROMIO MPI I/O package (chapter 9 from the MPI-2 standard) 
-      from the Argonne National Laboratory. 
-  o Pseudo-tty support for remote IO (e.g., line buffered output). 
-  o Ability to pass environment variables through mpirun. 
-  o Ability to mpirun shell scripts/debuggers/etc. (that eventually 
-      run LAM/MPI programs). 
-  o Ability to execute non-MPI programs across the multicomputer. 
-  o Added configurable ability to zero-fill internal LAM buffers 
-      before they are used (for development tools such as Purify). 
-  o Greatly expanded error messages; provided for customizable  
-      local help files. 
-  o Expanded and updated documentation. 
-  o Various bug fixes and minor enhancements. 
-
+ Some enhancements in LAM 6.3 are:
+  o Added the MPI-2 C++ bindings package (chapter 10 from the MPI-2
+      standard) from the Laboratory for Scientific Computing at the
+      University of Notre Dame.
+  o Added ROMIO MPI I/O package (chapter 9 from the MPI-2 standard)
+      from the Argonne National Laboratory.
+  o Pseudo-tty support for remote IO (e.g., line buffered output).
+  o Ability to pass environment variables through mpirun.
+  o Ability to mpirun shell scripts/debuggers/etc. (that eventually
+      run LAM/MPI programs).
+  o Ability to execute non-MPI programs across the multicomputer.
+  o Added configurable ability to zero-fill internal LAM buffers
+      before they are used (for development tools such as Purify).
+  o Greatly expanded error messages; provided for customizable
+      local help files.
+  o Expanded and updated documentation.
+  o Various bug fixes and minor enhancements.
diff -Nru lam-7.1.4/debian/lam4-dev.postinst lam-7.1.4/debian/lam4-dev.postinst
--- lam-7.1.4/debian/lam4-dev.postinst  2012-04-05 22:07:37.000000000 +0200
+++ lam-7.1.4/debian/lam4-dev.postinst  1970-01-01 01:00:00.000000000 +0100
@@ -1,27 +0,0 @@
-#!/bin/sh
-
-set -e 
-
-update-alternatives --install /usr/include/mpi mpi /usr/include/lam 30 \
-    --slave /usr/lib/libmpi.so libmpi.so /usr/lib/liblam.so \
-    --slave /usr/lib/libmpio.so libmpio.so /usr/lib/liblamio.so \
-    --slave /usr/lib/libmpi++.so libmpi++.so /usr/lib/liblam++.so \
-    --slave /usr/lib/libmpi.a libmpi.a /usr/lib/liblam.a \
-    --slave /usr/lib/libmpio.a libmpio.a /usr/lib/liblamio.a \
-    --slave /usr/lib/libmpi++.a libmpi++.a /usr/lib/liblam++.a \
-    --slave /usr/bin/mpicc mpicc /usr/bin/mpicc.lam \
-    --slave /usr/share/man/man1/mpicc.1.gz mpicc.1.gz 
/usr/share/man/man1/mpicc.lam.1.gz \
-    --slave /usr/bin/mpif77 mpif77 /usr/bin/mpif77.lam \
-    --slave /usr/share/man/man1/mpif77.1.gz mpif77.1.gz 
/usr/share/man/man1/mpif77.lam.1.gz \
-    --slave /usr/bin/mpiCC mpiCC /usr/bin/mpic++.lam \
-    --slave /usr/share/man/man1/mpiCC.1.gz mpiCC.1.gz 
/usr/share/man/man1/mpiCC.lam.1.gz \
-    --slave /usr/bin/mpic++ mpic++ /usr/bin/mpic++.lam \
-    --slave /usr/share/man/man1/mpic++.1.gz mpic++.1.gz 
/usr/share/man/man1/mpic++.lam.1.gz
-
-update-alternatives \
-    --install /usr/share/man/man3/MPI_Comm_set_name.3.gz 
MPI_Comm_set_name.3.gz /usr/share/man/man3/MPI_Comm_set_name_lam4-dev.3.gz 10
-
-
-#DEBHELPER#
-
-exit 0
diff -Nru lam-7.1.4/debian/lam4-dev.postinst.in 
lam-7.1.4/debian/lam4-dev.postinst.in
--- lam-7.1.4/debian/lam4-dev.postinst.in       1970-01-01 01:00:00.000000000 
+0100
+++ lam-7.1.4/debian/lam4-dev.postinst.in       2019-03-13 08:58:21.000000000 
+0100
@@ -0,0 +1,30 @@
+#!/bin/sh
+set -e 
+
+if [ "$1" = "configure" ]; then
+
+update-alternatives \
+       --install /usr/include/@DEB_HOST_MULTIARCH@/mpi         
mpi-@DEB_HOST_MULTIARCH@                /usr/include/lam        30 \
+       --slave /usr/lib/@DEB_HOST_MULTIARCH@/libmpi.so         
libmpi.so-@DEB_HOST_MULTIARCH@          /usr/lib/@DEB_HOST_MULTIARCH@/liblam.so 
\
+       --slave /usr/lib/@DEB_HOST_MULTIARCH@/libmpio.so        
libmpio.so-@DEB_HOST_MULTIARCH@         
/usr/lib/@DEB_HOST_MULTIARCH@/liblamio.so \
+       --slave /usr/lib/@DEB_HOST_MULTIARCH@/libmpi++.so       
libmpi++.so-@DEB_HOST_MULTIARCH@        
/usr/lib/@DEB_HOST_MULTIARCH@/liblam++.so \
+       --slave /usr/lib/@DEB_HOST_MULTIARCH@/libmpi.a          
libmpi.a-@DEB_HOST_MULTIARCH@           /usr/lib/@DEB_HOST_MULTIARCH@/liblam.a \
+       --slave /usr/lib/@DEB_HOST_MULTIARCH@/libmpio.a         
libmpio.a-@DEB_HOST_MULTIARCH@          
/usr/lib/@DEB_HOST_MULTIARCH@/liblamio.a \
+       --slave /usr/lib/@DEB_HOST_MULTIARCH@/libmpi++.a        
libmpi++.a-@DEB_HOST_MULTIARCH@         /usr/lib/@DEB_HOST_MULTIARCH@/liblam++.a
+
+update-alternatives \
+    --install /usr/bin/mpicc mpi /usr/bin/mpicc.lam 30 \
+    --slave /usr/share/man/man1/mpicc.1.gz mpicc.1.gz 
/usr/share/man/man1/mpicc.lam.1.gz \
+    --slave /usr/bin/mpif77 mpif77 /usr/bin/mpif77.lam \
+    --slave /usr/share/man/man1/mpif77.1.gz mpif77.1.gz 
/usr/share/man/man1/mpif77.lam.1.gz \
+    --slave /usr/bin/mpiCC mpiCC /usr/bin/mpic++.lam \
+    --slave /usr/share/man/man1/mpiCC.1.gz mpiCC.1.gz 
/usr/share/man/man1/mpiCC.lam.1.gz \
+    --slave /usr/bin/mpic++ mpic++ /usr/bin/mpic++.lam \
+    --slave /usr/share/man/man1/mpic++.1.gz mpic++.1.gz 
/usr/share/man/man1/mpic++.lam.1.gz
+
+update-alternatives \
+    --install /usr/share/man/man3/MPI_Comm_set_name.3.gz 
MPI_Comm_set_name.3.gz /usr/share/man/man3/MPI_Comm_set_name_lam4-dev.3.gz 10
+
+fi
+
+#DEBHELPER#
diff -Nru lam-7.1.4/debian/lam4-dev.preinst lam-7.1.4/debian/lam4-dev.preinst
--- lam-7.1.4/debian/lam4-dev.preinst   2012-04-05 19:28:01.000000000 +0200
+++ lam-7.1.4/debian/lam4-dev.preinst   2019-03-13 08:58:21.000000000 +0100
@@ -1,52 +1,12 @@
-#! /bin/sh
-# preinst script for #PACKAGE#
-#
-# see: dh_installdeb(1)
-
+#!/bin/sh
 set -e
 
-# summary of how this script can be called:
-#        * <new-preinst> `install'
-#        * <new-preinst> `install' <old-version>
-#        * <new-preinst> `upgrade' <old-version>
-#        * <old-preinst> `abort-upgrade' <new-version>
-
-case "$1" in
-    install|upgrade)
-#        if [ "$1" = "upgrade" ]
-#        then
-#            start-stop-daemon --stop --quiet --oknodo  \
-#                --pidfile /var/run/#PACKAGE#.pid  \
-#                --exec /usr/sbin/#PACKAGE# 2>/dev/null || true
-#        fi
-
-    if [ "$1" = "install" ] ; then
-       if [ -L /usr/lib/lam/lib ] ; then
-           rm /usr/lib/lam/lib;
-           mkdir /usr/lib/lam/lib;
-       fi
-       if [ -L /usr/include/lam/mpi2c++ ] ; then
-           rm /usr/include/lam/mpi2c++;
-           mkdir /usr/include/lam/mpi2c++;
-       fi
-    fi
-
-    ;;
-
-    abort-upgrade)
-    ;;
-
-    *)
-        echo "preinst called with unknown argument \`$1'" >&2
-        exit 0
-    ;;
-esac
+if dpkg --compare-versions "$2" lt-nl "7.1.4-3.2~"
+then
+    update-alternatives --remove mpi /usr/include/lam 
+fi
 
 # dh_installdeb will replace this with shell code automatically
 # generated by other debhelper scripts.
 
 #DEBHELPER#
-
-exit 0
-
-
diff -Nru lam-7.1.4/debian/lam4-dev.prerm lam-7.1.4/debian/lam4-dev.prerm
--- lam-7.1.4/debian/lam4-dev.prerm     2012-04-05 22:08:08.000000000 +0200
+++ lam-7.1.4/debian/lam4-dev.prerm     1970-01-01 01:00:00.000000000 +0100
@@ -1,13 +0,0 @@
-#!/bin/sh
-
-set -e 
-
-if [ "$1" != "upgrade" ]
-then
-    update-alternatives --remove mpi /usr/include/lam 
-    update-alternatives --remove MPI_Comm_set_name.3.gz 
/usr/share/man/man3/MPI_Comm_set_name_lam4-dev.3.gz
-fi
-
-#DEBHELPER#
-
-exit 0
diff -Nru lam-7.1.4/debian/lam4-dev.prerm.in lam-7.1.4/debian/lam4-dev.prerm.in
--- lam-7.1.4/debian/lam4-dev.prerm.in  1970-01-01 01:00:00.000000000 +0100
+++ lam-7.1.4/debian/lam4-dev.prerm.in  2019-03-13 08:58:21.000000000 +0100
@@ -0,0 +1,11 @@
+#!/bin/sh
+set -e 
+
+if [ "$1" != "upgrade" ]
+then
+    update-alternatives --remove mpi-@DEB_HOST_MULTIARCH@ /usr/include/lam
+    update-alternatives --remove mpi /usr/bin/mpicc.lam
+    update-alternatives --remove MPI_Comm_set_name.3.gz 
/usr/share/man/man3/MPI_Comm_set_name_lam4-dev.3.gz
+fi
+
+#DEBHELPER#
diff -Nru lam-7.1.4/debian/liblam4.postinst lam-7.1.4/debian/liblam4.postinst
--- lam-7.1.4/debian/liblam4.postinst   2012-04-05 16:02:40.000000000 +0200
+++ lam-7.1.4/debian/liblam4.postinst   1970-01-01 01:00:00.000000000 +0100
@@ -1,9 +0,0 @@
-#!/bin/sh
-
-set -e
-
-if [ "$1" = "configure" ]; then
-       ldconfig
-fi
-
-#DEBHELPER#
diff -Nru lam-7.1.4/debian/rules lam-7.1.4/debian/rules
--- lam-7.1.4/debian/rules      2012-04-06 22:36:07.000000000 +0200
+++ lam-7.1.4/debian/rules      2019-03-13 08:58:21.000000000 +0100
@@ -15,9 +15,8 @@
 version=$(shell expr `pwd` : '.*-\([0-9.]*\)')
 version_major=$(shell expr `pwd` : '.*-\([0-9]*\).[0-9.]*')
 
-# Uncomment this to turn on verbose mode. 
+# Uncomment this to turn on verbose mode.
 #export DH_VERBOSE=1
-#export DH_COMPAT=2
 
 TDIR:=$(shell pwd)
 
@@ -49,6 +48,11 @@
 export DEB_HOST_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
 export DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 export DEB_HOST_GNU_SYSTEM ?= $(shell dpkg-architecture -qDEB_HOST_GNU_SYSTEM)
+export DEB_HOST_MULTIARCH      ?= $(shell dpkg-architecture 
-qDEB_HOST_MULTIARCH)
+
+ifneq (,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS))))
+       NJOBS := -j $(subst parallel=,,$(filter parallel=%,$(subst $(COMMA), 
,$(DEB_BUILD_OPTIONS))))
+endif
 
 ARCHT:=$(shell echo $(DEB_HOST_GNU_TYPE) | cut -f1 -d-)
 OPTFLAGS:=
@@ -56,12 +60,12 @@
 OPTFLAGS:=-O2
 endif
 
-dlibs:= lam lamf77mpi lammpi++ mpi lammpio 
+dlibs:= lam lamf77mpi lammpi++ mpi lammpio
 stlibs:=$(addprefix $(STLDIR)/lib,$(addsuffix .a,$(dlibs)))
 shlibs:=$(addprefix $(SHLDIR)/lib,$(addsuffix .a,$(dlibs)))
 
 tlibs:=lam  lamio lam++
-libs: $(addprefix $(LDIR)/lib,$(addsuffix .so,$(tlibs)) $(addsuffix 
.a,$(tlibs))) 
+libs: $(addprefix $(LDIR)/lib,$(addsuffix .so,$(tlibs)) $(addsuffix 
.a,$(tlibs)))
 
 dbins:=lamclean lamexec lamgrow lamshrink lamtrace mpimsg mpirun mpiexec 
mpitask lamd tping \
        hboot lamboot laminfo lamhalt lamnodes recon tkill lamwipe   mpicc 
mpif77 mpic++
@@ -109,12 +113,12 @@
                     --build=$(DEB_BUILD_GNU_TYPE) \
                     --host=$(DEB_HOST_GNU_TYPE) \
                     --with-rsh=/usr/bin/rsh \
-                    --with-rpi=sysv 
+                    --with-rpi=sysv
 
        awk '/LAM_HAVE_OPENPTY/ {gsub("1","0")} /LAM_HAVE_SYSV_PTYS/ 
{gsub("1","0")}  {print}' \
                share/include/lam_config.h >tmp && mv tmp 
share/include/lam_config.h
 
-       $(MAKE) 
+       $(MAKE) $(NJOBS)
 
        $(MAKE) install DESTDIR=$(subst $(LAMV)/lib,,$(TDIR)/$(@D))
 
@@ -131,12 +135,12 @@
                     --host=$(DEB_HOST_GNU_TYPE) \
                     --with-rsh=/usr/bin/rsh \
                     --with-trillium \
-                    --with-rpi=sysv 
+                    --with-rpi=sysv
 
        awk '/LAM_HAVE_OPENPTY/ {gsub("1","0")} /LAM_HAVE_SYSV_PTYS/ 
{gsub("1","0")}  {print}' \
                share/include/lam_config.h >tmp && mv tmp 
share/include/lam_config.h
 
-       $(MAKE) 
+       $(MAKE)
 
        $(MAKE) install DESTDIR=$(subst $(LAMV)/bin,,$(subst 
$(LAMV)/lib,,$(TDIR)/$(@D)))
 
@@ -146,7 +150,7 @@
 
 
 $(LDIR)/liblam.so.$(VER): $(addprefix $(SHLDIR)/,liblamf77mpi.a libmpi.a 
liblam.a)
-       mkdir tmp 
+       mkdir tmp
        chmod +x debian/mar
        cd tmp && mkdir $(^F) && echo $(addprefix ../../,$^) | xargs -t -n 1 
../debian/mar
        rm -f $(addprefix tmp/libmpi.a/,$(ERM)) $(addprefix 
tmp/liblam.a/,ltdl.o)
@@ -191,7 +195,7 @@
 
 $(LDIR)/liblam.a: $(addprefix $(STLDIR)/,liblamf77mpi.a libmpi.a liblam.a )
        mkdir tmp
-       cd tmp && echo $(addprefix ../,$^) | xargs -t -n 1 ar x 
+       cd tmp && echo $(addprefix ../,$^) | xargs -t -n 1 ar x
        rm -f $@
        mkdir -p $(@D)
        ar r $@ tmp/*.o
@@ -199,7 +203,7 @@
 
 $(LDIR)/libplam.a: $(addprefix $(STLDIR)/,liblamf77mpi.a liblam.a  )
        mkdir tmp
-       cd tmp && echo $(addprefix ../,$^) | xargs -t -n 1 ar x 
+       cd tmp && echo $(addprefix ../,$^) | xargs -t -n 1 ar x
        rm -f $@
        mkdir -p $(@D)
        ar r $@ tmp/*.o
@@ -207,7 +211,7 @@
 
 $(LDIR)/liblamio.a: $(STLDIR)/liblammpio.a
        mkdir tmp
-       cd tmp && echo $(addprefix ../,$^) | xargs -t -n 1 ar x 
+       cd tmp && echo $(addprefix ../,$^) | xargs -t -n 1 ar x
        rm -f $@
        mkdir -p $(@D)
        ar r $@ tmp/*.o
@@ -215,7 +219,7 @@
 
 $(LDIR)/liblam++.a: $(STLDIR)/liblammpi++.a
        mkdir tmp
-       cd tmp && echo $(addprefix ../,$^) | xargs -t -n 1 ar x 
+       cd tmp && echo $(addprefix ../,$^) | xargs -t -n 1 ar x
        rm -f $@
        mkdir -p $(@D)
        ar r $@ tmp/*.o
@@ -280,7 +284,7 @@
 
 $(BDIR)/hcp: $(SHBDIR)/hcp
        mkdir -p $(@D)
-       install -m 755 $< $@ 
+       install -m 755 $< $@
 
 $(MPROX): $(MSRC)
        mkdir -p $$(dirname $$(dirname $(@D)))
@@ -369,7 +373,7 @@
 
 $(addprefix $(MDIR)/etc/lam/,$(CF)): $(MDIR)/etc/lam/%: $(SHLDIR)/../etc/lam-%
        mkdir -p $(@D)
-       install -m 0644 $< $@ 
+       install -m 0644 $< $@
        ln -snf $(@F) $(@D)/$(<F)
 
 $(MDIR)/etc/lam/lam-helpfile: $(SHLDIR)/../etc/lam-helpfile
@@ -385,7 +389,7 @@
        mkdir -p $(@D)
        cp -af $(<D)/* $(@D)
 
-$(MDIR)/usr/include/lam/mpi++.h: $(MDIR)/usr/include/lam/mpi.h 
+$(MDIR)/usr/include/lam/mpi++.h: $(MDIR)/usr/include/lam/mpi.h
        rm -rf $(@)
        ln -snf mpi2c++/$(@F) $@
 
@@ -432,7 +436,7 @@
                VERSION=$$(head -1l debian/changelog | cut -f2 -d\  | tr -d 
'()' | cut -f1 -d-)\
                PNAME=$* MPATH=$(<D) help2man -m LAM -s 1 -N debian/mm >$@
 
-#$(MDIR)/usr/include/lam/mpi++.h 
+#$(MDIR)/usr/include/lam/mpi++.h
 install: libs bins $(MPROX) links $(MDIR)/usr/include/lam/mpi.h \
        debian/examples/config.status lamlinks \
        $(MDIR)/usr/lib/update-cluster/lam.updatelist #$(MMAN)
@@ -440,11 +444,19 @@
        rm -rf $(MDIR)/usr/lib/lam/bin/.libs
        dh_movefiles
        mv ./debian/lam4-dev/usr/share/man/man3/MPI_Comm_set_name.3 
./debian/lam4-dev/usr/share/man/man3/MPI_Comm_set_name_lam4-dev.3
+       find debian -name .deps | xargs -r rm -rfv
 
 build: build-arch build-indep
 build-arch: build-stamp
 build-indep: build-stamp
 build-stamp: $(stlibs) $(shlibs)
+build-stamp: debian/lam4-dev.prerm debian/lam4-dev.postinst
+
+debian/lam4-dev.prerm: debian/lam4-dev.prerm.in
+       sed 's/@DEB_HOST_MULTIARCH@/$(DEB_HOST_MULTIARCH)/g' $< > $@
+
+debian/lam4-dev.postinst: debian/lam4-dev.postinst.in
+       sed 's/@DEB_HOST_MULTIARCH@/$(DEB_HOST_MULTIARCH)/g' $< > $@
 
 clean:
        dh_testdir
@@ -464,13 +476,13 @@
        rm -f share/rpi/sysv/Makefile
        rm -f share/rpi/shmem/Makefile
        rm -f share/rpi/via/Makefile
-       -cd debian/conf/ && find * -type f -exec mv {} ../../{} \; 
+       -cd debian/conf/ && find * -type f -exec mv {} ../../{} \;
        rm -rf debian/conf
        rm -f config/Makefile
        for i in config.status config.cache config.log Makefile myapp 
patchlevel.h lam_config.h stamp-h1 stamp-h liblamrpishmem.la liblamrpisysv.la 
mpi2c++_config.h balky mini-balky hcp ; do \
                find -name $$i -exec rm -f {} \; ; \
        done
-       rm -f ./romio/test/mpif.h romio/util/romioinstall romio/include/mpio.h  
romio/include/mpiof.h  romio/test/misc.c  romio/test/large_file.c  
romio/test/runtests  romio/test/fmisc.f  romio/test/fcoll_test.f  
romio/test/pfcoll_test.f  romio/test/fperf.f 
+       rm -f ./romio/test/mpif.h romio/util/romioinstall romio/include/mpio.h  
romio/include/mpiof.h  romio/test/misc.c  romio/test/large_file.c  
romio/test/runtests  romio/test/fmisc.f  romio/test/fcoll_test.f  
romio/test/pfcoll_test.f  romio/test/fperf.f
        for i in $$(find -name .deps -type d); do  rm -rf $$i; done
        rm -f config/lam-shell-setup.sh config/lam-shell-setup.csh 
config/lam_module.tcl
        find -name libtool -exec rm -f {} \;
@@ -487,6 +499,7 @@
        rm -f share/libltdl/config.h
        rm -f share/ssi/crlam/blcr/ssi_crlam_blcr_config.sh 
debian/lam$(SO).substvars
 
+       $(RM) debian/lam4-dev.prerm debian/lam4-dev.postinst
        dh_clean
 
 binary-arch: build install
@@ -503,6 +516,10 @@
        dh_installdeb -a
        dh_shlibdeps -a -l `pwd`/debian/liblam$(SO)/usr/lib/
        cat debian/liblam$(SO).substvars | sed "s, *lam$(SO)[^,]*,,1" > tmp && 
mv tmp debian/lam$(SO).substvars
+       mkdir -p debian/liblam$(SO)/usr/lib/$(DEB_HOST_MULTIARCH)
+       mv debian/liblam$(SO)/usr/lib/lib* 
debian/liblam$(SO)/usr/lib/$(DEB_HOST_MULTIARCH)
+       mkdir -p debian/lam$(SO)-dev/usr/lib/$(DEB_HOST_MULTIARCH)
+       mv debian/lam$(SO)-dev/usr/lib/lib* 
debian/lam$(SO)-dev/usr/lib/$(DEB_HOST_MULTIARCH)
        dh_gencontrol -a
        dh_md5sums -a
        dh_builddeb -a
@@ -525,9 +542,9 @@
        dh_md5sums -i
        dh_builddeb -i
 
-source diff:                                                                  
+source diff:
        @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
 
-binary: binary-arch binary-indep 
+binary: binary-arch binary-indep
 .PHONY: build clean binary-indep binary-arch binary
 .PRECIOUS: $(addprefix $(LDIR)/lib,$(addsuffix .so.$(SO),$(tlibs)))
diff -Nru lam-7.1.4/debian/watch lam-7.1.4/debian/watch
--- lam-7.1.4/debian/watch      2012-04-05 16:02:40.000000000 +0200
+++ lam-7.1.4/debian/watch      2019-03-13 08:58:21.000000000 +0100
@@ -1,6 +1,2 @@
-# Example watch control file for uscan
-# Rename this file to "watch" and then you can run the "uscan" command
-# to check for upstream updates and more.
-# Site         Directory               Pattern                 Version Script
 version=2
 http://www.lam-mpi.org/download/files/ .*lam-([0-9\\.]*).tar.gz        debian  
uupdate

Reply via email to