From: Ioan-Adrian Ratiu <adrian.ratiu@ni.com>
To: openembedded-devel@lists.openembedded.org
Subject: Re: [meta-oe][PATCH V2] meta-oe: recipes-devtools: add libubox recipe
Date: Thu, 1 Oct 2015 16:10:37 +0300 [thread overview]
Message-ID: <560D30CD.7000404@ni.com> (raw)
In-Reply-To: <20151001112138.GA2403@jama>
On 01.10.2015 14:21, Martin Jansa wrote:
> On Thu, Oct 01, 2015 at 12:18:32PM +0300, Ioan-Adrian Ratiu wrote:
>> On 30.09.2015 18:24, Khem Raj wrote:
>>>
>>>> On Sep 30, 2015, at 4:15 AM, Ioan-Adrian Ratiu <adrian.ratiu@ni.com> wrote:
>>>>
>>>> libubox contains C utility functions used by OpenWrt projects
>>>>
>>>> Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com>
>>>> ---
>>>> meta-oe/recipes-devtools/libubox/libubox_git.bb | 32 +++++++++++++++++++++++++
>>>> 1 file changed, 32 insertions(+)
>>>> create mode 100644 meta-oe/recipes-devtools/libubox/libubox_git.bb
>>>>
>>>> diff --git a/meta-oe/recipes-devtools/libubox/libubox_git.bb b/meta-oe/recipes-devtools/libubox/libubox_git.bb
>>>> new file mode 100644
>>>> index 0000000..4be3ac1
>>>> --- /dev/null
>>>> +++ b/meta-oe/recipes-devtools/libubox/libubox_git.bb
>>>> @@ -0,0 +1,32 @@
>>>> +DESCRIPTION = "C utility functions for OpenWrt"
>>>> +SECTION = "libs"
>>>> +LICENSE = "libubox-custom-license”
>>>
>>> where is the license file ?
>>>
>>
>> There is no global license file, only the license headers specified per
>> files, of which I tried to list all the unique ones in the
>> LIC_FILES_CHKSUM. I'm still at a loss what to put in the LICENSE
>> variable. Any suggestions?
>>
>>>> +LIC_FILES_CHKSUM = "\
>>>> + file://avl.c;endline=39;md5=00810155fed3d604816ec5814523d60a \
>>>> + file://avl-cmp.c;endline=15;md5=1603e6094b432a5f3f320877a06f41b5 \
>>>> + file://base64.c;endline=61;md5=51fdff010d45b0086ac0a6e035693dc0 \
>>>> + file://blobmsg.c;endline=15;md5=7ed64c1570e8c9b46c4fc6fbd16c489e \
>>>> + file://list.h;endline=28;md5=2d5f5475fbd0f08741354c5a99c2e983 \
>>>> + file://md5.h;endline=39;md5=048bf9f68963c207a0c2b3a94c9d2aaa \
>>>> + file://md5.c;endline=51;md5=0a448eea0bcbc89e3c7e6608f2d119a0 \
>>>> + file://usock.h;endline=18;md5=f0dfdc8de858e66d66d74036611bba14 \
>>>> +"
>>>> +
>>>> +PACKAGES = "${PN} ${PN}-dbg ${PN}-dev ${PN}-staticdev”
>>>
>>> why override default PACKAGES ?
>>>
>>
>> This is related with the issue below, please see my explanation there.
>>
>>>> +
>>>> +DEPENDS = "json-c"
>>>> +
>>>> +SRC_URI = "git://git.openwrt.org/project/libubox.git"
>>>> +
>>>> +SRCREV = "136a5196266d03d537f822c4e67d2fde2ed59505"
>>>> +
>>>> +S = "${WORKDIR}/git"
>>>> +
>>>> +inherit cmake
>>>> +
>>>> +EXTRA_OECMAKE = "-DBUILD_EXAMPLES=OFF -DBUILD_LUA=OFF"
>>>> +
>>>> +FILES_${PN} += "\
>>>> + ${libdir}/libubox.so \
>>>> + ${libdir}/libblobmsg_json.so \
>>>
>>> can they be versioned ?
>>>
>>
>> My initial problem in patch v1 was that I was getting this dev-deps
>> error (I used INSANE_SKIP to suppress it):
>>
>> ERROR: QA Issue: libubox rdepends on libubox-dev [dev-deps]
>> ERROR: QA run found fatal errors. Please consider fixing them.
>> ERROR: Function failed: do_package_qa
>>
>> Martin J. told me to fix the issue properly for these recipes.
>>
>> Now, in v2, I've made it go away by reordering ${PN} in front of
>> ${PN}-dev in PACKAGES and explicitly adding these files to FILES_${PN}.
>> If I use the default PACKAGES variable, or do not add the libraries to
>> FILES_${PN}, that error reappears.
>>
>> I don't have a level of knowledge-depth of the OE packaging mechanism to
>> fully understand what is happening here and I couldn't find more info in
>> the docs... So any help on this is very much appreciated :)
>
> I'm surprised that there are still many people confused by this and that
> the docs aren't clear enough.
>
> I'm not tech. writer, but I would explain it like this:
>
> Packaging rules:
>
> 1) Each installed file (in ${D} directory), should be packaged in exactly
> one package. If it matches in multiple FILES_<pkg> patterns, then first
> package wins (see bellow), if it isn't matched in any FILES_<pkg>
> variable, then it's not packaged at all and QA warning
> installed-not-packaged is shown.
> 2) Files are "moved" to packages in order of PACKAGES variable, so if
> FILES_<pkg1> has more generic pattern than FILES_<pkg2> then pkg1 needs
> to be _after_ pkg2 in PACKAGES variable or pkg1 will get all files and
> pkg2 none.
>
> To apply this on your problem, if you really want to move all .so files
> to PN (normally they are symlinks to versioned .so.X.Y.Z and really
> belong to PN-dev). Typical exception to this rule are some .so modules
> loaded by the application itself instead of normal shlib loader.
>
> You have 2 options (first one is better)
>
> 1) restrict FILES_${PN}-dev to prevent it from "eating" these .so. I
> prefer to set FILES_SOLIBSDEV instead of redefinition of whole
> FILES_${PN}-dev
>
> 2) change order of PACKAGES by re-defining it in the recipe - harder to
> introduce new global PACKAGES
>
Thank you very much for clarifying this. I will rewrite and resubmit.
next prev parent reply other threads:[~2015-10-01 13:10 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-30 8:48 [meta-oe][PATCH] meta-oe: recipes-devtools: add libubox recipe Ioan-Adrian Ratiu
2015-09-30 11:15 ` [meta-oe][PATCH V2] " Ioan-Adrian Ratiu
2015-09-30 15:24 ` Khem Raj
2015-10-01 9:18 ` Ioan-Adrian Ratiu
2015-10-01 11:21 ` Martin Jansa
2015-10-01 13:10 ` Ioan-Adrian Ratiu [this message]
2015-10-01 13:16 ` Khem Raj
2015-10-01 13:16 ` Ioan-Adrian Ratiu
2015-10-01 14:08 ` [meta-oe][PATCH V3] " Ioan-Adrian Ratiu
2015-10-01 14:23 ` Martin Jansa
2015-10-01 14:31 ` [meta-oe][PATCH V4] " Ioan-Adrian Ratiu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=560D30CD.7000404@ni.com \
--to=adrian.ratiu@ni.com \
--cc=openembedded-devel@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.