All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-java][PATCH 1/2] openjdk-8: remove debuglink
@ 2018-06-07  9:24 Wenlin Kang
  2018-06-07  9:24 ` [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package Wenlin Kang
  2018-06-12 11:09 ` [meta-java][PATCH 1/2] openjdk-8: remove debuglink Richard Leitner
  0 siblings, 2 replies; 19+ messages in thread
From: Wenlin Kang @ 2018-06-07  9:24 UTC (permalink / raw)
  To: openembedded-devel

We need remove previous debuglink before add it if it has existed,
because it may have a different file name with this that we will add.

Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
---
 recipes-core/openjdk/openjdk-8-cross.inc | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/recipes-core/openjdk/openjdk-8-cross.inc b/recipes-core/openjdk/openjdk-8-cross.inc
index 46f13fd..03cab11 100644
--- a/recipes-core/openjdk/openjdk-8-cross.inc
+++ b/recipes-core/openjdk/openjdk-8-cross.inc
@@ -105,5 +105,21 @@ EXTRA_OEMAKE_append = '\
     images \
 '
 
+python remove_debuglink() {
+    dvar = d.getVar('PKGD', True)
+    objcopy = d.getVar("OBJCOPY", True)
+
+    # Remove the previous debuglink if it has existed, because it has a different file name with that we will add.
+    if d.getVar('PN', True).find("jre") != -1:
+        file = dvar + d.getVar("JRE_HOME", True) + "/lib/" + d.getVar("JDK_ARCH", True) + "/server/libjvm.so"
+    else:
+        file = dvar + d.getVar("JDK_HOME", True) + "/jre/lib/" + d.getVar("JDK_ARCH", True) + "/server/libjvm.so"
+
+    cmd = "'%s' --remove-section .gnu_debuglink '%s'" % (objcopy, file)
+    oe.utils.getstatusoutput(cmd)
+}
+
+PACKAGE_PREPROCESS_FUNCS += "remove_debuglink"
+
 # There is a symlink to a .so but this one is valid.
 INSANE_SKIP_${PN} = "dev-so"
-- 
2.11.0



^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package
  2018-06-07  9:24 [meta-java][PATCH 1/2] openjdk-8: remove debuglink Wenlin Kang
@ 2018-06-07  9:24 ` Wenlin Kang
  2018-06-08  7:39   ` Richard Leitner
  2018-06-12  8:01   ` Richard Leitner
  2018-06-12 11:09 ` [meta-java][PATCH 1/2] openjdk-8: remove debuglink Richard Leitner
  1 sibling, 2 replies; 19+ messages in thread
From: Wenlin Kang @ 2018-06-07  9:24 UTC (permalink / raw)
  To: openembedded-devel

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.

Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
---
 recipes-core/openjdk/openjdk-8_16xbyy.bb | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/recipes-core/openjdk/openjdk-8_16xbyy.bb b/recipes-core/openjdk/openjdk-8_16xbyy.bb
index dd0ed1d..1d7d794 100644
--- a/recipes-core/openjdk/openjdk-8_16xbyy.bb
+++ b/recipes-core/openjdk/openjdk-8_16xbyy.bb
@@ -14,7 +14,6 @@ do_install() {
 }
 
 PACKAGES_append = " \
-    ${PN}-demo-dbg \
     ${PN}-demo \
     ${PN}-source \
 "
@@ -47,12 +46,6 @@ FILES_${PN}-dbg_append = "\
     ${JDK_HOME}/jre/lib/${JDK_ARCH}/headless/.debug/ \
     ${JDK_HOME}/jre/lib/${JDK_ARCH}/xawt/.debug/ \
     ${JDK_HOME}/jre/lib/${JDK_ARCH}/client/.debug/ \
-"
-
-FILES_${PN}-demo = " ${JDK_HOME}/demo ${JDK_HOME}/sample "
-RDEPENDS_${PN}-demo = " ${PN} "
-
-FILES_${PN}-demo-dbg = "\
     ${JDK_HOME}/demo/jvmti/gctest/lib/.debug/ \
     ${JDK_HOME}/demo/jvmti/heapTracker/lib/.debug/ \
     ${JDK_HOME}/demo/jvmti/heapViewer/lib/.debug/ \
@@ -64,6 +57,9 @@ FILES_${PN}-demo-dbg = "\
     ${JDK_HOME}/demo/jvmti/compiledMethodLoad/lib/.debug/ \
 "
 
+FILES_${PN}-demo = " ${JDK_HOME}/demo ${JDK_HOME}/sample "
+RDEPENDS_${PN}-demo = " ${PN} "
+
 FILES_${PN}-doc_append = "\
     ${JDK_HOME}/man \
     ${JDK_HOME}/ASSEMBLY_EXCEPTION \
-- 
2.11.0



^ permalink raw reply related	[flat|nested] 19+ messages in thread

