File: rules

package info (click to toggle)
scipy 1.6.0-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, sid
  • size: 132,464 kB
  • sloc: python: 207,830; ansic: 92,105; fortran: 76,906; cpp: 68,145; javascript: 32,742; makefile: 422; pascal: 421; sh: 158
file content (113 lines) | stat: -rwxr-xr-x 4,364 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
104
105
106
107
108
109
110
111
112
113
#!/usr/bin/make -f

export PYBUILD_NAME=scipy

include /usr/share/dpkg/architecture.mk

unexport LDFLAGS
export FFLAGS="-fPIC"
export ATLAS=None
export PATH := $(CURDIR)/debian/extra_bin:$(PATH)

PY3VERS:= $(shell py3versions -v -r debian/control)
PY3_DEFAULT:= $(shell py3versions -d)
TMPDIR := $(CURDIR)/build/tmp
BASE=$(shell pwd)/debian

ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
  export NPY_NUM_BUILD_JOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
endif

%:
	dh $@ --with python3 --buildsystem=pybuild

override_dh_auto_clean:
	rm -rf build
	-rm -rf doc/source/fontList.cache
	-rm -rf doc/build
	-rm -rf debian/extra_bin
	find . -name "*.pyc" -exec rm {} \;
	dh_clean

override_dh_auto_configure:
	rm -f cythonize.dat
	touch scipy/linalg/_generate_pyx.py scipy/special/_generate_pyx.py
	python3 tools/cythonize.py

build-python%:
	pybuild -p$* --configure --configure-args "config_fc --noarch build"
	CFLAGS="-g -ggdb" \
          pybuild -p$* -ipython$*-dbg --configure --configure-args "config_fc --noarch build"

override_dh_auto_build-arch: $(PY3VERS:%=build-python%)

override_dh_auto_build-indep: build-$(PY3_DEFAULT)
	# generate documentation (see comment below) needs compiled scipy
	(export MPLCONFIGDIR=. ; \
	PYLIBPATH=`pybuild --print build_dir | grep $(PY3_DEFAULT) | awk '{print $$3}'`; \
	echo "building docs using PYLIBPATH=$$PYLIBPATH"; \
	PYTHONPATH=$$PYLIBPATH make -C doc html PYTHONPATH=$$PYLIBPATH PYVER=3)

override_dh_auto_test:
	echo "Build-time tests will be run after the installation dir is installed"

override_dh_auto_install:
	dh_auto_install -a -- --install-args "--root $(BASE)/tmp --force --no-compile --install-layout=deb";

override_dh_install-arch:
	dh_install
	find debian/python3-scipy -type f -name '*.cpython-3?d*.so' -delete
	find debian/python3-scipy-dbg ! -type d ! -name '*.cpython-3?d*.so' -delete
	find debian/python3-scipy-dbg -depth -empty -exec rmdir {} \;
	rm -fr $(BASE)/python-scipy*/usr/lib/python*/*-packages/scipy/weave/examples/

	# drop all the installed setup.py files
	find $(BASE)/ -name setup.py -delete
	find $(BASE)/ -name generate_ufuncs.py -delete

	set -e && for py in $(PY3VERS); do \
	  ln -sf /usr/lib/python3/dist-packages/decorator.py $(BASE)/python3-scipy/usr/lib/python$$py/dist-packages/scipy/_lib/decorator.py; \
	done

	# not ported to py3 in 0.10.1
	rm -rf $(BASE)/python3-scipy/usr/lib/python3/dist-packages/scipy/weave

	dh_numpy3
ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
	mkdir -p $(TMPDIR)
	-set -e && for pyvers in $(PY3VERS); do \
	  AUTOPKGTEST_TMP=$(TMPDIR) \
	  PYTHONPATH=$(BASE)/python3-scipy/usr/lib/python$$pyvers/dist-packages/ \
	  PYS=python$$pyvers TESTMODE=fast $(BASE)/tests/python3; \
	done
endif

override_dh_fixperms-arch:
	dh_fixperms
	set -e; for i in `find debian -mindepth 2 -type f ! -perm 755`; do \
		if head -1 $$i | grep -q '^#!' ; then                      \
	    		chmod +x $$i;                                      \
		fi ;                                                       \
	done
	chmod a-x debian/python3-scipy/usr/lib/python3/dist-packages/scipy/optimize/_shgo_lib/sobol_vec.gz
	sed -i '1s|.|#!/usr/bin/python3\n&|' $(BASE)/python3-scipy/usr/lib/python3/dist-packages/scipy/cluster/tests/test_vq.py
	sed -i '1s|.|#!/usr/bin/python3\n&|' $(BASE)/python3-scipy/usr/lib/python3/dist-packages/scipy/stats/tests/test_stats.py
	#replace all the usr/bin/env python
	find $(BASE)/python3-scipy/usr/lib/python3/ -name "*.py" -type f | xargs sed -i -e "1s#usr/bin/env\s\+python\s*\$$#usr/bin/env python3#"

override_dh_strip:
	dh_strip -ppython3-scipy --dbg-package=python3-scipy-dbg

override_dh_installdocs-indep:
	dh_installdocs -i

	rm -rf debian/python-scipy-doc/usr/share/doc/python-scipy-doc/html/_static/jquery.js
	dh_link -ppython-scipy-doc /usr/share/javascript/jquery/jquery.js /usr/share/doc/python-scipy-doc/html/_static/jquery.js

	rm -rf debian/python-scipy-doc/usr/share/doc/python-scipy-doc/html/_static/underscore.js
	dh_link -ppython-scipy-doc /usr/share/javascript/underscore/underscore.js /usr/share/doc/python-scipy-doc/html/_static/underscore.js

	dh_sphinxdoc -i -XMathJax.js
	find debian/python-scipy-doc/ -name scipy-mathjax | xargs rm -rf
	rdfind -outputname /dev/null -makesymlinks true -removeidentinode false debian/python-scipy-doc
	symlinks -r -s -c debian/python-scipy-doc