From: "Björn Stenberg" <bjst@enea.com>
To: <openembedded-core@lists.openembedded.org>
Subject: [PATCH v4] ptest bug fixes
Date: Wed, 10 Apr 2013 15:34:56 +0200 [thread overview]
Message-ID: <1365600896-15876-1-git-send-email-bjst@enea.com> (raw)
In-Reply-To: <20130320083055.GQ31812@sestofb10.enea.se>
Move ${PN}-ptest to start of PACKAGES to ensure all ptest files are
packaged in the -ptest package.
Add QA exclusions to insane.bbclass to ensure -ptest packages can contain
any files they need.
Disable ptest for native packages.
Don't emit errors on missing _ptest functions.
Signed-off-by: Björn Stenberg <bjst@enea.com>
Signed-off-by: Anders Roxell <anders.roxell@enea.com>
Signed-off-by: Josep Puigdemont <josep.puigdemont@enea.com>
---
meta/classes/insane.bbclass | 6 +++---
meta/classes/native.bbclass | 3 +++
meta/classes/ptest.bbclass | 17 +++++------------
3 files changed, 11 insertions(+), 15 deletions(-)
diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index 75db7a2..336beaa 100644
--- a/meta/classes/insane.bbclass
+++ b/meta/classes/insane.bbclass
@@ -216,7 +216,7 @@ def package_qa_check_dev(path, name, d, elf, messages):
Check for ".so" library symlinks in non-dev packages
"""
- if not name.endswith("-dev") and not name.endswith("-dbg") and not name.startswith("nativesdk-") and path.endswith(".so") and os.path.islink(path):
+ if not name.endswith("-dev") and not name.endswith("-dbg") and not name.endswith("-ptest") and not name.startswith("nativesdk-") and path.endswith(".so") and os.path.islink(path):
messages.append("non -dev/-dbg/-nativesdk package contains symlink .so: %s path '%s'" % \
(name, package_qa_clean_path(path,d)))
@@ -229,7 +229,7 @@ def package_qa_check_staticdev(path, name, d, elf, messages):
libgcc.a, libgcov.a will be skipped in their packages
"""
- if not name.endswith("-pic") and not name.endswith("-staticdev") and path.endswith(".a") and not path.endswith("_nonshared.a"):
+ if not name.endswith("-pic") and not name.endswith("-staticdev") and not name.endswith("-ptest") and path.endswith(".a") and not path.endswith("_nonshared.a"):
messages.append("non -staticdev package contains static .a library: %s path '%s'" % \
(name, package_qa_clean_path(path,d)))
@@ -273,7 +273,7 @@ def package_qa_check_dbg(path, name, d, elf, messages):
Check for ".debug" files or directories outside of the dbg package
"""
- if not "-dbg" in name:
+ if not "-dbg" in name and not "-ptest" in name:
if '.debug' in path.split(os.path.sep):
messages.append("non debug package contains .debug directory: %s path %s" % \
(name, package_qa_clean_path(path,d)))
diff --git a/meta/classes/native.bbclass b/meta/classes/native.bbclass
index bfc9e4c..cd930f0 100644
--- a/meta/classes/native.bbclass
+++ b/meta/classes/native.bbclass
@@ -50,6 +50,9 @@ TOOLCHAIN_OPTIONS = ""
DEPENDS_GETTEXT = "gettext-native"
+# Don't build ptest natively
+PTEST_ENABLED = "0"
+
# Don't use site files for native builds
export CONFIG_SITE = ""
diff --git a/meta/classes/ptest.bbclass b/meta/classes/ptest.bbclass
index 6ab5ee4..37357e8 100644
--- a/meta/classes/ptest.bbclass
+++ b/meta/classes/ptest.bbclass
@@ -7,25 +7,18 @@ DESCRIPTION_${PN}-ptest ?= "${DESCRIPTION} \
This package contains a test directory ${PTEST_PATH} for package test purposes."
PTEST_PATH ?= "${libdir}/${PN}/ptest"
-FILES_${PN}-ptest = "${PTEST_PATH}/*"
+FILES_${PN}-ptest = "${PTEST_PATH}"
SECTION_${PN}-ptest = "devel"
ALLOW_EMPTY_${PN}-ptest = "1"
PTEST_ENABLED = "${@base_contains("DISTRO_FEATURES", "ptest", "1", "0", d)}"
RDEPENDS_${PN}-ptest_virtclass-native = ""
RDEPENDS_${PN}-ptest_virtclass-nativesdk = ""
-PACKAGES += "${@base_contains('DISTRO_FEATURES', 'ptest', '${PN}-ptest', '', d)}"
-
-FILES_${PN}-dbg += "${PTEST_PATH}/.debug \
- ${PTEST_PATH}/*/.debug \
- ${PTEST_PATH}/*/*/.debug \
- ${PTEST_PATH}/*/*/*/.debug \
- ${PTEST_PATH}/*/*/*/*/.debug \
- "
+PACKAGES =+ "${@base_contains('DISTRO_FEATURES', 'ptest', '${PN}-ptest', '', d)}"
do_configure_ptest_base() {
if [ ${PTEST_ENABLED} = 1 ]; then
- if [ type -t do_configure_ptest = function ]; then
+ if [ a$(type -t do_configure_ptest) = afunction ]; then
do_configure_ptest
fi
fi
@@ -33,7 +26,7 @@ do_configure_ptest_base() {
do_compile_ptest_base() {
if [ ${PTEST_ENABLED} = 1 ]; then
- if [ type -t do_compile_ptest = function ]; then
+ if [ a$(type -t do_compile_ptest) = afunction ]; then
do_compile_ptest
fi
fi
@@ -46,7 +39,7 @@ do_install_ptest_base() {
if grep -q install-ptest: Makefile; then
oe_runmake DESTDIR=${D}${PTEST_PATH} install-ptest
fi
- if [ type -t do_install_ptest = function ]; then
+ if [ a$(type -t do_install_ptest) = afunction ]; then
do_install_ptest
fi
fi
--
1.7.10.4
prev parent reply other threads:[~2013-04-10 13:52 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-20 8:30 Problems with ptest and package splitting Björn Stenberg
2013-03-21 15:23 ` [PATCH] ptest bugfix: Make all ptest files go into -ptest package Björn Stenberg
2013-03-22 14:12 ` Björn Stenberg
2013-03-25 14:34 ` [PATCH v2] " Björn Stenberg
2013-03-25 16:18 ` Richard Purdie
2013-04-08 8:41 ` Björn Stenberg
2013-04-04 6:40 ` [PATCH v3] ptest bug fixes Björn Stenberg
2013-04-10 13:34 ` Björn Stenberg [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=1365600896-15876-1-git-send-email-bjst@enea.com \
--to=bjst@enea.com \
--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