[oe] [meta-oe][PATCH] kselftest: Add a recipe on kernel selftest
Hongzhi, Song
hongzhi.song at windriver.com
Wed Jul 11 03:09:07 UTC 2018
Please ignore this.
On 2018年07月11日 10:50, Hongzhi, Song wrote:
> Is this the report you sent ?
>
> http://lists.openembedded.org/pipermail/openembedded-devel/2018-July/119308.html
>
>
>
> Sorry, I don't find accurate link. Could you give me a more clear
> direction?
>
>
> -- Hongzhi
>
>
> On 2018年07月10日 15:43, Khem Raj wrote:
>> Look at the report I sent to oe Devel earlier it should have link to
>> full logs
>>
>> On Mon, Jul 9, 2018 at 10:51 PM Hongzhi, Song
>> <hongzhi.song at windriver.com <mailto:hongzhi.song at windriver.com>> wrote:
>>
>> Could you attach building arguments, conf/local.conf,
>> log.do_compile for me?
>>
>> The text you pasted is not enough.
>>
>> -- Hongzhi
>>
>>
>> On 2018年07月10日 12:11, Khem Raj wrote:
>> > This is failing to build here
>> >
>> > | DEBUG: Executing shell function do_compile
>> > | NOTE: make -j 16 CROSS_COMPILE=x86_64-bec-linux- ARCH=x86
>> > CC=x86_64-bec-linux-gcc -m64 -march=core2 -mtune=core2 -msse3
>> > -mfpmath=sse -fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat
>> > -Wformat-security -Werror=format-security
>> >
>> --sysroot=/mnt/a/oe/build/tmp/work/qemux86_64-bec-linux/kernel-selftest/1.0-r0/recipe-sysroot
>> > AR=x86_64-bec-linux-ar LD=x86_64-bec-linux-ld
>> >
>> --sysroot=/mnt/a/oe/build/tmp/work/qemux86_64-bec-linux/kernel-selftest/1.0-r0/recipe-sysroot
>> >
>> DESTDIR=/mnt/a/oe/build/tmp/work/qemux86_64-bec-linux/kernel-selftest/1.0-r0/image
>> > -C
>> /mnt/a/oe/build/tmp/work/qemux86_64-bec-linux/kernel-selftest/1.0-r0/kernel-selftest-1.0/tools/testing/selftests/bpf
>> > | make: Entering directory
>> >
>> '/mnt/a/oe/build/tmp/work/qemux86_64-bec-linux/kernel-selftest/1.0-r0/kernel-selftest-1.0/tools/testing/selftests/bpf'
>> > | Makefile:19: *** recipe commences before first target. Stop.
>> > | make: Leaving directory
>> >
>> '/mnt/a/oe/build/tmp/work/qemux86_64-bec-linux/kernel-selftest/1.0-r0/kernel-selftest-1.0/tools/testing/selftests/bpf'
>> > | ERROR: oe_runmake failed
>> > On Sat, Jul 7, 2018 at 11:05 PM Hongzhi.Song
>> <hongzhi.song at windriver.com <mailto:hongzhi.song at windriver.com>>
>> wrote:
>> >> The recipe builds the framework for kernel-selftest. Now, it just
>> >> contains two sets of testcase, bpf and vm. We are appending
>> others
>> >> to the recipe.
>> >>
>> >> It needs some features which will be written into relevant
>> recipe.
>> >> But now, you should add them to conf/local.conf manually.
>> >> KERNEL_FEATURES_append += "features/bpf/bpf.scc"
>> >>
>> >> Signed-off-by: Dengke Du <dengke.du at windriver.com
>> <mailto:dengke.du at windriver.com>>
>> >> Signed-off-by: Hongzhi.Song <hongzhi.song at windriver.com
>> <mailto:hongzhi.song at windriver.com>>
>> >> ---
>> >> .../recipes-kernel/kselftest/kernel-selftest.bb
>> <http://kernel-selftest.bb> | 94 ++++++++++++++++++++++
>> >> 1 file changed, 94 insertions(+)
>> >> create mode 100644
>> meta-oe/recipes-kernel/kselftest/kernel-selftest.bb
>> <http://kernel-selftest.bb>
>> >>
>> >> diff --git
>> a/meta-oe/recipes-kernel/kselftest/kernel-selftest.bb
>> <http://kernel-selftest.bb>
>> b/meta-oe/recipes-kernel/kselftest/kernel-selftest.bb
>> <http://kernel-selftest.bb>
>> >> new file mode 100644
>> >> index 0000000..6f20bd3
>> >> --- /dev/null
>> >> +++ b/meta-oe/recipes-kernel/kselftest/kernel-selftest.bb
>> <http://kernel-selftest.bb>
>> >> @@ -0,0 +1,94 @@
>> >> +SUMMARY = "Kernel selftest for Linux"
>> >> +DESCRIPTION = "Kernel selftest for Linux"
>> >> +LICENSE = "GPLv2"
>> >> +
>> >> +# for bpf and vm
>> >> +DEPENDS = " \
>> >> + elfutils \
>> >> + libcap \
>> >> + libcap-ng \
>> >> + fuse \
>> >> + util-linux \
>> >> + rsync-native \
>> >> +"
>> >> +# for vm
>> >> +RDEPENDS_${PN} += "libgcc \
>> >> + bash \
>> >> +"
>> >> +
>> >> +do_configure[depends] += "virtual/kernel:do_shared_workdir"
>> >> +
>> >> +inherit linux-kernel-base kernel-arch
>> >> +
>> >> +do_populate_lic[depends] += "virtual/kernel:do_patch"
>> >> +
>> >> +S = "${WORKDIR}/${BP}"
>> >> +
>> >> +# now we just test bpf and vm
>> >> +# we will append other kernel selftest in the future
>> >> +TEST_LIST = "bpf \
>> >> + vm \
>> >> +"
>> >> +
>> >> +EXTRA_OEMAKE = '\
>> >> + CROSS_COMPILE=${TARGET_PREFIX} \
>> >> + ARCH=${ARCH} \
>> >> + CC="${CC}" \
>> >> + AR="${AR}" \
>> >> + LD="${LD}" \
>> >> +'
>> >> +
>> >> +EXTRA_OEMAKE += "\
>> >> + 'DESTDIR=${D}' \
>> >> +"
>> >> +
>> >> +KERNEL_SELFTEST_SRC ?= "Makefile \
>> >> + include \
>> >> + tools \
>> >> + scripts \
>> >> + arch \
>> >> +"
>> >> +
>> >> +do_compile() {
>> >> + for i in ${TEST_LIST}
>> >> + do
>> >> + oe_runmake -C ${S}/tools/testing/selftests/${i}
>> >> + done
>> >> +}
>> >> +
>> >> +do_install() {
>> >> + for i in ${TEST_LIST}
>> >> + do
>> >> + oe_runmake -C ${S}/tools/testing/selftests/${i}
>> INSTALL_PATH=${D}/opt/kselftest/${i} install
>> >> + done
>> >> +
>> >> + chown root:root -R ${D}/opt/kselftest
>> >> +}
>> >> +
>> >> +do_configure() {
>> >> + :
>> >> +}
>> >> +
>> >> +do_configure[prefuncs] += "copy_kselftest_source_from_kernel
>> remove_clang_related"
>> >> +python copy_kselftest_source_from_kernel() {
>> >> + sources = (d.getVar("KERNEL_SELFTEST_SRC") or "").split()
>> >> + src_dir = d.getVar("STAGING_KERNEL_DIR")
>> >> + dest_dir = d.getVar("S")
>> >> + bb.utils.mkdirhier(dest_dir)
>> >> + for s in sources:
>> >> + src = oe.path.join(src_dir, s)
>> >> + dest = oe.path.join(dest_dir, s)
>> >> + if os.path.isdir(src):
>> >> + oe.path.copytree(src, dest)
>> >> + else:
>> >> + bb.utils.copyfile(src, dest)
>> >> +}
>> >> +
>> >> +remove_clang_related() {
>> >> + sed -i -e '/test_pkt_access/d' -e
>> '/test_pkt_md_access/d' ${S}/tools/testing/selftests/bpf/Makefile
>> >> +}
>> >> +
>> >> +PACKAGE_ARCH = "${MACHINE_ARCH}"
>> >> +
>> >> +INHIBIT_PACKAGE_DEBUG_SPLIT="1"
>> >> +FILES_${PN} += "/opt/kselftest/"
>> >> --
>> >> 2.8.1
>> >>
>> >> --
>> >> _______________________________________________
>> >> Openembedded-devel mailing list
>> >> Openembedded-devel at lists.openembedded.org
>> <mailto:Openembedded-devel at lists.openembedded.org>
>> >> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>>
>
More information about the Openembedded-devel
mailing list