When using the dpkg 3.0 (quilt) format (see debian/source/format) there might be quilt patches still applied in the source tree, either because of a broken build or under certain - though not yet clearly identified - situations which seem to end with a "diff: standard output: Broken pipe" message in the build log. This then might end up in a build failure like: | + cd /var/lib/jenkins/workspace/glusterfs-source | + dpkg-source -i -I -b source | dpkg-source: info: using source format `3.0 (quilt)' | diff: standard output: Broken pipe | diff: standard output: Broken pipe | dpkg-source: info: building glusterfs using existing ./glusterfs_3.2.7.orig.tar.gz | dpkg-source: info: local changes detected, the modified files are: | source/ChangeLog | source/doc/gluster.8 | source/doc/glusterfs.8 | source/libglusterfs/src/common-utils.c | source/rpc/rpc-lib/src/rpcsvc.c | source/xlators/mgmt/glusterd/src/glusterd-rpc-ops.c | dpkg-source: error: aborting due to unexpected upstream changes, see /tmp/glusterfs_3.2.7-2~bpo60+1.diff.3Wkisr | dpkg-source: info: you can integrate the local changes with dpkg-source --commit While everything has been cleanly integrated in debian/patches/ the build process fails because it looks like there have been modifications to upstream sources whereas it's just wrong information about patches applied. So instead make sure we enter a clean git repository before doing any changes (this can be skipped via SKIP_GIT_CLEANUP=true) and also unapply all present quilt patches (this can be skipped via SKIP_QUILT_CLEANUP=true). Finally replace the dpkg-source call with dpkg-buildpackage and its --source-option=--unapply-patches feature. While the combination of the git cleanup, quilt cleanup and dpkg-source->dpkg-buildpackage is more than explicitely necessary this provides more flexibility if needed. Thanks: Raphael Hertzog <hertzog@debian.org> for his dpkg related feedbackremotes/origin/mika/use_dsc_instead_of_tar
parent
8d10e82c56
commit
63d6c47ce5
Loading…
Reference in new issue