* Re: [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package
  2018-06-07  9:24 ` [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package Wenlin Kang
@ 2018-06-08  7:39   ` Richard Leitner
  2018-06-08  9:02     ` Wenlin Kang
  2018-06-12  8:01   ` Richard Leitner
  1 sibling, 1 reply; 19+ messages in thread
From: Richard Leitner @ 2018-06-08  7:39 UTC (permalink / raw)
  To: openembedded-devel

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?

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?

But I'm of course open for discussions ;-)

> 
> Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
> ---
>  recipes-core/openjdk/openjdk-8_16xbyy.bb | 10 +++-------
>  1 file changed, 3 insertions(+), 7 deletions(-)

regards;Richard.L


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package
  2018-06-08  7:39   ` Richard Leitner
@ 2018-06-08  9:02     ` Wenlin Kang
  2018-06-08  9:10       ` Wenlin Kang
  2018-06-08 10:07       ` Richard Leitner
  0 siblings, 2 replies; 19+ messages in thread
From: Wenlin Kang @ 2018-06-08  9:02 UTC (permalink / raw)
  To: Richard Leitner, openembedded-devel

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"

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.

>
> But I'm of course open for discussions ;-)
>
>> Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
>> ---
>>   recipes-core/openjdk/openjdk-8_16xbyy.bb | 10 +++-------
>>   1 file changed, 3 insertions(+), 7 deletions(-)
> regards;Richard.L


-- 
Thanks,
Wenlin Kang



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package
  2018-06-08  9:02     ` Wenlin Kang
@ 2018-06-08  9:10       ` Wenlin Kang
  2018-06-08 10:07       ` Richard Leitner
  1 sibling, 0 replies; 19+ messages in thread
From: Wenlin Kang @ 2018-06-08  9:10 UTC (permalink / raw)
  To: Richard Leitner, openembedded-devel

On 2018年06月08日 17:02, 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"
>
> 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

1187     for pkg in package_list:
1188         root = os.path.join(pkgdest, pkg)
1189         bb.utils.mkdirhier(root)
1190
1191         filesvar = d.getVar('FILES_%s' % pkg) or ""
1192         if "//" in filesvar:
1193             msg = "FILES variable for package %s contains '//' 
which is invalid. Attempting to fix this but you should correct the 
metadata.\n" % pkg
1194             package_qa_handle_error("files-invalid", msg, d)
1195             filesvar.replace("//", "/")
1196
1197         origfiles = filesvar.split()
1198         files, symlink_paths = files_from_filevars(origfiles)
1199
1200         if autodebug and pkg.endswith("-dbg"): <============
1201             files.extend(debug)            <============

>
>>
>> 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.
>
>>
>> But I'm of course open for discussions ;-)
>>
>>> Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
>>> ---
>>>   recipes-core/openjdk/openjdk-8_16xbyy.bb | 10 +++-------
>>>   1 file changed, 3 insertions(+), 7 deletions(-)
>> regards;Richard.L
>
>

-- 
Thanks,
Wenlin Kang



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package
  2018-06-08  9:02     ` Wenlin Kang
  2018-06-08  9:10       ` Wenlin Kang
@ 2018-06-08 10:07       ` Richard Leitner
  2018-06-11  6:31         ` Robert Yang
  2018-06-11  6:49         ` Wenlin Kang
  1 sibling, 2 replies; 19+ messages in thread
From: Richard Leitner @ 2018-06-08 10:07 UTC (permalink / raw)
  To: openembedded-devel

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 ;-)

> 
> 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


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package
  2018-06-08 10:07       ` Richard Leitner
@ 2018-06-11  6:31         ` Robert Yang
  2018-06-12  7:59           ` Richard Leitner
  2018-06-11  6:49         ` Wenlin Kang
  1 sibling, 1 reply; 19+ messages in thread
From: Robert Yang @ 2018-06-11  6:31 UTC (permalink / raw)
  To: Richard Leitner, openembedded-devel

Hi Richard,

On 06/08/2018 06:07 PM, 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 ;-)
> 
>>
>> 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?

For oe-core's recipes, each recipe only has one dbg package, split dbg packages
doesn't make any sense since they usually can't be run independently. Please
see oe-core's commit:

commit a3b000643898d7402b9e57c02e8d10e677cc9722
Author: Ross Burton <ross.burton@intel.com>
Date:   Tue Dec 15 16:32:43 2015 +0000

     meta: more removals of redunant FILES_${PN}-dbg

     In some recipes overly-split -dbg packages were merged into PN-dbg.  Unless
     there's a very good reason, recipes should have a single -dev and -dbg package.

// Robert

// Robert

> 
> Thanks & regards;Richard.L
> 


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package
  2018-06-08 10:07       ` Richard Leitner
  2018-06-11  6:31         ` Robert Yang
@ 2018-06-11  6:49         ` Wenlin Kang
  1 sibling, 0 replies; 19+ messages in thread
From: Wenlin Kang @ 2018-06-11  6:49 UTC (permalink / raw)
  To: Richard Leitner, openembedded-devel

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



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package
  2018-06-11  6:31         ` Robert Yang
