File: rules

package info (click to toggle)
pvm 3.4.6-5
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 8,284 kB
  • sloc: ansic: 72,074; makefile: 1,198; fortran: 631; sh: 285; csh: 74; asm: 37
file content (85 lines) | stat: -rwxr-xr-x 3,892 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#!/usr/bin/make -f

PVM_ARCH=$(shell debian/getpvmarch)
# upstream version
include /usr/share/dpkg/default.mk
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
include /usr/share/dpkg/architecture.mk
export DEB_HOST_MULTIARCH

CFLAGS = $(shell dpkg-buildflags --get CFLAGS) -I/usr/include/tirpc/ -DUSESTRERROR
CPPFLAGS = $(shell dpkg-buildflags --get CPPFLAGS)
LDFLAGS = $(shell dpkg-buildflags --get LDFLAGS) -Wl,--start-group -ltirpc

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/