From b61804d282f4e9c6ba1859d4e7391e24231cfa8c Mon Sep 17 00:00:00 2001 From: Gard Spreemann Date: Sun, 11 Oct 2020 17:23:41 +0200 Subject: Treat all Python versions the same way. This should reduce the chance of regressions that only appear when building for multiple Python versions. --- debian/changelog | 6 ++++++ debian/rules | 31 +++++++++++++++---------------- 2 files changed, 21 insertions(+), 16 deletions(-) diff --git a/debian/changelog b/debian/changelog index 97c4f177..8393bb16 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +gudhi (3.3.0+dfsg-2) UNRELEASED; urgency=medium + + * Treat all Python versions the same way during build. + + -- Gard Spreemann Sun, 11 Oct 2020 17:23:10 +0200 + gudhi (3.3.0+dfsg-1) unstable; urgency=medium * New upstream version. diff --git a/debian/rules b/debian/rules index 386611bb..9e16dc1b 100755 --- a/debian/rules +++ b/debian/rules @@ -10,8 +10,6 @@ TMPBIN:=debian/tmp/usr/bin HERA_FLAGS:=-DHERA_BOTTLENECK_INCLUDE_DIR=/usr/include/hera/bottleneck -DHERA_WASSERSTEIN_INCLUDE_DIR=/usr/include/hera/wasserstein PY3VERS:=$(shell py3versions -vs) -DEFAULT_PY3VER=$(shell py3versions -vd) -REMAINING_PY3VERS:=$(filter-out $(DEFAULT_PY3VER), $(PY3VERS)) DHFLAGS+=--buildsystem=cmake @@ -37,30 +35,25 @@ ifneq (, $(filter $(shell dpkg-architecture --query DEB_BUILD_ARCH),i386 x32)) endif %: -# The --buildirectory=build is there so that we can easily get a hold -# of documentation and examples, which are not installed by upstream. - dh $@ $(DHFLAGS) --with=python3 --builddirectory=build/userversion - for py3ver in $(REMAINING_PY3VERS) ; do \ - dh $@ $(DHFLAGS) --with=python3 --builddirectory=build-py$$py3ver/userversion ; \ - done + dh $@ $(DHFLAGS) --with=python3 execute_before_dh_auto_configure: - dh_auto_configure $(DHFLAGS) --builddirectory=build -- -DWITH_GUDHI_BENCHMARK=true -DWITH_GUDHI_EXAMPLE=true -DWITH_GUDHI_PYTHON=true -DWITH_GUDHI_TEST=true -DWITH_GUDHI_UTILITIES=true -DPython_ADDITIONAL_VERSIONS=$(DEFAULT_PY3VER) -DUSER_VERSION_DIR=userversion -DWITH_GUDHI_PYTHON_RUNTIME_LIBRARY_DIRS=false $(HERA_FLAGS) + dh_auto_configure $(DHFLAGS) --builddirectory=build -- -DWITH_GUDHI_BENCHMARK=true -DWITH_GUDHI_EXAMPLE=true -DWITH_GUDHI_PYTHON=false -DWITH_GUDHI_TEST=true -DWITH_GUDHI_UTILITIES=true -DUSER_VERSION_DIR=userversion $(HERA_FLAGS) make -C build user_version - for py3ver in $(REMAINING_PY3VERS) ; do \ + for py3ver in $(PY3VERS) ; do \ dh_auto_configure $(DHFLAGS) --builddirectory=build-py$$py3ver -- -DWITH_GUDHI_BENCHMARK=false -DWITH_GUDHI_EXAMPLE=false -DWITH_GUDHI_PYTHON=true -DWITH_GUDHI_TEST=true -DWITH_GUDHI_UTILITIES=false -DPython_ADDITIONAL_VERSIONS=$$py3ver -DUSER_VERSION_DIR=userversion -DWITH_GUDHI_PYTHON_RUNTIME_LIBRARY_DIRS=false $(HERA_FLAGS) ; \ make -C build-py$$py3ver user_version ; \ done override_dh_auto_configure: - dh_auto_configure $(DHFLAGS) --builddirectory=build/userversion -- -DWITH_GUDHI_BENCHMARK=true -DWITH_GUDHI_EXAMPLE=true -DWITH_GUDHI_PYTHON=true -DWITH_GUDHI_TEST=true -DWITH_GUDHI_UTILITIES=true -DPython_ADDITIONAL_VERSIONS=$(DEFAULT_PY3VER) -DWITH_GUDHI_PYTHON_RUNTIME_LIBRARY_DIRS=false $(HERA_FLAGS) - for py3ver in $(REMAINING_PY3VERS) ; do \ - dh_auto_configure $(DHFLAGS) --builddirectory=build-py$$py3ver -- -DWITH_GUDHI_BENCHMARK=false -DWITH_GUDHI_EXAMPLE=false -DWITH_GUDHI_PYTHON=true -DWITH_GUDHI_TEST=true -DWITH_GUDHI_UTILITIES=false -DPython_ADDITIONAL_VERSIONS=$$py3ver -DWITH_GUDHI_PYTHON_RUNTIME_LIBRARY_DIRS=false $(HERA_FLAGS) ; \ + dh_auto_configure $(DHFLAGS) --builddirectory=build/userversion -- -DWITH_GUDHI_BENCHMARK=true -DWITH_GUDHI_EXAMPLE=true -DWITH_GUDHI_PYTHON=false -DWITH_GUDHI_TEST=true -DWITH_GUDHI_UTILITIES=true $(HERA_FLAGS) + for py3ver in $(PY3VERS) ; do \ + dh_auto_configure $(DHFLAGS) --builddirectory=build-py$$py3ver/userversion -- -DWITH_GUDHI_BENCHMARK=false -DWITH_GUDHI_EXAMPLE=false -DWITH_GUDHI_PYTHON=true -DWITH_GUDHI_TEST=true -DWITH_GUDHI_UTILITIES=false -DPython_ADDITIONAL_VERSIONS=$$py3ver -DWITH_GUDHI_PYTHON_RUNTIME_LIBRARY_DIRS=false $(HERA_FLAGS) ; \ done override_dh_auto_build-arch: dh_auto_build $(DHFLAGS) --builddirectory=build/userversion - for py3ver in $(REMAINING_PY3VERS) ; do \ + for py3ver in $(PY3VERS) ; do \ dh_auto_build $(DHFLAGS) --builddirectory=build-py$$py3ver/userversion ; \ done @@ -75,7 +68,7 @@ override_dh_auto_test-arch: # but see #901678. ifeq (, $(filter nocheck,$(DEB_BUILD_MAINT_OPTIONS))) dh_auto_test $(DHFLAGS) --no-parallel --builddirectory=build/userversion - for py3ver in $(REMAINING_PY3VERS) ; do \ + for py3ver in $(PY3VERS) ; do \ dh_auto_test $(DHFLAGS) --no-parallel --builddirectory=build-py$$py3ver/userversion ; \ done else @@ -86,7 +79,7 @@ override_dh_auto_install: find src -type f -path '*/example/*' \( -name '*.cpp' -o \( -name '*.txt' -a ! -iname 'cmake*' \) \) -exec sh -c 'name=$$(echo $$0 | sed s/src\\/// | sed s/example\\///); install -D -m 644 $$0 debian/tmp/usr/share/doc/libgudhi-examples/$$name' {} \; dh_auto_install $(DHFLAGS) --builddirectory=build/userversion - for py3ver in $(REMAINING_PY3VERS) ; do \ + for py3ver in $(PY3VERS) ; do \ dh_auto_install $(DHFLAGS) --builddirectory=build-py$$py3ver/userversion ; \ done @@ -139,3 +132,9 @@ override_dh_install: override_dh_missing: dh_missing --list-missing + +override_dh_python3: + for py3ver in $(PY3VERS) ; do \ + dh_python3 -O--builddirectory=build-py$$py3ver/userversion ; \ + done + -- cgit v1.2.3