require glibc_${PV}.bb
|
|
EXCLUDE_FROM_WORLD = "1"
|
|
# handle PN differences
|
FILESEXTRAPATHS:prepend := "${THISDIR}/glibc:"
|
|
# strip provides
|
PROVIDES = ""
|
# setup depends
|
INHIBIT_DEFAULT_DEPS = ""
|
|
python () {
|
libc = d.getVar("PREFERRED_PROVIDER_virtual/libc")
|
libclocale = d.getVar("PREFERRED_PROVIDER_virtual/libc-locale")
|
if libc != "glibc" or libclocale != "glibc-locale":
|
raise bb.parse.SkipRecipe("glibc-testsuite requires that virtual/libc is glibc")
|
}
|
|
DEPENDS += "glibc-locale libgcc gcc-runtime"
|
|
# remove the initial depends
|
DEPENDS:remove = "libgcc-initial"
|
|
inherit qemu
|
|
SRC_URI += "file://check-test-wrapper"
|
|
DEPENDS += "${@'qemu-native' if d.getVar('TOOLCHAIN_TEST_TARGET') == 'user' else ''}"
|
|
TOOLCHAIN_TEST_TARGET ??= "user"
|
TOOLCHAIN_TEST_HOST ??= "localhost"
|
TOOLCHAIN_TEST_HOST_USER ??= "root"
|
TOOLCHAIN_TEST_HOST_PORT ??= "2222"
|
|
do_check[dirs] += "${B}"
|
do_check[nostamp] = "1"
|
do_check () {
|
chmod 0755 ${WORKDIR}/check-test-wrapper
|
|
# clean out previous test results
|
oe_runmake tests-clean
|
# makefiles don't clean entirely (and also sometimes fails due to too many args)
|
find ${B} -type f -name "*.out" -delete
|
find ${B} -type f -name "*.test-result" -delete
|
find ${B}/catgets -name "*.cat" -delete
|
find ${B}/conform -name "symlist-*" -delete
|
[ ! -e ${B}/timezone/testdata ] || rm -rf ${B}/timezone/testdata
|
|
oe_runmake -i \
|
QEMU_SYSROOT="${RECIPE_SYSROOT}" \
|
QEMU_OPTIONS="${@qemu_target_binary(d)} ${QEMU_OPTIONS}" \
|
SSH_HOST="${TOOLCHAIN_TEST_HOST}" \
|
SSH_HOST_USER="${TOOLCHAIN_TEST_HOST_USER}" \
|
SSH_HOST_PORT="${TOOLCHAIN_TEST_HOST_PORT}" \
|
test-wrapper="${WORKDIR}/check-test-wrapper ${TOOLCHAIN_TEST_TARGET}" \
|
check
|
}
|
addtask do_check after do_compile
|
|
inherit nopackages
|
deltask do_stash_locale
|
deltask do_install
|
deltask do_populate_sysroot
|