Hi everybody,

i am using Poky/Pyro for one of my projects. The chosen Package Format is
RPM.

After some hours of debugging in ran into this pretty interesting behaviour
were i would guess it is a bug...

My starting point was a really simple  HelloWorld Recipe:
---------- snip ----------------
$ cat helloworld_0.1.bb
DESCRIPTION = "Simple helloworld application"
LICENSE = "CLOSED"
RDEPENDS_${PN}+="procps"
do_compile() {
             echo 'int main(int argc, char **argv) { return 0; }' >
helloworld.c
             ${CC} ${LDFLAGS} helloworld.c -o helloworld
}

do_install() {
             install -d ${D}${bindir}
             install -m 0755 helloworld ${D}${bindir}
}
---------- snap --------------

As you can see it does just compile a program that is immediately
returning.
However it introduces an arbitrary runtime dependency to procps
Building it results in an RPM that depends to procps

---------------snip -------------------
$ rpm -qpR helloworld-0.1-r0.cortexa7hf_neon_vfpv4.rpm
libc6 >= 2.25
procps
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
---------- snap --------------


Now the strange thing happens: copy the helloworld_0.1.bb to
Helloworld_0.1.bb
So the only difference is the lowercase vs capital "H" in the recipe name.

rebuild and look at the rpm dependencies
----------- snip --------------------------
$ rpm -qpR Helloworld-0.1-r0.cortexa7hf_neon_vfpv4.rpm
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
------------- snap ------------------------

both the libc as well as the procps dependencies are gone...
It is also gone in the spec-file and already forgotton in the
package_rpm.class

Other than the omitted dependencies the rpm looks fine. It contains the
binary as well as hashes etc...


Anybody can explain me if this is intended or do i run into a bug?

Many thanks and best regards
  Torsten
-- 
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto

Reply via email to