Re: [OE-core] [PATCH v2] gstreamer: enable ptest support

2018-03-19 Thread Anuj Mittal
Hi Ross,

On 03/15/2018 01:03 AM, Burton, Ross wrote:
> On 28 February 2018 at 02:51, Anuj Mittal  > wrote:
> 
> +diff --git a/Makefile.am b/Makefile.am
> +index de057c4..42e90fe 100644
> +--- a/Makefile.am
>  b/Makefile.am
> +@@ -96,6 +96,9 @@ check-torture:
> +
> + build-checks:
> +       $(MAKE) -C tests/check build-checks
> ++
> ++install-ptest:
> ++      $(MAKE) -C tests/check DESTDIR=$(DESTDIR) $@
> + else
> + check-valgrind: 
> 
> +       echo "'check' library not installed, skipping"
> 
>  
> I'd say not to bother patching the top-level and instead call the right
> makefile from do_install_ptest.

I have made this change in v3.

> 
> ++install-ptest: $(TESTS)
> ++      @$(INSTALL) -d $(DESTDIR)
> ++      @for dir in gst libs tools pipelines elements generic; do \
> ++              if [ -x $$dir/.libs ]; then \
> ++                      $(INSTALL) -d $(DESTDIR)/$$dir; \
> ++                      $(INSTALL_PROGRAM) $$dir/.libs/*
> $(DESTDIR)/$$dir/; \
> ++              fi \
> ++      done
> 
> 
> Can this do string functions on TESTS instead of hard-coding the list of
> directories?

TESTS is a list of / and wouldn't have been
appropriate to get just the directory names. I used find to get the
first level directories instead.

Thanks,

Anuj

> 
> Ross

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH v2] gstreamer: enable ptest support

2018-03-14 Thread Burton, Ross
On 28 February 2018 at 02:51, Anuj Mittal  wrote:

> +diff --git a/Makefile.am b/Makefile.am
> +index de057c4..42e90fe 100644
> +--- a/Makefile.am
>  b/Makefile.am
> +@@ -96,6 +96,9 @@ check-torture:
> +
> + build-checks:
> +   $(MAKE) -C tests/check build-checks
> ++
> ++install-ptest:
> ++  $(MAKE) -C tests/check DESTDIR=$(DESTDIR) $@
> + else
> + check-valgrind:
>
+   echo "'check' library not installed, skipping"
>

I'd say not to bother patching the top-level and instead call the right
makefile from do_install_ptest.

++install-ptest: $(TESTS)
> ++  @$(INSTALL) -d $(DESTDIR)
> ++  @for dir in gst libs tools pipelines elements generic; do \
> ++  if [ -x $$dir/.libs ]; then \
> ++  $(INSTALL) -d $(DESTDIR)/$$dir; \
> ++  $(INSTALL_PROGRAM) $$dir/.libs/*
> $(DESTDIR)/$$dir/; \
> ++  fi \
> ++  done
>

Can this do string functions on TESTS instead of hard-coding the list of
directories?

Ross
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH v2] gstreamer: enable ptest support

2018-03-13 Thread Anuj Mittal
Ping. Was there anything wrong with this?

Thanks,
Anuj

On 02/28/2018 10:51 AM, Anuj Mittal wrote:
> Make sure that the tests are packaged and can be executed
> when ptest is enabled. Also, remove build host specific references
> from Makefile.
> 
> Signed-off-by: Anuj Mittal 
> ---
>  .../files/add-a-target-to-compile-tests.patch  | 61 
> ++
>  meta/recipes-multimedia/gstreamer/files/run-ptest  |  3 ++
>  meta/recipes-multimedia/gstreamer/gstreamer1.0.inc | 24 -
>  3 files changed, 86 insertions(+), 2 deletions(-)
>  create mode 100644 
> meta/recipes-multimedia/gstreamer/files/add-a-target-to-compile-tests.patch
>  create mode 100644 meta/recipes-multimedia/gstreamer/files/run-ptest
> 
> diff --git 
> a/meta/recipes-multimedia/gstreamer/files/add-a-target-to-compile-tests.patch 
> b/meta/recipes-multimedia/gstreamer/files/add-a-target-to-compile-tests.patch
> new file mode 100644
> index 000..b1405b6
> --- /dev/null
> +++ 
> b/meta/recipes-multimedia/gstreamer/files/add-a-target-to-compile-tests.patch
> @@ -0,0 +1,61 @@
> +From 442691c7778601e3e4b88d0fbfb9d512ed34f414 Mon Sep 17 00:00:00 2001
> +From: Anuj Mittal 
> +Date: Tue, 27 Feb 2018 09:27:01 +0800
> +Subject: [PATCH] add targets for test installation
> +
> +Targets to make sure tests can be installed and then run on
> +the target.
> +
> +Upstream-Status: Inappropriate [specific to oe setup]
> +
> +Signed-off-by: Anuj Mittal 
> +---
> + Makefile.am |  3 +++
> + tests/check/Makefile.am | 17 +
> + 2 files changed, 20 insertions(+)
> +
> +diff --git a/Makefile.am b/Makefile.am
> +index de057c4..42e90fe 100644
> +--- a/Makefile.am
>  b/Makefile.am
> +@@ -96,6 +96,9 @@ check-torture:
> + 
> + build-checks:
> + $(MAKE) -C tests/check build-checks
> ++
> ++install-ptest:
> ++$(MAKE) -C tests/check DESTDIR=$(DESTDIR) $@
> + else
> + check-valgrind:
> + echo "'check' library not installed, skipping"
> +diff --git a/tests/check/Makefile.am b/tests/check/Makefile.am
> +index 13b916d..05ab267 100644
> +--- a/tests/check/Makefile.am
>  b/tests/check/Makefile.am
> +@@ -178,6 +178,23 @@ noinst_PROGRAMS =
> + 
> + TESTS = $(check_PROGRAMS)
> + 
> ++install-ptest: $(TESTS)
> ++@$(INSTALL) -d $(DESTDIR)
> ++@for dir in gst libs tools pipelines elements generic; do \
> ++if [ -x $$dir/.libs ]; then \
> ++$(INSTALL) -d $(DESTDIR)/$$dir; \
> ++$(INSTALL_PROGRAM) $$dir/.libs/* $(DESTDIR)/$$dir/; \
> ++fi \
> ++done
> ++
> ++runtests:
> ++@for b in $(TESTS); do \
> ++if [ -x $$b ]; then \
> ++$(AM_TESTS_ENVIRONMENT) $(SHELL) test-driver 
> --test-name "$$b" \
> ++--log-file $$b.log --trs-file $$b.trs $$b; \
> ++fi \
> ++done
> ++
> + noinst_HEADERS = \
> + gst/capslist.h \
> + gst/struct_arm.h \
> +-- 
> +2.7.4
> +
> diff --git a/meta/recipes-multimedia/gstreamer/files/run-ptest 
> b/meta/recipes-multimedia/gstreamer/files/run-ptest
> new file mode 100644
> index 000..473d0b6
> --- /dev/null
> +++ b/meta/recipes-multimedia/gstreamer/files/run-ptest
> @@ -0,0 +1,3 @@
> +#!/bin/sh
> +
> +make -k runtests
> diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0.inc 
> b/meta/recipes-multimedia/gstreamer/gstreamer1.0.inc
> index c2df1f3..9371132 100644
> --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0.inc
> +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0.inc
> @@ -8,7 +8,7 @@ LICENSE = "LGPLv2+"
>  
>  DEPENDS = "glib-2.0 glib-2.0-native libcap libxml2 bison-native flex-native"
>  
> -inherit autotools pkgconfig gettext upstream-version-is-even 
> gobject-introspection gtk-doc
> +inherit autotools pkgconfig gettext upstream-version-is-even 
> gobject-introspection gtk-doc ptest
>  
>  # This way common/m4/introspection.m4 will come first
>  # (it has a custom INTROSPECTION_INIT macro, and so must be used instead of 
> our common introspection.m4 file)
> @@ -18,9 +18,12 @@ SRC_URI_append = " \
>  file://0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch \
>  file://gtk-doc-tweaks.patch \
>  file://0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch \
> +file://add-a-target-to-compile-tests.patch \
> +file://run-ptest \
>  "
>  
> -PACKAGECONFIG ??= ""
> +PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', 
> d)} \
> +   "
>  
>  PACKAGECONFIG[debug] = "--enable-debug,--disable-debug"
>  PACKAGECONFIG[tests] = "--enable-tests,--disable-tests"
> @@ -59,3 +62,20 @@ do_configure[prefuncs] += "delete_pkg_m4_file"
>  do_compile_prepend() {
>  export GIR_EXTRA_LIBS_PATH="${B}/gst/.libs:${B}/libs/gst/base/.libs"
>  }
> +
> +do_compile_ptest() {
> +oe_runmake build-checks
> +}
> +
> +do_install_ptest() {
> +install -m 644 ${B}/tests/check/Makefile ${D}${PTEST_PATH}
> +install -m 755 ${S}/test-driver ${D}${PTEST_PATH