File: rules

package info (click to toggle)
debugpy 1.6.6%2Bds-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 1,264 kB
  • sloc: python: 13,833; sh: 244; makefile: 25
file content (48 lines) | stat: -rwxr-xr-x 1,900 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
#!/usr/bin/make -f
#export DH_VERBOSE = 1

export PYBUILD_NAME=debugpy

%:
	dh $@ --buildsystem=pybuild

# We link to pydevd as debugpy assumes that it is a vendored module;
# it would not be that straightforward to modify debugpy to use the system
# version of pydevd.
# Unfortunately pydevd is horrible: it installs multiple different modules.
# Rather than hardcode this, we calculate the list of modules dynamically.
PYDEVD_TOP_LEVEL = $(shell dpkg -L python3-pydevd | grep dist-packages/ | \
	cut -d/ -f6 | sort -u | grep -v egg-info)

PYTHON_DIR=usr/lib/python3/dist-packages
PYDEVD_VENDORED_DIR=debugpy/_vendored/pydevd

# We rm -rf the vendored dir just in case it's been left over from
# a previously failed test
export PYBUILD_BEFORE_TEST=rm -rf {build_dir}/$(PYDEVD_VENDORED_DIR); \
  mkdir {build_dir}/$(PYDEVD_VENDORED_DIR); \
  for pydevd_top in $(PYDEVD_TOP_LEVEL); do \
    ln -s /$(PYTHON_DIR)/$$pydevd_top \
      {build_dir}/$(PYDEVD_VENDORED_DIR); done

export PYBUILD_AFTER_TEST=rm -rf {build_dir}/$(PYDEVD_VENDORED_DIR)

ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS)))
override_dh_auto_test:
	# * The http_proxy setting is to disable the proxies that pybuild
	# introduces; the tests might set up and use a local http server.
	# (See https://bugs.debian.org/1022188)
	export http_proxy=""; \
	PYBUILD_TEST_ARGS="$(shell debian/get_test_exclusions rules)" dh_auto_test || \
	    PYBUILD_TEST_ARGS="$(shell debian/get_test_exclusions rules) -n1" dh_auto_test
endif

execute_after_dh_installdocs:
	# dh_installdocs cannot handle a filename with spaces (bug #1016596)
	cp -p doc/Subprocess\ debugging.md debian/python3-debugpy/usr/share/doc/python3-debugpy


execute_after_dh_link:
	dh_installdirs /$(PYTHON_DIR)/$(PYDEVD_VENDORED_DIR)
	for pydevd_top in $(PYDEVD_TOP_LEVEL); do \
	    dh_link /$(PYTHON_DIR)/$$pydevd_top /$(PYTHON_DIR)/$(PYDEVD_VENDORED_DIR)/$$pydevd_top; done