Package: src:grib-api
Version: 1.19.0-1
Severity: important
Tags: patch

grib-api only builds in python3 support in python3-grib-api for the
default python3 version, but build-depends on python3-all-dev.  Please update
the package to build for all supported python3 versions (currently
python3.5 and python3.6 in sid and buster).  Please see the attached patch. I
test built it and it passed all tests with both python3.6 and python3.6 on
amd64.

Supporting all versions is preferred as we use the build-depends to track what
packages need rebuilding in what stage of a python3 transition and with the
current situation it's possible this will fail to be rebuilt at the
appropriate time and end up RC buggy.

Scott K
diff -Nru grib-api-1.19.0/debian/changelog grib-api-1.19.0/debian/changelog
--- grib-api-1.19.0/debian/changelog	2016-11-28 15:43:29.000000000 +0000
+++ grib-api-1.19.0/debian/changelog	2017-07-03 12:44:24.000000000 +0000
@@ -1,3 +1,10 @@
+grib-api (1.19.0-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Build for all supported python3 versions
+
+ -- Scott Kitterman <sc...@kitterman.com>  Mon, 03 Jul 2017 08:44:24 -0400
+
 grib-api (1.19.0-1) unstable; urgency=medium
 
   * New upstream release
diff -Nru grib-api-1.19.0/debian/rules grib-api-1.19.0/debian/rules
--- grib-api-1.19.0/debian/rules	2016-11-28 15:43:29.000000000 +0000
+++ grib-api-1.19.0/debian/rules	2017-07-03 12:44:24.000000000 +0000
@@ -14,7 +14,7 @@
 CXXFLAGS:=$(shell dpkg-buildflags --get CXXFLAGS) $(CPPFLAGS)
 LDFLAGS:=$(shell dpkg-buildflags --get LDFLAGS)
 
-PY3VERSM:=$(shell py3versions -d)m
+PY3VERSM:=$(shell py3versions -s)
 
 export LDFLAGS CFLAGS CXXFLAGS
 
@@ -44,33 +44,41 @@
 	dh $@ --buildsystem=cmake --with=python2,python3 --no-parallel
 
 override_dh_auto_configure:
-	F77=gfortran dh_auto_configure --builddirectory=debian/build-py3  -- \
-		-DPYTHON_EXECUTABLE=/usr/bin/python3 \
-		${BUILD_FLAGS} 
+	set -e && for i in $(PY3VERSM); do \
+	  F77=gfortran dh_auto_configure --builddirectory=debian/build-$$i  -- \
+		-DPYTHON_EXECUTABLE=/usr/bin/$$i \
+		${BUILD_FLAGS} ; \
+	  ( cd debian/build-$$i/data ; tar axpf $(CURDIR)/../grib-api_$(UPSTREAM_VERSION).orig-data.tar.xz ) ; \
+	done
 	F77=gfortran dh_auto_configure --builddirectory=debian/build-py2  -- \
 		-DPYTHON_EXECUTABLE=/usr/bin/python2 \
 		${BUILD_FLAGS}
-	( cd debian/build-py3/data ; tar axpf $(CURDIR)/../grib-api_$(UPSTREAM_VERSION).orig-data.tar.xz )
 	( cd debian/build-py2/data ; tar axpf $(CURDIR)/../grib-api_$(UPSTREAM_VERSION).orig-data.tar.xz )
 #	    -DENABLE_MEMORY_MANAGEMENT=ON \
 
 
 override_dh_auto_build:
 	dh_auto_build  --builddirectory=debian/build-py2
-	dh_auto_build  --builddirectory=debian/build-py3 
+	set -e && for i in $(PY3VERSM); do \
+	  dh_auto_build  --builddirectory=debian/build-$$i ; \
+	done
 
 override_dh_auto_install:
 	dh_auto_install  --builddirectory=debian/build-py2
-	dh_auto_install  --builddirectory=debian/build-py3 
+	set -e && for i in $(PY3VERSM); do \
+	  dh_auto_install  --builddirectory=debian/build-$$i ; \
+	done
 
 override_dh_auto_test:
 	# We need python code properly installed in debian/tmp to separate python2, python3 extensions when testing
 	(cd debian/build-py2 && $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp AM_UPDATE_INFO_DIR=no)
-	(cd debian/build-py3 && $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp AM_UPDATE_INFO_DIR=no)
 	$(DO_TEST) && ( LD_LIBRARY_PATH=$(CURDIR)/debian/build-py2/lib ; PYTHONPATH=$(CURDIR)/debian/tmp/usr/lib/python2.7/site-packages \
 		dh_auto_test --builddirectory=debian/build-py2  ) || true
-	$(DO_TEST) && ( LD_LIBRARY_PATH=$(CURDIR)/debian/build-py3/lib ; PYTHONPATH=$(CURDIR)/debian/tmp/usr/lib/python3.5/site-packages \
-		dh_auto_test --builddirectory=debian/build-py3  ) || true
+	set -e && for i in $(PY3VERSM); do \
+	  (cd debian/build-$$i && $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp AM_UPDATE_INFO_DIR=no) ; \
+	  $(DO_TEST) && ( LD_LIBRARY_PATH=$(CURDIR)/debian/build-$$i/lib ; PYTHONPATH=$(CURDIR)/debian/tmp/usr/lib/$$i/site-packages \
+		dh_auto_test --builddirectory=debian/build-$$i  ) || true ; \
+	done
 
 override_dh_install:
 	for d in libgrib_api_f77.so  libgrib_api_f90.so	libgrib_api.so ; do \

Reply via email to