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 <[email protected]> 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 <[email protected]>
Uploaders: Nathan Scott <[email protected]>, Eric Desrochers
<[email protected]>, Ken McDonell <[email protected]>
-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)