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