From cb3af8fb072f8999dbb5160bdc95a102b02fd37a Mon Sep 17 00:00:00 2001
From: Kai Kang <kai.kang@windriver.com>
Date: Fri, 30 Sep 2016 16:49:55 +0800
Subject: [PATCH] kbd: create ptest sub-package

Upstream-Status: Inappropriate [embedded specific]

kbd is out of source built, then the value of $(srcdir) is relative path of
${S}/tests to ${B}/tests. Macro DATADIR is defined with $(srcdir) and replaced
in .c files by compiler, and string @DATADIR@ is replaced with $(srdir) by rule
"%: %.in" in Makefile.

But kbd-ptest puts test cases and resource files in same directory, then some
ptest cases fail to find resources.

Replace DATADIR and @DATADIR@ with current directory(dot) to make test cases
run as expected.

Signed-off-by: Kai Kang <kai.kang@windriver.com>

---
 tests/Makefile.am           | 4 ++--
 tests/alt-is-meta.in        | 2 +-
 tests/dumpkeys-bkeymap.in   | 4 ++--
 tests/dumpkeys-fulltable.in | 2 +-
 tests/dumpkeys-mktable.in   | 4 ++--
 5 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/tests/Makefile.am b/tests/Makefile.am
index 8d0ab69..5147c28 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -7,8 +7,8 @@ AM_CPPFLAGS = \
 	-I$(builddir)/../src/libkeymap \
 	-I$(srcdir)/../src/libkbdfile \
 	-I$(builddir)/../src/libkbdfile \
-	-DDATADIR=\"$(srcdir)\" \
-	-DABS_DATADIR=\"$(realpath $(srcdir))\" \
+	-DDATADIR=\".\" \
+	-DABS_DATADIR=\"/usr/lib/kbd/ptest/tests\" \
 	-DBUILDDIR=\"$(builddir)\"
 
 AM_CFLAGS = $(CHECK_CFLAGS) $(CODE_COVERAGE_CFLAGS)
diff --git a/tests/alt-is-meta.in b/tests/alt-is-meta.in
index 3a1441f..d829f2e 100755
--- a/tests/alt-is-meta.in
+++ b/tests/alt-is-meta.in
@@ -7,7 +7,7 @@ cd "$cwd"
 rc=0
 temp="$(mktemp "@BUILDDIR@/temp.XXXXXXXXX")"
 
-datadir="@DATADIR@/data/alt-is-meta"
+datadir="./data/alt-is-meta"
 
 ./libkeymap-showmaps "$datadir"/alt-is-meta.map > "$temp" || rc=$?
 cmp -s "$datadir/alt-is-meta.output" "$temp" || rc=$?
diff --git a/tests/dumpkeys-bkeymap.in b/tests/dumpkeys-bkeymap.in
index 03d4ca2..d1d0e26 100755
--- a/tests/dumpkeys-bkeymap.in
+++ b/tests/dumpkeys-bkeymap.in
@@ -9,8 +9,8 @@ temp="$(mktemp "@BUILDDIR@/temp.XXXXXXXXX")"
 
 datadir="@DATADIR@"
 
-./libkeymap-bkeymap "$datadir/"../data/keymaps/i386/qwerty/defkeymap.map > "$temp" || rc=$?
-cmp -s "$datadir/data/dumpkeys-bkeymap/bkeymap.bin" "$temp" || rc=$?
+./libkeymap-bkeymap ../data/keymaps/i386/qwerty/defkeymap.map > "$temp" || rc=$?
+cmp -s "./data/dumpkeys-bkeymap/bkeymap.bin" "$temp" || rc=$?
 
 if [ "$rc" != 0 ]; then
 	printf 'failed\n'
diff --git a/tests/dumpkeys-fulltable.in b/tests/dumpkeys-fulltable.in
index a3a5ece..67a73ef 100755
--- a/tests/dumpkeys-fulltable.in
+++ b/tests/dumpkeys-fulltable.in
@@ -5,7 +5,7 @@ cwd="$(readlink -ev "${0%/*}")"
 cd "$cwd"
 
 BUILDDIR="@BUILDDIR@"
-DATADIR="@DATADIR@"
+DATADIR="."
 
 check_keymap() {
 	local kmap temp rc
diff --git a/tests/dumpkeys-mktable.in b/tests/dumpkeys-mktable.in
index 0f17c40..7e5161d 100755
--- a/tests/dumpkeys-mktable.in
+++ b/tests/dumpkeys-mktable.in
@@ -7,8 +7,8 @@ cd "$cwd"
 rc=0
 temp="$(mktemp "@BUILDDIR@/temp.XXXXXXXXX")"
 
-./libkeymap-mktable "@DATADIR@/"../data/keymaps/i386/qwerty/defkeymap.map > "$temp" || rc=$?
-cmp -s "@DATADIR@/data/dumpkeys-mktable/defkeymap.c" "$temp" || rc=$?
+./libkeymap-mktable ../data/keymaps/i386/qwerty/defkeymap.map > "$temp" || rc=$?
+cmp -s "./data/dumpkeys-mktable/defkeymap.c" "$temp" || rc=$?
 
 if [ "$rc" != 0 ]; then
 	printf 'failed\n'
