Message ID | 20241016171652.5138-1-mail2szahir@gmail.com |
---|---|
State | New |
Headers | show |
Series | [master] alsa-lib: enabling ptest for alsa-lib component | expand |
On Wed, Oct 16, 2024 at 10:17 AM aszh07 via lists.openembedded.org <mail2szahir=gmail.com@lists.openembedded.org> wrote: > > This change adds ptest for alsa-lib. > > 1) Removed the test suite execution 'make check-TESTS' call using 'sed' command. > > 2) Compiled the test directory source code using "oe_runmake check" command. > > 3) Copied all the required binaries into PTEST_PATH using do_install_ptest() > function. > > Signed-off-by: aszh07 <mail2szahir@gmail.com> > --- > .../distro/include/ptest-packagelists.inc | 1 + > .../alsa/alsa-lib_1.2.12.bb | 23 +++++++++++++++++-- > meta/recipes-multimedia/alsa/files/run-ptest | 14 +++++++++++ > 3 files changed, 36 insertions(+), 2 deletions(-) > create mode 100644 meta/recipes-multimedia/alsa/files/run-ptest > > diff --git a/meta/conf/distro/include/ptest-packagelists.inc b/meta/conf/distro/include/ptest-packagelists.inc > index 4a48188562..f0ffe11347 100644 > --- a/meta/conf/distro/include/ptest-packagelists.inc > +++ b/meta/conf/distro/include/ptest-packagelists.inc > @@ -5,6 +5,7 @@ > # > PTESTS_FAST = "\ > acl \ > + alsa-lib \ > apr-util \ > attr \ > babeltrace \ > diff --git a/meta/recipes-multimedia/alsa/alsa-lib_1.2.12.bb b/meta/recipes-multimedia/alsa/alsa-lib_1.2.12.bb > index d9136052b7..1aa19dac6d 100644 > --- a/meta/recipes-multimedia/alsa/alsa-lib_1.2.12.bb > +++ b/meta/recipes-multimedia/alsa/alsa-lib_1.2.12.bb > @@ -9,10 +9,12 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=a916467b91076e631dd8edb7424769c7 \ > file://src/socket.c;md5=285675b45e83f571c6a957fe4ab79c93;beginline=9;endline=24 \ > " > > -SRC_URI = "https://www.alsa-project.org/files/pub/lib/${BP}.tar.bz2" > +SRC_URI = "https://www.alsa-project.org/files/pub/lib/${BP}.tar.bz2 \ > + file://run-ptest \ > + " > SRC_URI[sha256sum] = "4868cd908627279da5a634f468701625be8cc251d84262c7e5b6a218391ad0d2" > > -inherit autotools pkgconfig > +inherit autotools pkgconfig ptest > > EXTRA_OECONF += " \ > ${@bb.utils.contains('TARGET_FPU', 'soft', '--with-softfloat', '', d)} \ > @@ -42,3 +44,20 @@ RREPLACES:alsa-conf = "alsa-conf-base" > RCONFLICTS:alsa-conf = "alsa-conf-base" > > BBCLASSEXTEND = "native nativesdk" > + > +do_compile_ptest() { > + sed -i 's/^.*$(MAKE) $(AM_MAKEFLAGS) check-TESTS.*$/ /' ${S}/test/lsb/Makefile.in Can we do this sed operation as a patch and apply it unconditionally, since it's only editing tests makefile, it seems harmless for the rest of the component. > + oe_runmake check > +} > + > +do_install_ptest:append() { > + for f in control client_event_filter namehint > + do > + install -m 0755 "${B}/test/.libs/$f" "${D}${PTEST_PATH}"; > + done > + > + for f in config midi_event > + do > + install -m 0755 "${B}/test/lsb/.libs/$f" "${D}${PTEST_PATH}"; > + done > +} > diff --git a/meta/recipes-multimedia/alsa/files/run-ptest b/meta/recipes-multimedia/alsa/files/run-ptest > new file mode 100644 > index 0000000000..8fbf9f140a > --- /dev/null > +++ b/meta/recipes-multimedia/alsa/files/run-ptest > @@ -0,0 +1,14 @@ > +#!/bin/sh > +set -eux > + > +for t in config control midi_event client_event_filter client_event_filter > +do > + if "./$t" > "alsa-lib_$t.log" 2>&1 > + then > + echo "PASS: $t" > + else > + echo "FAIL: $t" > + cat "alsa-lib_$t.log" > + fi > + rm "alsa-lib_$t.log" > +done > -- > 2.17.1 > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#205969): https://lists.openembedded.org/g/openembedded-core/message/205969 > Mute This Topic: https://lists.openembedded.org/mt/109048136/1997914 > Group Owner: openembedded-core+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [raj.khem@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- >
On Wed, 16 Oct 2024 at 19:17, aszh07 via lists.openembedded.org <mail2szahir=gmail.com@lists.openembedded.org> wrote: > + for f in control client_event_filter namehint > + do > + install -m 0755 "${B}/test/.libs/$f" "${D}${PTEST_PATH}"; > + done > + > + for f in config midi_event > + do > + install -m 0755 "${B}/test/lsb/.libs/$f" "${D}${PTEST_PATH}"; > + done Can these be wildcards, or maybe the output of the find command? Hardcoded lists like these are prone to become outdated and incomplete on version upgrades. > +for t in config control midi_event client_event_filter client_event_filter > +do > + if "./$t" > "alsa-lib_$t.log" 2>&1 Here you can simply use a wildcard as nothing else is installed. Again avoids the use of hardcoded lists. Alex
diff --git a/meta/conf/distro/include/ptest-packagelists.inc b/meta/conf/distro/include/ptest-packagelists.inc index 4a48188562..f0ffe11347 100644 --- a/meta/conf/distro/include/ptest-packagelists.inc +++ b/meta/conf/distro/include/ptest-packagelists.inc @@ -5,6 +5,7 @@ # PTESTS_FAST = "\ acl \ + alsa-lib \ apr-util \ attr \ babeltrace \ diff --git a/meta/recipes-multimedia/alsa/alsa-lib_1.2.12.bb b/meta/recipes-multimedia/alsa/alsa-lib_1.2.12.bb index d9136052b7..1aa19dac6d 100644 --- a/meta/recipes-multimedia/alsa/alsa-lib_1.2.12.bb +++ b/meta/recipes-multimedia/alsa/alsa-lib_1.2.12.bb @@ -9,10 +9,12 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=a916467b91076e631dd8edb7424769c7 \ file://src/socket.c;md5=285675b45e83f571c6a957fe4ab79c93;beginline=9;endline=24 \ " -SRC_URI = "https://www.alsa-project.org/files/pub/lib/${BP}.tar.bz2" +SRC_URI = "https://www.alsa-project.org/files/pub/lib/${BP}.tar.bz2 \ + file://run-ptest \ + " SRC_URI[sha256sum] = "4868cd908627279da5a634f468701625be8cc251d84262c7e5b6a218391ad0d2" -inherit autotools pkgconfig +inherit autotools pkgconfig ptest EXTRA_OECONF += " \ ${@bb.utils.contains('TARGET_FPU', 'soft', '--with-softfloat', '', d)} \ @@ -42,3 +44,20 @@ RREPLACES:alsa-conf = "alsa-conf-base" RCONFLICTS:alsa-conf = "alsa-conf-base" BBCLASSEXTEND = "native nativesdk" + +do_compile_ptest() { + sed -i 's/^.*$(MAKE) $(AM_MAKEFLAGS) check-TESTS.*$/ /' ${S}/test/lsb/Makefile.in + oe_runmake check +} + +do_install_ptest:append() { + for f in control client_event_filter namehint + do + install -m 0755 "${B}/test/.libs/$f" "${D}${PTEST_PATH}"; + done + + for f in config midi_event + do + install -m 0755 "${B}/test/lsb/.libs/$f" "${D}${PTEST_PATH}"; + done +} diff --git a/meta/recipes-multimedia/alsa/files/run-ptest b/meta/recipes-multimedia/alsa/files/run-ptest new file mode 100644 index 0000000000..8fbf9f140a --- /dev/null +++ b/meta/recipes-multimedia/alsa/files/run-ptest @@ -0,0 +1,14 @@ +#!/bin/sh +set -eux + +for t in config control midi_event client_event_filter client_event_filter +do + if "./$t" > "alsa-lib_$t.log" 2>&1 + then + echo "PASS: $t" + else + echo "FAIL: $t" + cat "alsa-lib_$t.log" + fi + rm "alsa-lib_$t.log" +done
This change adds ptest for alsa-lib. 1) Removed the test suite execution 'make check-TESTS' call using 'sed' command. 2) Compiled the test directory source code using "oe_runmake check" command. 3) Copied all the required binaries into PTEST_PATH using do_install_ptest() function. Signed-off-by: aszh07 <mail2szahir@gmail.com> --- .../distro/include/ptest-packagelists.inc | 1 + .../alsa/alsa-lib_1.2.12.bb | 23 +++++++++++++++++-- meta/recipes-multimedia/alsa/files/run-ptest | 14 +++++++++++ 3 files changed, 36 insertions(+), 2 deletions(-) create mode 100644 meta/recipes-multimedia/alsa/files/run-ptest