#!/usr/bin/make -f PVM_ARCH=$(shell debian/getpvmarch) # upstream version version=$(shell dpkg-parsechangelog --show-field=Version | cut -d'-' -f1) # Version from SONAME (.so.3 => 3) # deliberately hard-coded - if this changes we definitely want to know about it soversion=3 # yes, I know this will define RSHCOMMAND twice and generate a warning. # I'm not modifying gcc. -dld # export DEB_CPPFLAGS_MAINT_APPEND=-DRSHCOMMAND=\\\"/usr/lib/pvm3/bin/rsh\\\" -DPVMDPATH=\\\"pvmd\\\" -DPVMDFILE=\\\"/usr/bin/pvmd\\\" -DPVM_DEFAULT_ROOT=\\\"/usr/lib/pvm3\\\" -DOVERLOADHOST export DEB_BUILD_MAINT_OPTIONS=hardening=+all DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) export DEB_HOST_MULTIARCH CFLAGS = $(shell dpkg-buildflags --get CFLAGS) CPPFLAGS = $(shell dpkg-buildflags --get CPPFLAGS) LDFLAGS = $(shell dpkg-buildflags --get LDFLAGS) SOURCE_DATE := $(shell dpkg-parsechangelog --show-field=Date) AIMKSTR = -here -f ./conf/$(PVM_ARCH).def -f ./Makefile.aimk CFLOPTS="'$(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -fPIC'" cflags="'$(CFLAGS) $(CPPFLAGS) -fPIC'" link_flags="'$(LDFLAGS)'" SHAREDLDFLAGS="$(LDFLAGS) -fPIC -shared" %: dh $@ override_dh_auto_build: echo "#!/bin/sh" > lib/pvmgetarch echo "echo $(PVM_ARCH)" >> lib/pvmgetarch chmod +x lib/pvmgetarch chmod +x debian/getpvmarch FC="gfortran" F77="gfortran" PVM_ROOT=`pwd` ./lib/aimk $(AIMKSTR) PVMDIR=`pwd` all tar --sort=name --numeric-owner --owner=0 --group=0 --mode=go=rX,u+rw,a-s --mtime="$(SOURCE_DATE)" -c examples | gzip -n > examples.tar.gz tar --sort=name --numeric-owner --owner=0 --group=0 --mode=go=rX,u+rw,a-s --mtime="$(SOURCE_DATE)" -c gexamples | gzip -n > gexamples.tar.gz override_dh_auto_clean: echo "#!/bin/sh" > lib/pvmgetarch echo "echo $(PVM_ARCH)" > lib/pvmgetarch chmod +x lib/pvmgetarch chmod +x debian/getpvmarch -make PVM_ROOT=`pwd` clean rm -f build-stamp examples.tar.gz gexamples.tar.gz lib/pvmgetarch find . -type d -name $(PVM_ARCH) | xargs rm -rf override_dh_auto_install: # pvm package mv bin/$(PVM_ARCH)/pvmgs debian/pvm/usr/bin cp lib/pvmgetarch debian/pvm/usr/bin cp lib/$(PVM_ARCH)/pvm debian/pvm/usr/bin cp lib/$(PVM_ARCH)/pvmgs debian/pvm/usr/bin cp lib/$(PVM_ARCH)/pvmd3 debian/pvm/usr/bin/pvmd ln -sf ../../../bin/pvmgetarch debian/pvm/usr/lib/pvm3/lib/pvmgetarch ln -sf ../../../bin/pvm debian/pvm/usr/lib/pvm3/lib/pvm ln -sf ../../../bin/pvmgs debian/pvm/usr/lib/pvm3/lib/pvmgs ln -sf ../../../bin/pvmd debian/pvm/usr/lib/pvm3/lib/pvmd # pvm-dev package cp lib/aimk debian/pvm-dev/usr/bin mv bin/$(PVM_ARCH)/pvm_gstat debian/pvm-dev/usr/bin mv bin/$(PVM_ARCH)/pvmgroups debian/pvm-dev/usr/bin mv bin/$(PVM_ARCH)/tracer debian/pvm-dev/usr/bin mv bin/$(PVM_ARCH)/trcsort debian/pvm-dev/usr/bin cp lib/$(PVM_ARCH)/*.a debian/pvm-dev/usr/lib/$(DEB_HOST_MULTIARCH) cp conf/$(PVM_ARCH).def debian/pvm-dev/usr/lib/pvm3/conf cp conf/$(PVM_ARCH).m4 debian/pvm-dev/usr/lib/pvm3/conf cp include/* debian/pvm-dev/usr/include ln -sf libpvm3.so.$(version) debian/pvm-dev/usr/lib/$(DEB_HOST_MULTIARCH)/libpvm3.so ln -sf libgpvm3.so.$(version) debian/pvm-dev/usr/lib/$(DEB_HOST_MULTIARCH)/libgpvm3.so # libpvm3 package cp lib/$(PVM_ARCH)/libpvm3.so debian/libpvm3/usr/lib/$(DEB_HOST_MULTIARCH)/libpvm3.so.$(version) ln -s libpvm3.so.$(version) debian/libpvm3/usr/lib/$(DEB_HOST_MULTIARCH)/libpvm3.so.$(soversion) cp lib/$(PVM_ARCH)/libgpvm3.so debian/libpvm3/usr/lib/$(DEB_HOST_MULTIARCH)/libgpvm3.so.$(version) ln -s libgpvm3.so.$(version) debian/libpvm3/usr/lib/$(DEB_HOST_MULTIARCH)/libgpvm3.so.$(soversion) # pvm-examples package mv bin/$(PVM_ARCH)/gs debian/pvm-examples/usr/bin/gs.pvm mv bin/$(PVM_ARCH)/hello debian/pvm-examples/usr/bin/hello.pvm mv bin/$(PVM_ARCH)/srm debian/pvm-examples/usr/bin/srm.pvm cp bin/$(PVM_ARCH)/* debian/pvm-examples/usr/bin/