summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2011-12-09 11:19:35 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-12-12 21:50:21 +0000
commitab31da70677592af9eed6fe6b7951a47d647bd9a (patch)
treea9ab5d001917941503ea74ba544921524d669115
parent976443267b0938942c25b83d55156133e8f9bca8 (diff)
downloadast2050-yocto-poky-ab31da70677592af9eed6fe6b7951a47d647bd9a.zip
ast2050-yocto-poky-ab31da70677592af9eed6fe6b7951a47d647bd9a.tar.gz
eglibc: Generate cross testing script during install
EGLIBC has long had cross testing capability, so use that there are few steps needed on setting up the target as well as the build host. This patch tries to generate a script with all the needed environment on build host system To use this script one needs to setup the target as described in the testing intructions of eglibc and then this script can directly interface to the target and run the tests from eglibc's build directory. To run this script bash <script> username@testing_hostname/ip The output can be dumped into a log file for later viewing and checked for "Error " to see the failed tests Removes INC_PR its not used anywhere (From OE-Core rev: 9244a3b0565fd52d7973fda42a4f706b16240316) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-core/eglibc/eglibc-common.inc1
-rw-r--r--meta/recipes-core/eglibc/eglibc-testing.inc47
-rw-r--r--meta/recipes-core/eglibc/eglibc.inc1
-rw-r--r--meta/recipes-core/eglibc/eglibc_2.13.bb11
-rw-r--r--meta/recipes-core/eglibc/eglibc_2.14.bb10
5 files changed, 60 insertions, 10 deletions
diff --git a/meta/recipes-core/eglibc/eglibc-common.inc b/meta/recipes-core/eglibc/eglibc-common.inc
index 4fa6488..d18786a 100644
--- a/meta/recipes-core/eglibc/eglibc-common.inc
+++ b/meta/recipes-core/eglibc/eglibc-common.inc
@@ -3,7 +3,6 @@ DESCRIPTION = "Embedded GLIBC (EGLIBC) is a variant of the GNU C Library (GLIBC)
HOMEPAGE = "http://www.eglibc.org/home"
SECTION = "libs"
LICENSE = "GPLv2 & LGPLv2.1"
-INC_PR = "r11"
LIC_FILES_CHKSUM ?= "file://LICENSES;md5=07a394b26e0902b9ffdec03765209770 \
file://COPYING;md5=393a5ca445f6965873eca0259a17f833 \
file://posix/rxspencer/COPYRIGHT;md5=dc5485bb394a13b2332ec1c785f5d83a \
diff --git a/meta/recipes-core/eglibc/eglibc-testing.inc b/meta/recipes-core/eglibc/eglibc-testing.inc
new file mode 100644
index 0000000..fb632ba
--- /dev/null
+++ b/meta/recipes-core/eglibc/eglibc-testing.inc
@@ -0,0 +1,47 @@
+do_compile_append () {
+ # now generate script to drive testing
+ echo "#!/usr/bin/env sh" >${B}/${HOST_PREFIX}testeglibc
+ set >> ${B}/${HOST_PREFIX}testeglibc
+ # prune out the unneeded vars
+ sed -i -e "/^BASH/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^USER/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^OPT/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^DIRSTACK/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^EUID/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^FUNCNAME/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^GROUPS/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^HOST/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^HOME/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^IFS/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^LC_ALL/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^LOGNAME/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^MACHTYPE/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^OSTYPE/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^PIPE/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^SHELL/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^'/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^UID/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^TERM/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^PATCH_GET/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^PKG_/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^POSIXLY_/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^PPID/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^PS4/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^Q/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^SHLVL/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^STAGING/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^LD_LIBRARY_PATH/d" ${B}/${HOST_PREFIX}testeglibc
+ sed -i -e "/^PSEUDO/d" ${B}/${HOST_PREFIX}testeglibc
+ # append execution part script
+cat >> ${B}/${HOST_PREFIX}testeglibc << STOP
+target="\$1"
+if [ "x\$target" = "x" ]
+then
+ echo "Please specify the target machine and remote user in for of user@target"
+ exit 1;
+fi
+wrapper="${S}/scripts/cross-test-ssh.sh \$target"
+localedef="${STAGING_BINDIR_NATIVE}/cross-localedef --little-endian --uint32-align=4"
+make cross-localedef="\$localedef" cross-test-wrapper="\$wrapper" -k check
+STOP
+}
diff --git a/meta/recipes-core/eglibc/eglibc.inc b/meta/recipes-core/eglibc/eglibc.inc
index 272fcb6..64694a0 100644
--- a/meta/recipes-core/eglibc/eglibc.inc
+++ b/meta/recipes-core/eglibc/eglibc.inc
@@ -1,5 +1,6 @@
require eglibc-common.inc
require eglibc-ld.inc
+require eglibc-testing.inc
STAGINGCC = "gcc-cross-intermediate"
STAGINGCC_virtclass-nativesdk = "gcc-crosssdk-intermediate"
diff --git a/meta/recipes-core/eglibc/eglibc_2.13.bb b/meta/recipes-core/eglibc/eglibc_2.13.bb
index 955c4ec..9d3ec85 100644
--- a/meta/recipes-core/eglibc/eglibc_2.13.bb
+++ b/meta/recipes-core/eglibc/eglibc_2.13.bb
@@ -3,7 +3,7 @@ require eglibc.inc
SRCREV = "15508"
DEPENDS += "gperf-native"
-PR = "r18"
+PR = "r19"
PR_append = "+svnr${SRCPV}"
EGLIBC_BRANCH="eglibc-2_13"
@@ -207,10 +207,11 @@ do_compile () {
done
)
echo "Adjust ldd script"
- [ -z "${RTLDLIST}" ] && return
- sed -i ${B}/elf/ldd -e 's#^\(RTLDLIST=\)"\(.*\)"$#\1\2#'
- sed -i ${B}/elf/ldd -e 's#^\(RTLDLIST=\)\(.*\)$#\1"${RTLDLIST} \2"#'
-
+ if [ -n "${RTLDLIST}" ]
+ then
+ sed -i ${B}/elf/ldd -e 's#^\(RTLDLIST=\)"\(.*\)"$#\1\2#'
+ sed -i ${B}/elf/ldd -e 's#^\(RTLDLIST=\)\(.*\)$#\1"${RTLDLIST} \2"#'
+ fi
}
require eglibc-package.inc
diff --git a/meta/recipes-core/eglibc/eglibc_2.14.bb b/meta/recipes-core/eglibc/eglibc_2.14.bb
index fd384f4..8553106 100644
--- a/meta/recipes-core/eglibc/eglibc_2.14.bb
+++ b/meta/recipes-core/eglibc/eglibc_2.14.bb
@@ -3,7 +3,7 @@ require eglibc.inc
SRCREV = "15870"
DEPENDS += "gperf-native"
-PR = "r1"
+PR = "r2"
PR_append = "+svnr${SRCPV}"
EGLIBC_BRANCH="eglibc-2_14"
@@ -209,9 +209,11 @@ do_compile () {
done
)
echo "Adjust ldd script"
- [ -z "${RTLDLIST}" ] && return
- sed -i ${B}/elf/ldd -e 's#^\(RTLDLIST=\)"\(.*\)"$#\1\2#'
- sed -i ${B}/elf/ldd -e 's#^\(RTLDLIST=\)\(.*\)$#\1"${RTLDLIST} \2"#'
+ if [ -n "${RTLDLIST}" ]
+ then
+ sed -i ${B}/elf/ldd -e 's#^\(RTLDLIST=\)"\(.*\)"$#\1\2#'
+ sed -i ${B}/elf/ldd -e 's#^\(RTLDLIST=\)\(.*\)$#\1"${RTLDLIST} \2"#'
+ fi
}
OpenPOWER on IntegriCloud