On 04/01/20 6:03 am, Martin Pitt wrote: > 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
The attached patch works for me. I have done (on a buster machine):
dpkg-source -x pcp_5.0.2-1.dsc
cd pcp-5.0.2
patch -p1 < ../pcp_5.0.2-1.1.debdiff
sudo apt install python3-all-dev
dpkg-buildpackage -us -uc
After that I did (for building clean on unstable):
cd ..
cowbuilder build pcp_5.0.2-1.1.dsc
Both these builds on stable and unstable worked without any hiccups.
>
> | === 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
I believe the rm commands run during cleanup. I suspect the source is
not conducive to running multiple build/cleanup cycles. The problem
could be pre-existing and does not effect build machines or clean builds
from freshly extracted source. We can treat it as non-critical and leave
it to be dealt later.
>
> | 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).
I ran into similar issue when attempting to build with multiple parallel
tasks with DEB_BUILD_OPTIONS=parallel=8 or with -j8. If you have this
turned on, please try disabling it.
>
> 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?
Thank you for looking into this :) Hope it will get resolved in time.
--
Sunil
signature.asc
Description: OpenPGP digital signature

