All of lore.kernel.org
 help / color / mirror / Atom feed
From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: Patches and discussions about the oe-core layer
	<openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH 1/1] package.bbclass: needs_ldconfig from linux_so is needed in global namespace
Date: Wed, 11 Apr 2012 12:57:58 +0100	[thread overview]
Message-ID: <1334145478.10826.171.camel@ted> (raw)
In-Reply-To: <CAK18fxGMGA0Q=k4r27JjB2_wButvJWPDHjxEJtrYs7pN=oXvGg@mail.gmail.com>

On Tue, 2012-04-10 at 18:34 +0300, Andrei Gherzan wrote:
> On Tue, Apr 10, 2012 at 12:02, Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
>         On Fri, 2012-04-06 at 16:57 +0300, Andrei Gherzan wrote:
>         > "The suite of statements in a function definition executes
>         with a local namespace
>         > that is different from the global namespace. This means that
>         all variables created
>         > within a function are local to that function. When the suite
>         finishes, these
>         > working variables are discarded."
>         >
>         > In this way the needs_ldconfig variable in linux_so never
>         gets True in the statements
>         > below this function. As global statement is generally
>         discouraged, a return value
>         > would be a clean and fast way to solve this issue.
>         >
>         > [YOCTO #2205]
>         >
>         > Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
>         > ---
>         >  meta/classes/package.bbclass |    4 +++-
>         >  1 files changed, 3 insertions(+), 1 deletions(-)
>         >
>         > diff --git a/meta/classes/package.bbclass
>         b/meta/classes/package.bbclass
>         > index d35667a..c98e8fa 100644
>         > --- a/meta/classes/package.bbclass
>         > +++ b/meta/classes/package.bbclass
>         > @@ -1263,6 +1263,7 @@ python package_do_shlibs() {
>         >       lf = bb.utils.lockfile(d.expand("${PACKAGELOCK}"))
>         >
>         >       def linux_so(root, path, file):
>         > +             needs_ldconfig = False
>         >               cmd = d.getVar('OBJDUMP', True) + " -p " +
>         pipes.quote(os.path.join(root, file)) + " 2>/dev/null"
>         >               cmd = "PATH=\"%s\" %s" % (d.getVar('PATH',
>         True), cmd)
>         >               fd = os.popen(cmd)
>         > @@ -1283,6 +1284,7 @@ python package_do_shlibs() {
>         >                                       needs_ldconfig = True
>         >                               if snap_symlinks and (file !=
>         this_soname):
>         >
>         renames.append((os.path.join(root, file), os.path.join(root,
>         this_soname)))
>         > +             return needs_ldconfig
>         >
>         >       def darwin_so(root, path, file):
>         >               fullpath = os.path.join(root, file)
>         > @@ -1382,7 +1384,7 @@ python package_do_shlibs() {
>         >                               if targetos == "darwin" or
>         targetos == "darwin8":
>         >                                       darwin_so(root, dirs,
>         file)
>         >                               elif os.access(path, os.X_OK)
>         or lib_re.match(file):
>         > -                                     linux_so(root, dirs,
>         file)
>         > +                                     needs_ldconfig =
>         linux_so(root, dirs, file)
>         
>         
>         Shouldn't this be something like:
>         
>         ldconfig = linux_so(root, dirs, file)
>         needs_ldconfig = needs_ldconfig or ldconfig
>         
>         or can this only get called once?
>         
>  
> As i recall this is called once but if you want i can amend with your
> hint.

I've checked and it is called multiple times as I suspected. It needs
the fix I described. I've gone ahead, tweaked and merged this I'd like
this fixed in the release.

Cheers,

Richard





      reply	other threads:[~2012-04-11 12:07 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-06 13:56 [PATCH 0/1] Solve Bug 2205 - package.bbclass/linux_so never calls ldconfig Andrei Gherzan
2012-04-06 13:57 ` [PATCH 1/1] package.bbclass: needs_ldconfig from linux_so is needed in global namespace Andrei Gherzan
2012-04-10  9:02   ` Richard Purdie
2012-04-10 15:34     ` Andrei Gherzan
2012-04-11 11:57       ` Richard Purdie [this message]

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=1334145478.10826.171.camel@ted \
    --to=richard.purdie@linuxfoundation.org \
    --cc=openembedded-core@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.