File: rules

package info (click to toggle)
deal.ii 9.2.0-3
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 236,560 kB
  • sloc: cpp: 334,965; ansic: 72,687; python: 2,374; sh: 841; perl: 761; xml: 437; makefile: 82; javascript: 14
file content (103 lines) | stat: -rwxr-xr-x 3,975 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
103
#! /usr/bin/make -f

export OMPI_MCA_plm_rsh_agent=/bin/false
export OMPI_MCA_rmaps_base_oversubscribe=1

%:
	dh $@ --max-parallel=2

# The following (optional) dependencies are missing because they are not
# packaged in debian:
#   adolc (package in debian too old)
#   ginkgo (https://ginkgo-project.github.io/)
#   symengine (https://github.com/sympy/symengine)
override_dh_auto_configure:
	dh_auto_configure -- \
	-DDEAL_II_CXX_FLAGS="-Wno-nonnull-compare -Wno-address" \
	-DCMAKE_PREFIX_PATH="/usr/lib/$(DEB_HOST_MULTIARCH)/hdf5/openmpi;/usr/include/hdf5/openmpi" \
	-DCMAKE_BUILD_TYPE=DebugRelease \
	-DDEAL_II_ALLOW_AUTODETECTION=OFF \
	-DDEAL_II_ALLOW_BUNDLED=OFF \
	-DDEAL_II_ALLOW_PLATFORM_INTROSPECTION=OFF \
	-DDEAL_II_COMPILE_EXAMPLES=OFF \
	-DDEAL_II_COMPONENT_DOCUMENTATION=ON \
	-DDEAL_II_DOXYGEN_USE_MATHJAX=ON \
	-DDEAL_II_DOXYGEN_USE_ONLINE_MATHJAX=OFF \
	-DMATHJAX_PATH="/usr/share/javascript/mathjax" \
	-DDEAL_II_COMPONENT_EXAMPLES=ON \
	-DDEAL_II_HAVE_FP_EXCEPTIONS=FALSE \
	-DDEAL_II_WITH_ARPACK=ON \
	-DDEAL_II_WITH_ASSIMP=ON \
	-DDEAL_II_WITH_BOOST=ON \
	-DDEAL_II_WITH_COMPLEX_VALUES=ON \
	-DDEAL_II_WITH_GMSH=ON \
	-DDEAL_II_WITH_GSL=ON \
	-DDEAL_II_WITH_HDF5=ON \
	-DDEAL_II_WITH_LAPACK=ON \
	-DDEAL_II_WITH_METIS=ON \
	-DDEAL_II_WITH_MPI=ON \
	-DDEAL_II_WITH_MUPARSER=ON \
	-DDEAL_II_WITH_NETCDF=ON \
	-DDEAL_II_WITH_OPENCASCADE=ON \
	-DDEAL_II_WITH_P4EST=ON \
	-DDEAL_II_WITH_PETSC=ON \
	-DDEAL_II_WITH_SCALAPACK=ON \
	-DDEAL_II_WITH_SLEPC=ON \
	-DDEAL_II_WITH_THREADS=ON \
	-DDEAL_II_WITH_TRILINOS=ON \
	-DDEAL_II_WITH_UMFPACK=ON \
	-DDEAL_II_WITH_ZLIB=ON \
	-DCMAKE_INSTALL_RPATH_USE_LINK_PATH=OFF \
	-DDEAL_II_BASE_NAME="deal.ii" \
	-DDEAL_II_DOCHTML_RELDIR=share/doc/libdeal.ii-doc/html \
	-DDEAL_II_DOCREADME_RELDIR=share/doc/libdeal.ii-doc \
	-DDEAL_II_EXAMPLES_RELDIR=share/doc/libdeal.ii-doc/examples \
	-DDEAL_II_LIBRARY_RELDIR=lib/$(DEB_HOST_MULTIARCH) \
	-DDEAL_II_PROJECT_CONFIG_RELDIR=share/cmake/deal.II \
	-DDEAL_II_SHARE_RELDIR=share/deal.ii/

override_dh_auto_test:
	dh_auto_test --max-parallel=1

TMP_DOC := debian/tmp/usr/share/doc/libdeal.ii-doc
override_dh_auto_install:
	dh_auto_install
	# Copy over all external html resources:
	cp -r doc/doxygen/deal.II/images $(TMP_DOC)/html/doxygen/deal.II/
	# Replace links external deal.II html resources by local links:
	sed -i 's#"https\?://www.dealii.org/images/#"images/#g' \
		$(TMP_DOC)/html/doxygen/deal.II/step_*.html \
		$(TMP_DOC)/html/doxygen/deal.II/class*.html \
		$(TMP_DOC)/html/doxygen/deal.II/namespaceGridGenerator_1_1Airfoil.html
	# Replace zenodo links:
	sed -i -e 's#"https://zenodo.org/badge/DOI/10.5281/#"images/#g' \
		$(TMP_DOC)/html/doxygen/deal.II/step_*.html \
		$(TMP_DOC)/html/doxygen/deal.II/class*.html
	sed -i -e 's#"https://upload.wikimedia.org/wikipedia/commons/#"images/#g' \
		$(TMP_DOC)/html/doxygen/deal.II/group_*.html
	# Remove external links to the W3C validator icon:
	find $(TMP_DOC)/html \
		-type f -name '*.html' -exec sed -i 's#\(<img.*w3.org.*\)</a>#</a>#' {} \;
	# Remove superfluous license file
	rm $(TMP_DOC)/LICENSE.md

override_dh_compress:
	# Do not compress example source code, and icons:
	dh_compress -X.cc -X.ico

override_dh_dwz:
	# Double up the limit of debug information entries:
	dh_dwz -- -L 100000000

VERSION := 9.1.1
get-orig-source:
	wget --no-clobber -O deal.ii-$(VERSION).tar.gz https://github.com/dealii/dealii/releases/download/v$(VERSION)/dealii-$(VERSION).tar.gz
	wget --no-clobber -O deal.ii-doc-$(VERSION).tar.gz https://github.com/dealii/dealii/releases/download/v$(VERSION)/dealii-$(VERSION)-offline_documentation.tar.gz
	mkdir deal.ii-$(VERSION)
	tar --strip-components=1 -C deal.ii-$(VERSION) -xzf deal.ii-$(VERSION).tar.gz
	mkdir -p deal.ii-$(VERSION)/doc/doxygen/deal.II
	tar -C deal.ii-$(VERSION) -xzf deal.ii-doc-$(VERSION).tar.gz doc/doxygen/deal.II/images
	set -e; cd deal.ii-$(VERSION); \
		rm -rf bundled
	tar -cJf deal.ii_$(VERSION).orig.tar.xz deal.ii-$(VERSION)
	rm -rf deal.ii-$(VERSION)