@ 2018-06-12  7:59           ` Richard Leitner
  0 siblings, 0 replies; 19+ messages in thread
From: Richard Leitner @ 2018-06-12  7:59 UTC (permalink / raw)
  To: Robert Yang, openembedded-devel

Hi,

On 06/11/2018 08:31 AM, Robert Yang wrote:
> Hi Richard,
> 
> On 06/08/2018 06:07 PM, Richard Leitner wrote:
>> On 06/08/2018 11:02 AM, Wenlin Kang wrote:
>>> On 2018年06月08日 15:39, Richard Leitner wrote:

...

>>>>
>>>> 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?
> 
> For oe-core's recipes, each recipe only has one dbg package, split dbg packages
> doesn't make any sense since they usually can't be run independently. Please
> see oe-core's commit:
> 
> commit a3b000643898d7402b9e57c02e8d10e677cc9722
> Author: Ross Burton <ross.burton@intel.com>
> Date:   Tue Dec 15 16:32:43 2015 +0000
> 
>     meta: more removals of redunant FILES_${PN}-dbg
> 
>     In some recipes overly-split -dbg packages were merged into PN-dbg.  Unless
>     there's a very good reason, recipes should have a single -dev and -dbg package.

Ok. Thank you for that pointer. That's definitely new to me, but I'm of course fine with it!

regards;Richard.L


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package
  2018-06-07  9:24 ` [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package Wenlin Kang
  2018-06-08  7:39   ` Richard Leitner
@ 2018-06-12  8:01   ` Richard Leitner
  2018-06-12 10:59     ` Wenlin Kang
  1 sibling, 1 reply; 19+ messages in thread
From: Richard Leitner @ 2018-06-12  8:01 UTC (permalink / raw)
  To: Wenlin Kang, openembedded-devel

Hi Wenlin,
as we clarified the "one -dbg package per recipe" thing I have some
comments on the patch itself.


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.

May you please include a reference to that statement from "Ross Burton"?

> 
> Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
> ---
>  recipes-core/openjdk/openjdk-8_16xbyy.bb | 10 +++-------
>  1 file changed, 3 insertions(+), 7 deletions(-)
> 
> diff --git a/recipes-core/openjdk/openjdk-8_16xbyy.bb b/recipes-core/openjdk/openjdk-8_16xbyy.bb
> index dd0ed1d..1d7d794 100644
> --- a/recipes-core/openjdk/openjdk-8_16xbyy.bb
> +++ b/recipes-core/openjdk/openjdk-8_16xbyy.bb
> @@ -14,7 +14,6 @@ do_install() {
>  }
>  
>  PACKAGES_append = " \
> -    ${PN}-demo-dbg \
>      ${PN}-demo \
>      ${PN}-source \
>  "
> @@ -47,12 +46,6 @@ FILES_${PN}-dbg_append = "\
>      ${JDK_HOME}/jre/lib/${JDK_ARCH}/headless/.debug/ \
>      ${JDK_HOME}/jre/lib/${JDK_ARCH}/xawt/.debug/ \
>      ${JDK_HOME}/jre/lib/${JDK_ARCH}/client/.debug/ \
> -"
> -
> -FILES_${PN}-demo = " ${JDK_HOME}/demo ${JDK_HOME}/sample "
> -RDEPENDS_${PN}-demo = " ${PN} "
> -
> -FILES_${PN}-demo-dbg = "\
>      ${JDK_HOME}/demo/jvmti/gctest/lib/.debug/ \
>      ${JDK_HOME}/demo/jvmti/heapTracker/lib/.debug/ \
>      ${JDK_HOME}/demo/jvmti/heapViewer/lib/.debug/ \
> @@ -64,6 +57,9 @@ FILES_${PN}-demo-dbg = "\
>      ${JDK_HOME}/demo/jvmti/compiledMethodLoad/lib/.debug/ \
>  "

AFAIK as all ".debug" are included in the -dbg packages it should
be fine if you remove the whole FILES_${PN}-dbg_append definition.

>  
> +FILES_${PN}-demo = " ${JDK_HOME}/demo ${JDK_HOME}/sample "
> +RDEPENDS_${PN}-demo = " ${PN} "
> +
>  FILES_${PN}-doc_append = "\
>      ${JDK_HOME}/man \
>      ${JDK_HOME}/ASSEMBLY_EXCEPTION \


thanks&regards;Richard.L 


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package
  2018-06-12  8:01   ` Richard Leitner
@ 2018-06-12 10:59     ` Wenlin Kang
  2018-06-12 11:09       ` Richard Leitner
  0 siblings, 1 reply; 19+ messages in thread
From: Wenlin Kang @ 2018-06-12 10:59 UTC (permalink / raw)
  To: Richard Leitner, openembedded-devel

On 2018年06月12日 16:01, Richard Leitner wrote:

Hi Richard

> Hi Wenlin,
> as we clarified the "one -dbg package per recipe" thing I have some
> comments on the patch itself.
>
>
> 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.
> May you please include a reference to that statement from "Ross Burton"?

What about changing the comments as below:

openjdk-8: remove redunant FILES_${PN}-dbg

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.

Comments(oe-core's commit a3b000643898d7402b9e57c02e8d10e677cc9722) from
Ross Burton as below:
"meta: more removals of redunant FILES_${PN}-dbg

In some recipes overly-split -dbg packages were merged into PN-dbg. Unless
there's a very good reason, recipes should have a single -dev and -dbg 
package.
"

>
>> Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
>> ---
>>   recipes-core/openjdk/openjdk-8_16xbyy.bb | 10 +++-------
>>   1 file changed, 3 insertions(+), 7 deletions(-)
>>
>> diff --git a/recipes-core/openjdk/openjdk-8_16xbyy.bb b/recipes-core/openjdk/openjdk-8_16xbyy.bb
>> index dd0ed1d..1d7d794 100644
>> --- a/recipes-core/openjdk/openjdk-8_16xbyy.bb
>> +++ b/recipes-core/openjdk/openjdk-8_16xbyy.bb
>> @@ -14,7 +14,6 @@ do_install() {
>>   }
>>   
>>   PACKAGES_append = " \
>> -    ${PN}-demo-dbg \
>>       ${PN}-demo \
>>       ${PN}-source \
>>   "
>> @@ -47,12 +46,6 @@ FILES_${PN}-dbg_append = "\
>>       ${JDK_HOME}/jre/lib/${JDK_ARCH}/headless/.debug/ \
>>       ${JDK_HOME}/jre/lib/${JDK_ARCH}/xawt/.debug/ \
>>       ${JDK_HOME}/jre/lib/${JDK_ARCH}/client/.debug/ \
>> -"
>> -
>> -FILES_${PN}-demo = " ${JDK_HOME}/demo ${JDK_HOME}/sample "
>> -RDEPENDS_${PN}-demo = " ${PN} "
>> -
>> -FILES_${PN}-demo-dbg = "\
>>       ${JDK_HOME}/demo/jvmti/gctest/lib/.debug/ \
>>       ${JDK_HOME}/demo/jvmti/heapTracker/lib/.debug/ \
>>       ${JDK_HOME}/demo/jvmti/heapViewer/lib/.debug/ \
>> @@ -64,6 +57,9 @@ FILES_${PN}-demo-dbg = "\
>>       ${JDK_HOME}/demo/jvmti/compiledMethodLoad/lib/.debug/ \
>>   "
> AFAIK as all ".debug" are included in the -dbg packages it should
> be fine if you remove the whole FILES_${PN}-dbg_append definition.

I have tested it, that's OK after remove the whole 
FILES_${PN}-dbg_append definition.

Do you mean that we should also remove FILES_${PN}-dbg_append?


>
>>   
>> +FILES_${PN}-demo = " ${JDK_HOME}/demo ${JDK_HOME}/sample "
>> +RDEPENDS_${PN}-demo = " ${PN} "
>> +
>>   FILES_${PN}-doc_append = "\
>>       ${JDK_HOME}/man \
>>       ${JDK_HOME}/ASSEMBLY_EXCEPTION \
>
> thanks&regards;Richard.L
>

-- 
Thanks,
Wenlin Kang



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [meta-java][PATCH 1/2] openjdk-8: remove debuglink
  2018-06-07  9:24 [meta-java][PATCH 1/2] openjdk-8: remove debuglink Wenlin Kang
  2018-06-07  9:24 ` [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package Wenlin Kang
@ 2018-06-12 11:09 ` Richard Leitner
  2018-06-12 11:35   ` Wenlin Kang
  1 sibling, 1 reply; 19+ messages in thread
From: Richard Leitner @ 2018-06-12 11:09 UTC (permalink / raw)
  To: Wenlin Kang, openembedded-devel

Hi Wenlin,

On 06/07/2018 11:24 AM, Wenlin Kang wrote:
> We need remove previous debuglink before add it if it has existed,
> because it may have a different file name with this that we will add.

I'm sorry but I don't get the reason why we need this...
It would be great if you may please explain it in a little more detail for me ;-)

Thank you very much!

> Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
> ---
>  recipes-core/openjdk/openjdk-8-cross.inc | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
> 
> diff --git a/recipes-core/openjdk/openjdk-8-cross.inc b/recipes-core/openjdk/openjdk-8-cross.inc
> index 46f13fd..03cab11 100644
> --- a/recipes-core/openjdk/openjdk-8-cross.inc
> +++ b/recipes-core/openjdk/openjdk-8-cross.inc
> @@ -105,5 +105,21 @@ EXTRA_OEMAKE_append = '\
>      images \
>  '
>  
> +python remove_debuglink() {
> +    dvar = d.getVar('PKGD', True)
> +    objcopy = d.getVar("OBJCOPY", True)
> +
> +    # Remove the previous debuglink if it has existed, because it has a different file name with that we will add.
> +    if d.getVar('PN', True).find("jre") != -1:
> +        file = dvar + d.getVar("JRE_HOME", True) + "/lib/" + d.getVar("JDK_ARCH", True) + "/server/libjvm.so"
> +    else:
> +        file = dvar + d.getVar("JDK_HOME", True) + "/jre/lib/" + d.getVar("JDK_ARCH", True) + "/server/libjvm.so"
> +
> +    cmd = "'%s' --remove-section .gnu_debuglink '%s'" % (objcopy, file)
> +    oe.utils.getstatusoutput(cmd)
> +}
> +
> +PACKAGE_PREPROCESS_FUNCS += "remove_debuglink"
> +
>  # There is a symlink to a .so but this one is valid.
>  INSANE_SKIP_${PN} = "dev-so"
> 

regards;Richard.L


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package
  2018-06-12 10:59     ` Wenlin Kang
@ 2018-06-12 11:09       ` Richard Leitner
  2018-06-12 11:14         ` Wenlin Kang
  0 siblings, 1 reply; 19+ messages in thread
From: Richard Leitner @ 2018-06-12 11:09 UTC (permalink / raw)
  To: Wenlin Kang, openembedded-devel


On 06/12/2018 12:59 PM, Wenlin Kang wrote:
> On 2018年06月12日 16:01, Richard Leitner wrote:
> 
> Hi Richard
> 
>> Hi Wenlin,
>> as we clarified the "one -dbg package per recipe" thing I have some
>> comments on the patch itself.
>>
>>
>> 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.
>> May you please include a reference to that statement from "Ross Burton"?
> 
> What about changing the comments as below:
> 
> openjdk-8: remove redunant FILES_${PN}-dbg
> 
> 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.
> 
> Comments(oe-core's commit a3b000643898d7402b9e57c02e8d10e677cc9722) from
> Ross Burton as below:
> "meta: more removals of redunant FILES_${PN}-dbg
> 
> In some recipes overly-split -dbg packages were merged into PN-dbg. Unless
> there's a very good reason, recipes should have a single -dev and -dbg package.
> "

That's fine with me.

> 
>>
>>> Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
>>> ---
>>>   recipes-core/openjdk/openjdk-8_16xbyy.bb | 10 +++-------
>>>   1 file changed, 3 insertions(+), 7 deletions(-)
>>>
>>> diff --git a/recipes-core/openjdk/openjdk-8_16xbyy.bb b/recipes-core/openjdk/openjdk-8_16xbyy.bb
>>> index dd0ed1d..1d7d794 100644
>>> --- a/recipes-core/openjdk/openjdk-8_16xbyy.bb
>>> +++ b/recipes-core/openjdk/openjdk-8_16xbyy.bb
>>> @@ -14,7 +14,6 @@ do_install() {
>>>   }
>>>     PACKAGES_append = " \
>>> -    ${PN}-demo-dbg \
>>>       ${PN}-demo \
>>>       ${PN}-source \
>>>   "
>>> @@ -47,12 +46,6 @@ FILES_${PN}-dbg_append = "\
>>>       ${JDK_HOME}/jre/lib/${JDK_ARCH}/headless/.debug/ \
>>>       ${JDK_HOME}/jre/lib/${JDK_ARCH}/xawt/.debug/ \
>>>       ${JDK_HOME}/jre/lib/${JDK_ARCH}/client/.debug/ \
>>> -"
>>> -
>>> -FILES_${PN}-demo = " ${JDK_HOME}/demo ${JDK_HOME}/sample "
>>> -RDEPENDS_${PN}-demo = " ${PN} "
>>> -
>>> -FILES_${PN}-demo-dbg = "\
>>>       ${JDK_HOME}/demo/jvmti/gctest/lib/.debug/ \
>>>       ${JDK_HOME}/demo/jvmti/heapTracker/lib/.debug/ \
>>>       ${JDK_HOME}/demo/jvmti/heapViewer/lib/.debug/ \
>>> @@ -64,6 +57,9 @@ FILES_${PN}-demo-dbg = "\
>>>       ${JDK_HOME}/demo/jvmti/compiledMethodLoad/lib/.debug/ \
>>>   "
>> AFAIK as all ".debug" are included in the -dbg packages it should
>> be fine if you remove the whole FILES_${PN}-dbg_append definition.
> 
> I have tested it, that's OK after remove the whole FILES_${PN}-dbg_append definition.
> 
> Do you mean that we should also remove FILES_${PN}-dbg_append?

As there is AFAIK no reason to keep it... Yes please!

thanks&regards;Richard.L


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package
  2018-06-12 11:09       ` Richard Leitner
@ 2018-06-12 11:14         ` Wenlin Kang
  0 siblings, 0 replies; 19+ messages in thread
From: Wenlin Kang @ 2018-06-12 11:14 UTC (permalink / raw)
  To: Richard Leitner, openembedded-devel

On 2018年06月12日 19:09, Richard Leitner wrote:
> On 06/12/2018 12:59 PM, Wenlin Kang wrote:
>> On 2018年06月12日 16:01, Richard Leitner wrote:
>>
>> Hi Richard
>>
>>> Hi Wenlin,
>>> as we clarified the "one -dbg package per recipe" thing I have some
>>> comments on the patch itself.
>>>
>>>
>>> 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.
>>> May you please include a reference to that statement from "Ross Burton"?
>> What about changing the comments as below:
>>
>> openjdk-8: remove redunant FILES_${PN}-dbg
>>
>> 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.
>>
>> Comments(oe-core's commit a3b000643898d7402b9e57c02e8d10e677cc9722) from
>> Ross Burton as below:
>> "meta: more removals of redunant FILES_${PN}-dbg
>>
>> In some recipes overly-split -dbg packages were merged into PN-dbg. Unless
>> there's a very good reason, recipes should have a single -dev and -dbg package.
>> "
> That's fine with me.
>
>>>> Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
>>>> ---
>>>>    recipes-core/openjdk/openjdk-8_16xbyy.bb | 10 +++-------
>>>>    1 file changed, 3 insertions(+), 7 deletions(-)
>>>>
>>>> diff --git a/recipes-core/openjdk/openjdk-8_16xbyy.bb b/recipes-core/openjdk/openjdk-8_16xbyy.bb
>>>> index dd0ed1d..1d7d794 100644
>>>> --- a/recipes-core/openjdk/openjdk-8_16xbyy.bb
>>>> +++ b/recipes-core/openjdk/openjdk-8_16xbyy.bb
>>>> @@ -14,7 +14,6 @@ do_install() {
>>>>    }
>>>>      PACKAGES_append = " \
>>>> -    ${PN}-demo-dbg \
>>>>        ${PN}-demo \
>>>>        ${PN}-source \
>>>>    "
>>>> @@ -47,12 +46,6 @@ FILES_${PN}-dbg_append = "\
>>>>        ${JDK_HOME}/jre/lib/${JDK_ARCH}/headless/.debug/ \
>>>>        ${JDK_HOME}/jre/lib/${JDK_ARCH}/xawt/.debug/ \
>>>>        ${JDK_HOME}/jre/lib/${JDK_ARCH}/client/.debug/ \
>>>> -"
>>>> -
>>>> -FILES_${PN}-demo = " ${JDK_HOME}/demo ${JDK_HOME}/sample "
>>>> -RDEPENDS_${PN}-demo = " ${PN} "
>>>> -
>>>> -FILES_${PN}-demo-dbg = "\
>>>>        ${JDK_HOME}/demo/jvmti/gctest/lib/.debug/ \
>>>>        ${JDK_HOME}/demo/jvmti/heapTracker/lib/.debug/ \
>>>>        ${JDK_HOME}/demo/jvmti/heapViewer/lib/.debug/ \
>>>> @@ -64,6 +57,9 @@ FILES_${PN}-demo-dbg = "\
>>>>        ${JDK_HOME}/demo/jvmti/compiledMethodLoad/lib/.debug/ \
>>>>    "
>>> AFAIK as all ".debug" are included in the -dbg packages it should
>>> be fine if you remove the whole FILES_${PN}-dbg_append definition.
>> I have tested it, that's OK after remove the whole FILES_${PN}-dbg_append definition.
>>
>> Do you mean that we should also remove FILES_${PN}-dbg_append?
> As there is AFAIK no reason to keep it... Yes please!

Thanks, later I will send the new patch.


>
> thanks&regards;Richard.L
>

-- 
Thanks,
Wenlin Kang



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [meta-java][PATCH 1/2] openjdk-8: remove debuglink
  2018-06-12 11:09 ` [meta-java][PATCH 1/2] openjdk-8: remove debuglink Richard Leitner
@ 2018-06-12 11:35   ` Wenlin Kang
  2018-06-12 12:02     ` Wenlin Kang
  0 siblings, 1 reply; 19+ messages in thread
From: Wenlin Kang @ 2018-06-12 11:35 UTC (permalink / raw)
  To: Richard Leitner, openembedded-devel

On 2018年06月12日 19:09, Richard Leitner wrote:
> Hi Wenlin,
>
> On 06/07/2018 11:24 AM, Wenlin Kang wrote:
>> We need remove previous debuglink before add it if it has existed,
>> because it may have a different file name with this that we will add.
> I'm sorry but I don't get the reason why we need this...
> It would be great if you may please explain it in a little more detail for me ;-)

Hi Richard

In openjdk-8, its debug file is xxx.debuginfo, and when execute 
openjdk's makefile, it will add
libjvm.debuginfo as libjvm.so's debuglink section's file name, this name 
is different  with that
we will add in splitdebuginfo() of package.bbclass, this makes we can't 
get symbol information
when debug libjvm.so in gdb.

>
> Thank you very much!
>
>> Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
>> ---
>>   recipes-core/openjdk/openjdk-8-cross.inc | 16 ++++++++++++++++
>>   1 file changed, 16 insertions(+)
>>
>> diff --git a/recipes-core/openjdk/openjdk-8-cross.inc b/recipes-core/openjdk/openjdk-8-cross.inc
>> index 46f13fd..03cab11 100644
>> --- a/recipes-core/openjdk/openjdk-8-cross.inc
>> +++ b/recipes-core/openjdk/openjdk-8-cross.inc
>> @@ -105,5 +105,21 @@ EXTRA_OEMAKE_append = '\
>>       images \
>>   '
>>   
>> +python remove_debuglink() {
>> +    dvar = d.getVar('PKGD', True)
>> +    objcopy = d.getVar("OBJCOPY", True)
>> +
>> +    # Remove the previous debuglink if it has existed, because it has a different file name with that we will add.
>> +    if d.getVar('PN', True).find("jre") != -1:
>> +        file = dvar + d.getVar("JRE_HOME", True) + "/lib/" + d.getVar("JDK_ARCH", True) + "/server/libjvm.so"
>> +    else:
>> +        file = dvar + d.getVar("JDK_HOME", True) + "/jre/lib/" + d.getVar("JDK_ARCH", True) + "/server/libjvm.so"
>> +
>> +    cmd = "'%s' --remove-section .gnu_debuglink '%s'" % (objcopy, file)
>> +    oe.utils.getstatusoutput(cmd)
>> +}
>> +
>> +PACKAGE_PREPROCESS_FUNCS += "remove_debuglink"
>> +
>>   # There is a symlink to a .so but this one is valid.
>>   INSANE_SKIP_${PN} = "dev-so"
>>
> regards;Richard.L
>

-- 
Thanks,
Wenlin Kang



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [meta-java][PATCH 1/2] openjdk-8: remove debuglink
  2018-06-12 11:35   ` Wenlin Kang
@ 2018-06-12 12:02     ` Wenlin Kang
  2018-06-12 12:47       ` Richard Leitner
  0 siblings, 1 reply; 19+ messages in thread
From: Wenlin Kang @ 2018-06-12 12:02 UTC (permalink / raw)
  To: Richard Leitner, openembedded-devel

On 2018年06月12日 19:35, Wenlin Kang wrote:
> On 2018年06月12日 19:09, Richard Leitner wrote:
>> Hi Wenlin,
>>
>> On 06/07/2018 11:24 AM, Wenlin Kang wrote:
>>> We need remove previous debuglink before add it if it has existed,
>>> because it may have a different file name with this that we will add.
>> I'm sorry but I don't get the reason why we need this...
>> It would be great if you may please explain it in a little more 
>> detail for me ;-)
>
> Hi Richard
>
> In openjdk-8, its debug file is xxx.debuginfo, and when execute 
> openjdk's makefile, it will add
> libjvm.debuginfo as libjvm.so's debuglink section's file name, this 
> name is different  with that
> we will add in splitdebuginfo() of package.bbclass, this makes we 
> can't get symbol information
> when debug libjvm.so in gdb.
>

When a executable file or library file has contained the debuglink 
section, it will not be changed when added again,
so we must remove it after add new one.

In OE-core, debug file name is the same with the executable file or 
library file.


>>
>> Thank you very much!
>>
>>> Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
>>> ---
>>>   recipes-core/openjdk/openjdk-8-cross.inc | 16 ++++++++++++++++
>>>   1 file changed, 16 insertions(+)
>>>
>>> diff --git a/recipes-core/openjdk/openjdk-8-cross.inc 
>>> b/recipes-core/openjdk/openjdk-8-cross.inc
>>> index 46f13fd..03cab11 100644
>>> --- a/recipes-core/openjdk/openjdk-8-cross.inc
>>> +++ b/recipes-core/openjdk/openjdk-8-cross.inc
>>> @@ -105,5 +105,21 @@ EXTRA_OEMAKE_append = '\
>>>       images \
>>>   '
>>>   +python remove_debuglink() {
>>> +    dvar = d.getVar('PKGD', True)
>>> +    objcopy = d.getVar("OBJCOPY", True)
>>> +
>>> +    # Remove the previous debuglink if it has existed, because it 
>>> has a different file name with that we will add.
>>> +    if d.getVar('PN', True).find("jre") != -1:
>>> +        file = dvar + d.getVar("JRE_HOME", True) + "/lib/" + 
>>> d.getVar("JDK_ARCH", True) + "/server/libjvm.so"
>>> +    else:
>>> +        file = dvar + d.getVar("JDK_HOME", True) + "/jre/lib/" + 
>>> d.getVar("JDK_ARCH", True) + "/server/libjvm.so"
>>> +
>>> +    cmd = "'%s' --remove-section .gnu_debuglink '%s'" % (objcopy, 
>>> file)
>>> +    oe.utils.getstatusoutput(cmd)
>>> +}
>>> +
>>> +PACKAGE_PREPROCESS_FUNCS += "remove_debuglink"
>>> +
>>>   # There is a symlink to a .so but this one is valid.
>>>   INSANE_SKIP_${PN} = "dev-so"
>>>
>> regards;Richard.L
>>
>

-- 
Thanks,
Wenlin Kang



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [meta-java][PATCH 1/2] openjdk-8: remove debuglink
  2018-06-12 12:02     ` Wenlin Kang
@ 2018-06-12 12:47       ` Richard Leitner
  2018-06-13  6:35         ` Wenlin Kang
  0 siblings, 1 reply; 19+ messages in thread
From: Richard Leitner @ 2018-06-12 12:47 UTC (permalink / raw)
  To: Wenlin Kang, openembedded-devel


On 06/12/2018 02:02 PM, Wenlin Kang wrote:
> On 2018年06月12日 19:35, Wenlin Kang wrote:
>> On 2018年06月12日 19:09, Richard Leitner wrote:
>>> Hi Wenlin,
>>>
>>> On 06/07/2018 11:24 AM, Wenlin Kang wrote:
>>>> We need remove previous debuglink before add it if it has existed,
>>>> because it may have a different file name with this that we will add.
>>> I'm sorry but I don't get the reason why we need this...
>>> It would be great if you may please explain it in a little more detail for me ;-)
>>
>> Hi Richard
>>
>> In openjdk-8, its debug file is xxx.debuginfo, and when execute openjdk's makefile, it will add
>> libjvm.debuginfo as libjvm.so's debuglink section's file name, this name is different  with that
>> we will add in splitdebuginfo() of package.bbclass, this makes we can't get symbol information
>> when debug libjvm.so in gdb.
>>
> 
> When a executable file or library file has contained the debuglink section, it will not be changed when added again,
> so we must remove it after add new one.
> 
> In OE-core, debug file name is the same with the executable file or library file.
> 

Thank you for that explanation!

Maybe you can add this (or a shortened version of it) to the commit message.
Otherwise this patch is fine with me.

So please send a v2 of this series whenever you like!

regards;Richard.L


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [meta-java][PATCH 1/2] openjdk-8: remove debuglink
  2018-06-12 12:47       ` Richard Leitner
@ 2018-06-13  6:35         ` Wenlin Kang
  2018-06-13  6:43           ` Richard Leitner
  0 siblings, 1 reply; 19+ messages in thread
From: Wenlin Kang @ 2018-06-13  6:35 UTC (permalink / raw)
  To: Richard Leitner, openembedded-devel

On 2018年06月12日 20:47, Richard Leitner wrote:
> On 06/12/2018 02:02 PM, Wenlin Kang wrote:
>> On 2018年06月12日 19:35, Wenlin Kang wrote:
>>> On 2018年06月12日 19:09, Richard Leitner wrote:
>>>> Hi Wenlin,
>>>>
>>>> On 06/07/2018 11:24 AM, Wenlin Kang wrote:
>>>>> We need remove previous debuglink before add it if it has existed,
>>>>> because it may have a different file name with this that we will add.
>>>> I'm sorry but I don't get the reason why we need this...
>>>> It would be great if you may please explain it in a little more detail for me ;-)
>>> Hi Richard
>>>
>>> In openjdk-8, its debug file is xxx.debuginfo, and when execute openjdk's makefile, it will add
>>> libjvm.debuginfo as libjvm.so's debuglink section's file name, this name is different  with that
>>> we will add in splitdebuginfo() of package.bbclass, this makes we can't get symbol information
>>> when debug libjvm.so in gdb.
>>>
>> When a executable file or library file has contained the debuglink section, it will not be changed when added again,
>> so we must remove it after add new one.
>>
>> In OE-core, debug file name is the same with the executable file or library file.
>>
> Thank you for that explanation!
>
> Maybe you can add this (or a shortened version of it) to the commit message.
> Otherwise this patch is fine with me.

Hi Richard

What about changing the comments as below ?

openjdk-8: remove debuglink

During openjdk-8 compiling, its debug file is xxx.debuginfo, and it will
add libjvm.debuginfo as libjvm.so's debuglink section's file name, this
name is different with that we will create and add in splitdebuginfo()
of package.bbclass, in oe-core, the debug file name is the same with the
corresponding executable file or library file, this will make we can't get
symbol information when debug libjvm.so in gdb, so we must remove the
previous debuglink before add it if it has existed(if a file has contained
the debuglink section, it will not be changed when add again).

>
> So please send a v2 of this series whenever you like!
>
> regards;Richard.L
>

-- 
Thanks,
Wenlin Kang



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [meta-java][PATCH 1/2] openjdk-8: remove debuglink
  2018-06-13  6:35         ` Wenlin Kang
@ 2018-06-13  6:43           ` Richard Leitner
  0 siblings, 0 replies; 19+ messages in thread
From: Richard Leitner @ 2018-06-13  6:43 UTC (permalink / raw)
  To: Wenlin Kang, openembedded-devel

On 06/13/2018 08:35 AM, Wenlin Kang wrote:
> On 2018年06月12日 20:47, Richard Leitner wrote:
>> On 06/12/2018 02:02 PM, Wenlin Kang wrote:

...

>>
>> Maybe you can add this (or a shortened version of it) to the commit
>> message.
>> Otherwise this patch is fine with me.
> 
> Hi Richard
> 
> What about changing the comments as below ?

That's fine with me. Thanks!

> 
> openjdk-8: remove debuglink
> 
> During openjdk-8 compiling, its debug file is xxx.debuginfo, and it will
> add libjvm.debuginfo as libjvm.so's debuglink section's file name, this
> name is different with that we will create and add in splitdebuginfo()
> of package.bbclass, in oe-core, the debug file name is the same with the
> corresponding executable file or library file, this will make we can't get
> symbol information when debug libjvm.so in gdb, so we must remove the
> previous debuglink before add it if it has existed(if a file has contained
> the debuglink section, it will not be changed when add again).
> 
>>
>> So please send a v2 of this series whenever you like!


^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2018-06-13  6:43 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-07  9:24 [meta-java][PATCH 1/2] openjdk-8: remove debuglink Wenlin Kang
2018-06-07  9:24 ` [meta-java][PATCH 2/2] openjdk-8: combine the -dbg package Wenlin Kang
2018-06-08  7:39   ` Richard Leitner
2018-06-08  9:02     ` Wenlin Kang
2018-06-08  9:10       ` Wenlin Kang
2018-06-08 10:07       ` Richard Leitner
2018-06-11  6:31         ` Robert Yang
2018-06-12  7:59           ` Richard Leitner
2018-06-11  6:49         ` Wenlin Kang
2018-06-12  8:01   ` Richard Leitner
2018-06-12 10:59     ` Wenlin Kang
2018-06-12 11:09       ` Richard Leitner
2018-06-12 11:14         ` Wenlin Kang
2018-06-12 11:09 ` [meta-java][PATCH 1/2] openjdk-8: remove debuglink Richard Leitner
2018-06-12 11:35   ` Wenlin Kang
2018-06-12 12:02     ` Wenlin Kang
2018-06-12 12:47       ` Richard Leitner
2018-06-13  6:35         ` Wenlin Kang
2018-06-13  6:43           ` Richard Leitner

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.