diff options
author | Alexander Kanavin <alex.kanavin@gmail.com> | 2022-07-22 20:39:12 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-07-28 11:50:17 +0100 |
commit | 0f151cd090c787a687371683302611802186b3fb (patch) | |
tree | 22749feb77aba9a47c76bcd984207a25d0859940 /meta/recipes-core | |
parent | 29c52d7b268e254faa8ed8ca2d1d45275dc484b1 (diff) | |
download | poky-0f151cd090c787a687371683302611802186b3fb.tar.gz |
meta-ide-support: adjust to provide (e)SDK experience directly in a yocto build
Specifically:
1. Add a few more toolchain items to DEPENDS so they're available in the recipe sysroot.
2. Use deploy mechanism to place the SDK environment setup file and testdata for testing it
into the image deploy directory.
3. Add ability to run SDK tests via the testsdk class and task. This also requires providing
a testdata json file.
4. Ensure sysroot population always runs, as those items are mean to be picked up
by 'bitbake build-sysroots' into the unified sysroot.
(From OE-Core rev: 93f419451cc18b5d31b6fe134ca52a2750fa567d)
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core')
-rw-r--r-- | meta/recipes-core/meta/meta-ide-support.bb | 26 |
1 files changed, 23 insertions, 3 deletions
diff --git a/meta/recipes-core/meta/meta-ide-support.bb b/meta/recipes-core/meta/meta-ide-support.bb index 39317d50e0..7f349f673d 100644 --- a/meta/recipes-core/meta/meta-ide-support.bb +++ b/meta/recipes-core/meta/meta-ide-support.bb | |||
@@ -2,11 +2,13 @@ SUMMARY = "Integrated Development Environment support" | |||
2 | DESCRIPTION = "Meta package for ensuring the build directory contains all appropriate toolchain packages for using an IDE" | 2 | DESCRIPTION = "Meta package for ensuring the build directory contains all appropriate toolchain packages for using an IDE" |
3 | LICENSE = "MIT" | 3 | LICENSE = "MIT" |
4 | 4 | ||
5 | DEPENDS = "virtual/libc gdb-cross-${TARGET_ARCH} qemu-native qemu-helper-native unfs3-native cmake-native" | 5 | DEPENDS = "virtual/libc gdb-cross-${TARGET_ARCH} qemu-native qemu-helper-native unfs3-native cmake-native autoconf-native automake-native meson-native intltool-native pkgconfig-native" |
6 | PR = "r3" | 6 | PR = "r3" |
7 | RM_WORK_EXCLUDE += "${PN}" | 7 | RM_WORK_EXCLUDE += "${PN}" |
8 | 8 | ||
9 | inherit toolchain-scripts nopackages | 9 | inherit toolchain-scripts nopackages deploy testsdk |
10 | |||
11 | TESTSDK_CLASS_NAME = "oeqa.sdk.testmetaidesupport.TestSDK" | ||
10 | 12 | ||
11 | do_populate_ide_support () { | 13 | do_populate_ide_support () { |
12 | toolchain_create_tree_env_script | 14 | toolchain_create_tree_env_script |
@@ -18,4 +20,22 @@ python () { | |||
18 | d.appendVarFlag("do_populate_ide_support", "file-checksums", " " + " ".join(searched)) | 20 | d.appendVarFlag("do_populate_ide_support", "file-checksums", " " + " ".join(searched)) |
19 | } | 21 | } |
20 | 22 | ||
21 | addtask populate_ide_support before do_build after do_install | 23 | addtask populate_ide_support before do_deploy after do_install |
24 | |||
25 | python do_write_test_data() { | ||
26 | from oe.data import export2json | ||
27 | |||
28 | out_dir = d.getVar('B') | ||
29 | testdata_name = os.path.join(out_dir, "%s.testdata.json" % d.getVar('PN')) | ||
30 | |||
31 | export2json(d, testdata_name) | ||
32 | } | ||
33 | addtask write_test_data before do_deploy after do_install | ||
34 | |||
35 | do_deploy () { | ||
36 | install ${B}/* ${DEPLOYDIR} | ||
37 | } | ||
38 | |||
39 | addtask deploy before do_build | ||
40 | |||
41 | do_build[deptask] += "do_prepare_recipe_sysroot" | ||