[oe] Understanding recipes vs packages

Charles Manning cdhmanning at gmail.com
Mon Nov 7 22:34:48 UTC 2011


On Mon, Nov 7, 2011 at 6:15 PM, Xu, Dongxiao <dongxiao.xu at intel.com> wrote:
> Hi Charles,
>
>> -----Original Message-----
>> From: openembedded-devel-bounces at lists.openembedded.org
>> [mailto:openembedded-devel-bounces at lists.openembedded.org] On Behalf Of
>> Charles Manning
>> Sent: Monday, November 07, 2011 11:32 AM
>> To: openembedded-devel at lists.openembedded.org
>> Subject: [oe] Understanding recipes vs packages
>>
>> Hello
>>
>> Something very weird is going on with some changes I have made recently to a
>> custom image I am building.
>>
>> For some reason I was getting libpng12 built and now that no longer happens.
>>
>> In debugging this I've been doing things that now stump me.
>>
>> From my understanding, a recipe can build multiple different packages.
>> For example libpng.inc has the following in it:
>
> Yes, it is correct.
>
>>
>> PACKAGES =+ "${PN}12-dbg ${PN}12 ${PN}12-dev"
>>
>> FILES_${PN}12-dbg += "${libdir}/libpng12*.dbg"
>> FILES_${PN}12 = "${libdir}/libpng12.so.*"
>> FILES_${PN}12-dev = "${libdir}/libpng12.* ${includedir}/libpng12
>> ${libdir}/pkgconfig/libpng12.pc"
>> FILES_${PN} = "${libdir}/lib*.so.*"
>> FILES_${PN}-dev = "${includedir} ${libdir}/lib*.so ${libdir}/*.la \
>>               ${libdir}/*.a ${libdir}/pkgconfig \
>>               ${datadir}/aclocal ${bindir} ${sbindir}"
>>
>>
>> Does that mean I should be able to build  libgpng12 as follows:
>>
>> bitbake libpng12
>
> No, package name could not be passed to bitbake as a parameter.
>
> Bitbake can accept a recipe name as its parameter, and it will process tasks like "do_fetch", "do_unpack", ..., "do_package", etc. for that recipe. In the above case, libpng12 will be generated in do_package task, and then it will be archived into rpm/ipk/deb package formats.
>
> Try to run "bitbake libpng" and see if libpng12 is generated.

Yes it is.

OK thanks for the clarification....

So if I want to put the libpng12 in an image then do I need to do
something like:

# Add libpng to DEPENDS to get the recipe to build
# Add libpng12 to IMAGE_INSTALL because that's what I want in the package

DEPENDS += " libpng"
IMAGE_INSTALL += " libpng12"




More information about the Openembedded-devel mailing list