From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: openembedded-core <openembedded-core@lists.openembedded.org>
Subject: [RFC PATCH 1/3] base.bbclass: Run oe_import before other INHERITs
Date: Wed, 26 Mar 2014 09:30:33 +0000 [thread overview]
Message-ID: <1395826233.24890.81.camel@ted> (raw)
Its possible for classes listed in INHERIT directives to use things like
the oe.utils functions. If that happens the user sees a traceback since
the modules don't become available until the ConfigParsed event.
Whilst rather ugly, this change means that the oe modules become available
much sooner and can be used in the core classes, including within base.bbclass.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index 76a4ef6..f085173 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -31,8 +31,14 @@ def oe_import(d):
imported = __import__(toimport)
inject(toimport.split(".", 1)[0], imported)
+ return ""
+
+# We need the oe module name space early (before INHERITs get added)
+# and whilst ugly, abusing inherit like this is quite effective
+BASEIMPORTS = "${@oe_import(d)}"
+inherit ${BASEIMPORTS}
+
python oe_import_eh () {
- oe_import(e.data)
e.data.setVar("NATIVELSBSTRING", lsb_distro_identifier(e.data))
}
next reply other threads:[~2014-03-26 9:30 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-03-26 9:30 Richard Purdie [this message]
2014-03-26 15:34 ` [RFC PATCH 1/3] base.bbclass: Run oe_import before other INHERITs Chris Larson
2014-03-26 15:55 ` Richard Purdie
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=1395826233.24890.81.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox