[oe] [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package

Wenlin Kang wenlin.kang at windriver.com
Mon Jun 11 06:49:19 UTC 2018


On 2018年06月08日 18:07, Richard Leitner wrote:
> On 06/08/2018 11:02 AM, Wenlin Kang wrote:
>> On 2018年06月08日 15:39, Richard Leitner wrote:
>>> Hi,
>>> thank you for you patch!
>>>
>>> On 06/07/2018 11:24 AM, Wenlin Kang wrote:
>>>> One recipe should only have one -dbg package, because OE only picks
>>>> up all .debug file into the last one -dbg package listed in variable
>>>> PACKAGES.
>>> Why should one recipe, altough it conains multiple packages have only
>>> one dbg package? Shouldn't the openjdk-8-demo-dbg package contain the
>>> debug information for the openjdk-8-demo package?
>> This may be OE's policy, if one recipe contain multiple -dbg package , other -dbg packages all will be
>> a empty pacakge, only have one will contain all .debug file,  you can see the source "meta/classes/package.bbclass"
> But obviously the demo-dbg package isn't empty because it has its "FILES" defined ;-)

Hi Richard

You can check each -dbg directory under packages-split/, will find only 
one -dbg package has .debug file.

>
>> 1129 python populate_packages () {
>> 1130     import glob, re
>>
>> 1156     for pkg in packages.split():
>> 1157         if pkg in package_list:
>> 1158             msg = "%s is listed in PACKAGES multiple times, this leads to packaging errors." % pkg
>> 1159             package_qa_handle_error("packages-list", msg, d)
>> 1160         # If debug-with-srcpkg mode is enabled then the src package will have
>> 1161         # priority over dbg package when assigning the files.
>> 1162         # This allows src package to include source files and remove them from dbg.
>> 1163         elif split_source_package and pkg.endswith("-src"):
>> 1164             package_list.insert(0, pkg)
>> 1165         elif autodebug and pkg.endswith("-dbg") and not split_source_package:    <==============
>> 1166             package_list.insert(0, pkg)
>> 1167         else:
>> 1168             package_list.append(pkg)
>> 1169     d.setVar('PACKAGES', ' '.join(package_list))
>> 1170     pkgdest = d.getVar('PKGDEST')
>> ...
>>
>> 1177     debug = []
>> 1178     for root, dirs, files in cpath.walk(dvar):
>> 1179         dir = root[len(dvar):]
>> 1180         if not dir:
>> 1181             dir = os.sep
>> 1182         for f in (files + dirs):
>> 1183             path = "." + os.path.join(dir, f)
>> 1184             if "/.debug/" in path or path.endswith("/.debug"):    <==============
>> 1185                 debug.append(path)
>> 1186
>>
>>> Nonehteless according to my first quick test the demo-dbg package
>>> contains lots of other debug information too...
>>> So maybe it would be the better way to fix the content of the different
>>> dbg packages rather than removing one?
>> I also thought this, but  after discussing with the other guys,  the result is a recipe can only have
>> a -dbg package, and this is OE's policy.
> Do you have a pointer to this discussion (or if it exists to the according documentation) for us?
>
> Thanks & regards;Richard.L


-- 
Thanks,
Wenlin Kang




More information about the Openembedded-devel mailing list