File: rules

package info (click to toggle)
eztrace 2.0%2Brepack-12
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 4,132 kB
  • sloc: ansic: 23,501; perl: 910; sh: 857; cpp: 771; makefile: 696; fortran: 327; f90: 320; python: 57
file content (102 lines) | stat: -rwxr-xr-x 3,379 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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
#!/usr/bin/make -f

export DEB_BUILD_MAINT_OPTIONS = hardening=+all

include /usr/share/dpkg/architecture.mk
include /usr/share/mpi-default-dev/debian_defaults

ifeq ($(ARCH_DEFAULT_MPI_IMPL),openmpi)
OPENMPI=yes
else
OPENMPI=no
endif

OMPT_ARCHS = amd64 arm64 i386 ppc64el riscv64

CONFIGURE_ENV=
CONFIGURE=-DCMAKE_INSTALL_INCLUDEDIR=/usr/include/$(DEB_HOST_MULTIARCH)

%:
	dh $@

override_dh_auto_configure:
	$(CONFIGURE_ENV) dh_auto_configure -Bbuild-mpich -- $(CONFIGURE) \
		-DEZTRACE_ENABLE_MPI=ON \
		-DEZTRACE_ENABLE_OPENMP=ON \
		-DEZTRACE_ENABLE_OMPT=OFF \
		-DEZTRACE_ENABLE_POSIXIO=ON \
		-DEZTRACE_ENABLE_PTHREAD=ON \
		-DEZTRACE_ENABLE_MEMORY=ON \
		-DEZTRACE_ENABLE_IOTRACER=OFF \
		-DMPICC=/usr/bin/mpicc.mpich -DMPIF90=/usr/bin/mpif90.mpich -DMPI_MODULE_NAME=mpich
ifeq ($(OPENMPI),yes)
	$(CONFIGURE_ENV) dh_auto_configure -Bbuild-openmpi -- $(CONFIGURE) \
		-DEZTRACE_ENABLE_MPI=ON \
		-DEZTRACE_ENABLE_OPENMP=OFF \
		-DEZTRACE_ENABLE_OMPT=OFF \
		-DEZTRACE_ENABLE_POSIXIO=OFF \
		-DEZTRACE_ENABLE_PTHREAD=OFF \
		-DEZTRACE_ENABLE_MEMORY=OFF \
		-DEZTRACE_ENABLE_IOTRACER=OFF \
		-DMPICC=/usr/bin/mpicc.openmpi -DMPIF90=/usr/bin/mpif90.openmpi -DMPI_MODULE_NAME=openmpi
endif
ifneq ($(filter $(DEB_HOST_ARCH),$(OMPT_ARCHS)),)
	$(CONFIGURE_ENV) CC=clang dh_auto_configure -Bbuild-ompt -- $(CONFIGURE) \
		-DEZTRACE_ENABLE_MPI=OFF \
		-DEZTRACE_ENABLE_OPENMP=OFF \
		-DEZTRACE_ENABLE_OMPT=ON \
		-DEZTRACE_ENABLE_POSIXIO=OFF \
		-DEZTRACE_ENABLE_PTHREAD=OFF \
		-DEZTRACE_ENABLE_MEMORY=OFF \
		-DEZTRACE_ENABLE_IOTRACER=OFF
endif

override_dh_auto_build:
	@echo 'blhc: ignore-line-regexp: \[\ *[0-9]+%\]\ Building\ C\ object\ (src|test)/.+\.c\.o'
	dh_auto_build -Bbuild-mpich
ifeq ($(OPENMPI),yes)
	dh_auto_build -Bbuild-openmpi
endif
ifneq ($(filter $(DEB_HOST_ARCH),$(OMPT_ARCHS)),)
	dh_auto_build -Bbuild-ompt
endif

override_dh_auto_clean:
	dh_auto_clean -Bbuild-mpich
ifeq ($(OPENMPI),yes)
	dh_auto_clean -Bbuild-openmpi
endif
ifneq ($(filter $(DEB_HOST_ARCH),$(OMPT_ARCHS)),)
	dh_auto_clean -Bbuild-ompt
endif

override_dh_auto_install:
	dh_auto_install -Bbuild-mpich
ifeq ($(OPENMPI),yes)
	dh_auto_install -Bbuild-openmpi -- -C src/modules/mpi
endif
ifneq ($(filter $(DEB_HOST_ARCH),$(OMPT_ARCHS)),)
	dh_auto_install -Bbuild-ompt -- -C src/modules/ompt
endif

# Some MPI drivers assume we won't fork, but we will, so tell them to be safe.
export RDMAV_FORK_SAFE=1

override_dh_auto_test:
	@echo 'blhc: ignore-line-regexp: .*src/modules/omp/bin/eztrace_cc\ .*'
	@echo 'blhc: ignore-line-regexp: ([0-9]*:\ )?\[eztrace_cc\].*'
	@echo 'blhc: ignore-line-regexp: cc\ -o\ test_task.*'
	@echo 'blhc: ignore-line-regexp: cc\ -o\ .*\ -pthread'
	@echo 'blhc: ignore-line-regexp: cc.*\ memory.c.*\ -o\ memory'
	@echo 'blhc: ignore-line-regexp: g\+\+\ -o\ vector\ vector.cxx'
	@echo 'blhc: ignore-line-regexp: .*/cc\ .*\ -c\ .*/test/.*.c'
	verbose=1 MPICC_PATH=mpicc.mpich MPIRUN_PATH=mpirun.mpich MPI_MODULE_NAME=mpich dh_auto_test --no-parallel -Bbuild-mpich -- -k ARGS\+=--extra-verbose
ifeq ($(OPENMPI),yes)
	verbose=1 MPIRUN_CLI_OPTION=--oversubscribe MPICC_PATH=mpicc.openmpi MPIRUN_PATH=mpirun.openmpi MPI_MODULE_NAME=openmpi dh_auto_test --no-parallel -Bbuild-openmpi -- -k ARGS\+=--extra-verbose
endif
ifneq ($(filter $(DEB_HOST_ARCH),$(OMPT_ARCHS)),)
	verbose=1 dh_auto_test --no-parallel -Bbuild-ompt -- -k ARGS\+=--extra-verbose
endif

override_dh_dwz:
	: