[Mageia-dev] [changelog] [RPM] cauldron core/release coreutils-8.17-2.mga3

Olivier Blin mageia at blino.org
Mon Aug 13 14:00:53 CEST 2012


Guillaume Rousse <guillomovitch at gmail.com> writes:

> Le 13/08/2012 13:02, Colin Guthrie a écrit :
>> 'Twas brillig, and Pascal Terjan at 13/08/12 11:44 did gyre and gimble:
>>> On Sun, Jul 22, 2012 at 12:00 AM, Iurt the rebuild bot
>>> <buildsystem-daemon at mageia.org> wrote:
>>>> Name        : coreutils                    Relocations: (not relocatable)
>>>> Version     : 8.17                              Vendor: Mageia.Org
>>>> Release     : 2.mga3                        Build Date: Sat 21 Jul 2012 09:49:45 PM CEST

[...]

>>>> colin <colin> 8.17-2.mga3:
>>>> + Revision: 273158
>>>> - Update for usrmove
>>>
>>> This broke a few packages requiring /bin/rm or /bin/ln which are no
>>> longer provided by coreutils
>>>
>>> apache-portlet-1.0-api-javadoc (from apache-portlet-1.0-api)
>>> esmska-javadoc (from esmska)
>>> mx4j
>>> regexp-javadoc (from regexp)
>>> rt
>>> tomcat5-admin-webapps (from tomcat5)
>>
>> Hmm, indeed. How are these things "Provided" anyway? I mean they are not
>> in the list of the --provides, so how is this resolved? Does rpm have a
>> special mode for detecting these kind of provides? If so how does it
>> resolve it with urpmi?
> Unless something changed, files dependencies are resolved at
> hdlist-generation time as soon as another package requires them.

Yes, using the file-deps file.

> For instance, the following line in RT spec file will make genhdlist
> map /bin/rm to coreutils in the hdlist.cz:
> Requires(postun): /bin/rm

IIRC, if a package contains files listed in file-deps, these files are
added to its "provides" list by genhdlist.

$ zcat
/distrib/mageia/distrib/2/x86_64/media/core/release/media_info/synthesis.hdlist.cz
| grep -A 6 '^\@provides.*\@/bin/rm'
@provides at mktemp[== 8.15]@stat[==
8.15]@/usr/bin/env@/bin/env at libstdbuf.so()(64bit)@coreutils[==
8.15-1.mga2]@coreutils(x86-64)[==
8.15-1.mga2]@/bin/rm@/bin/ls@/bin/stty@/usr/bin/tr@/bin/ln@/bin/cp
@conflicts at tetex[< 1.0.7-49]
@obsoletes at mktemp[< 8.15]@base64
@requires at pam[>=
0.66-12]@libacl.so.1()(64bit)@libattr.so.1()(64bit)@libc.so.6()(64bit)@libc.so.6(GLIBC_2.14)(64bit)@libc.so.6(GLIBC_2.2.5)(64bit)@libc.so.6(GLIBC_2.3)(64bit)@libc.so.6(GLIBC_2.3.4)(64bit)@libc.so.6(GLIBC_2.4)(64bit)@libc.so.6(GLIBC_2.6)(64bit)@libc.so.6(GLIBC_2.7)(64bit)@libcap.so.2()(64bit)@libgmp.so.10()(64bit)@libpam.so.0()(64bit)@libpam_misc.so.0()(64bit)@libpthread.so.0()(64bit)@libpthread.so.0(GLIBC_2.2.5)(64bit)@libpthread.so.0(GLIBC_2.3.2)(64bit)@librt.so.1()(64bit)@librt.so.1(GLIBC_2.2.5)(64bit)@librt.so.1(GLIBC_2.3.3)(64bit)@rtld(GNU_HASH)
@summary at The GNU core utilities: a set of tools commonly used in shell
scripts
@filesize at 1803563
@info at coreutils-8.15-1.mga2.x86_64@0 at 12798923@System/Base

> I don't know how this work at rpm level, tough, in order to make 'rpm
> -Uvh rt-4.0.6-1.mga3.noarch" work without urpmi support. Probably
> checking in the list of files available in the target rpm.

rpm is likely using the list of files from its db

$ rpm -q --provides coreutils | grep /bin/rm
$ rpm -q --whatprovides /bin/rm
coreutils-8.17-3.mga3


-- 
Olivier Blin - blino


More information about the Mageia-dev mailing list