Hi,

> > > If dpkg-cross is installed, it provides it's own dpkg-buildpackage,
> > > which potentially replaces the *_${arch}.changes file with
> > > *_source+${arch}.changes. When debuild calls helpers like lintian or
> > > debsign, these will fail because debuild assumes the
> > > *_${arch}.changes filename.
> > > [...]

I tried to reproduce the situation where 'source+arch' appears, but failed.

And, as far as I can read the code, dpkg-cross version of dpkg-buildpackage 
should not do this.

First, before doing any .changes processing, it checks if there are exactly 
two files that match pattern ${package}_${version}_*.changes; if there is 
only one (which should be the case when not cross-compiling), it does not 
touch .changes.

Second, if there are two matching files, the 'arch part' of the name of 
merged changes file is built from 'arch parts' of existing .changes files. 
This procedure can't add 'source' there unless it was already there on 
original files.

So could the bug submitter please help to reproduce the situation?


As for debuld, if it wishes to support cross-compiling case, when 
just-created .changes file may be merged with previous-existing .changes 
file for other architecurre(s), it could get .changes file not with
$changes="${pkg}_${sversion}_${arch}.changes"
but instead check for a file that matches the pattern 
"${pkg}_${sversion}_*.changes"
There should be exactly one such file, either one created by 
dpkg-buildpackage, or the result of merge.

Nikita

Attachment: pgp90xvN6U1wd.pgp
Description: PGP signature

Reply via email to