aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--meta-linaro-integration/recipes-overlayed/ltp/ltp/0001-Realtime-tests-Fix-bad-priority-inheritance-conditio.patch48
-rw-r--r--meta-linaro-integration/recipes-overlayed/ltp/ltp/0001-Realtime-tests-Fix-robust-mutex-conditionals.patch62
-rw-r--r--meta-linaro-integration/recipes-overlayed/ltp/ltp/0001-Rename-runtests_noltp.sh-script-so-have-unique-name.patch202
-rw-r--r--meta-linaro-integration/recipes-overlayed/ltp/ltp/add-knob-for-numa.patch39
-rw-r--r--meta-linaro-integration/recipes-overlayed/ltp/ltp/ltp-Do-not-link-against-libfl.patch31
-rw-r--r--meta-linaro-integration/recipes-overlayed/ltp/ltp/make-setregid02-work.patch61
-rw-r--r--meta-linaro-integration/recipes-overlayed/ltp/ltp_20140828.bb90
7 files changed, 533 insertions, 0 deletions
diff --git a/meta-linaro-integration/recipes-overlayed/ltp/ltp/0001-Realtime-tests-Fix-bad-priority-inheritance-conditio.patch b/meta-linaro-integration/recipes-overlayed/ltp/ltp/0001-Realtime-tests-Fix-bad-priority-inheritance-conditio.patch
new file mode 100644
index 00000000..631f9265
--- /dev/null
+++ b/meta-linaro-integration/recipes-overlayed/ltp/ltp/0001-Realtime-tests-Fix-bad-priority-inheritance-conditio.patch
@@ -0,0 +1,48 @@
+From b601a8d1b39075a5339195fc0a4038f71ec3b49e Mon Sep 17 00:00:00 2001
+From: "Gary S. Robertson" <gary.robertson@linaro.org>
+Date: Wed, 27 Aug 2014 16:23:56 -0500
+Subject: [LTP][PATCH] Realtime tests: Fix bad priority inheritance conditionals
+
+testcases/realtime/lib/librttest.c and
+testcases/realtime/stress/pi-tests/testpi-3.c
+both referenced a non-existent autoconf configuration setting variable.
+Replaced the invalid variable name with the variable actually created
+by autoconf.
+
+Upstream-Status: Backported
+
+Signed-off-by: Gary S. Robertson <gary.robertson@linaro.org>
+---
+ testcases/realtime/lib/librttest.c | 2 +-
+ testcases/realtime/stress/pi-tests/testpi-3.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/testcases/realtime/lib/librttest.c b/testcases/realtime/lib/librttest.c
+index c175148..3679058 100644
+--- a/testcases/realtime/lib/librttest.c
++++ b/testcases/realtime/lib/librttest.c
+@@ -586,7 +586,7 @@ void *busy_work_us(int us)
+
+ void init_pi_mutex(pthread_mutex_t * m)
+ {
+-#if HAVE_DECL_PTHREAD_PRIO_INHERIT
++#if HAS_PRIORITY_INHERIT
+ pthread_mutexattr_t attr;
+ int ret;
+ int protocol;
+diff --git a/testcases/realtime/stress/pi-tests/testpi-3.c b/testcases/realtime/stress/pi-tests/testpi-3.c
+index 30f38f6..e483945 100644
+--- a/testcases/realtime/stress/pi-tests/testpi-3.c
++++ b/testcases/realtime/stress/pi-tests/testpi-3.c
+@@ -365,7 +365,7 @@ int main(int argc, char *argv[])
+
+ printf("Start %s\n", argv[0]);
+
+-#if HAVE_DECL_PTHREAD_PRIO_INHERIT
++#if HAS_PRIORITY_INHERIT
+ if (!nopi) {
+ pthread_mutexattr_t mutexattr;
+ int protocol;
+--
+1.7.9.5
+
diff --git a/meta-linaro-integration/recipes-overlayed/ltp/ltp/0001-Realtime-tests-Fix-robust-mutex-conditionals.patch b/meta-linaro-integration/recipes-overlayed/ltp/ltp/0001-Realtime-tests-Fix-robust-mutex-conditionals.patch
new file mode 100644
index 00000000..1fdd2810
--- /dev/null
+++ b/meta-linaro-integration/recipes-overlayed/ltp/ltp/0001-Realtime-tests-Fix-robust-mutex-conditionals.patch
@@ -0,0 +1,62 @@
+From 663a14423baea0e05ba79d90d2497dde5e4594bd Mon Sep 17 00:00:00 2001
+From: "Gary S. Robertson" <gary.robertson@linaro.org>
+Date: Thu, 11 Sep 2014 13:02:47 -0500
+Subject: [LTP][PATCH] Realtime tests: Fix robust mutex conditionals
+
+sbrk_mutex, testpi-5, and testpi-6 realtime tests in subdir
+testcases/realtime/func/pi-tests used compile time config variables
+which were not generated by autoconf in order to configure tests
+for robust mutexes. Changed these conditionals to use the config
+variables actually generated in the autoconf process.
+
+Upstream-Status: Backported
+
+Signed-off-by: Gary S. Robertson <gary.robertson@linaro.org>
+---
+ testcases/realtime/func/pi-tests/sbrk_mutex.c | 2 +-
+ testcases/realtime/func/pi-tests/testpi-5.c | 2 +-
+ testcases/realtime/func/pi-tests/testpi-6.c | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/testcases/realtime/func/pi-tests/sbrk_mutex.c b/testcases/realtime/func/pi-tests/sbrk_mutex.c
+index 684021f..5c325b4 100644
+--- a/testcases/realtime/func/pi-tests/sbrk_mutex.c
++++ b/testcases/realtime/func/pi-tests/sbrk_mutex.c
+@@ -45,7 +45,7 @@
+ #include <unistd.h>
+ #include "librttest.h"
+
+-#if defined(HAS_PTHREAD_MUTEXTATTR_ROBUST_APIS) && defined(PTHREAD_MUTEX_ROBUST_NP)
++#if HAS_PTHREAD_MUTEXTATTR_ROBUST_APIS
+
+ #define NUM_MUTEXES 5000
+ #define NUM_THREADS 50
+diff --git a/testcases/realtime/func/pi-tests/testpi-5.c b/testcases/realtime/func/pi-tests/testpi-5.c
+index a1d93cc..70f02fd 100644
+--- a/testcases/realtime/func/pi-tests/testpi-5.c
++++ b/testcases/realtime/func/pi-tests/testpi-5.c
+@@ -69,7 +69,7 @@ int do_test(int argc, char **argv)
+ pthread_mutexattr_t mutexattr;
+ int retc, protocol;
+
+-#if HAS_PTHREAD_MUTEXATTR_PROTOCOL_FUNCTIONS
++#if HAS_PTHREAD_MUTEXTATTR_ROBUST_APIS
+
+ if (pthread_mutexattr_init(&mutexattr) != 0)
+ printf("Failed to init mutexattr\n");
+diff --git a/testcases/realtime/func/pi-tests/testpi-6.c b/testcases/realtime/func/pi-tests/testpi-6.c
+index b3c3e4a..f715eee 100644
+--- a/testcases/realtime/func/pi-tests/testpi-6.c
++++ b/testcases/realtime/func/pi-tests/testpi-6.c
+@@ -41,7 +41,7 @@
+ #include <unistd.h>
+ #include <librttest.h>
+
+-#if defined(PTHREAD_MUTEX_ROBUST_NP)
++#if HAS_PTHREAD_MUTEXTATTR_ROBUST_APIS
+ pthread_mutex_t child_mutex;
+
+ void *child_thread(void *arg)
+--
+1.7.9.5
+
diff --git a/meta-linaro-integration/recipes-overlayed/ltp/ltp/0001-Rename-runtests_noltp.sh-script-so-have-unique-name.patch b/meta-linaro-integration/recipes-overlayed/ltp/ltp/0001-Rename-runtests_noltp.sh-script-so-have-unique-name.patch
new file mode 100644
index 00000000..1b4d2324
--- /dev/null
+++ b/meta-linaro-integration/recipes-overlayed/ltp/ltp/0001-Rename-runtests_noltp.sh-script-so-have-unique-name.patch
@@ -0,0 +1,202 @@
+From 9751a6526cffcdf4e3dc2cb33641259a7be00e19 Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Sat, 7 Dec 2013 18:24:32 +0100
+Subject: [PATCH] Rename runtests_noltp.sh script so have unique name
+
+* they are installed in the same target path
+ /opt/ltp/testcases/bin/runtests_noltp.sh
+ and overwrite each other in non-deterministic way
+ when multiple processes are used in "make install"
+
+ ./temp/log.do_install:install -m 00775
+ "ltp/20120903-r2/ltp-20120903/testcases/kernel/containers/sysvipc/runtests_noltp.sh"
+ "ltp/20120903-r2/image/opt/ltp/testcases/bin/runtests_noltp.sh"
+ ./temp/log.do_install:install -m 00775
+ "ltp/20120903-r2/ltp-20120903/testcases/kernel/containers/utsname/runtests_noltp.sh"
+ "ltp/20120903-r2/image/opt/ltp/testcases/bin/runtests_noltp.sh"
+
+Upstream-Status: Pending
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ .../kernel/containers/sysvipc/runipctests_noltp.sh | 31 ++++++++++++++++
+ .../kernel/containers/sysvipc/runtests_noltp.sh | 31 ----------------
+ .../kernel/containers/utsname/runtests_noltp.sh | 41 ----------------------
+ .../kernel/containers/utsname/runutstests_noltp.sh | 41 ++++++++++++++++++++++
+ 4 files changed, 72 insertions(+), 72 deletions(-)
+ create mode 100644 testcases/kernel/containers/sysvipc/runipctests_noltp.sh
+ delete mode 100644 testcases/kernel/containers/sysvipc/runtests_noltp.sh
+ delete mode 100755 testcases/kernel/containers/utsname/runtests_noltp.sh
+ create mode 100755 testcases/kernel/containers/utsname/runutstests_noltp.sh
+
+diff --git a/testcases/kernel/containers/sysvipc/runipctests_noltp.sh b/testcases/kernel/containers/sysvipc/runipctests_noltp.sh
+new file mode 100644
+index 0000000..84f398f
+--- /dev/null
++++ b/testcases/kernel/containers/sysvipc/runipctests_noltp.sh
+@@ -0,0 +1,31 @@
++#!/bin/sh
++################################################################################
++## ##
++## Copyright (c) International Business Machines Corp., 2007 ##
++## ##
++## This program is free software; you can redistribute it and#or modify ##
++## it under the terms of the GNU General Public License as published by ##
++## the Free Software Foundation; either version 2 of the License, or ##
++## (at your option) any later version. ##
++## ##
++## This program is distributed in the hope that it will be useful, but ##
++## WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY ##
++## or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ##
++## for more details. ##
++## ##
++## You should have received a copy of the GNU General Public License ##
++## along with this program; if not, write to the Free Software ##
++## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA ##
++## ##
++################################################################################
++
++exit_code=0
++echo "sysvipc tests"
++for type in none clone unshare; do
++ echo "**sysvipc $type"
++ ./shmnstest_noltp $type
++ if [ $? -ne 0 ]; then
++ exit_code=$?
++ fi
++done
++exit $exit_code
+diff --git a/testcases/kernel/containers/sysvipc/runtests_noltp.sh b/testcases/kernel/containers/sysvipc/runtests_noltp.sh
+deleted file mode 100644
+index 84f398f..0000000
+--- a/testcases/kernel/containers/sysvipc/runtests_noltp.sh
++++ /dev/null
+@@ -1,31 +0,0 @@
+-#!/bin/sh
+-################################################################################
+-## ##
+-## Copyright (c) International Business Machines Corp., 2007 ##
+-## ##
+-## This program is free software; you can redistribute it and#or modify ##
+-## it under the terms of the GNU General Public License as published by ##
+-## the Free Software Foundation; either version 2 of the License, or ##
+-## (at your option) any later version. ##
+-## ##
+-## This program is distributed in the hope that it will be useful, but ##
+-## WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY ##
+-## or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ##
+-## for more details. ##
+-## ##
+-## You should have received a copy of the GNU General Public License ##
+-## along with this program; if not, write to the Free Software ##
+-## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA ##
+-## ##
+-################################################################################
+-
+-exit_code=0
+-echo "sysvipc tests"
+-for type in none clone unshare; do
+- echo "**sysvipc $type"
+- ./shmnstest_noltp $type
+- if [ $? -ne 0 ]; then
+- exit_code=$?
+- fi
+-done
+-exit $exit_code
+diff --git a/testcases/kernel/containers/utsname/runtests_noltp.sh b/testcases/kernel/containers/utsname/runtests_noltp.sh
+deleted file mode 100755
+index 43cb7e2..0000000
+--- a/testcases/kernel/containers/utsname/runtests_noltp.sh
++++ /dev/null
+@@ -1,41 +0,0 @@
+-#!/bin/sh
+-################################################################################
+-## ##
+-## Copyright (c) International Business Machines Corp., 2007 ##
+-## ##
+-## This program is free software; you can redistribute it and#or modify ##
+-## it under the terms of the GNU General Public License as published by ##
+-## the Free Software Foundation; either version 2 of the License, or ##
+-## (at your option) any later version. ##
+-## ##
+-## This program is distributed in the hope that it will be useful, but ##
+-## WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY ##
+-## or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ##
+-## for more details. ##
+-## ##
+-## You should have received a copy of the GNU General Public License ##
+-## along with this program; if not, write to the Free Software ##
+-## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA ##
+-## ##
+-################################################################################
+-
+-oldhostname=`hostname`
+-exit_code=0
+-echo "unshare tests"
+-for i in `seq 1 5`; do
+- echo "test $i (unshare)"
+- ./utstest_noltp unshare $i
+- if [ $? -ne 0 ]; then
+- exit_code=$?
+- fi
+-done
+-echo "clone tests"
+-for i in `seq 1 5`; do
+- echo "test $i (clone)"
+- ./utstest_noltp clone $i
+- if [ $? -ne 0 ]; then
+- exit_code=$?
+- fi
+-done
+-hostname "$oldhostname"
+-exit $exit_code
+diff --git a/testcases/kernel/containers/utsname/runutstests_noltp.sh b/testcases/kernel/containers/utsname/runutstests_noltp.sh
+new file mode 100755
+index 0000000..43cb7e2
+--- /dev/null
++++ b/testcases/kernel/containers/utsname/runutstests_noltp.sh
+@@ -0,0 +1,41 @@
++#!/bin/sh
++################################################################################
++## ##
++## Copyright (c) International Business Machines Corp., 2007 ##
++## ##
++## This program is free software; you can redistribute it and#or modify ##
++## it under the terms of the GNU General Public License as published by ##
++## the Free Software Foundation; either version 2 of the License, or ##
++## (at your option) any later version. ##
++## ##
++## This program is distributed in the hope that it will be useful, but ##
++## WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY ##
++## or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ##
++## for more details. ##
++## ##
++## You should have received a copy of the GNU General Public License ##
++## along with this program; if not, write to the Free Software ##
++## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA ##
++## ##
++################################################################################
++
++oldhostname=`hostname`
++exit_code=0
++echo "unshare tests"
++for i in `seq 1 5`; do
++ echo "test $i (unshare)"
++ ./utstest_noltp unshare $i
++ if [ $? -ne 0 ]; then
++ exit_code=$?
++ fi
++done
++echo "clone tests"
++for i in `seq 1 5`; do
++ echo "test $i (clone)"
++ ./utstest_noltp clone $i
++ if [ $? -ne 0 ]; then
++ exit_code=$?
++ fi
++done
++hostname "$oldhostname"
++exit $exit_code
+--
+1.8.4.3
+
diff --git a/meta-linaro-integration/recipes-overlayed/ltp/ltp/add-knob-for-numa.patch b/meta-linaro-integration/recipes-overlayed/ltp/ltp/add-knob-for-numa.patch
new file mode 100644
index 00000000..064f00ae
--- /dev/null
+++ b/meta-linaro-integration/recipes-overlayed/ltp/ltp/add-knob-for-numa.patch
@@ -0,0 +1,39 @@
+[PATCH] add knob to control whether numa support should be checked
+
+Upstream-Status: Pending
+
+otherwise the random dependency will be generated
+
+Signed-off-by: Roy.Li <rongqing.li@windriver.com>
+---
+ configure.ac | 10 +-
+diff --git a/configure.ac b/configure.ac
+index 9f397e7..1357256 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -142,6 +142,12 @@ else
+ AC_SUBST([WITH_REALTIME_TESTSUITE],["no"])
+ fi
+
++AC_ARG_WITH([numa],
++ AC_HELP_STRING([--without-numa],
++ [without the numa support]),
++ [],[with_numa=yes],
++)
++
+ AC_CONFIG_SUBDIRS([utils/ffsb-6.0-rc2])
+
+ # END testsuites knobs
+@@ -159,7 +165,9 @@ LTP_CHECK_SIGNAL
+ LTP_CHECK_SYSCALL_EVENTFD
+ LTP_CHECK_SYSCALL_KEYCTL
+ LTP_CHECK_SYSCALL_MODIFY_LDT
++if test "x$with_numa" = xyes; then
+ LTP_CHECK_SYSCALL_NUMA
++fi
+ LTP_CHECK_SYSCALL_QUOTACTL
+ LTP_CHECK_SYSCALL_SIGNALFD
+ LTP_CHECK_SYSCALL_UNSHARE
+--
+1.9.1
+
diff --git a/meta-linaro-integration/recipes-overlayed/ltp/ltp/ltp-Do-not-link-against-libfl.patch b/meta-linaro-integration/recipes-overlayed/ltp/ltp/ltp-Do-not-link-against-libfl.patch
new file mode 100644
index 00000000..20fd4c36
--- /dev/null
+++ b/meta-linaro-integration/recipes-overlayed/ltp/ltp/ltp-Do-not-link-against-libfl.patch
@@ -0,0 +1,31 @@
+From 5bda9c0af56869c6ff2c25d38ea087179c946bc6 Mon Sep 17 00:00:00 2001
+From: Chong Lu <Chong.Lu@windriver.com>
+Date: Tue, 11 Mar 2014 14:47:22 +0800
+Subject: [PATCH] ltp: Don't link against libfl
+
+We have already defined yywrap function in scan.l file. After this, we no longer need to
+link against libfl and so no longer get errors about undefined references to yylex.
+
+Upstream-Status: Pending
+
+Signed-off-by: Chong Lu <Chong.Lu@windriver.com>
+---
+ pan/Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/pan/Makefile b/pan/Makefile
+index 4cc6466..a4b575b 100644
+--- a/pan/Makefile
++++ b/pan/Makefile
+@@ -31,7 +31,7 @@ CPPFLAGS += -Wno-error
+
+ CPPFLAGS += -I$(abs_srcdir)
+
+-LDLIBS += -lm $(LEXLIB)
++LDLIBS += -lm
+
+ LFLAGS += -l
+
+--
+1.7.9.5
+
diff --git a/meta-linaro-integration/recipes-overlayed/ltp/ltp/make-setregid02-work.patch b/meta-linaro-integration/recipes-overlayed/ltp/ltp/make-setregid02-work.patch
new file mode 100644
index 00000000..4836010b
--- /dev/null
+++ b/meta-linaro-integration/recipes-overlayed/ltp/ltp/make-setregid02-work.patch
@@ -0,0 +1,61 @@
+[PATCH] make setregid02 work
+
+Upstream-Status: Inappropriate [configuration]
+
+there is no "nobody" group in oe-core, the user "nobody" belongs to
+"nogroup" group, so replace nobody with nogroup to make the test pass
+
+Signed-off-by: Roy.Li <rongqing.li@windriver.com>
+---
+ testcases/kernel/syscalls/setregid/setregid02.c | 16 ++++++++--------
+ 1 file changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/testcases/kernel/syscalls/setregid/setregid02.c b/testcases/kernel/syscalls/setregid/setregid02.c
+index 8058627..866bee4 100644
+--- a/testcases/kernel/syscalls/setregid/setregid02.c
++++ b/testcases/kernel/syscalls/setregid/setregid02.c
+@@ -41,7 +41,7 @@ static gid_t neg_one = -1;
+
+ static struct passwd *ltpuser;
+
+-static struct group nobody, root, bin;
++static struct group nogroup, root, bin;
+
+ /*
+ * The following structure contains all test data. Each structure in the array
+@@ -57,17 +57,17 @@ struct test_data_t {
+ char *test_msg;
+ } test_data[] = {
+ {
+- &neg_one, &root.gr_gid, EPERM, &nobody, &nobody,
++ &neg_one, &root.gr_gid, EPERM, &nogroup, &nogroup,
+ "After setregid(-1, root),"}, {
+- &neg_one, &bin.gr_gid, EPERM, &nobody, &nobody,
++ &neg_one, &bin.gr_gid, EPERM, &nogroup, &nogroup,
+ "After setregid(-1, bin)"}, {
+- &root.gr_gid, &neg_one, EPERM, &nobody, &nobody,
++ &root.gr_gid, &neg_one, EPERM, &nogroup, &nogroup,
+ "After setregid(root,-1),"}, {
+- &bin.gr_gid, &neg_one, EPERM, &nobody, &nobody,
++ &bin.gr_gid, &neg_one, EPERM, &nogroup, &nogroup,
+ "After setregid(bin, -1),"}, {
+- &root.gr_gid, &bin.gr_gid, EPERM, &nobody, &nobody,
++ &root.gr_gid, &bin.gr_gid, EPERM, &nogroup, &nogroup,
+ "After setregid(root, bin)"}, {
+- &bin.gr_gid, &root.gr_gid, EPERM, &nobody, &nobody,
++ &bin.gr_gid, &root.gr_gid, EPERM, &nogroup, &nogroup,
+ "After setregid(bin, root),"}
+ };
+
+@@ -165,7 +165,7 @@ static void setup(void)
+ } while (0)
+
+ GET_GID(root);
+- GET_GID(nobody);
++ GET_GID(nogroup);
+ GET_GID(bin);
+
+ TEST_PAUSE;
+--
+1.9.1
+
diff --git a/meta-linaro-integration/recipes-overlayed/ltp/ltp_20140828.bb b/meta-linaro-integration/recipes-overlayed/ltp/ltp_20140828.bb
new file mode 100644
index 00000000..844d0a3b
--- /dev/null
+++ b/meta-linaro-integration/recipes-overlayed/ltp/ltp_20140828.bb
@@ -0,0 +1,90 @@
+SUMMARY = "Linux Test Project"
+DESCRIPTION = "The Linux Test Project is a joint project with SGI, IBM, OSDL, and Bull with a goal to deliver test suites to the open source community that validate the reliability, robustness, and stability of Linux. The Linux Test Project is a collection of tools for testing the Linux kernel and related features."
+HOMEPAGE = "http://ltp.sourceforge.net"
+SECTION = "console/utils"
+LICENSE = "GPLv2 & GPLv2+ & LGPLv2+ & LGPLv2.1+ & BSD-2-Clause"
+LIC_FILES_CHKSUM = "\
+ file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \
+ file://testcases/kernel/controllers/freezer/COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \
+ file://testcases/kernel/controllers/freezer/run_freezer.sh;beginline=5;endline=17;md5=86a61d2c042d59836ffb353a21456498 \
+ file://testcases/kernel/hotplug/memory_hotplug/COPYING;md5=e04a2e542b2b8629bf9cd2ba29b0fe41 \
+ file://testcases/kernel/hotplug/cpu_hotplug/COPYING;md5=e04a2e542b2b8629bf9cd2ba29b0fe41 \
+ file://testcases/open_posix_testsuite/COPYING;md5=216e43b72efbe4ed9017cc19c4c68b01 \
+ file://testcases/realtime/COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \
+ file://tools/netpipe-2.4/COPYING;md5=9e3781bb5fe787aa80e1f51f5006b6fa \
+ file://tools/netpipe-2.4-ipv6/COPYING;md5=9e3781bb5fe787aa80e1f51f5006b6fa \
+ file://tools/top-LTP/proc/COPYING;md5=aefc88eb8a41672fbfcfe6b69ab8c49c \
+ file://tools/pounder21/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
+ file://utils/benchmark/kernbench-0.42/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
+ file://utils/ffsb-6.0-rc2/COPYING;md5=c46082167a314d785d012a244748d803 \
+"
+
+DEPENDS = "attr libaio libcap acl openssl zip-native"
+SRCREV = "2c341ad9177f36d9b953e84dee8cf88498286fe5"
+
+SRC_URI = "git://github.com/linux-test-project/ltp.git \
+ file://0001-Rename-runtests_noltp.sh-script-so-have-unique-name.patch \
+ file://ltp-Do-not-link-against-libfl.patch \
+ file://make-setregid02-work.patch \
+ file://add-knob-for-numa.patch \
+ file://0001-Realtime-tests-Fix-bad-priority-inheritance-conditio.patch \
+ file://0001-Realtime-tests-Fix-robust-mutex-conditionals.patch \
+"
+
+S = "${WORKDIR}/git"
+
+inherit autotools-brokensep
+
+TARGET_CC_ARCH += "${LDFLAGS}"
+
+export prefix = "/opt/ltp"
+export exec_prefix = "/opt/ltp"
+
+PACKAGECONFIG[numa] = "--with-numa, --without-numa, numactl,"
+EXTRA_AUTORECONF += "-I ${S}/testcases/realtime/m4"
+EXTRA_OECONF = " --with-power-management-testsuite --with-realtime-testsuite "
+
+# ltp doesn't regenerate ffsb-6.0-rc2 configure and hardcode configure call.
+# we explicitly force regeneration of that directory and pass configure options.
+do_configure_append() {
+ (cd utils/ffsb-6.0-rc2; autoreconf -fvi; ./configure ${CONFIGUREOPTS})
+}
+
+# The makefiles make excessive use of make -C and several include testcases.mk
+# which triggers a build of the syscall header. To reproduce, build ltp,
+# then delete the header, then "make -j XX" and watch regen.sh run multiple
+# times. Its easier to generate this once here instead.
+do_compile_prepend () {
+ ( make -C ${B}/testcases/kernel include/linux_syscall_numbers.h )
+}
+
+do_install(){
+ install -d ${D}/opt/ltp/
+ oe_runmake DESTDIR=${D} SKIP_IDCHECK=1 install
+
+ # Copy POSIX test suite into ${D}/opt/ltp/testcases by manual
+ cp -r testcases/open_posix_testsuite ${D}/opt/ltp/testcases
+
+ # We need to remove all scripts which depend on /usr/bin/expect, since expect is not supported in oe-core
+ # We will add expect for enhancement in future
+ find ${D} -type f -print | xargs grep "\!.*\/usr\/bin\/expect" | awk -F":" '{print $1}' | xargs rm -f
+}
+
+RDEPENDS_${PN} = "perl e2fsprogs-mke2fs python-core libaio bash gawk"
+
+FILES_${PN}-dbg += "\
+ /opt/ltp/runtest/.debug \
+ /opt/ltp/testcases/bin/.debug \
+ /opt/ltp/testcases/bin/*/bin/.debug \
+ /opt/ltp/testcases/bin/*/test/.debug \
+ /opt/ltp/scenario_groups/.debug \
+ /opt/ltp/testscripts/.debug \
+ /opt/ltp/testscripts/open_posix_testsuite/.debug \
+"
+
+FILES_${PN}-staticdev += "/opt/ltp/lib/libmem.a"
+
+FILES_${PN} += "/opt/ltp/* /opt/ltp/runtest/* /opt/ltp/scenario_groups/* /opt/ltp/testcases/bin/* /opt/ltp/testcases/bin/*/bin/* /opt/ltp/testscripts/* /opt/ltp/testcases/open_posix_testsuite/* /opt/ltp/testcases/open_posix_testsuite/conformance/* /opt/ltp/testcases/open_posix_testsuite/Documentation/* /opt/ltp/testcases/open_posix_testsuite/functional/* /opt/ltp/testcases/open_posix_testsuite/include/* /opt/ltp/testcases/open_posix_testsuite/scripts/* /opt/ltp/testcases/open_posix_testsuite/stress/* /opt/ltp/testcases/open_posix_testsuite/tools/*"
+
+# Avoid generated binaries stripping. Otherwise some of the ltp tests such as ldd01 & nm01 fails
+INHIBIT_PACKAGE_STRIP = "1"