On 2019/11/16 7:21, Richard Purdie wrote: > On Fri, 2019-11-15 at 18:45 +0800, Junling Zheng wrote: >> Do not reset libdir and base_libdir in sysroot_strip, and just pass >> crude >> paths as they will be reset later in strip_execs. >> >> Signed-off-by: Junling Zheng <[email protected]> >> --- >> meta/classes/staging.bbclass | 2 -- >> 1 file changed, 2 deletions(-) >> >> diff --git a/meta/classes/staging.bbclass b/meta/classes/staging.bbclass >> index cca0b7e0d6..58d57a4323 100644 >> --- a/meta/classes/staging.bbclass >> +++ b/meta/classes/staging.bbclass >> @@ -75,8 +75,6 @@ python sysroot_strip () { >> >> dstdir = d.getVar('SYSROOT_DESTDIR') >> pn = d.getVar('PN') >> - libdir = os.path.abspath(dstdir + os.sep + d.getVar("libdir")) >> - base_libdir = os.path.abspath(dstdir + os.sep + d.getVar("base_libdir")) >> qa_already_stripped = 'already-stripped' in (d.getVar('INSANE_SKIP_' + >> pn) or "").split() >> strip_cmd = d.getVar("STRIP") > > To show this function in full: > > python sysroot_strip () { > inhibit_sysroot = d.getVar('INHIBIT_SYSROOT_STRIP') > if inhibit_sysroot and oe.types.boolean(inhibit_sysroot): > return > > dstdir = d.getVar('SYSROOT_DESTDIR') > pn = d.getVar('PN') > libdir = os.path.abspath(dstdir + os.sep + d.getVar("libdir")) > base_libdir = os.path.abspath(dstdir + os.sep + d.getVar("base_libdir")) > qa_already_stripped = 'already-stripped' in (d.getVar('INSANE_SKIP_' + > pn) or "").split() > strip_cmd = d.getVar("STRIP") > > oe.package.strip_execs(pn, dstdir, strip_cmd, libdir, base_libdir, d, > qa_already_stripped=qa_already_stripped) > } > > so if we apply this patch, we just have two undefined variables which > we pass into oe.package.strip_execs() which would cause a undefined > variable failure? >
Yes, you're right. I'm sorry for my patch without testing :( Removing them in strip_execs() will work, and I'll send a v2 patch :) Thanks, Junling > I think I do see a potential problem as dstdir is added here and then > again strip_execs() itself which does: > > def strip_execs(pn, dstdir, strip_cmd, libdir, base_libdir, d, > qa_already_stripped=False): > > libdir = os.path.abspath(dstdir + os.sep + libdir) > base_libdir = os.path.abspath(dstdir + os.sep + base_libdir) > > but the patch as submitted doesn't solve this. > > Cheers, > > Richard > > > . > -- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
