Bug#1045544: petsc: Fails to build source after successful build
Lucas Nussbaum
lucas at debian.org
Sun Aug 13 20:21:06 BST 2023
Source: petsc
Version: 3.18.6+dfsg1-1
Severity: minor
Tags: trixie sid ftbfs
User: lucas at debian.org
Usertags: ftbfs-sab-20230813 ftbfs-source-after-build
User: debian-qa at lists.debian.org
Usertags: qa-doublebuild
Hi,
This package fails to build a source package after a successful build
(dpkg-buildpackage ; dpkg-buildpackage -S).
This is probably a clear violation of Debian Policy section 4.9 (clean target),
but this is filed as severity:minor for now, because a discussion on
debian-devel showed that we might want to revisit the requirement of a working
'clean' target.
More information about this class of issues, included common problems and
solutions, is available at
https://wiki.debian.org/qa.debian.org/FTBFS/SourceAfterBuild
Relevant part of the build log:
> cd /<<PKGBUILDDIR>> && runuser -u user42 -- dpkg-buildpackage --sanitize-env -us -uc -rfakeroot -S
> ------------------------------------------------------------------------------------------------------------------------
>
> dpkg-buildpackage: info: source package petsc
> dpkg-buildpackage: info: source version 3.18.6+dfsg1-1
> dpkg-buildpackage: info: source distribution unstable
> dpkg-buildpackage: info: source changed by Drew Parsons <dparsons at debian.org>
> dpkg-source --before-build .
> fakeroot debian/rules clean
> dh clean --with python3,fortran_mod
> debian/rules override_dh_auto_clean
> make[1]: Entering directory '/<<PKGBUILDDIR>>'
> if [ -d x86_64-linux-gnu-real-debug -a -f x86_64-linux-gnu-real-debug/lib/petsc/conf/petscrules ]; then \
> dh_auto_clean -plibpetsc-real3.18-dbg -ppetsc3.18-doc -- \
> PETSC_DIR=/<<PKGBUILDDIR>> PETSC_ARCH=x86_64-linux-gnu-real-debug; \
> fi
> make -j8 distclean PETSC_DIR=/<<BUILDDIR>>/petsc-3.18.6\+dfsg1 PETSC_ARCH=x86_64-linux-gnu-real-debug
> make[2]: Entering directory '/<<PKGBUILDDIR>>'
> sed: -e expression #1, char 42: unknown option to `s'
> /bin/bash: line 4: [: too many arguments
> *** Preserving /<<PKGBUILDDIR>>/x86_64-linux-gnu-real-debug/lib/petsc/conf/reconfigure-x86_64-linux-gnu-real-debug.py in /<<PKGBUILDDIR>> ***
> *** Deleting all build files in /<<PKGBUILDDIR>>/x86_64-linux-gnu-real-debug ***
> /bin/rm -f -rf /<<PKGBUILDDIR>>/x86_64-linux-gnu-real-debug/
> make[2]: Leaving directory '/<<PKGBUILDDIR>>'
> if [ -d x86_64-linux-gnu-real -a -f x86_64-linux-gnu-real/lib/petsc/conf/petscrules ]; then \
> dh_auto_clean -plibpetsc-real3.18-dev -- \
> PETSC_DIR=/<<PKGBUILDDIR>> PETSC_ARCH=x86_64-linux-gnu-real; \
> fi
> make -j8 distclean PETSC_DIR=/<<BUILDDIR>>/petsc-3.18.6\+dfsg1 PETSC_ARCH=x86_64-linux-gnu-real
> make[2]: Entering directory '/<<PKGBUILDDIR>>'
> sed: -e expression #1, char 42: unknown option to `s'
> /bin/bash: line 4: [: too many arguments
> *** Preserving /<<PKGBUILDDIR>>/x86_64-linux-gnu-real/lib/petsc/conf/reconfigure-x86_64-linux-gnu-real.py in /<<PKGBUILDDIR>> ***
> *** Deleting all build files in /<<PKGBUILDDIR>>/x86_64-linux-gnu-real ***
> /bin/rm -f -rf /<<PKGBUILDDIR>>/x86_64-linux-gnu-real/
> make[2]: Leaving directory '/<<PKGBUILDDIR>>'
> if [ -d x86_64-linux-gnu-complex -a -f x86_64-linux-gnu-complex/lib/petsc/conf/petscrules ]; then \
> dh_auto_clean -plibpetsc-complex3.18-dev -- \
> PETSC_DIR=/<<PKGBUILDDIR>> PETSC_ARCH=x86_64-linux-gnu-complex; \
> fi
> make -j8 distclean PETSC_DIR=/<<BUILDDIR>>/petsc-3.18.6\+dfsg1 PETSC_ARCH=x86_64-linux-gnu-complex
> make[2]: Entering directory '/<<PKGBUILDDIR>>'
> sed: -e expression #1, char 42: unknown option to `s'
> /bin/bash: line 4: [: too many arguments
> *** Preserving /<<PKGBUILDDIR>>/x86_64-linux-gnu-complex/lib/petsc/conf/reconfigure-x86_64-linux-gnu-complex.py in /<<PKGBUILDDIR>> ***
> *** Deleting all build files in /<<PKGBUILDDIR>>/x86_64-linux-gnu-complex ***
> /bin/rm -f -rf /<<PKGBUILDDIR>>/x86_64-linux-gnu-complex/
> make[2]: Leaving directory '/<<PKGBUILDDIR>>'
> if [ -d x86_64-linux-gnu-complex-debug -a -f x86_64-linux-gnu-complex-debug/lib/petsc/conf/petscrules ]; then \
> dh_auto_clean -plibpetsc-complex3.18-dbg -- \
> PETSC_DIR=/<<PKGBUILDDIR>> PETSC_ARCH=x86_64-linux-gnu-complex-debug; \
> fi
> make -j8 distclean PETSC_DIR=/<<BUILDDIR>>/petsc-3.18.6\+dfsg1 PETSC_ARCH=x86_64-linux-gnu-complex-debug
> make[2]: Entering directory '/<<PKGBUILDDIR>>'
> sed: -e expression #1, char 42: unknown option to `s'
> /bin/bash: line 4: [: too many arguments
> *** Preserving /<<PKGBUILDDIR>>/x86_64-linux-gnu-complex-debug/lib/petsc/conf/reconfigure-x86_64-linux-gnu-complex-debug.py in /<<PKGBUILDDIR>> ***
> *** Deleting all build files in /<<PKGBUILDDIR>>/x86_64-linux-gnu-complex-debug ***
> /bin/rm -f -rf /<<PKGBUILDDIR>>/x86_64-linux-gnu-complex-debug/
> make[2]: Leaving directory '/<<PKGBUILDDIR>>'
> if [ -d x86_64-linux-gnu-real-debug -a -f x86_64-linux-gnu-real-debug/lib/petsc/conf/petscrules ]; then \
> dh_auto_clean -plibpetsc-real3.18-dbg -ppetsc3.18-doc -- \
> PETSC_DIR=/<<PKGBUILDDIR>> PETSC_ARCH=x86_64-linux-gnu-real-debug; \
> fi
> if [ -d x86_64-linux-gnu-real-64 -a -f x86_64-linux-gnu-real-64/lib/petsc/conf/petscrules ]; then \
> dh_auto_clean -plibpetsc64-real3.18-dev -- \
> PETSC_DIR=/<<PKGBUILDDIR>> PETSC_ARCH=x86_64-linux-gnu-real-64; \
> fi
> make -j8 distclean PETSC_DIR=/<<BUILDDIR>>/petsc-3.18.6\+dfsg1 PETSC_ARCH=x86_64-linux-gnu-real-64
> make[2]: Entering directory '/<<PKGBUILDDIR>>'
> sed: -e expression #1, char 42: unknown option to `s'
> /bin/bash: line 4: [: too many arguments
> *** Preserving /<<PKGBUILDDIR>>/x86_64-linux-gnu-real-64/lib/petsc/conf/reconfigure-x86_64-linux-gnu-real-64.py in /<<PKGBUILDDIR>> ***
> *** Deleting all build files in /<<PKGBUILDDIR>>/x86_64-linux-gnu-real-64 ***
> /bin/rm -f -rf /<<PKGBUILDDIR>>/x86_64-linux-gnu-real-64/
> make[2]: Leaving directory '/<<PKGBUILDDIR>>'
> if [ -d x86_64-linux-gnu-complex-64 -a -f x86_64-linux-gnu-complex-64/lib/petsc/conf/petscrules ]; then \
> dh_auto_clean -plibpetsc64-complex3.18-dev -- \
> PETSC_DIR=/<<PKGBUILDDIR>> PETSC_ARCH=x86_64-linux-gnu-complex-64; \
> fi
> make -j8 distclean PETSC_DIR=/<<BUILDDIR>>/petsc-3.18.6\+dfsg1 PETSC_ARCH=x86_64-linux-gnu-complex-64
> make[2]: Entering directory '/<<PKGBUILDDIR>>'
> sed: -e expression #1, char 42: unknown option to `s'
> /bin/bash: line 4: [: too many arguments
> *** Preserving /<<PKGBUILDDIR>>/x86_64-linux-gnu-complex-64/lib/petsc/conf/reconfigure-x86_64-linux-gnu-complex-64.py in /<<PKGBUILDDIR>> ***
> *** Deleting all build files in /<<PKGBUILDDIR>>/x86_64-linux-gnu-complex-64 ***
> /bin/rm -f -rf /<<PKGBUILDDIR>>/x86_64-linux-gnu-complex-64/
> make[2]: Leaving directory '/<<PKGBUILDDIR>>'
> if [ -d x86_64-linux-gnu-complex-debug-64 -a -f x86_64-linux-gnu-complex-debug-64/lib/petsc/conf/petscrules ]; then \
> dh_auto_clean -plibpetsc64-complex3.18-dbg -- \
> PETSC_DIR=/<<PKGBUILDDIR>> PETSC_ARCH=x86_64-linux-gnu-complex-debug-64; \
> fi
> make -j8 distclean PETSC_DIR=/<<BUILDDIR>>/petsc-3.18.6\+dfsg1 PETSC_ARCH=x86_64-linux-gnu-complex-debug-64
> make[2]: Entering directory '/<<PKGBUILDDIR>>'
> sed: -e expression #1, char 42: unknown option to `s'
> /bin/bash: line 4: [: too many arguments
> *** Preserving /<<PKGBUILDDIR>>/x86_64-linux-gnu-complex-debug-64/lib/petsc/conf/reconfigure-x86_64-linux-gnu-complex-debug-64.py in /<<PKGBUILDDIR>> ***
> *** Deleting all build files in /<<PKGBUILDDIR>>/x86_64-linux-gnu-complex-debug-64 ***
> /bin/rm -f -rf /<<PKGBUILDDIR>>/x86_64-linux-gnu-complex-debug-64/
> make[2]: Leaving directory '/<<PKGBUILDDIR>>'
> make[1]: Leaving directory '/<<PKGBUILDDIR>>'
> debian/rules override_dh_clean
> make[1]: Entering directory '/<<PKGBUILDDIR>>'
> if [ -d x86_64-linux-gnu-real-debug -a -f x86_64-linux-gnu-real-debug/lib/petsc/conf/petscrules ]; then \
> dh_auto_clean -plibpetsc-real3.18-dbg -ppetsc3.18-doc -- \
> PETSC_DIR=/<<PKGBUILDDIR>> PETSC_ARCH=x86_64-linux-gnu-real-debug; \
> fi
> if [ -d x86_64-linux-gnu-real -a -f x86_64-linux-gnu-real/lib/petsc/conf/petscrules ]; then \
> dh_auto_clean -plibpetsc-real3.18-dev -- \
> PETSC_DIR=/<<PKGBUILDDIR>> PETSC_ARCH=x86_64-linux-gnu-real; \
> fi
> if [ -d x86_64-linux-gnu-complex -a -f x86_64-linux-gnu-complex/lib/petsc/conf/petscrules ]; then \
> dh_auto_clean -plibpetsc-complex3.18-dev -- \
> PETSC_DIR=/<<PKGBUILDDIR>> PETSC_ARCH=x86_64-linux-gnu-complex; \
> fi
> if [ -d x86_64-linux-gnu-complex-debug -a -f x86_64-linux-gnu-complex-debug/lib/petsc/conf/petscrules ]; then \
> dh_auto_clean -plibpetsc-complex3.18-dbg -- \
> PETSC_DIR=/<<PKGBUILDDIR>> PETSC_ARCH=x86_64-linux-gnu-complex-debug; \
> fi
> if [ -d x86_64-linux-gnu-real-debug -a -f x86_64-linux-gnu-real-debug/lib/petsc/conf/petscrules ]; then \
> dh_auto_clean -plibpetsc-real3.18-dbg -ppetsc3.18-doc -- \
> PETSC_DIR=/<<PKGBUILDDIR>> PETSC_ARCH=x86_64-linux-gnu-real-debug; \
> fi
> if [ -d x86_64-linux-gnu-real-64 -a -f x86_64-linux-gnu-real-64/lib/petsc/conf/petscrules ]; then \
> dh_auto_clean -plibpetsc64-real3.18-dev -- \
> PETSC_DIR=/<<PKGBUILDDIR>> PETSC_ARCH=x86_64-linux-gnu-real-64; \
> fi
> if [ -d x86_64-linux-gnu-complex-64 -a -f x86_64-linux-gnu-complex-64/lib/petsc/conf/petscrules ]; then \
> dh_auto_clean -plibpetsc64-complex3.18-dev -- \
> PETSC_DIR=/<<PKGBUILDDIR>> PETSC_ARCH=x86_64-linux-gnu-complex-64; \
> fi
> if [ -d x86_64-linux-gnu-complex-debug-64 -a -f x86_64-linux-gnu-complex-debug-64/lib/petsc/conf/petscrules ]; then \
> dh_auto_clean -plibpetsc64-complex3.18-dbg -- \
> PETSC_DIR=/<<PKGBUILDDIR>> PETSC_ARCH=x86_64-linux-gnu-complex-debug-64; \
> fi
> dh_clean
> rm -f *.log *.log.bkp configtest.mod
> rm -f src/vec/vec/tests/x.h5
> rm -f lib/petsc/conf/petscvariables
> rm -f reconfigure-*.py
> find config -name *.pyc | xargs rm -f
> rm -f CMakeLists.txt simplemake
> rm -rf x86_64-linux-gnu-real x86_64-linux-gnu-real-debug x86_64-linux-gnu-complex x86_64-linux-gnu-complex-debug \
> x86_64-linux-gnu-real-64 x86_64-linux-gnu-real-debug-64 x86_64-linux-gnu-complex-64 x86_64-linux-gnu-complex-debug-64
> make[1]: Leaving directory '/<<PKGBUILDDIR>>'
> dpkg-source -b .
> dpkg-source: info: using source format '3.0 (quilt)'
> dpkg-source: info: building petsc using existing ./petsc_3.18.6+dfsg1.orig.tar.xz
> dpkg-source: info: using patch list from debian/patches/series
> dpkg-source: warning: ignoring deletion of file TAGS, use --include-removal to override
> dpkg-source: error: cannot represent change to lib/petsc/bin/__pycache__/petscnagupgrade.cpython-311.pyc: binary file contents changed
> dpkg-source: error: add lib/petsc/bin/__pycache__/petscnagupgrade.cpython-311.pyc in debian/source/include-binaries if you want to store the modified binary in the debian tarball
> dpkg-source: error: unrepresentable changes to source
> dpkg-buildpackage: error: dpkg-source -b . subprocess returned exit status 1
>
> E: Command 'cd /<<PKGBUILDDIR>> && runuser -u user42 -- dpkg-buildpackage --sanitize-env -us -uc -rfakeroot -S' failed to run.
The full build log is available from:
http://qa-logs.debian.net/2023/08/13/petsc_3.18.6+dfsg1-1_unstable.log
If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects
If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.
More information about the debian-science-maintainers
mailing list