[OE-core] [PATCH] kbd: fix ptest libkbdfile-test08

Mingde (Matthew) Zeng matthew.zeng at windriver.com
Wed Jan 22 18:47:36 UTC 2020


    `DATADIR` and `ABS_DATADIR` are compile flags defined in
    ./kbd/tests/Makefile.am. `DATADIR` is the relative directory of
    kbd, i.e `./kbd/ptest/tests` whereas `ABS_DATADIR` is the full
    directory path, i.e `/usr/lib/kbd/ptest/tests`. The latter has a
    problem when building ptests for a 64-bit image, because the tests
    folder is located at `/usr/lib64/kbd/ptest/tests` instead.

    Therefore `ABS_DATADIR` is changed to `DATADIR`, also consistent
    with what *every other* kbd test is doing.

    The test searches DATADIR recursively for a file named
    `test0.map`, but it finds the wrong file at
    `/findfile/test_0/keymaps/i386/qwerty/test0.map`, while it
    actually needs `/findfile/test_0/keymaps/i386/qwerty/test0.map`.

    Thus appending `/i386` to `dirpath` so that `libkbdfile-test08.c`
    finds the right test file.

Signed-off-by: Matthew Zeng<Matthew.Zeng at windriver.com>
---
 ...append-i386-to-fix-libkbdfile-test08.patch | 44 +++++++++++++++++++
 meta/recipes-core/kbd/kbd_2.2.0.bb            |  1 +
 2 files changed, 45 insertions(+)
 create mode 100644 meta/recipes-core/kbd/kbd/0001-Use-DATADIR-and-append-i386-to-fix-libkbdfile-test08.patch

diff --git a/meta/recipes-core/kbd/kbd/0001-Use-DATADIR-and-append-i386-to-fix-libkbdfile-test08.patch b/meta/recipes-core/kbd/kbd/0001-Use-DATADIR-and-append-i386-to-fix-libkbdfile-test08.patch
new file mode 100644
index 0000000000..ec40764c1d
--- /dev/null
+++ b/meta/recipes-core/kbd/kbd/0001-Use-DATADIR-and-append-i386-to-fix-libkbdfile-test08.patch
@@ -0,0 +1,44 @@
+From 92c0fb720cf7b9966494e5eaa1f7a4ea8e0a34d2 Mon Sep 17 00:00:00 2001
+From: "Mingde (Matthew) Zeng" <matthew.zeng at windriver.com>
+Date: Wed, 22 Jan 2020 11:02:17 -0500
+Subject: [PATCH] Use DATADIR and append i386 to fix libkbdfile-test08 ptest
+ failure
+
+Replace ABS_DATADIR with DATADIR and append i386 to dirpath.
+
+Upstream-Status: Inappropriate [OE specific]
+
+This OE specific patch applies to kbd v2.2.0 for now, the upstream
+    made drastic changes since v2.2.0 which may or may not fix this
+    issue, we will find out in future releases.
+
+Signed-off-by: Matthew Zeng<Matthew.Zeng at windriver.com>
+---
+ tests/libkbdfile-test08.c | 8 +++-----
+ 1 file changed, 3 insertions(+), 5 deletions(-)
+
+diff --git a/tests/libkbdfile-test08.c b/tests/libkbdfile-test08.c
+index bf41707..993fedc 100644
+--- a/tests/libkbdfile-test08.c
++++ b/tests/libkbdfile-test08.c
+@@ -14,14 +14,12 @@ main(int __attribute__((unused)) argc, char **argv)
+ 	if (!fp)
+ 		kbd_error(EXIT_FAILURE, 0, "unable to create kbdfile");
+
+-	const char *const dirpath[]  = { "", DATADIR "/findfile/test_0/keymaps/**", 0 };
++	const char *const dirpath[]  = { "", DATADIR "/findfile/test_0/keymaps/i386/**", 0 };
+ 	const char *const suffixes[] = { "", ".map", ".kmap", 0 };
+
+-	const char *expect = ABS_DATADIR "/findfile/test_0/keymaps/i386/qwerty/test0.map";
++	const char *expect = DATADIR "/findfile/test_0/keymaps/i386/qwerty/test0.map";
+
+-	int rc = 0;
+-
+-	rc = kbdfile_find((char *)(ABS_DATADIR "/findfile/test_0/keymaps/i386/qwerty/test0"), (char **) dirpath, (char **) suffixes, fp);
++	int rc = kbdfile_find((char *)"test0", (char **) dirpath, (char **) suffixes, fp);
+
+ 	if (rc != 0)
+ 		kbd_error(EXIT_FAILURE, 0, "unable to find file");
+--
+2.24.1
+
diff --git a/meta/recipes-core/kbd/kbd_2.2.0.bb b/meta/recipes-core/kbd/kbd_2.2.0.bb
index df9b0bb90b..e13cea7634 100644
--- a/meta/recipes-core/kbd/kbd_2.2.0.bb
+++ b/meta/recipes-core/kbd/kbd_2.2.0.bb
@@ -16,6 +16,7 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/${BPN}/${BP}.tar.xz \
            file://run-ptest \
            ${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'file://set-proper-path-of-resources.patch', '', d)} \
            file://0001-analyze.l-add-missing-string-format.patch \
+           file://0001-Use-DATADIR-and-append-i386-to-fix-libkbdfile-test08.patch \
            "

 SRC_URI[md5sum] = "d1d7ae0b5fb875dc082731e09cd0c8bc"
--
2.24.0


More information about the Openembedded-core mailing list