* [PATCH v2] insane.bbclass: add library dir sanity check
@ 2012-09-14 9:03 Radu Moisan
2012-09-14 9:18 ` Radu Moisan
0 siblings, 1 reply; 2+ messages in thread
From: Radu Moisan @ 2012-09-14 9:03 UTC (permalink / raw)
To: openembedded-core
Check in ${PKGD} for libraries in other locations
then ${libdir}. Trigger a warning if so.
[Yocto #2038]
Signed-off-by: Radu Moisan <radu.moisan@intel.com>
---
meta/classes/insane.bbclass | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index e74eb3f..6388609 100644
--- a/meta/classes/insane.bbclass
+++ b/meta/classes/insane.bbclass
@@ -212,6 +212,18 @@ def package_qa_check_staticdev(path, name, d, elf, messages):
messages.append("non -staticdev package contains static .a library: %s path '%s'" % \
(name, package_qa_clean_path(path,d)))
+def package_qa_check_libdir(path,libdir):
+ """
+ Check in path for libraries in other locations then libdir. Trigger a warning if so.
+ """
+ import re
+ lib_re = re.compile("^.*\.(so|a)")
+ for root, dirs, files in os.walk(path):
+ if libdir not in root:
+ for file in files:
+ if lib_re.match(file):
+ bb.warn("Found library in wrong location: %s" % os.path.join(root,file))
+
QAPATHTEST[debug-files] = "package_qa_check_dbg"
def package_qa_check_dbg(path, name, d, elf, messages):
"""
@@ -688,6 +700,12 @@ python do_package_qa () {
rdepends_sane = False
+ ml = d.getVar("MLPREFIX", True) or ""
+ if ml:
+ pkgd = d.getVar('PKGD', True)
+ libdir = d.getVar("libdir", True)
+ package_qa_check_libdir(pkgd,libdir)
+
if not walk_sane or not rdepends_sane:
bb.fatal("QA run found fatal errors. Please consider fixing them.")
bb.note("DONE with PACKAGE QA")
--
1.7.9.5
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH v2] insane.bbclass: add library dir sanity check
2012-09-14 9:03 [PATCH v2] insane.bbclass: add library dir sanity check Radu Moisan
@ 2012-09-14 9:18 ` Radu Moisan
0 siblings, 0 replies; 2+ messages in thread
From: Radu Moisan @ 2012-09-14 9:18 UTC (permalink / raw)
To: Patches and discussions about the oe-core layer
Added comments.
radu
On 09/14/2012 12:03 PM, Radu Moisan wrote:
> Check in ${PKGD} for libraries in other locations
> then ${libdir}. Trigger a warning if so.
>
> [Yocto #2038]
>
> Signed-off-by: Radu Moisan <radu.moisan@intel.com>
> ---
> meta/classes/insane.bbclass | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
> diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
> index e74eb3f..6388609 100644
> --- a/meta/classes/insane.bbclass
> +++ b/meta/classes/insane.bbclass
> @@ -212,6 +212,18 @@ def package_qa_check_staticdev(path, name, d, elf, messages):
> messages.append("non -staticdev package contains static .a library: %s path '%s'" % \
> (name, package_qa_clean_path(path,d)))
>
> +def package_qa_check_libdir(path,libdir):
> + """
> + Check in path for libraries in other locations then libdir. Trigger a warning if so.
> + """
> + import re
> + lib_re = re.compile("^.*\.(so|a)")
> + for root, dirs, files in os.walk(path):
> + if libdir not in root:
> + for file in files:
> + if lib_re.match(file):
> + bb.warn("Found library in wrong location: %s" % os.path.join(root,file))
> +
> QAPATHTEST[debug-files] = "package_qa_check_dbg"
> def package_qa_check_dbg(path, name, d, elf, messages):
> """
> @@ -688,6 +700,12 @@ python do_package_qa () {
> rdepends_sane = False
>
>
> + ml = d.getVar("MLPREFIX", True) or ""
> + if ml:
> + pkgd = d.getVar('PKGD', True)
> + libdir = d.getVar("libdir", True)
> + package_qa_check_libdir(pkgd,libdir)
> +
> if not walk_sane or not rdepends_sane:
> bb.fatal("QA run found fatal errors. Please consider fixing them.")
> bb.note("DONE with PACKAGE QA")
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2012-09-14 9:28 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-09-14 9:03 [PATCH v2] insane.bbclass: add library dir sanity check Radu Moisan
2012-09-14 9:18 ` Radu Moisan
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.