[oe] [PATCH] Teach insane.bbclass to ignore SDK packages wrt -dev and .so check
Tom Rini
trini at kernel.crashing.org
Thu Apr 23 17:59:28 UTC 2009
With the change to make having libfoo.so symlinks in the main package
become fatal (along with GNU_HASH) SDK stuff is broken now. At Richard's
suggestion, the following patch teaches insane.bbclass to not run the
-dev check on sdk||canadian-sdk recipes.
I did this by splitting the devdbg check into two separate checks
(rather than re-order the checks as we do want to pull dbg stuff out).
This also clarifies the comments to both. As an aside, yes we bail out
if say a file named Kconfig.debug ends up in a package.
Signed-off-by: Tom Rini <trini at embeddedalley.com>
diff --git a/classes/insane.bbclass b/classes/insane.bbclass
index 584a5f1..cc881dc 100644
--- a/classes/insane.bbclass
+++ b/classes/insane.bbclass
@@ -250,21 +250,35 @@ def package_qa_check_rpath(file,name,d, elf):
return sane
-def package_qa_check_devdbg(path, name,d, elf):
+def package_qa_check_dev(path, name,d, elf):
"""
- Check for debug remains inside the binary or
- non dev packages containing
+ Check for ".so" library symlinks in non-dev packages
"""
import bb, os
sane = True
+ # SDK packages are special.
+ for s in ['sdk', 'canadian-sdk']:
+ if bb.data.inherits_class(s, d):
+ return True
+
if not "-dev" in name:
if path[-3:] == ".so" and os.path.islink(path):
error_msg = "non -dev package contains symlink .so: %s path '%s'" % \
(name, package_qa_clean_path(path,d))
sane = package_qa_handle_error(0, error_msg, name, path, d)
+ return sane
+
+def package_qa_check_dbg(path, name,d, elf):
+ """
+ Check for ".debug" files or directories outside of the dbg package
+ """
+
+ import bb, os
+ sane = True
+
if not "-dbg" in name:
if '.debug' in path:
error_msg = "non debug package contains .debug directory: %s path %s" % \
@@ -493,9 +507,10 @@ python do_package_qa () {
if not packages:
return
- checks = [package_qa_check_rpath, package_qa_check_devdbg,
+ checks = [package_qa_check_rpath, package_qa_check_dev,
package_qa_check_perm, package_qa_check_arch,
- package_qa_check_desktop, package_qa_hash_style]
+ package_qa_check_desktop, package_qa_hash_style,
+ package_qa_check_dbg]
walk_sane = True
rdepends_sane = True
for package in packages.split():
--
Tom Rini
More information about the Openembedded-devel
mailing list