Hello,

Sunil Mohan Adapa [2020-01-01 19:29 -0800]:
> Debian build servers are unable to build the latest Debian package of pcp
> uploaded to repositories: 5.0.2-1 [1]. As a consequence, pcp and it's
> dependencies cockpit and freedombox are at threat of being removed from Debian
> testing on January 10, 2020 [2].
> 
> This is due to incorrect invocation of dh_python2 which is no longer available
> on these build machines.

Right, as the previous upload (rightfully) dropped the py2 build deps. I attach
a first debdiff, but it doesn't work yet. The package build fails later on with

| === src ===
| rm -f Makefile.new Makefile.fix; CFLAGS='-fPIC -fno-strict-aliasing 
-D_GNU_SOURCE  -Wall -O2 -g -DPCP_VERSION=\"5.0.2\" -I../../../src/include 
-I../../../src/include/pcp' CXXFLAGS='' LDFLAGS=' -Wall 
-L../../../src/libpcp/src -L../../../src/libpcp_web/src 
-L../../../src/libpcp_pmda/src ' QT_SELECT=5 /usr/bin/qmake -o Makefile.new 
CONFIG+=release && sed -e 's/Makefile.new/Makefile/g' <Makefile.new | 
/usr/bin/gawk --posix '$1 == "LIBS" { printf $1; for (i=2;i<=NF;i++) { if 
($i~/^-L\//) { save=save " " $i; continue } else if (save!="" && $i~/^-l/) { 
printf " %s",save; save="" } printf " %s",$i } if (save!="") printf " %s",save; 
print ""; next } { print }' >Makefile.fix && ( if [ -f Makefile ]; then if diff 
Makefile Makefile.fix >/dev/null; then :; else rm -f Makefile; mv Makefile.fix 
Makefile; fi; else mv Makefile.fix Makefile; fi ); rm -f Makefile.new 
Makefile.fix; /usr/bin/make --no-print-directory -f Makefile
| rm -f Makefile.new Makefile.fix; CFLAGS='-fPIC -fno-strict-aliasing 
-D_GNU_SOURCE  -Wall -O2 -g -DPCP_VERSION=\"5.0.2\" -I../../../src/include 
-I../../../src/include/pcp' CXXFLAGS='' LDFLAGS=' -Wall 
-L../../../src/libpcp/src -L../../../src/libpcp_web/src 
-L../../../src/libpcp_pmda/src ' QT_SELECT=5 /usr/bin/qmake -o Makefile.new 
CONFIG+=release && sed -e 's/Makefile.new/Makefile/g' <Makefile.new | 
/usr/bin/gawk --posix '$1 == "LIBS" { printf $1; for (i=2;i<=NF;i++) { if 
($i~/^-L\//) { save=save " " $i; continue } else if (save!="" && $i~/^-l/) { 
printf " %s",save; save="" } printf " %s",$i } if (save!="") printf " %s",save; 
print ""; next } { print }' >Makefile.fix && ( if [ -f Makefile ]; then if diff 
Makefile Makefile.fix >/dev/null; then :; else rm -f Makefile; mv Makefile.fix 
Makefile; fi; else mv Makefile.fix Makefile; fi ); rm -f Makefile.new 
Makefile.fix; /usr/bin/make --no-print-directory -f Makefile
| diff: Makefile: No such file or directory
| make[5]: Makefile: No such file or directory
| mv: cannot stat 'Makefile.fix': No such file or directory

This file doesn't exist anywhere -- apparently src/include/builddefs.install
builds it, but at this point this is pretty deeply woven into the build system.
Curiously, resuming the build with "make"  and "dpkg-buildpackage -us -uc -b 
-nc"
gets over that, but then in the end it still fails with

| dpkg-deb: building package 'pcp-import-sar2pcp' in 
'../pcp-import-sar2pcp_5.0.2-1.1_all.deb'.
| dpkg-deb: building package 'pcp-import-mrtg2pcp' in 
'../pcp-import-mrtg2pcp_5.0.2-1.1_all.deb'.
| dpkg-deb: building package 'pcp-import-iostat2pcp' in 
'../pcp-import-iostat2pcp_5.0.2-1.1_all.deb'.
| dpkg-deb: building package 'pcp-doc' in '../pcp-doc_5.0.2-1.1_all.deb'.
| dpkg-deb: building package 'pcp-import-sheet2pcp' in 
'../pcp-import-sheet2pcp_5.0.2-1.1_all.deb'.
| dpkg-deb: building package 'pcp-import-ganglia2pcp' in 
'../pcp-import-ganglia2pcp_5.0.2-1.1_all.deb'.
| dpkg-buildpackage: error: fakeroot debian/rules binary subprocess returned 
exit status 2

without any apparent error message (the dh_builddeb -i itself succeeds).

As pcp and its reverse dependencies are very close to being kicked out of
testing (in 6 days), I'm interested in doing an NMU. However, with the above
build system trouble, it may be necessary to fix this upstream first?

Thanks,

Martin
diff -Nru pcp-5.0.2/debian/changelog pcp-5.0.2/debian/changelog
--- pcp-5.0.2/debian/changelog  2019-12-04 03:00:17.000000000 +0000
+++ pcp-5.0.2/debian/changelog  2020-01-04 09:58:40.000000000 +0000
@@ -1,3 +1,11 @@
+pcp (5.0.2-1.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Drop remaining python2 build commands (closes: #947916)
+  * Build-depend on python3-all-dev for the py3 extension build.
+
+ -- Martin Pitt <mp...@debian.org>  Sat, 04 Jan 2020 09:58:40 +0000
+
 pcp (5.0.2-1) unstable; urgency=low
 
   * New release (full details in CHANGELOG).
diff -Nru pcp-5.0.2/debian/control pcp-5.0.2/debian/control
--- pcp-5.0.2/debian/control    2019-12-10 20:52:01.000000000 +0000
+++ pcp-5.0.2/debian/control    2020-01-04 09:58:40.000000000 +0000
@@ -4,10 +4,9 @@
 Homepage: https://pcp.io
 Maintainer: PCP Development Team <p...@groups.io>
 Uploaders: Nathan Scott <nath...@debian.org>, Eric Desrochers 
<eric.desroch...@canonical.com>, Ken McDonell <k...@kenj.id.au>
-Build-Depends: bison, flex, gawk, procps, pkg-config, debhelper (>= 5), perl 
(>= 5.6), libreadline-dev | libreadline5-dev | libreadline-gplv2-dev, chrpath, 
libbsd-dev [kfreebsd-any], libkvm-dev [kfreebsd-any], python3-all, python3-dev, 
libnspr4-dev, libnss3-dev, libsasl2-dev, libuv1-dev, libavahi-common-dev, 
qtbase5-dev, qtbase5-dev-tools, libqt5svg5-dev, qtchooser, autotools-dev, 
zlib1g-dev, autoconf, libclass-dbi-perl, libdbd-mysql-perl, python3-psycopg2, 
dh-python, libpfm4-dev, libncurses5-dev, python3-six, python3-json-pointer, 
python3-requests, libextutils-autoinstall-perl, libxml-tokeparser-perl, 
librrds-perl, libjson-perl, libwww-perl, libnet-snmp-perl, libnss3-tools, 
manpages
+Build-Depends: bison, flex, gawk, procps, pkg-config, debhelper (>= 5), perl 
(>= 5.6), libreadline-dev | libreadline5-dev | libreadline-gplv2-dev, chrpath, 
libbsd-dev [kfreebsd-any], libkvm-dev [kfreebsd-any], python3-all-dev, 
python3-dev, libnspr4-dev, libnss3-dev, libsasl2-dev, libuv1-dev, 
libavahi-common-dev, qtbase5-dev, qtbase5-dev-tools, libqt5svg5-dev, qtchooser, 
autotools-dev, zlib1g-dev, autoconf, libclass-dbi-perl, libdbd-mysql-perl, 
python3-psycopg2, dh-python, libpfm4-dev, libncurses5-dev, python3-six, 
python3-json-pointer, python3-requests, libextutils-autoinstall-perl, 
libxml-tokeparser-perl, librrds-perl, libjson-perl, libwww-perl, 
libnet-snmp-perl, libnss3-tools, manpages
 #Architecture-dependent -- Build-Depends: libibumad-dev, libibmad-dev
 Standards-Version: 3.9.3
-X-Python-Version: >= 2.6
 X-Python3-Version: >= 3.3
 
 Package: pcp
diff -Nru pcp-5.0.2/debian/rules pcp-5.0.2/debian/rules
--- pcp-5.0.2/debian/rules      2019-10-11 02:20:52.000000000 +0000
+++ pcp-5.0.2/debian/rules      2020-01-04 09:58:00.000000000 +0000
@@ -32,7 +32,6 @@
 pcp_pmda_infiniband = pcp-pmda-infiniband
 pcp_testsuite = pcp-testsuite
 pcp_manager = pcp-manager
-pcp_python2 = python-pcp
 pcp_python3 = python3-pcp
 pcpgui = pcp-gui
 pcpdoc = pcp-doc
@@ -69,7 +68,6 @@
 dirpcp_pmda_infiniband = debian/$(pcp_pmda_infiniband)
 dirpcp_testsuite = debian/$(pcp_testsuite)
 dirpcp_manager = debian/$(pcp_manager)
-dirpcp_python2 = debian/$(pcp_python2)
 dirpcp_python3 = debian/$(pcp_python3)
 dirgui = debian/$(pcpgui)
 dirdoc = debian/$(pcpdoc)
@@ -89,7 +87,7 @@
                $(dirpcp_import_collectl) $(dirpcp_testsuite) \
                $(dirpcp_pmda_infiniband) $(allperldir) \
                $(dirpcp_manager) \
-               $(dirpcp_python2) $(dirpcp_python3)
+               $(dirpcp_python3)
 
 zip = export GZIP=-9qn
 pkgpcp = $(zip) NO_CHOWN=true DIST_ROOT="`pwd`"/$(dirpcp);
@@ -119,7 +117,6 @@
 pkgpcp_pmda_infiniband = $(zip) DIST_ROOT="`pwd`"/$(dirpcp_pmda_infiniband);
 pkgpcp_testsuite = $(zip) DIST_ROOT="`pwd`"/$(dirpcp_testsuite);
 pkgpcp_manager = $(zip) NO_CHOWN=true DIST_ROOT="`pwd`"/$(dirpcp_manager);
-pkgpcp_python2 = $(zip) DIST_ROOT="`pwd`"/$(dirpcp_python2);
 pkgpcp_python3 = $(zip) DIST_ROOT="`pwd`"/$(dirpcp_python3);
 
 configure_tools = export DEBUG=-DNDEBUG QT_SELECT=5;
@@ -212,10 +209,6 @@
        $(pkgpcp_pmda_infiniband) $(MAKE) -C src/pmdas/infiniband install
        # need the make clean when more than one version of Python installed
        # to ensure make install after the first version works
-       for V in $(shell pyversions -vr); do \
-           $(MAKE) -C src/python clean; \
-           $(pkgpcp_python2) $(MAKE) PYTHON=python$$V -C src/python 
install_python2; \
-       done
        for V in $(shell py3versions -vr); do \
            $(MAKE) -C src/python clean; \
            $(pkgpcp_python3) $(MAKE) PYTHON=python$$V -C src/python 
install_python3; \
@@ -262,7 +255,6 @@
        dh_makeshlibs -a --package $(libpcp_gui)
        dh_makeshlibs -a -N $(libpcp_mmv)
        dh_makeshlibs -a --package $(libpcp_mmv)
-       dh_python2 -a --package $(pcp_python2)
        dh_python3 -a --package $(pcp_python3)
        dh_perl -a -p $(libpcp_mmv_perl)
        dh_perl -a -p $(libpcp_pmda_perl)

Reply via email to