blob: 5fe8838c9d317ced58f01b804ad5930c9c5ea66b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
SUMMARY = "Embedded Linux Device Driver Tests based on Linux Test Project"
HOMEPAGE = "http://arago-project.org/git/projects/test-automation/ltp-ddt.git"
SECTION = "console/utils"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"
PR = "r5"
PV_append = "+git${SRCPV}"
PROVIDES += "ltp"
DEPENDS += "zip-native virtual/kernel alsa-lib"
RDEPENDS_${PN} += "pm-qa serialcheck"
inherit autotools module-base kernel-module-split
PACKAGE_ARCH = "${MACHINE_ARCH}"
SRCREV = "bd7bc9eea597808d0b98616c657bfbf7fa7e8ee3"
BRANCH ?= "master"
SRC_URI = "git://arago-project.org/git/projects/test-automation/ltp-ddt.git;branch=${BRANCH} \
file://ltp-Do-not-link-against-libfl.patch \
"
S = "${WORKDIR}/git"
LTPROOT = "/opt/ltp"
EXTRA_OEMAKE_append = " \
prefix=${LTPROOT} \
CROSS_COMPILE=${HOST_PREFIX} \
SKIP_IDCHECK=1 \
KERNEL_PATH=${STAGING_KERNEL_DIR} \
KERNEL_INC=${STAGING_KERNEL_DIR} \
KERNEL_USR_INC=${STAGING_INCDIR} \
ALSA_INCPATH=${STAGING_INCDIR} \
ALSA_LIBPATH=${STAGING_LIBDIR} \
PLATFORM=${MACHINE} \
RANLIB=${RANLIB} \
DESTDIR=${D} \
CC='${CC}' \
KERNEL_CC='${KERNEL_CC}' \
"
TARGET_CC_ARCH += "${LDFLAGS}"
FILES_${PN}-dbg += " \
${LTPROOT}/.debug \
${LTPROOT}/bin/.debug \
${LTPROOT}/runtest/.debug \
${LTPROOT}/testcases/bin/.debug \
${LTPROOT}/testcases/bin/*/bin/.debug \
${LTPROOT}/testcases/bin/*/test/.debug \
${LTPROOT}/testcases/bin/ddt/.debug \
${LTPROOT}/testcases/bin/ddt/*/bin/.debug \
${LTPROOT}/testcases/bin/ddt/*/test/.debug \
${LTPROOT}/testcases/realtime/*/*/.debug \
"
FILES_${PN}-staticdev += "${LTPROOT}/lib"
FILES_${PN} += "${LTPROOT}/*"
KERNEL_MODULES_META_PACKAGE = "${PN}"
kmoddir = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/ddt"
# 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_compile_append () {
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
oe_runmake modules
}
do_install() {
oe_runmake install
install -d ${D}${datadir}
install -d ${D}${kmoddir}
mv ${D}${LTPROOT}/testcases/bin/ddt/*.ko ${D}${kmoddir} || true
}
# do_make_scripts should be a separate task for the lock to work
addtask make_scripts before do_compile
do_make_scripts[lockfiles] = "${TMPDIR}/kernel-scripts.lock"
do_make_scripts[deptask] = "do_populate_sysroot"
|