[Buildd-tools-devel] Bug#483338: Bug#483338: sbuild: ~*=PROVIDED=*= hack breaks build-conflicts
Roger Leigh
rleigh at whinlatter.ukfsn.org
Sat Aug 16 11:08:25 UTC 2008
tags 483338 + fixed-upstream pending
thanks
Lucas Nussbaum <lucas at lucas-nussbaum.net> writes:
> tags 483338 + patch
> thanks
>
> On 28/05/08 at 14:43 +0200, Lucas Nussbaum wrote:
>> Package: sbuild
>> Version: 0.57.3-1
>>
>> Hi,
>>
>> With the sbuild version from git master, versioned build-conflicts on
>> provided packages cause builds to abort.
>>
>> This should probably be special-cased.
>>
>> Example packages:
>> came:
>> dpkg - warning: ignoring request to remove linux-kernel-headers which isn't installed.
>> Checking correctness of source dependencies...
>> After installing, the following source dependencies are still unsatisfied:
>> linux-kernel-headers(inst ~*=PROVIDED=*= << conflicted 2.5.999-test7-bk-10)
>> Source-dependencies not satisfied; skipping came
>>
>> dovecot:
>> dpkg - warning: ignoring request to remove linux-kernel-headers which isn't installed.
>> Checking correctness of source dependencies...
>> After installing, the following source dependencies are still unsatisfied:
>> linux-kernel-headers(inst ~*=PROVIDED=*= <= conflicted 2.5.999-test7-bk-17)
>> Source-dependencies not satisfied; skipping dovecot
>>
>> mysql-gui-tools:
>> Checking correctness of source dependencies...
>> After installing, the following source dependencies are still unsatisfied:
>> libmysqlclient-dev(inst ~*=PROVIDED=*= << conflicted 4.1)
>> Source-dependencies not satisfied; skipping mysql-gui-tools
>>
>> t38modem:
>> dpkg - warning: ignoring request to remove linux-kernel-headers which
>> isn't installed.
>> Checking correctness of source dependencies...
>> After installing, the following source dependencies are still
>> unsatisfied:
>> linux-kernel-headers(inst ~*=PROVIDED=*= << conflicted
>> 2.5.999-test7-bk-14)
>> Source-dependencies not satisfied; skipping t38modem
>>
>> transfig:
>> Checking correctness of source dependencies...
>> After installing, the following source dependencies are still
>> unsatisfied:
>> gs-esp(inst ~*=PROVIDED=*= << conflicted 8.50)
>> Source-dependencies not satisfied; skipping transfig
>
> Hi,
>
> Here is a patch for this issue:
>
> diff --git a/lib/Sbuild/Build.pm b/lib/Sbuild/Build.pm
> index 792d4c4..64127bf 100644
> --- a/lib/Sbuild/Build.pm
> +++ b/lib/Sbuild/Build.pm
> @@ -1310,6 +1310,10 @@ sub check_dependencies (\$\@) {
> if (!$dep->{'Rel'}) {
> $fail .= "$name(still installed) ";
> }
> + elsif ($stat->{'Version'} == '~*=PROVIDED=*=') {
> + # It's a versioned build-conflict, but we installed
> + # a package that provides the conflicted package. It's ok.
> + }
> elsif (version_compare($stat->{'Version'}, $dep->{'Rel'},
> $dep->{'Version'})) {
> $fail .= "$name(inst $stat->{'Version'} $dep->{'Rel'} ".
Thanks. I've applied this to the master and sbuild-lenny branches.
However, there's an annoying warning (probably already existing, but
I'd like to squash it):
Argument "~*=PROVIDED=*=" isn't numeric in numeric eq (==) at lib/Sbuild/Build.pm line 1310.
Is a numeric comparison approprate here, or should we just check that
"$dep->{'Rel'}" both exists and is not an empty string??
if ($dep->{'Neg'}) {
if ($stat->{'Installed'}) {
1310 if (!$dep->{'Rel'}) {
$fail .= "$name(still installed) ";
}
elsif ($stat->{'Version'} == '~*=PROVIDED=*=') {
# It's a versioned build-conflict, but we installed
# a package that provides the conflicted package. It's ok.
}
elsif (version_compare($stat->{'Version'}, $dep->{'Rel'},
$dep->{'Version'})) {
$fail .= "$name(inst $stat->{'Version'} $dep->{'Rel'} ".
"conflicted $dep->{'Version'})\n";
}
}
}
Regards,
Roger
--
.''`. Roger Leigh
: :' : Debian GNU/Linux http://people.debian.org/~rleigh/
`. `' Printing on GNU/Linux? http://gutenprint.sourceforge.net/
`- GPG Public Key: 0x25BFB848 Please GPG sign your mail.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url : http://lists.alioth.debian.org/pipermail/buildd-tools-devel/attachments/20080816/a3740889/attachment.pgp
More information about the Buildd-tools-devel
mailing list