[OE-core] [PATCH v2] ptest bugfix: Make all ptest files go into -ptest package
Richard Purdie
richard.purdie at linuxfoundation.org
Mon Mar 25 16:18:04 UTC 2013
On Mon, 2013-03-25 at 15:34 +0100, Björn Stenberg wrote:
> 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.
>
> Bugfix: Add subshells for 'type' command.
>
> This patch fixes bug #4069.
>
> Signed-off-by: Björn Stenberg <bjst at enea.com>
> ---
> meta/classes/insane.bbclass | 6 +++---
> meta/classes/ptest.bbclass | 15 ++++-----------
> 2 files changed, 7 insertions(+), 14 deletions(-)
>
> diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
> index 2f10688..5170580 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/ptest.bbclass b/meta/classes/ptest.bbclass
> index 6ab5ee4..c51c4e6 100644
> --- a/meta/classes/ptest.bbclass
> +++ b/meta/classes/ptest.bbclass
> @@ -14,18 +14,11 @@ 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 \
> - "
Why are we putting all the debug files into the -ptest package now? Does
that make sense?
Cheers,
Richard
> +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 [ $(type -t do_configure_ptest) = function ]; 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 [ $(type -t do_compile_ptest) = function ]; 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 [ $(type -t do_install_ptest) = function ]; then
> do_install_ptest
> fi
> fi
More information about the Openembedded-core
mailing list