Date   

Re: [ptest-runner][PATCH 1/2] Add support to specify timeout by ptest

Yi Fan Yu
 

On 3/23/21 2:57 PM, Aníbal Limón wrote:
[Please note: This e-mail is from an EXTERNAL e-mail address]
The ptest-runner has a default timeout of 300 secs and can be override
usint -t option in the runner.
There is a need to specify timeout by ptest because not all ptests takes
the sametime also are affected by machine. So add support to read a file
inside ptest folder (timeout-ptest) and override global timeout with it.
For example in glib-2.0,
/usr/lib/glib-2.0/ptest/run-ptest
/usr/lib/glib-2.0/ptest/timeout-ptest
I don't see a huge amount of use of `timeout-ptest` since

many tests I looked at have their own timeout mechanism built-in to individual tests (OR we have patched in... ex: valgrind).


This has the advantage that the entire testsuite doesn't get killed, only that particular hanging test.

I think the highest timeout I have bumped up is with valgrind at 90s

yifan

Signed-off-by: Aníbal Limón <anibal.limon@...>
---
main.c | 2 +-
ptest_list.c | 3 ++-
ptest_list.h | 3 ++-
utils.c | 69 +++++++++++++++++++++++++++++++++++++---------------
utils.h | 2 +-
5 files changed, 55 insertions(+), 24 deletions(-)
diff --git a/main.c b/main.c
index e3a1b69..467548e 100644
--- a/main.c
+++ b/main.c
@@ -158,7 +158,7 @@ main(int argc, char *argv[])
for (i = 0; i < opts.dirs_no; i ++) {
struct ptest_list *tmp;
- tmp = get_available_ptests(opts.dirs[i]);
+ tmp = get_available_ptests(opts.dirs[i], opts.timeout);
if (tmp == NULL) {
fprintf(stderr, PRINT_PTESTS_NOT_FOUND_DIR, opts.dirs[i]);
continue;
diff --git a/ptest_list.c b/ptest_list.c
index 917ef4f..b689670 100644
--- a/ptest_list.c
+++ b/ptest_list.c
@@ -166,7 +166,7 @@ ptest_list_search_by_file(struct ptest_list *head, char *run_ptest, struct stat
}
struct ptest_list *
-ptest_list_add(struct ptest_list *head, char *ptest, char *run_ptest)
+ptest_list_add(struct ptest_list *head, char *ptest, char *run_ptest, int timeout)
{
struct ptest_list *n, *p;
@@ -179,6 +179,7 @@ ptest_list_add(struct ptest_list *head, char *ptest, char *run_ptest)
n->ptest = ptest;
n->run_ptest = run_ptest;
+ n->timeout = timeout;
n->prev = NULL;
n->next = NULL;
diff --git a/ptest_list.h b/ptest_list.h
index 02a64bb..e583d9f 100644
--- a/ptest_list.h
+++ b/ptest_list.h
@@ -50,6 +50,7 @@
struct ptest_list {
char *ptest;
char *run_ptest;
+ int timeout;
struct ptest_list *next;
struct ptest_list *prev;
@@ -62,7 +63,7 @@ extern int ptest_list_free_all(struct ptest_list *);
extern int ptest_list_length(struct ptest_list *);
extern struct ptest_list *ptest_list_search(struct ptest_list *, char *);
extern struct ptest_list *ptest_list_search_by_file(struct ptest_list *, char *, struct stat);
-extern struct ptest_list *ptest_list_add(struct ptest_list *, char *, char *);
+extern struct ptest_list *ptest_list_add(struct ptest_list *, char *, char *, int);
extern struct ptest_list *ptest_list_remove(struct ptest_list *, char *, int);
extern struct ptest_list *ptest_list_extend(struct ptest_list *, struct ptest_list *);
diff --git a/utils.c b/utils.c
index 1a3c90f..424115f 100644
--- a/utils.c
+++ b/utils.c
@@ -84,9 +84,30 @@ check_allocation1(void *p, size_t size, char *file, int line, int exit_on_null)
}
}
+static inline char *
+get_ptest_file(char **ptest_file, struct stat *st_buf, const char *main_dir,
+ const char *ptest_dir, const char *file_name)
+{
+ if (asprintf(ptest_file, "%s/%s/ptest/%s",
+ main_dir, ptest_dir, file_name) == -1) {
+ return NULL;
+ }
+
+ if (stat(*ptest_file, st_buf) == -1) {
+ free(*ptest_file);
+ return NULL;
+ }
+
+ if (!S_ISREG(st_buf->st_mode)) {
+ free(*ptest_file);
+ return NULL;
+ }
+
+ return *ptest_file;
+}
struct ptest_list *
-get_available_ptests(const char *dir)
+get_available_ptests(const char *dir, int global_timeout)
{
struct ptest_list *head;
struct stat st_buf;
@@ -123,10 +144,11 @@ get_available_ptests(const char *dir)
break;
}
-
fail = 0;
for (i = 0; i < n; i++) {
char *run_ptest;
+ char *timeout_ptest;
+ int timeout;
char *d_name = strdup(namelist[i]->d_name);
CHECK_ALLOCATION(d_name, sizeof(namelist[i]->d_name), 0);
@@ -142,34 +164,38 @@ get_available_ptests(const char *dir)
continue;
}
- if (asprintf(&run_ptest, "%s/%s/ptest/run-ptest",
- realdir, d_name) == -1) {
- fail = 1;
+ if (get_ptest_file(&run_ptest, &st_buf, realdir, d_name, "run-ptest") == NULL) {
saved_errno = errno;
free(d_name);
- break;
- }
-
- if (stat(run_ptest, &st_buf) == -1) {
- free(run_ptest);
- free(d_name);
continue;
}
- if (!S_ISREG(st_buf.st_mode)) {
+ if (ptest_list_search_by_file(head, run_ptest, st_buf)) {
free(run_ptest);
free(d_name);
continue;
}
- if (ptest_list_search_by_file(head, run_ptest, st_buf)) {
- free(run_ptest);
- free(d_name);
- continue;
+ timeout = global_timeout;
+ if (get_ptest_file(&timeout_ptest, &st_buf, realdir, d_name, "timeout-ptest")) {
+ FILE *f = fopen(timeout_ptest, "r");
+
+ if (f == NULL) {
+ fail = 1;
+ saved_errno = errno;
+ free(run_ptest);
+ free(d_name);
+ free(timeout_ptest);
+ break;
+ }
+ fscanf(f, "%d", &timeout);
+ fclose(f);
+
+ free(timeout_ptest);
}
struct ptest_list *p = ptest_list_add(head,
- d_name, run_ptest);
+ d_name, run_ptest, timeout);
CHECK_ALLOCATION(p, sizeof(struct ptest_list *), 0);
if (p == NULL) {
fail = 1;
@@ -229,6 +255,7 @@ filter_ptests(struct ptest_list *head, char **ptests, int ptest_num)
for (i = 0; i < ptest_num; i++) {
char *ptest;
char *run_ptest;
+ int timeout;
n = ptest_list_search(head, ptests[i]);
if (n == NULL) {
@@ -239,13 +266,14 @@ filter_ptests(struct ptest_list *head, char **ptests, int ptest_num)
ptest = strdup(n->ptest);
run_ptest = strdup(n->run_ptest);
+ timeout = n->timeout;
if (ptest == NULL || run_ptest == NULL) {
saved_errno = errno;
fail = 1;
break;
}
- if (ptest_list_add(head_new, ptest, run_ptest) == NULL) {
+ if (ptest_list_add(head_new, ptest, run_ptest, timeout) == NULL) {
saved_errno = errno;
fail = 1;
break;
@@ -509,8 +537,7 @@ run_ptests(struct ptest_list *head, const struct ptest_options opts,
fprintf(fp, "%s\n", get_stime(stime, GET_STIME_BUF_SIZE, sttime));
fprintf(fp, "BEGIN: %s\n", ptest_dir);
-
- status = wait_child(child, opts.timeout);
+ status = wait_child(child, p->timeout);
entime = time(NULL);
duration = entime - sttime;
@@ -528,6 +555,8 @@ run_ptests(struct ptest_list *head, const struct ptest_options opts,
fprintf(fp, "END: %s\n", ptest_dir);
fprintf(fp, "%s\n", get_stime(stime, GET_STIME_BUF_SIZE, entime));
+
+ free(ptest_dir);
}
PTEST_LIST_ITERATE_END
fprintf(fp, "STOP: %s\n", progname);
diff --git a/utils.h b/utils.h
index 39832e6..69940d0 100644
--- a/utils.h
+++ b/utils.h
@@ -45,7 +45,7 @@ struct ptest_options {
extern void check_allocation1(void *, size_t, char *, int, int);
-extern struct ptest_list *get_available_ptests(const char *);
+extern struct ptest_list *get_available_ptests(const char *, int);
extern int print_ptests(struct ptest_list *, FILE *);
extern struct ptest_list *filter_ptests(struct ptest_list *, char **, int);
extern int run_ptests(struct ptest_list *, const struct ptest_options,
--
2.31.0


Re: #yocto #sdk #yocto #sdk

Monsees, Steven C (US)
 

 

I corrected for the sig warnings, but still have an issue with the extended SDK installing correctly

(though I think I am close…)

 

Note: The only issue now appears to be around the “…/poky/meta” layer…  and all with regards to “do_populate_sysroot” task…

 

I am building my kernel clean, and update the MIRRORS after…

The unihash & taskhash values are identical with respect to each component below…

I am building “uninative” support into the EXT SDK only…

None of the poky/meta references below are being modified by bbappends… should be a straight build

 

The EXT SDK local.conf appears to be setup correctly for my build env…

 

Am I missing something, a required variable setting, an additional support component ?  - seems odd it is all centered around the one unmodified layer…

 

I am able to build and install the “minimum” EXT SDK correctly, but I of course need the toolset…

 

I would appreciate any advice on how I might resolve this issue.

 

Install Output:

 

10:50 smonsees@yix490016 /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/deploy/sdk>ls

limws-glibc-x86_64-aiox_orange-corei7-64-toolchain-ext-3.0.4.host.manifest

limws-glibc-x86_64-aiox_orange-corei7-64-toolchain-ext-3.0.4.sh

limws-glibc-x86_64-aiox_orange-corei7-64-toolchain-ext-3.0.4.target.manifest

limws-glibc-x86_64-aiox_orange-corei7-64-toolchain-ext-3.0.4.testdata.json

x86_64-buildtools-nativesdk-standalone-3.0.4.host.manifest

x86_64-buildtools-nativesdk-standalone-3.0.4.sh

x86_64-buildtools-nativesdk-standalone-3.0.4.target.manifest

x86_64-buildtools-nativesdk-standalone-3.0.4.testdata.json

10:50 smonsees@yix490016 /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/deploy/sdk> ./limws-glibc-x86_64-aiox_orange-corei7-64-toolchain-ext-3.0.4.sh

LIMWS (BAE LIMWS base distro) Extensible SDK installer version 3.0.4

====================================================================

Enter target directory for SDK (default: ~/limws_sdk):  /disk0/scratch/smonsees/sbcbSDK_EXT

You are about to install the SDK to "/disk0/scratch/smonsees/sbcbSDK_EXT". Proceed [Y/n]? Y

Extracting SDK...............done

Setting it up...

Extracting buildtools...

Preparing build system...

Parsing recipes: 100% |#############################################################################################| Time: 0:01:33

Initialising tasks: 100% |##########################################################################################| Time: 0:00:00

Checking sstate mirror object availability: 100% |##################################################################| Time: 0:00:00

ERROR: Task quilt-native.do_fetch attempted to execute unexpectedly

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/gcc/libgcc_9.2.bb:do_populate_sysroot, unihash d5a9dff48660903403f33fe67d6d43e03c97c03232c6d8f0ed71f99a94670bce, taskhash d5a9dff48660903403f33fe67d6d43e03c97c03232c6d8f0ed71f99a94670bce

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/gmp/gmp_6.1.2.bb:do_populate_sysroot, unihash cde9ef4fc769ee9a2733a1023534c15bfe199009270bcebb6c24c638729194dc, taskhash cde9ef4fc769ee9a2733a1023534c15bfe199009270bcebb6c24c638729194dc

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/libtool/libtool-native_2.4.6.bb:do_populate_sysroot, unihash a1def57d3e655defdf1f85eec749be672ffe52a0a3c247585da9d6c57617cca2, taskhash a1def57d3e655defdf1f85eec749be672ffe52a0a3c247585da9d6c57617cca2

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/gcc/gcc-cross_9.2.bb:do_populate_sysroot, unihash 5f0f3533314c754b184e6f63f11ef2b570c7a5d47bc18fee2b4217aa294f08eb, taskhash 5f0f3533314c754b184e6f63f11ef2b570c7a5d47bc18fee2b4217aa294f08eb

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-connectivity/openssl/openssl_1.1.1g.bb:do_populate_sysroot, unihash d5e6bedb0cfb876a2925ea2e7f3bd00b090326b1cebf1182a6322974a6f055a3, taskhash d5e6bedb0cfb876a2925ea2e7f3bd00b090326b1cebf1182a6322974a6f055a3

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/python/python3_3.7.8.bb:do_populate_sysroot, unihash 8ee0c0eafd3b1c3f774a26f59659fc0c563816b6badfa57d9fa9097a182b1de5, taskhash 8ee0c0eafd3b1c3f774a26f59659fc0c563816b6badfa57d9fa9097a182b1de5

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-gnome/gtk-doc/gtk-doc_1.31.bb:do_populate_sysroot, unihash fbc7421c8a324ed0cbca81f98430f509ce4cf6593b0961cad8109d467df9e35e, taskhash fbc7421c8a324ed0cbca81f98430f509ce4cf6593b0961cad8109d467df9e35e

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/meta/meta-extsdk-toolchain.bb:do_populate_sysroot, unihash b9d46f79061ad82c4630a3db00aefe484f743a84a526e8afb24d953d04752276, taskhash b9d46f79061ad82c4630a3db00aefe484f743a84a526e8afb24d953d04752276

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/attr/attr_2.4.47.bb:do_populate_sysroot, unihash 3a6c84cf03e3103e46c02b01aed446fc31617f348b40d9e51b5b2ee8c2f3d0ee, taskhash 3a6c84cf03e3103e46c02b01aed446fc31617f348b40d9e51b5b2ee8c2f3d0ee

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/libmpc/libmpc_1.1.0.bb:do_populate_sysroot, unihash 39109487309272ea510afb753a0dd84775625c73f7a261b9d0078fe0ea718f17, taskhash 39109487309272ea510afb753a0dd84775625c73f7a261b9d0078fe0ea718f17

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/util-linux/util-linux_2.34.bb:do_populate_sysroot, unihash 51964ba6ff2cd62ad6d9077e9fddfe53be566eb23beca10e9c882a1eee20aa5d, taskhash 51964ba6ff2cd62ad6d9077e9fddfe53be566eb23beca10e9c882a1eee20aa5d

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-multimedia/libpng/libpng_1.6.37.bb:do_populate_sysroot, unihash 6d92093db77054a96cd23e00ca2bf3468a9ae8ebddc191a59e1a0136778d6be1, taskhash 6d92093db77054a96cd23e00ca2bf3468a9ae8ebddc191a59e1a0136778d6be1

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/gcc/gcc-cross_9.2.bb:do_gcc_stash_builddir, unihash 62ba54c4db5ba11db400ba0277892d92f665f35b5c334c17f8e6ad9ded9c16b1, taskhash 62ba54c4db5ba11db400ba0277892d92f665f35b5c334c17f8e6ad9ded9c16b1

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-extended/xz/xz_5.2.4.bb:do_populate_sysroot, unihash 01723d04843fdbeec3fabd109c34281bd49c0979e09c722b2c189335cb6c957a, taskhash 01723d04843fdbeec3fabd109c34281bd49c0979e09c722b2c189335cb6c957a

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/m4/m4-native_1.4.18.bb:do_populate_sysroot, unihash 19b266239a8f93f5273ac6213d0f58a73bfc1ecbe84c5cfd273f5351b0740ca1, taskhash 19b266239a8f93f5273ac6213d0f58a73bfc1ecbe84c5cfd273f5351b0740ca1

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-graphics/xorg-lib/pixman_0.38.4.bb:do_populate_sysroot, unihash 66cca6669fc3fdc571970b1ccabb7a8b334139013df8b71c8b033d15705ec5a7, taskhash 66cca6669fc3fdc571970b1ccabb7a8b334139013df8b71c8b033d15705ec5a7

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/unfs3/unfs3_git.bb:do_populate_sysroot, unihash 46e3dd7e07935b77a618c4587f5bc8dbaaff1ba030e779683e2bf2679f57c8fb, taskhash 46e3dd7e07935b77a618c4587f5bc8dbaaff1ba030e779683e2bf2679f57c8fb

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/gcc/gcc-runtime_9.2.bb:do_populate_sysroot, unihash 7200138112d31332099cf647ee83441c6739d6f276f2ba859bd440b7a4eed9fb, taskhash 7200138112d31332099cf647ee83441c6739d6f276f2ba859bd440b7a4eed9fb

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/meson/meson_0.51.2.bb:do_populate_sysroot, unihash ac801ce28f4bf45c7c08e2721a765872a1bd6561f783c570ed47dad7e9642901, taskhash ac801ce28f4bf45c7c08e2721a765872a1bd6561f783c570ed47dad7e9642901

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/expat/expat_2.2.8.bb:do_populate_sysroot, unihash c47a5a2b37341edbfeab516b931c8f0015b52d6159f251e70f57e086a6502fe1, taskhash c47a5a2b37341edbfeab516b931c8f0015b52d6159f251e70f57e086a6502fe1

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/bison/bison_3.4.1.bb:do_populate_sysroot, unihash f8fb4d2026cb4192c03bc75c357f9890dcb4f7593d23407f9a60c32d383d7c57, taskhash f8fb4d2026cb4192c03bc75c357f9890dcb4f7593d23407f9a60c32d383d7c57

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-kernel/dtc/dtc_1.5.1.bb:do_populate_sysroot, unihash 8ee1e9314ae7a6235f2ec876f7d30336d6e65d7879ac17cd1044ac3f20f969ec, taskhash 8ee1e9314ae7a6235f2ec876f7d30336d6e65d7879ac17cd1044ac3f20f969ec

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/autoconf-archive/autoconf-archive_2019.01.06.bb:do_populate_sysroot, unihash 7aaaf6c0cf3a9c104029683b93a62b965e91827c487ee707a23c84560aea1d3e, taskhash 7aaaf6c0cf3a9c104029683b93a62b965e91827c487ee707a23c84560aea1d3e

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-extended/bzip2/bzip2_1.0.8.bb:do_populate_sysroot, unihash 66c8139add58f12cae0334108b226f4f91f1fdb34fd34822c9ff9612d6c11b64, taskhash 66c8139add58f12cae0334108b226f4f91f1fdb34fd34822c9ff9612d6c11b64

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-graphics/xorg-util/util-macros_1.19.2.bb:do_populate_sysroot, unihash 070d343bb7de5e6402f4190283e6d40ca33031eac71601d7ab92a92ef0e175d0, taskhash 070d343bb7de5e6402f4190283e6d40ca33031eac71601d7ab92a92ef0e175d0

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/python/python3-setuptools_41.2.0.bb:do_populate_sysroot, unihash e8771b3e23f0d5c3e799b093dd9657a2fd863abf459fa500399930111a8fd388, taskhash e8771b3e23f0d5c3e799b093dd9657a2fd863abf459fa500399930111a8fd388

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/qemu/qemu-system-native_4.1.0.bb:do_populate_sysroot, unihash 33ac287a8d8aded61eb77dd21cb3c54986126430c78a243f706a5917ef0a0183, taskhash 33ac287a8d8aded61eb77dd21cb3c54986126430c78a243f706a5917ef0a0183

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/mpfr/mpfr_4.0.2.bb:do_populate_sysroot, unihash 25d61942ed599e037b2e75a5b722ce5ff251005c2a4ee23e9faef34c9e54777b, taskhash 25d61942ed599e037b2e75a5b722ce5ff251005c2a4ee23e9faef34c9e54777b

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/re2c/re2c_1.0.1.bb:do_populate_sysroot, unihash 6ebe8680a921a8927ef6cd0061b2b50667bb787be010c8ee4ca6ccc3593024b7, taskhash 6ebe8680a921a8927ef6cd0061b2b50667bb787be010c8ee4ca6ccc3593024b7

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/pseudo/pseudo_git.bb:do_populate_sysroot, unihash 28e64747a95953ec8626d3027958e12d1fd854a7615bc69cf5adbbc3d49c323a, taskhash 28e64747a95953ec8626d3027958e12d1fd854a7615bc69cf5adbbc3d49c323a

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-extended/libtirpc/libtirpc_1.1.4.bb:do_populate_sysroot, unihash 147f1ca7d20e89f2786b48fcda4ebaf36c1c3d941b53b0b8b56c42beb9220c1d, taskhash 147f1ca7d20e89f2786b48fcda4ebaf36c1c3d941b53b0b8b56c42beb9220c1d

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/qemu/qemu-native_4.1.0.bb:do_populate_sysroot, unihash 00651d4d53b4b7b10e44770326d5f0a1f5482c1262671621523ba12c21508977, taskhash 00651d4d53b4b7b10e44770326d5f0a1f5482c1262671621523ba12c21508977

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/gettext/gettext_0.19.8.1.bb:do_populate_sysroot, unihash bf9b767f8e30be92fa06079f2e7350aa304648b0d113829d315e6cb64bad0565, taskhash bf9b767f8e30be92fa06079f2e7350aa304648b0d113829d315e6cb64bad0565

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/glibc/glibc_2.30.bb:do_stash_locale, unihash d64e054d019028151912ffface31585789df48f4de7e3a66b201cd614c2f4aca, taskhash d64e054d019028151912ffface31585789df48f4de7e3a66b201cd614c2f4aca

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/ninja/ninja_1.9.0.bb:do_populate_sysroot, unihash ab3ecdf2561adc51338d36576f60eab1e05fc09ed69bb6444075d7adbeb57b9e, taskhash ab3ecdf2561adc51338d36576f60eab1e05fc09ed69bb6444075d7adbeb57b9e

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/sqlite/sqlite3_3.29.0.bb:do_populate_sysroot, unihash c1a988a16d4368098e178f7fe5f0e2e5f8adf4fa485a7b79c4c093a38005264e, taskhash c1a988a16d4368098e178f7fe5f0e2e5f8adf4fa485a7b79c4c093a38005264e

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/automake/automake_1.16.1.bb:do_populate_sysroot, unihash ad223f3318940531fa279bd74480cd6410abc46644f8fe98f7399a71cfe09179, taskhash ad223f3318940531fa279bd74480cd6410abc46644f8fe98f7399a71cfe09179

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/patch/patch_2.7.6.bb:do_populate_sysroot, unihash be5aa9a356c12c9b4220c3d3d6dfe16c737e9be88e7d331c0511b275e4d603c4, taskhash be5aa9a356c12c9b4220c3d3d6dfe16c737e9be88e7d331c0511b275e4d603c4

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/flex/flex_2.6.0.bb:do_populate_sysroot, unihash 9c37027658f2832321efe3657d91f29d1bf286ad1fda0c9916b256adfa246455, taskhash 9c37027658f2832321efe3657d91f29d1bf286ad1fda0c9916b256adfa246455

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/readline/readline_8.0.bb:do_populate_sysroot, unihash 3d909d0d6de7cf72b631aa1805efc1147459bef5bddca5f60ff07022ba777e0e, taskhash 3d909d0d6de7cf72b631aa1805efc1147459bef5bddca5f60ff07022ba777e0e

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-extended/libnsl/libnsl2_git.bb:do_populate_sysroot, unihash 19357ca137093c4e1e063d14a0d3844f889dce933a4eebdc34acf0c321d707ec, taskhash 19357ca137093c4e1e063d14a0d3844f889dce933a4eebdc34acf0c321d707ec

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/glibc/glibc_2.30.bb:do_populate_sysroot, unihash df6ecc8017c1a3fa278fc743c85fa6049465da674f169777b9a544eb423b84b5, taskhash df6ecc8017c1a3fa278fc743c85fa6049465da674f169777b9a544eb423b84b5

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/gdbm/gdbm_1.18.1.bb:do_populate_sysroot, unihash 8b0d7a859afc0cc39a32d26b8d5c79b5c1b8970a8e5d566098ff59fc916335f5, taskhash 8b0d7a859afc0cc39a32d26b8d5c79b5c1b8970a8e5d566098ff59fc916335f5

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/libcap-ng/libcap-ng_0.7.9.bb:do_populate_sysroot, unihash 784e3c4b04d227379d94e85251233a568fb9e9f841d737584882d0da0b009d5c, taskhash 784e3c4b04d227379d94e85251233a568fb9e9f841d737584882d0da0b009d5c

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/zlib/zlib_1.2.11.bb:do_populate_sysroot, unihash 770d0b4be83a17d65464ade3adc3c6be443a9f8fffbe53d303c5765674a274d7, taskhash 770d0b4be83a17d65464ade3adc3c6be443a9f8fffbe53d303c5765674a274d7

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-extended/unzip/unzip_6.0.bb:do_populate_sysroot, unihash 82d365cde8a3375461fb47f650aa3fd7c8aa029b0cd2f23ccd38b6f73a9902d9, taskhash 82d365cde8a3375461fb47f650aa3fd7c8aa029b0cd2f23ccd38b6f73a9902d9

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/pkgconfig/pkgconfig_git.bb:do_populate_sysroot, unihash de3b4482bf2a0878b99c904fecac19e917d374838da4c9df62929bb14d1282d1, taskhash de3b4482bf2a0878b99c904fecac19e917d374838da4c9df62929bb14d1282d1

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/binutils/binutils-cross_2.32.bb:do_populate_sysroot, unihash 50ce76092848b0214480dd7a4f0fcc7e5927f4f8071601bc094847d20d2c879d, taskhash 50ce76092848b0214480dd7a4f0fcc7e5927f4f8071601bc094847d20d2c879d

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb:do_populate_sysroot, unihash 90db72e6ab74de51a86e0b14980b2c204076fc3ef8297a374b660d8645853cac, taskhash 90db72e6ab74de51a86e0b14980b2c204076fc3ef8297a374b660d8645853cac

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_5.2.bb:do_populate_sysroot, unihash 7b6f6e59c3431987b308c78d6f72e5aefae1b9afbf158a47540f0db5e04ebdb0, taskhash 7b6f6e59c3431987b308c78d6f72e5aefae1b9afbf158a47540f0db5e04ebdb0

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/gdb/gdb-cross_8.3.1.bb:do_populate_sysroot, unihash c623832386a7201b2a59b170e7c9015edfffbfb21dbec6ab44e81662d1d7c504, taskhash c623832386a7201b2a59b170e7c9015edfffbfb21dbec6ab44e81662d1d7c504

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/quilt/quilt-native_0.66.bb:do_populate_sysroot, unihash 23290d029e88d49579ce286326ba82d42ad77874a2cd0e05e71166b964190822, taskhash 23290d029e88d49579ce286326ba82d42ad77874a2cd0e05e71166b964190822

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/libffi/libffi_3.3~rc0.bb:do_populate_sysroot, unihash 5be2fdefd4b14100290247d24d2df8da234ea32cb91e4508ffd793aabc06d30e, taskhash 5be2fdefd4b14100290247d24d2df8da234ea32cb91e4508ffd793aabc06d30e

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/make/make_4.2.1.bb:do_populate_sysroot, unihash 7a82e867fd7be399f5d92200e43de6e7d9d42ad98e5f771a6e54a0975053ae2e, taskhash 7a82e867fd7be399f5d92200e43de6e7d9d42ad98e5f771a6e54a0975053ae2e

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb:do_populate_sysroot, unihash 2d20a98fe86b071366643317507293df9594c15528ef49f3fbeeffe4af532501, taskhash 2d20a98fe86b071366643317507293df9594c15528ef49f3fbeeffe4af532501

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/gettext/gettext-minimal-native_0.19.8.1.bb:do_populate_sysroot, unihash d579308c5efa4cef283785d540731bf0f02dffeef6ea677b0fa7cec6332e7902, taskhash d579308c5efa4cef283785d540731bf0f02dffeef6ea677b0fa7cec6332e7902

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/glib-2.0/glib-2.0_2.60.7.bb:do_populate_sysroot, unihash b7ff5dcd7278fab62aa716be6cf652bcc1d463d884738fb3232297fe6f81880a, taskhash b7ff5dcd7278fab62aa716be6cf652bcc1d463d884738fb3232297fe6f81880a

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-extended/gperf/gperf_3.1.bb:do_populate_sysroot, unihash 6765ae416e5360039914d6216c0d02541c5afc070545804303d75d1016b7b460, taskhash 6765ae416e5360039914d6216c0d02541c5afc070545804303d75d1016b7b460

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/ncurses/ncurses_6.1+20190803.bb:do_populate_sysroot, unihash f468831b3be537588a35b7fdf2e1a46dc52d1737fbf168c0e83ff0f162a99cf9, taskhash f468831b3be537588a35b7fdf2e1a46dc52d1737fbf168c0e83ff0f162a99cf9

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-multimedia/alsa/alsa-lib_1.1.9.bb:do_populate_sysroot, unihash 39d5b05d5ec0e2b2abbb710c7c31f17d3047a255f5a11deb121d7323e06fb900, taskhash 39d5b05d5ec0e2b2abbb710c7c31f17d3047a255f5a11deb121d7323e06fb900

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/libpcre/libpcre_8.43.bb:do_populate_sysroot, unihash 3eed4e011c853b98bf31e1c1b2eee2073aeb4ef0546c9bd230f2bfcc3ac05088, taskhash 3eed4e011c853b98bf31e1c1b2eee2073aeb4ef0546c9bd230f2bfcc3ac05088

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/autoconf/autoconf_2.69.bb:do_populate_sysroot, unihash 373490cc20455b0913b69b35ab9cc61340356d7b27f7ecb6cf51a3ad9459a068, taskhash 373490cc20455b0913b69b35ab9cc61340356d7b27f7ecb6cf51a3ad9459a068

Task virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/unifdef/unifdef_2.11.bb:do_populate_sysroot, unihash 3e6814932d42ab266096948b4b81f9c1fbdbb26f7b990963ca4322a718e13170, taskhash 3e6814932d42ab266096948b4b81f9c1fbdbb26f7b990963ca4322a718e13170

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/gcc/libgcc-initial_9.2.bb:do_populate_sysroot, unihash 07136816c5d9bb085d8dab671c1689d08254d92b7e0edbb4a23abb3ae2628bea, taskhash 07136816c5d9bb085d8dab671c1689d08254d92b7e0edbb4a23abb3ae2628bea

Task /disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb:do_populate_sysroot, unihash 4ba7e532221d903e4c3556460d09d7bf7eabc9c4ca73f6a481849be0eaba23a3, taskhash 4ba7e532221d903e4c3556460d09d7bf7eabc9c4ca73f6a481849be0eaba23a3

This is usually due to missing setscene tasks. Those missing in this build were: {'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/gettext/gettext-minimal-native_0.19.8.1.bb:do_populate_sysroot',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/glibc/glibc_2.30.bb:do_populate_sysroot',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/glibc/glibc_2.30.bb:do_stash_locale',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/meta/meta-extsdk-toolchain.bb:do_populate_sysroot',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/binutils/binutils-cross_2.32.bb:do_populate_sysroot',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/gcc/gcc-cross_9.2.bb:do_gcc_stash_builddir',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/gcc/gcc-cross_9.2.bb:do_populate_sysroot',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/gcc/gcc-runtime_9.2.bb:do_populate_sysroot',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/gcc/libgcc-initial_9.2.bb:do_populate_sysroot',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/gcc/libgcc_9.2.bb:do_populate_sysroot',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/gdb/gdb-cross_8.3.1.bb:do_populate_sysroot',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/libtool/libtool-native_2.4.6.bb:do_populate_sysroot',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/m4/m4-native_1.4.18.bb:do_populate_sysroot',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb:do_populate_sysroot',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/qemu/qemu-native_4.1.0.bb:do_populate_sysroot',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/qemu/qemu-system-native_4.1.0.bb:do_populate_sysroot',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/quilt/quilt-native_0.66.bb:do_populate_sysroot',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb:do_populate_sysroot',

'/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_5.2.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-connectivity/openssl/openssl_1.1.1g.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/expat/expat_2.2.8.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/gettext/gettext_0.19.8.1.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/glib-2.0/glib-2.0_2.60.7.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/ncurses/ncurses_6.1+20190803.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/readline/readline_8.0.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/util-linux/util-linux_2.34.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-core/zlib/zlib_1.2.11.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/autoconf-archive/autoconf-archive_2019.01.06.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/autoconf/autoconf_2.69.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/automake/automake_1.16.1.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/bison/bison_3.4.1.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/flex/flex_2.6.0.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/make/make_4.2.1.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/meson/meson_0.51.2.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/ninja/ninja_1.9.0.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/patch/patch_2.7.6.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/pkgconfig/pkgconfig_git.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/pseudo/pseudo_git.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/python/python3-setuptools_41.2.0.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/python/python3_3.7.8.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/unfs3/unfs3_git.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/unifdef/unifdef_2.11.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-extended/bzip2/bzip2_1.0.8.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-extended/gperf/gperf_3.1.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-extended/libnsl/libnsl2_git.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-extended/libtirpc/libtirpc_1.1.4.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-extended/unzip/unzip_6.0.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-extended/xz/xz_5.2.4.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-gnome/gtk-doc/gtk-doc_1.31.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-graphics/xorg-lib/pixman_0.38.4.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-graphics/xorg-util/util-macros_1.19.2.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-kernel/dtc/dtc_1.5.1.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-multimedia/alsa/alsa-lib_1.1.9.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-multimedia/libpng/libpng_1.6.37.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/attr/attr_2.4.47.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/gdbm/gdbm_1.18.1.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/gmp/gmp_6.1.2.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/libcap-ng/libcap-ng_0.7.9.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/libffi/libffi_3.3~rc0.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/libmpc/libmpc_1.1.0.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/libpcre/libpcre_8.43.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/mpfr/mpfr_4.0.2.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/re2c/re2c_1.0.1.bb:do_populate_sysroot',

'virtual:native:/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-support/sqlite/sqlite3_3.29.0.bb:do_populate_sysroot'}

ERROR: Task (/disk0/scratch/smonsees/sbcbSDK_EXT/layers/poky/meta/recipes-devtools/quilt/quilt-native_0.66.bb:do_fetch) failed with exit code 'setscene whitelist'

ERROR: SDK preparation failed: error log written to /disk0/scratch/smonsees/sbcbSDK_EXT/preparing_build_system.log

10:52 smonsees@yix490016 /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/deploy/sdk>

 

 

 

From: Khem Raj <raj.khem@...>
Sent: Thursday, March 4, 2021 1:22 PM
To: Monsees, Steven C (US) <steven.monsees@...>
Cc: yocto@...
Subject: Re: [yocto] #yocto #sdk

 

External Email Alert

This email has been sent from an account outside of the BAE Systems network.

Please treat the email with caution, especially if you are requested to click on a link, decrypt/open an attachment, or enable macros.  For further information on how to spot phishing, access “Cybersecurity OneSpace Page” and report phishing by clicking the button “Report Phishing” on the Outlook toolbar.

 

right, the change seems to be happening in task checksums and that happens if some of bitbake variables change when SDK is built built and when it is being installed ( when it will run parse again ) perhaps the workspace under the hood is still accessible and you can use bitbake-diffsigs to narrow it down the variable that is changing

 

On Thu, Mar 4, 2021 at 9:38 AM Monsees, Steven C (US) via lists.yoctoproject.org <steven.monsees=baesystems.com@...> wrote:

 

I am seeing similar issues on line  for my eSDK install issue, but no resolutions…

 

Can someone advise on best course of action to debug this ?

 

11:10 smonsees@yix490016 /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/deploy/sdk> ./limws-glibc-x86_64-aiox_orange-corei7-64-toolchain-ext-3.0.4.sh

LIMWS (BAE LIMWS base distro) Extensible SDK installer version 3.0.4

====================================================================

Enter target directory for SDK (default: ~/limws_sdk): /disk0/scratch/smonsees/testSDK

You are about to install the SDK to "/disk0/scratch/smonsees/testSDK". Proceed [Y/n]? Y

Extracting SDK..............................................................................done

Setting it up...

Extracting buildtools...

Preparing build system...

Parsing recipes: 100% |##########################################################################################| Time: 0:01:36

Initialising tasks: 100% |#######################################################################################| Time: 0:00:04

Checking sstate mirror object availability: 100% |###############################################################| Time: 0:00:02

WARNING: The efitools:do_compile sig is computed to be 5851605e22907038837428950427053e22ea655641a08b5dafa39d6d6e1c5e15, but the sig is locked to b81a26e3591c71acd3d22212bfdb70a15a0df49af72e7634e6a39851f16e18b5 in SIGGEN_LOCKEDSIGS_t-corei7-64

The monkeysphere:do_install sig is computed to be 13a65b26dfff91f2432a8064d98003559eafffa214d81c3c6ea112c2dfba0391, but the sig is locked to 2058fc9032b0e7f5c1ea358de4fa8d25ccec7204b73ebc636e79222d8cc00469 in SIGGEN_LOCKEDSIGS_t-corei7-64

The signature:do_compile sig is computed to be ac0c5c19cdbe7484046657ccb7b768c02fbbabb43166befa93b71a85d5fcf55b, but the sig is locked to cf5c3f72489f447b1199aafe4b4148988ff91cecd970422352f2238afb127683 in SIGGEN_LOCKEDSIGS_t-corei7-64

The grub-efi-native:do_clean_grub sig is computed to be 4e16b100c32e9428126eb10864508038527cec795c5e4391208d96a55735c90a, but the sig is locked to a2bd26be0297624af53d6f8cf657d79740fb229db821c446d564c5ee9dc80ea3 in SIGGEN_LOCKEDSIGS_t-x86-64

The grub-efi-native:do_compile sig is computed to be 630cc346f7ececf98c54f9134e8fee546e85c92f1e3c6ac3c258a1cdf24d4565, but the sig is locked to 802bba0874ce26169a9e16dcdb440795e8fa904977b036d637d6c4086ce72de8 in SIGGEN_LOCKEDSIGS_t-x86-64

The grub-efi:do_clean_grub sig is computed to be faf0ae3c9159ef3ebb13d2521ecf51dfeeac0c2c47691cd0aaa80de91187af3c, but the sig is locked to 0075bbd34297bfbc62685ff5477feec11d0dd2bcda6787a151cfb7927a7f39c2 in SIGGEN_LOCKEDSIGS_t-corei7-64

The grub-efi:do_compile sig is computed to be 30c09f3e8db4059b7e1ff23823f208be94d0e622904fc43eda497027be095a71, but the sig is locked to a9e8ddd9ecac11e67c66d9fccbabe23b6eb4a19c5996baef8ff960dfcdc898ed in SIGGEN_LOCKEDSIGS_t-corei7-64

ERROR: Task quilt-native.do_fetch attempted to execute unexpectedly

Task /disk0/scratch/smonsees/testSDK/layers/poky/meta/recipes-support/db/db_5.3.28.bb:do_populate_sysroot, unihash dcfb179ae99ac73583d33eec1357ff5d06fb58f160e5d7285061b6e1c9c3a9c0, taskhash dcfb179ae99ac73583d33eec1357ff5d06fb58f160e5d7285061b6e1c9c3a9c0

Task /disk0/scratch/smonsees/testSDK/layers/poky/meta/recipes-extended/sed/sed_4.2.2.bb:do_package_write_ipk, unihash a37dc1cc0064749d1f6de69d0a9b8eab9ff6ef4089eff28a76e1851f8f8f8fe3, taskhash a37dc1cc0064749d1f6de69d0a9b8eab9ff6ef4089eff28a76e1851f8f8f8fe3

Task /disk0/scratch/smonsees/testSDK/layers/poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.10.bb:do_package_qa, unihash 2b17b70b3e1568840e3b39488b9e6470c89d5ffd502f02b2c129331d7609add8, taskhash 2b17b70b3e1568840e3b39488b9e6470c89d5ffd502f02b2c129331d7609add8

Task /disk0/scratch/smonsees/testSDK/layers/poky/meta/recipes-connectivity/openssh/openssh_8.0p1.bb:do_package_qa, unihash 87a24567344a646de9ab6fba50b398e41711ff4d1bca749ebe02d84359c2a155, taskhash 87a24567344a646de9ab6fba50b398e41711ff4d1bca749ebe02d84359c2a155

.

.

 

 

https://www.mail-archive.com/search?l=yocto@...&q=subject:%22Re%5C%3A+%5C%5Byocto%5C%5D+eSDK+install+script+failure%22&o=newest&f=1

 

https://www.yoctoproject.org/pipermail/yocto/2017-August/037359.html

 

https://bugzilla.yoctoproject.org/show_bug.cgi?id=12344

 

 

From: yocto@... <yocto@...> On Behalf Of Monsees, Steven C (US) via lists.yoctoproject.org
Sent: Thursday, March 4, 2021 8:13 AM
To: Monsees, Steven C (US) <steven.monsees@...>; yocto@...
Subject: Re: [yocto] #yocto #sdk

 

External Email Alert

This email has been sent from an account outside of the BAE Systems network.

Please treat the email with caution, especially if you are requested to click on a link, decrypt/open an attachment, or enable macros.  For further information on how to spot phishing, access “Cybersecurity OneSpace Page” and report phishing by clicking the button “Report Phishing” on the Outlook toolbar.

 

 

 

Is there a list of certain classes that might interfere with the ability of the eSDK to lock down the configuratiuon ?
 
Thanks,
Steve

 

 

From: yocto@... <yocto@...> On Behalf Of Monsees, Steven C (US) via lists.yoctoproject.org
Sent: Tuesday, March 2, 2021 3:26 PM
To: yocto@...
Subject: [yocto] #yocto #sdk

 

External Email Alert

This email has been sent from an account outside of the BAE Systems network.

Please treat the email with caution, especially if you are requested to click on a link, decrypt/open an attachment, or enable macros.  For further information on how to spot phishing, access “Cybersecurity OneSpace Page” and report phishing by clicking the button “Report Phishing” on the Outlook toolbar.

 

 

I still appear to be having an issue with the SXT SDK install…

 

Building for zeus/x86_64 Intel based platform…

I build my kernel image clean, fully functional…

Standard SDK builds clean and appears functional…

 

Ext SDK builds clean, but on install I am still seeing Error below…

 

(1)    What is it comparing  between unhash/task hash ?, more sig issues ?

 

(2)    What is meant by “This is usually due to missing setscene tasks” ?

 

(3)    In the local.conf under the SDK they set :

 

SSTATE_MIRRORS += " file://universal/(.*) file://universal-4.9/\1 file://universal-4.9/(.*) file://universal-4.8/\1"

 

Under sdk-extra.conf I set :

 

SSTATE_MIRRORS += file://.* file:///ede/tms/yocto/zeus/sstate_cache/PATH

 

My SSTATE_MIRRIOR is based off the clean builds I mentioned above, is this the correct procedure ?

 

I am trying to figure out how best to debug this issue, it is occurring on the post install, and everything pretty much appears in place.

 

Steve

 

14:43 smonsees@yix490038 /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/deploy/sdk>./limws-glibc-x86_64-aiox_orange-corei7-64-toolchain-ext-3.0.4.sh

LIMWS (BAE LIMWS base distro) Extensible SDK installer version 3.0.4

====================================================================

Enter target directory for SDK (default: ~/limws_sdk): /disk0/scratch/smonsees/testSDK

You are about to install the SDK to "/disk0/scratch/smonsees/testSDK". Proceed [Y/n]? Y

Extracting SDK..............................................................................done

Setting it up...

Extracting buildtools...

Preparing build system...

Parsing recipes: 100% |###########################################################################################| Time: 0:01:32

Initialising tasks: 100% |########################################################################################| Time: 0:00:04

Checking sstate mirror object availability: 100% |################################################################| Time: 0:00:03

ERROR: Task quilt-native.do_fetch attempted to execute unexpectedly

Task /disk0/scratch/smonsees/testSDK/layers/poky/meta/recipes-support/liburcu/liburcu_0.11.1.bb:do_populate_sysroot, unihash cdb08644b85fa162bd9f88cb00113fe3193cc347e39e33e8f405f9c23f60c601, taskhash cdb08644b85fa162bd9f88cb00113fe3193cc347e39e33e8f405f9c23f60c601

Task /disk0/scratch/smonsees/testSDK/layers/poky/meta/recipes-devtools/python/python3_3.7.8.bb:do_packagedata, unihash 925a72cbe872aad09bd3fbbe74ed1c944e9c19a732e120feae5c4784e6330d4f, taskhash 925a72cbe872aad09bd3fbbe74ed1c944e9c19a732e120feae5c4784e6330d4f

.

.

.

 

This is usually due to missing setscene tasks. Those missing in this build were:

 

<<appears to list every recipe under ./testSDK/layers directory here>>



[meta-selinux][PATCH] conf/layer.conf: Add hardknott support

Anibal Limon
 

Signed-off-by: Aníbal Limón <anibal.limon@...>
---
conf/layer.conf | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/conf/layer.conf b/conf/layer.conf
index 178ce1b..ff009ef 100644
--- a/conf/layer.conf
+++ b/conf/layer.conf
@@ -23,7 +23,7 @@ BBFILE_PRIORITY_selinux = "5"
# cause compatibility issues with other layers
LAYERVERSION_selinux = "1"

-LAYERSERIES_COMPAT_selinux = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_selinux = "dunfell gatesgarth hardknott"

LAYERDEPENDS_selinux = " \
core \
--
2.31.0


Re: [ptest-runner][PATCH 4/4] utils.c: wait_child reimplement timeout using alarm

Yi Fan Yu
 

On 3/22/21 10:10 PM, Aníbal Limón wrote:
Since we are using threads to read from child, no complex logic is
needed for handle timeouts use alarm(2).
TY for the patches.

This would change its behaviour to timeout exactly at X seconds.

New behaviour: if test exceeds X seconds, gets killed.
Old behaviour: if test exceeds X seconds with no output, get killed. If output is detected X-1 seconds, the timeout timer resets.
so a program could take 2X seconds and not get killed


Comment about the other patches:

We don't even need an extra thread because before the wait_for_child had to do 2 things:

* read a pipe and output that pipe to stdout (child_reader does that)
* check for timeout (sigalarm takes care of that now)



last thing, can you push this to a branch (let's say) master-next, so I can test it with a full ptest run.

yifan


Change (and remove unused) init system on a per-image basis #yocto #bitbake #systemd #sysvinit

lel@...
 

Hi all,

I would like to change the init system (systemd / SysVinit) on a per-image basis.
Therefore I added both "systemd" and "sysvinit" to my DISTRO_FEATURES.

I set this inside my image-systemd.bb to make sure that systemd is available as a distro feature:

REQUIRED_DISTRO_FEATURES = "systemd"


Now I want to prevent the "unused" init system (in this case sysvinit) from being added to the rootfs.
Therefore I tried something like this inside my distro.conf:

DISTRO_FEATURES_BACKFILL_CONSIDERED = "${@bb.utils.contains('REQUIRED_DISTRO_FEATURES', 'systemd', 'sysvinit', '', d)}"


As expected, this leads into the following. So far so good:

$ bitbake image-systemd -e | grep DISTRO_FEATURES_BACKFILL_CONSIDERED=
DISTRO_FEATURES_BACKFILL_CONSIDERED="sysvinit"

But the final rootfs still contains sysvinit scripts (/etc/init.d/*)

Now the strange thing:
If I instead do this inside my distro.conf, /etc/init.d is not being created, exactly as I wanted:

DISTRO_FEATURES_BACKFILL_CONSIDERED="sysvinit"


So I don't really understand why this solution doesn't work.
Any help would be appreciated.


Thanks and Regards,
Stefan


#yocto #linux #uboot fitImage is not installed by default into the rootfs and not packages #yocto #linux #uboot

Ilies CHERGUI
 

Hi everyone,

I'm using Poky with a master branch, I'm enabling the fitImage. Unfortunately, the fitImage is not packaged and not installed into the root file system.
 
Here is my updates in the conf/local.conf file:
KERNEL_CLASSES += "kernel-fitimage"
KERNEL_IMAGETYPE = "fitImage"
INITRAMFS_IMAGE_BUNDLE = "1"

 
The fitImage is well generated and deployed in the deploy directory but it is not installed into the root file system and it is not packaged. the directory kernel-image-fitimagunder the packages-split of the linux work directory is empty.
 
Please see the attached picture ?
 
Am I missing something?
Any help would be much appreciated.
 
Best regards,
Ilies


Re: Creating a FIT Image with INITRAMFs

poornesh.g@...
 

Greetings !

Processor  : i.MX8MM

Yocto : 2.7.1 (warrior)

I am trying to crate a "initramfs image" bundling with the "Kernel image".

Below mentioned is the link and  which I am following .

https://www.yoctoproject.org/docs/3.1/dev-manual/dev-manual.html#building-an-initramfs-image


Below is the steps which I followed :

1. Added INITRAMFS_IMAGE_BUNDLE variable to "1" in local.conf

2. Added INITRAMFS_IMAGE = "phytec-initramfs-image" in your local.conf 

3. And tried building the image using bitbake.



But when I am compiling the image, I am getting the following mentioned "Circular dependency error". Kindly Requesting solution/suggestions for the same .

------------------------------------------------------

ERROR: 1830 unbuildable tasks were found.######################################## | ETA: 0:00:01 These are usually caused by circular dependencies and any circular dependency chains found will be printed below. Increase the debug level to see a list of unbuildable tasks.

Identifying dependency loops (this may take a short while)...

ERROR: Dependency loop #1 found: Task /mnt/Aditional_2TB/khaleel_new/yocto/iMX8MM/sources/poky/../meta-phytec/recipes-kernel/linux/linux-imx_4.19.35_1.1.0-phy4.bb:do_bundle_initramfs (dependent Tasks ['linux-imx_4.19.35_1.1.0-phy4.bb:do_install', 'core-image-minimal-initramfs.bb:do_image_complete']) Task /mnt/Aditional_2TB/khaleel_new/yocto/iMX8MM/sources/poky/../meta-phytec/recipes-kernel/linux/linux-imx_4.19.35_1.1.0-phy4.bb:do_deploy (dependent Tasks ['linux-imx_4.19.35_1.1.0-phy4.bb:do_packagedata', 'linux-imx_4.19.35_1.1.0-phy4.bb:do_populate_sysroot', 'linux-imx_4.19.35_1.1.0-phy4.bb:do_bundle_initramfs', 'depmodwrapper-cross_1.0.bb:do_populate_sysroot']) Task /mnt/Aditional_2TB/khaleel_new/yocto/iMX8MM/sources/poky/meta/recipes-core/images/core-image-minimal-initramfs.bb:do_image_wic (dependent Tasks ['core-image-minimal-initramfs.bb:do_rootfs_wicenv', 'core-image-minimal-initramfs.bb:do_image', 'linux-imx_4.19.35_1.1.0-phy4.bb:do_deploy', 'imx-boot-phytec_0.2.bb:do_deploy', 'u-boot-imx_2019.04_1.1.0-phy5.bb:do_deploy', 'gptfdisk_1.0.4.bb:do_populate_sysroot', 'dosfstools_4.1.bb:do_populate_sysroot', 'firmware-imx-8m_8.5.bb:do_deploy', 'parted_3.2.bb:do_populate_sysroot', 'mtools_4.0.19.bb:do_populate_sysroot', 'imx-atf_2.0.bb:do_deploy']) Task /mnt/Aditional_2TB/khaleel_new/yocto/iMX8MM/sources/poky/meta/recipes-core/images/core-image-minimal-initramfs.bb:do_image_complete (dependent Tasks ['core-image-minimal-initramfs.bb:do_image', 'core-image-minimal-initramfs.bb:do_image_tar', 'core-image-minimal-initramfs.bb:do_image_create_sdcard_symlink', 'core-image-minimal-initramfs.bb:do_image_wic'])

Dependency loop #2 found: Task /mnt/Aditional_2TB/khaleel_new/yocto/iMX8MM/sources/poky/../meta-phytec/recipes-kernel/linux/linux-imx_4.19.35_1.1.0-phy4.bb:do_bundle_initramfs (dependent Tasks ['linux-imx_4.19.35_1.1.0-phy4.bb:do_install', 'core-image-minimal-initramfs.bb:do_image_complete']) Task /mnt/Aditional_2TB/khaleel_new/yocto/iMX8MM/sources/poky/../meta-phytec/recipes-kernel/linux/linux-imx_4.19.35_1.1.0-phy4.bb:do_deploy (dependent Tasks ['linux-imx_4.19.35_1.1.0-phy4.bb:do_packagedata', 'linux-imx_4.19.35_1.1.0-phy4.bb:do_populate_sysroot', 'linux-imx_4.19.35_1.1.0-phy4.bb:do_bundle_initramfs', 'depmodwrapper-cross_1.0.bb:do_populate_sysroot']) Task /mnt/Aditional_2TB/khaleel_new/yocto/iMX8MM/sources/poky/meta/recipes-core/images/core-image-minimal-initramfs.bb:do_image_wic (dependent Tasks ['core-image-minimal-initramfs.bb:do_rootfs_wicenv', 'core-image-minimal-initramfs.bb:do_image', 'linux-imx_4.19.35_1.1.0-phy4.bb:do_deploy', 'imx-boot-phytec_0.2.bb:do_deploy', 'u-boot-imx_2019.04_1.1.0-phy5.bb:do_deploy', 'gptfdisk_1.0.4.bb:do_populate_sysroot', 'dosfstools_4.1.bb:do_populate_sysroot', 'firmware-imx-8m_8.5.bb:do_deploy', 'parted_3.2.bb:do_populate_sysroot', 'mtools_4.0.19.bb:do_populate_sysroot', 'imx-atf_2.0.bb:do_deploy']) Task /mnt/Aditional_2TB/khaleel_new/yocto/iMX8MM/sources/poky/meta/recipes-core/images/core-image-minimal-initramfs.bb:do_image_create_sdcard_symlink (dependent Tasks ['core-image-minimal-initramfs.bb:do_image_wic']) Task /mnt/Aditional_2TB/khaleel_new/yocto/iMX8MM/sources/poky/meta/recipes-core/images/core-image-minimal-initramfs.bb:do_image_complete (dependent Tasks ['core-image-minimal-initramfs.bb:do_image', 'core-image-minimal-initramfs.bb:do_image_tar', 'core-image-minimal-initramfs.bb:do_image_create_sdcard_symlink', 'core-image-minimal-initramfs.bb:do_image_wic'])

ERROR: Command execution failed: 1

------------------------------------------------------


--

Thanks and Regards

Poornesh G


Re: Quectel EG25-G LTE modem

Zoltan Kerenyi Nagy
 

Thanks,

I managed to compile it in the meantime with this recipe:

DESCRIPTION = "Quectel-CM"

SECTION = "quectel"

LICENSE="CLOSED"


SRC_URI = "file://files/* "

TARGET_CC_ARCH += "${LDFLAGS}"


do_compile() {
         oe_runmake
}

do_install() {
    oe_runmake install 'DESTDIR=${D}'

}
--
Zolee


Re: Quectel EG25-G LTE modem

Herman van Hazendonk (Herrie)
 

Hi Zolee,

You might want to have a look at our LuneOS meta-smartphone layer where one of our devs added the modem support for the modem of the PinePhone which seems to be the same one:

https://github.com/shr-distribution/meta-smartphone/tree/gatesgarth/meta-qualcomm-modems

Best regards,
Herman



On 2021-03-24 10:41, Zoltan Kerenyi Nagy wrote:

Hi,

I'm trying to make a recipie for a quectel-cm driver. I created a folder for it and put all the source files into a file folder.
This would be the first time that I'm making a recipie for multiple files with a Makefile. In the manuals there is only an example for a singe helloworld.c file, which is easy.
I tried with devtool to add a recipe but it's just skeleton.

Could you help me to to create a good recipe file for this quectel driver please?

Here are the sources:

--
Zolee





Quectel EG25-G LTE modem

Zoltan Kerenyi Nagy
 

Hi,

I'm trying to make a recipie for a quectel-cm driver. I created a folder for it and put all the source files into a file folder.
This would be the first time that I'm making a recipie for multiple files with a Makefile. In the manuals there is only an example for a singe helloworld.c file, which is easy.
I tried with devtool to add a recipe but it's just skeleton.

Could you help me to to create a good recipe file for this quectel driver please?

Here are the sources:

--
Zolee


Re: [qa-build-notification] QA notification for completed autobuilder build (yocto-3.3_M3.rc2)

Sangeeta Jain
 

Hi all,

Intel and WR YP QA is planning for QA execution for YP build yocto-3.3_M3.rc2. We are planning to execute following tests for this cycle:

OEQA-manual tests for following module:
1. OE-Core
2. BSP-hw

Runtime auto test for following platforms:
1. MinnowTurbot 32-bit
2. Coffee Lake
3. NUC 7
4. NUC 6
5. Edgerouter
6. Beaglebone

ETA for completion is next Friday, March 26.

Thanks,
Sangeeta

-----Original Message-----
From: qa-build-notification@... <qa-build-
notification@...> On Behalf Of Pokybuild User
Sent: Wednesday, 24 March, 2021 12:01 PM
To: yocto@...
Cc: qa-build-notification@...
Subject: [qa-build-notification] QA notification for completed autobuilder build
(yocto-3.3_M3.rc2)


A build flagged for QA (yocto-3.3_M3.rc2) was completed on the autobuilder
and is available at:


https://autobuilder.yocto.io/pub/releases/yocto-3.3_M3.rc2


Build hash information:

bitbake: ed8e1fd4cf9d5ac8a8203638add99d686b4b3521
meta-arm: ac1dc0b894642101a80235a920bdc3bbe6d74558
meta-gplv2: 9e119f333cc8f53bd3cf64326f826dbc6ce3db0f
meta-intel: 6fea44c695730129df8bd744b0e22ccd62a725c2
meta-kernel: 29329d7cacc71595cecfdd05a455a0cfb164564d
meta-mingw: 422b96cb2b6116442be1f40dfb5bd77447d1219e
oecore: 7ae12e4278e98c5b916a1067ae0b48c2da6e82cd
poky: ea455ca8671d3bc2a1097989bfaabe92f3ca37ab



This is an automated message from the Yocto Project Autobuilder
Git: git://git.yoctoproject.org/yocto-autobuilder2
Email: richard.purdie@...







QA notification for completed autobuilder build (yocto-3.3_M3.rc2)

Pokybuild User <pokybuild@...>
 

A build flagged for QA (yocto-3.3_M3.rc2) was completed on the autobuilder and is available at:


https://autobuilder.yocto.io/pub/releases/yocto-3.3_M3.rc2


Build hash information:

bitbake: ed8e1fd4cf9d5ac8a8203638add99d686b4b3521
meta-arm: ac1dc0b894642101a80235a920bdc3bbe6d74558
meta-gplv2: 9e119f333cc8f53bd3cf64326f826dbc6ce3db0f
meta-intel: 6fea44c695730129df8bd744b0e22ccd62a725c2
meta-kernel: 29329d7cacc71595cecfdd05a455a0cfb164564d
meta-mingw: 422b96cb2b6116442be1f40dfb5bd77447d1219e
oecore: 7ae12e4278e98c5b916a1067ae0b48c2da6e82cd
poky: ea455ca8671d3bc2a1097989bfaabe92f3ca37ab



This is an automated message from the Yocto Project Autobuilder
Git: git://git.yoctoproject.org/yocto-autobuilder2
Email: richard.purdie@...


Re: [meta-rockchip] defconfig alternatives

Trevor Woerner
 

On Tue 2021-03-23 @ 12:59:24 PM, Yann Dirson wrote:
Hi Trevor,

Le lun. 22 mars 2021 à 16:50, Trevor Woerner <twoerner@...> a écrit :
BTW, I'm also unclear on what to do next to better support those
boards: with the default
kernel config only a subset of the hardware is supported, and for
state-of-the-art hw
support we'll also need patches not yet in upstream kernel (from eg.
armbian and libreelec).

I feel it would be good to provide defconfig files for those machines,
but then there are
several options to handle that. Would a minimal hw-focused defconfig
suitable for
`KCONFIG_MODE = "--allnoconfig"` be a good option ?
I feel exactly the same way.

By default all arm64 kernels are configured with the one, in-kernel, generic
arm64 defconfig. That gives me a kernel that is over 11MB in size, and
includes all sorts of useless drivers.

I've been working off-and-on on a mechanism for meta-rockchip that would allow
users to decide between the default in-kernel arm64 defconfig (which would
be selected by doing nothing) or using a leaner defconfig that I have been
tweaking specifically for each board. Currently I only have a lean defconfig
for rock-pi-4b, but it was my hope to generate defconfigs for all supported
boards.

Ideally I had wanted to leverage the linux-yocto kmeta mechanism to generate
defconfigs dynamically based on the specific machine and specific user
preferences, but that didn't go as smoothly as I was hoping, then I got
distracted by other things.

I had created a spreadsheet with a comparison between the various boards that
would have been a basis for the individual kmeta pieces. Maybe I'll find some
more time to poke at it later this week. I could also push my WIP stuff to
somewhere if you'd like to take a look.

In any case, my point is, I'm very interested in something better than what
currently exists :-)
On my side I have a minimal defconfig for our own board, which is very similar
to the nanopi-m4, which could be used as a starting point for the latter.


One thing that I'd like to keep clear in meta-rockchip is to always allow the
user to choose between upstream and "extras". My feeling is: the simplest
build, if the user does nothing explicit, will always pull from pure upstream
with no out-of-tree patches or vendor pieces. But I'm not opposed to having
a mechanism whereby if the user does something explicit, they can choose to
use a vendor tree or make use of out-of-tree patches for various things.
One possibility would be using a KERNEL_CONFIG_VARIANT variable, whose
values would select consistent sets of KBUILD_DEFCONFIG + KCONFIG_MODE
+ SRC_URI_append. Standard variants could include "mainline" as the
default, and
maybe "customhw" which would bring just the hw features for the board
in allnoconfig
mode.

Or maybe we could try to fit such a selection mechanism in the PACKAGECONFIG
system, but I'm not sure it would really fit.
The above (if I'm reading it correctly) sounds quite similar to something I
had already started a while back. So I'll go ahead and publish this
work-in-progress. Maybe if I'm lucky it might spark some conversation with
other BSP maintainers.

https://github.com/twoerner/meta-rockchip__twoerner/tree/rockchip-kernel-config-WIP

Here is the text I've added to the README, which I think helps clarify some of
my points:

Kernel configuration:
--------------------
When it comes to configuring the kernel, allow the user to choose between:
1. using the in-kernel defconfig
2. using an in-layer defconfig + config fragments

The in-kernel defconfig is a very generic configuration meant to build a
kernel that could (theoretically) be run on a wide variety of devices of
the same architecture. I.e. a kernel built for one aarch64 machine (e.g.
the Qualcomm-based DragonBoard 410c) could be used without modification on
a completely different aarch64 machine (e.g. an Amlogic-based Odroid-C4). As
you can imagine, the in-kernel configuration generates a very large kernel.
Currently the in-kernel defconfig produces a kernel that is roughly 12MB.

The in-layer defconfig + config fragments is meant to trim down the kernel
configuration to remove all the hardware settings that aren't relevant to the
specific MACHINE being built. I.e. a kernel built for the rock-pi-4b wouldn't
include, for example, Qualcomm-specific drivers or code.

Currently, option #2 is only available for the following MACHINE(s):
- rock-pi-4b

The user indicates their intent via the RK_KERNEL_CONFIG_TYPE variable. If
the user does nothing, the default behaviour is to use the in-kernel
defconfig. If the user sets
RK_KERNEL_CONFIG_TYPE = "inlayer"
then the in-layer defconfig + config fragments will be used.

At this point I don't have everything that I'm wishing for. I had started to
try to add everything that I've wanted, but it wasn't working, so I pulled
back and only committed the parts that I was able to get working.

Right now the user can toggle between the generic in-kernel defconfig, or a
leaner defconfig that I've defined by playing with the RK_KERNEL_CONFIG_TYPE
variable (in local.conf, for example). Right now I've only done that for the
rock-pi-4b, but ideally I'd add others as time goes on.

I think it'll always be good to allow users to choose between the in-kernel
defconfig and something custom. We'll always want to be able to say "does it
work with the in-kernel defconfig?".

But better yet, instead of one big monolithic defconfig per board, ideally the
meta-rockchip BSP layer would contain a whole bunch of little kernel config
fragments for turning on just one thing. For example, there would be a kernel
config fragment for turning on basic Rockchip support, another one to enable
the RK808 pmic, and another one for the RK805 pmic. Others config fragments
would enable various ethernet options, wifi, bluetooth, etc. One would enable
the ES8388 audio codec (found on the rock2-square) and another would enable
just the ES8316 audio codec (the one found on the rock-pi-4).

Then, various parts on the configuration would enable the relevant kernel
config fragments. Simply selecting, for example, rock-pi-e, would include
the include/rk3328.inc, which would pull in basic rockchip/rk3328 support
and some other default things. The rock-pi-e.conf would pull in the correct
networking/bt options, and select the RK805 pmic. Eventually all the little
fragments would be pulled in that would be necessary to generate the whole
defconfig for this board.

That's the dream, anyway :-/

Technically, this information could be gleaned from the device tree for this
board… :-S

Then we'll need to take a look at all the DT overlays to see how to
incorporate them as well. Most of these boards have the "Raspberry Pi" 40-pin
interface, so users will expect to be able to reconfigure the pins for the
various alternate devices.


Re: [error-report-web] [PATCH] Post/parser: Use bleach to sanitse XSS input

Yi Fan Yu
 

On 3/22/21 1:56 PM, Richard Purdie wrote:
[Please note: This e-mail is from an EXTERNAL e-mail address]
Instead of searching for "<", use bleach to sanity input to avoid
any XSS issues.
Signed-off-by: Richard Purdie <richard.purdie@...>
---
Post/parser.py | 26 +++++++++-----------------
1 file changed, 9 insertions(+), 17 deletions(-)
diff --git a/Post/parser.py b/Post/parser.py
index f411e02..536e872 100644
--- a/Post/parser.py
+++ b/Post/parser.py
@@ -9,6 +9,7 @@
# Licensed under the MIT license, see COPYING.MIT for details
import json, re
+import bleach
would need to add that to `requirements.txt`
i tested it quickly and it gave me bleach not found

from Post.models import Build, BuildFailure, ErrorType
from django.conf import settings
from django.utils import timezone
@@ -19,21 +20,6 @@ class Parser:
def __init__(self, data):
self.data = data.decode('utf-8')
- # returns true if the values contain '<' char
- # Ignore the failures field (which is an array anyway)
- # Ignore any non-str fields too [YOCTO #14208]
- def contains_tags (self, data):
- for key,val in data.items():
- if key == 'failures':
- continue
-
- if not isinstance(val, str):
- continue
-
- if '<' in val:
- return True
- return False
-
def parse(self, request):
build_fails_logged = []
@@ -42,8 +28,14 @@ class Parser:
except:
return { 'error' : 'Invalid json' }
- if self.contains_tags(jsondata) == True:
- return { 'error' : 'Invalid characters in json' }
+ # Bleach data going directly into the database so that
+ # displaying in any of the graphing doesn't introduce XSS
+ for key,val in jsondata.items():
+ if key == 'failures':
+ continue
+ if not isinstance(val, str):
+ continue
+ jsondata[key] = bleach.clean(val)
would it make more sense to bleach/sanitize the raw data before it got parsed into a json object so even 'failures' wouldn't contain any injection

b = Build.objects.create()
try:
--
2.30.2


[ptest-runner][PATCH 1/2] Add support to specify timeout by ptest

Anibal Limon
 

The ptest-runner has a default timeout of 300 secs and can be override
usint -t option in the runner.

There is a need to specify timeout by ptest because not all ptests takes
the sametime also are affected by machine. So add support to read a file
inside ptest folder (timeout-ptest) and override global timeout with it.

For example in glib-2.0,

/usr/lib/glib-2.0/ptest/run-ptest
/usr/lib/glib-2.0/ptest/timeout-ptest

Signed-off-by: Aníbal Limón <anibal.limon@...>
---
main.c | 2 +-
ptest_list.c | 3 ++-
ptest_list.h | 3 ++-
utils.c | 69 +++++++++++++++++++++++++++++++++++++---------------
utils.h | 2 +-
5 files changed, 55 insertions(+), 24 deletions(-)

diff --git a/main.c b/main.c
index e3a1b69..467548e 100644
--- a/main.c
+++ b/main.c
@@ -158,7 +158,7 @@ main(int argc, char *argv[])
for (i = 0; i < opts.dirs_no; i ++) {
struct ptest_list *tmp;

- tmp = get_available_ptests(opts.dirs[i]);
+ tmp = get_available_ptests(opts.dirs[i], opts.timeout);
if (tmp == NULL) {
fprintf(stderr, PRINT_PTESTS_NOT_FOUND_DIR, opts.dirs[i]);
continue;
diff --git a/ptest_list.c b/ptest_list.c
index 917ef4f..b689670 100644
--- a/ptest_list.c
+++ b/ptest_list.c
@@ -166,7 +166,7 @@ ptest_list_search_by_file(struct ptest_list *head, char *run_ptest, struct stat
}

struct ptest_list *
-ptest_list_add(struct ptest_list *head, char *ptest, char *run_ptest)
+ptest_list_add(struct ptest_list *head, char *ptest, char *run_ptest, int timeout)
{
struct ptest_list *n, *p;

@@ -179,6 +179,7 @@ ptest_list_add(struct ptest_list *head, char *ptest, char *run_ptest)

n->ptest = ptest;
n->run_ptest = run_ptest;
+ n->timeout = timeout;

n->prev = NULL;
n->next = NULL;
diff --git a/ptest_list.h b/ptest_list.h
index 02a64bb..e583d9f 100644
--- a/ptest_list.h
+++ b/ptest_list.h
@@ -50,6 +50,7 @@
struct ptest_list {
char *ptest;
char *run_ptest;
+ int timeout;

struct ptest_list *next;
struct ptest_list *prev;
@@ -62,7 +63,7 @@ extern int ptest_list_free_all(struct ptest_list *);
extern int ptest_list_length(struct ptest_list *);
extern struct ptest_list *ptest_list_search(struct ptest_list *, char *);
extern struct ptest_list *ptest_list_search_by_file(struct ptest_list *, char *, struct stat);
-extern struct ptest_list *ptest_list_add(struct ptest_list *, char *, char *);
+extern struct ptest_list *ptest_list_add(struct ptest_list *, char *, char *, int);
extern struct ptest_list *ptest_list_remove(struct ptest_list *, char *, int);
extern struct ptest_list *ptest_list_extend(struct ptest_list *, struct ptest_list *);

diff --git a/utils.c b/utils.c
index 1a3c90f..424115f 100644
--- a/utils.c
+++ b/utils.c
@@ -84,9 +84,30 @@ check_allocation1(void *p, size_t size, char *file, int line, int exit_on_null)
}
}

+static inline char *
+get_ptest_file(char **ptest_file, struct stat *st_buf, const char *main_dir,
+ const char *ptest_dir, const char *file_name)
+{
+ if (asprintf(ptest_file, "%s/%s/ptest/%s",
+ main_dir, ptest_dir, file_name) == -1) {
+ return NULL;
+ }
+
+ if (stat(*ptest_file, st_buf) == -1) {
+ free(*ptest_file);
+ return NULL;
+ }
+
+ if (!S_ISREG(st_buf->st_mode)) {
+ free(*ptest_file);
+ return NULL;
+ }
+
+ return *ptest_file;
+}

struct ptest_list *
-get_available_ptests(const char *dir)
+get_available_ptests(const char *dir, int global_timeout)
{
struct ptest_list *head;
struct stat st_buf;
@@ -123,10 +144,11 @@ get_available_ptests(const char *dir)
break;
}

-
fail = 0;
for (i = 0; i < n; i++) {
char *run_ptest;
+ char *timeout_ptest;
+ int timeout;

char *d_name = strdup(namelist[i]->d_name);
CHECK_ALLOCATION(d_name, sizeof(namelist[i]->d_name), 0);
@@ -142,34 +164,38 @@ get_available_ptests(const char *dir)
continue;
}

- if (asprintf(&run_ptest, "%s/%s/ptest/run-ptest",
- realdir, d_name) == -1) {
- fail = 1;
+ if (get_ptest_file(&run_ptest, &st_buf, realdir, d_name, "run-ptest") == NULL) {
saved_errno = errno;
free(d_name);
- break;
- }
-
- if (stat(run_ptest, &st_buf) == -1) {
- free(run_ptest);
- free(d_name);
continue;
}

- if (!S_ISREG(st_buf.st_mode)) {
+ if (ptest_list_search_by_file(head, run_ptest, st_buf)) {
free(run_ptest);
free(d_name);
continue;
}

- if (ptest_list_search_by_file(head, run_ptest, st_buf)) {
- free(run_ptest);
- free(d_name);
- continue;
+ timeout = global_timeout;
+ if (get_ptest_file(&timeout_ptest, &st_buf, realdir, d_name, "timeout-ptest")) {
+ FILE *f = fopen(timeout_ptest, "r");
+
+ if (f == NULL) {
+ fail = 1;
+ saved_errno = errno;
+ free(run_ptest);
+ free(d_name);
+ free(timeout_ptest);
+ break;
+ }
+ fscanf(f, "%d", &timeout);
+ fclose(f);
+
+ free(timeout_ptest);
}

struct ptest_list *p = ptest_list_add(head,
- d_name, run_ptest);
+ d_name, run_ptest, timeout);
CHECK_ALLOCATION(p, sizeof(struct ptest_list *), 0);
if (p == NULL) {
fail = 1;
@@ -229,6 +255,7 @@ filter_ptests(struct ptest_list *head, char **ptests, int ptest_num)
for (i = 0; i < ptest_num; i++) {
char *ptest;
char *run_ptest;
+ int timeout;

n = ptest_list_search(head, ptests[i]);
if (n == NULL) {
@@ -239,13 +266,14 @@ filter_ptests(struct ptest_list *head, char **ptests, int ptest_num)

ptest = strdup(n->ptest);
run_ptest = strdup(n->run_ptest);
+ timeout = n->timeout;
if (ptest == NULL || run_ptest == NULL) {
saved_errno = errno;
fail = 1;
break;
}

- if (ptest_list_add(head_new, ptest, run_ptest) == NULL) {
+ if (ptest_list_add(head_new, ptest, run_ptest, timeout) == NULL) {
saved_errno = errno;
fail = 1;
break;
@@ -509,8 +537,7 @@ run_ptests(struct ptest_list *head, const struct ptest_options opts,
fprintf(fp, "%s\n", get_stime(stime, GET_STIME_BUF_SIZE, sttime));
fprintf(fp, "BEGIN: %s\n", ptest_dir);

-
- status = wait_child(child, opts.timeout);
+ status = wait_child(child, p->timeout);

entime = time(NULL);
duration = entime - sttime;
@@ -528,6 +555,8 @@ run_ptests(struct ptest_list *head, const struct ptest_options opts,

fprintf(fp, "END: %s\n", ptest_dir);
fprintf(fp, "%s\n", get_stime(stime, GET_STIME_BUF_SIZE, entime));
+
+ free(ptest_dir);
}
PTEST_LIST_ITERATE_END
fprintf(fp, "STOP: %s\n", progname);
diff --git a/utils.h b/utils.h
index 39832e6..69940d0 100644
--- a/utils.h
+++ b/utils.h
@@ -45,7 +45,7 @@ struct ptest_options {


extern void check_allocation1(void *, size_t, char *, int, int);
-extern struct ptest_list *get_available_ptests(const char *);
+extern struct ptest_list *get_available_ptests(const char *, int);
extern int print_ptests(struct ptest_list *, FILE *);
extern struct ptest_list *filter_ptests(struct ptest_list *, char **, int);
extern int run_ptests(struct ptest_list *, const struct ptest_options,
--
2.31.0


[ptest-runner][PATCH 2/2] tests: Update to cover ptest timeout by file

Anibal Limon
 

Signed-off-by: Aníbal Limón <anibal.limon@...>
---
tests/ptest_list.c | 10 +++++-----
tests/utils.c | 14 +++++++-------
2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/tests/ptest_list.c b/tests/ptest_list.c
index 081f027..37d19ae 100644
--- a/tests/ptest_list.c
+++ b/tests/ptest_list.c
@@ -52,7 +52,7 @@ END_TEST
START_TEST(test_add)
{
struct ptest_list *head = ptest_list_alloc();
- ck_assert(ptest_list_add(head, strdup("perl"), NULL) != NULL);
+ ck_assert(ptest_list_add(head, strdup("perl"), NULL, 1) != NULL);
ptest_list_free_all(head);
}
END_TEST
@@ -67,7 +67,7 @@ START_TEST(test_free_all)

head = ptest_list_alloc();
for (i = 0; i < ptests_num; i++)
- ptest_list_add(head, strdup(ptest_names[i]), NULL);
+ ptest_list_add(head, strdup(ptest_names[i]), NULL, 1);

ptest_list_free_all(head);
}
@@ -84,7 +84,7 @@ START_TEST(test_length)

head = ptest_list_alloc();
for (i = 0; i < ptests_num; i++)
- ptest_list_add(head, strdup(ptest_names[i]), NULL);
+ ptest_list_add(head, strdup(ptest_names[i]), NULL, 1);

ck_assert_int_eq(ptest_list_length(head), ptests_num);
ptest_list_free_all(head);
@@ -103,7 +103,7 @@ START_TEST(test_search)
head = ptest_list_alloc();
for (i = 0; i < ptests_num; i++) {
ptest = strdup(ptest_names[i]);
- ptest_list_add(head, ptest, NULL);
+ ptest_list_add(head, ptest, NULL, 1);
}

for (i = ptests_num - 1; i >= 0; i--)
@@ -122,7 +122,7 @@ START_TEST(test_remove)

for (i = 0; i < ptests_num; i++) {
ptest = strdup(ptest_names[i]);
- ptest_list_add(head, ptest, NULL);
+ ptest_list_add(head, ptest, NULL, 1);
}

/* Remove node free'ing */
diff --git a/tests/utils.c b/tests/utils.c
index 105e0c8..8df1b54 100644
--- a/tests/utils.c
+++ b/tests/utils.c
@@ -78,7 +78,7 @@ static void test_ptest_expected_failure(struct ptest_list *, const int, char *,

START_TEST(test_get_available_ptests)
{
- struct ptest_list *head = get_available_ptests(opts_directory);
+ struct ptest_list *head = get_available_ptests(opts_directory, 1);
int i;

ck_assert(ptest_list_length(head) == ptests_found_length);
@@ -121,7 +121,7 @@ START_TEST(test_print_ptests)
ck_assert(line != NULL);
ck_assert(strcmp(line, PRINT_PTESTS_NOT_FOUND) == 0);

- head = get_available_ptests(opts_directory);
+ head = get_available_ptests(opts_directory, 1);
ck_assert(print_ptests(head, fp) == 0);
ptest_list_free_all(head);
line = fgets(line_buf, PRINT_PTEST_BUF_SIZE, fp);
@@ -143,7 +143,7 @@ END_TEST

START_TEST(test_filter_ptests)
{
- struct ptest_list *head = get_available_ptests(opts_directory);
+ struct ptest_list *head = get_available_ptests(opts_directory, 1);
struct ptest_list *head_new;
char *ptest_not_exists[] = {
"glib",
@@ -185,7 +185,7 @@ START_TEST(test_run_ptests)
fp_stderr = open_memstream(&buf_stderr, &size_stderr);
ck_assert(fp_stderr != NULL);

- head = get_available_ptests(opts_directory);
+ head = get_available_ptests(opts_directory, 1);
ptest_list_remove(head, "hang", 1);
ptest_list_remove(head, "fail", 1);

@@ -222,8 +222,8 @@ search_for_timeout_and_duration(const int rp, FILE *fp_stdout)

START_TEST(test_run_timeout_duration_ptest)
{
- struct ptest_list *head = get_available_ptests(opts_directory);
- int timeout = 1;
+ int timeout = 20;
+ struct ptest_list *head = get_available_ptests(opts_directory, timeout);

test_ptest_expected_failure(head, timeout, "hang", search_for_timeout_and_duration);

@@ -250,8 +250,8 @@ search_for_fail(const int rp, FILE *fp_stdout)

START_TEST(test_run_fail_ptest)
{
- struct ptest_list *head = get_available_ptests(opts_directory);
int timeout = 1;
+ struct ptest_list *head = get_available_ptests(opts_directory, timeout);

test_ptest_expected_failure(head, timeout, "fail", search_for_fail);

--
2.31.0


Re: Build wayland/weston from source?

Alexander Kanavin
 

Petalinux is a xilinx product? You need to ask xilinx to support you.

Alex


On Tue, 23 Mar 2021 at 17:34, Haase, Juergen [ext] <juergen.haase.ext@...> wrote:
Hi. I'm probably not exactly on topic in the yocto mailing list, but thought maybe someone can point me into the right direction.

What I want to do:
I've made a modification to weston and am planning to do some more, so I would like to integrate this modified version of wayland/weston into my Petalinux 2019.1 config (have to use that version).
At the moment my wayland branch is based on v9.0.0.

What I've tried so far (please do tell me if I'm doing something totally stupid):
Unfortunately I don't have very good understanding about petalinux/yocto, I tried to start with the following steps:

I began with trying to integrate the wayland recipes from openembedded:

I copied this folder over into my petalinux recipes folder and ran

    $ petalinux-build -c wayland
    [INFO] building wayland
    [INFO] sourcing bitbake
    [INFO] generating user layers
    INFO: bitbake wayland
    Loading cache: 100% |############################################################| Time: 0:00:00
    Loaded 3826 entries from dependency cache.
    ERROR: ParseError at <my_petalinuxroot>/project-spec/meta-user/recipes-apps/wayland/weston_9.0.0.bb:22: Could not inherit file classes/features_check.bbclass
  
    Summary: There was 1 ERROR message shown, returning a non-zero exit code.
    ERROR: Failed to build wayland

I searched through my Petalinux project and didn't find any other *.bbclass files, so I don't know where this could be put if I copied it over from openembedded.
So I grepped for this and found:

    $ rg features_check
    22:inherit meson pkgconfig useradd features_check
 
    65:inherit update-rc.d features_check systemd useradd

Since it wasn't obvious to me if the inclusion of this even does anything, I removed it and ran the build again:

    $ petalinux-build -c wayland
    [INFO] building wayland
    [INFO] sourcing bitbake
    [INFO] generating user layers
    INFO: bitbake wayland
    Loading cache: 100% |############################################################| Time: 0:00:00
    Loaded 3826 entries from dependency cache.
    Parsing recipes: 100% |##########################################################| Time: 0:00:02
    Parsing of 2799 .bb files complete (2791 cached, 8 parsed). 3836 targets, 162 skipped, 0 masked, 0 errors.
    NOTE: Resolving any missing task queue dependencies
    Initialising tasks: 100% |#######################################################| Time: 0:00:00
    Checking sstate mirror object availability: 100% |###############################| Time: 0:00:03
    Sstate summary: Wanted 62 Found 18 Missed 88 Current 320 (29% match, 88% complete)
    NOTE: Executing SetScene Tasks
    NOTE: Executing RunQueue Tasks
    ERROR: wayland-native-1.19.0-r0 do_configure: meson failed
    ERROR: wayland-native-1.19.0-r0 do_configure: Function failed: do_configure (log file is located at <my_petalinuxroot>/build/tmp/work/x86_64-linux/wayland-native/1.19.0-r0/temp/log.do_configure.8492)
    ERROR: Logfile of failure stored in: <my_petalinuxroot>/build/tmp/work/x86_64-linux/wayland-native/1.19.0-r0/temp/log.do_configure.8492
    Log data follows:
    | DEBUG: Executing shell function do_configure
    | NOTE: Executing meson -Ddocumentation=false -Dlibraries=false -Ddtd_validation=true...
    | The Meson build system
    | Version: 0.47.2
    | Source dir: <my_petalinuxroot>/build/tmp/work/x86_64-linux/wayland-native/1.19.0-r0/wayland-1.19.0
    | Build dir: <my_petalinuxroot>/build/tmp/work/x86_64-linux/wayland-native/1.19.0-r0/build
    | Build type: native build
    |
    | meson.build:1:0: ERROR:  Meson version is 0.47.2 but project requires >= 0.52.1.
    |
    | A full log can be found at <my_petalinuxroot>/build/tmp/work/x86_64-linux/wayland-native/1.19.0-r0/build/meson-logs/meson-log.txt
    | ERROR: meson failed
    | WARNING: <my_petalinuxroot>/build/tmp/work/x86_64-linux/wayland-native/1.19.0-r0/temp/run.do_configure.8492:1 exit 1 from 'exit 1'
    | ERROR: Function failed: do_configure (log file is located at <my_petalinuxroot>/build/tmp/work/x86_64-linux/wayland-native/1.19.0-r0/temp/log.do_configure.8492)
    ERROR: Task (virtual:native:<my_petalinuxroot>/project-spec/meta-user/recipes-apps/wayland/wayland_1.19.0.bb:do_configure) failed with exit code '1'
    NOTE: Tasks Summary: Attempted 1328 tasks of which 1314 didn't need to be rerun and 1 failed.
 
    Summary: 1 task failed:
      virtual:native:<my_petalinuxroot>/project-spec/meta-user/recipes-apps/wayland/wayland_1.19.0.bb:do_configure
    Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
    ERROR: Failed to build wayland

Ok, it seems I need a newer meson, so I copied this over too from openembedded and tried to build it:

    $ petalinux-build -c meson
    [INFO] building meson
    [INFO] sourcing bitbake
    [INFO] generating user layers
    INFO: bitbake meson
    Loading cache: 100% |############################################################| Time: 0:00:00
    Loaded 3835 entries from dependency cache.
    Parsing recipes: 100% |##########################################################| Time: 0:00:01
    Parsing of 2801 .bb files complete (2798 cached, 3 parsed). 3839 targets, 162 skipped, 0 masked, 0 errors.
    NOTE: Resolving any missing task queue dependencies
    ERROR: Nothing RPROVIDES 'python3-pkg-resources' (but <my_petalinuxroot>/project-spec/meta-user/recipes-apps/meson/meson_0.57.1.bb RDEPENDS on or otherwise requires it)
    NOTE: Runtime target 'python3-pkg-resources' is unbuildable, removing...
    Missing or unbuildable dependency chain was: ['python3-pkg-resources']
    ERROR: Required build target 'meson' has no buildable providers.
    Missing or unbuildable dependency chain was: ['meson', 'python3-pkg-resources']
 
    Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
    ERROR: Failed to build meson

And this is where I started to get stuck. Grepping the openembedded repo for 'python3-pkg-resources' didn't turn up anything. Googling it seeems to suggest it is part of python-setuptools.
So I tried to install python3-setuptools by copying it over again:

    $ petalinux-build -c python3-setuptools
    [INFO] building python3-setuptools
    [INFO] sourcing bitbake
    [INFO] generating user layers
    INFO: bitbake python3-setuptools
    Loading cache: 100% |############################################################| Time: 0:00:00
    Loaded 3838 entries from dependency cache.
    WARNING: <my_petalinuxroot>/project-spec/meta-user/recipes-apps/python3-setuptools/python3-setuptools_54.1.1.bb: Unable to get checksum for python3-setuptools-native SRC_URI entry 0001-conditionally-do-not-fetch-code-by-easy_install.patch: file could not be found
    Parsing recipes: 100% |##########################################################| Time: 0:00:01
    Parsing of 2802 .bb files complete (2800 cached, 2 parsed). 3842 targets, 162 skipped, 0 masked, 0 errors.
    NOTE: Resolving any missing task queue dependencies
    ERROR: Nothing RPROVIDES 'python3-pkg-resources-native' (but virtual:native:<my_petalinuxroot>/project-spec/meta-user/recipes-apps/python3-setuptools/python3-setuptools_54.1.1.bb RDEPENDS on or otherwise requires it)
    NOTE: Runtime target 'python3-pkg-resources-native' is unbuildable, removing...
    Missing or unbuildable dependency chain was: ['python3-pkg-resources-native']
    ERROR: Required build target 'python3-setuptools' has no buildable providers.
    Missing or unbuildable dependency chain was: ['python3-setuptools', 'python3-setuptools-native', 'python3-pkg-resources-native']
 
    Summary: There was 1 WARNING message shown.
    Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
    ERROR: Failed to build python3-setuptools

I couldn't find 'python3-setuptools-native' or 'python3-pkg-resources-native' in the openembedded repo, so here my journey is over for now.


Is this way I tried even the correct way to get wayland from source into my petalinux project? Or is there a better solution?

Any help would be really appreciated.

Rgeards,
Jürgen Haase





Build wayland/weston from source?

Haase, Juergen [ext]
 

Hi. I'm probably not exactly on topic in the yocto mailing list, but thought maybe someone can point me into the right direction.

What I want to do:
I've made a modification to weston and am planning to do some more, so I would like to integrate this modified version of wayland/weston into my Petalinux 2019.1 config (have to use that version).
At the moment my wayland branch is based on v9.0.0.

What I've tried so far (please do tell me if I'm doing something totally stupid):
Unfortunately I don't have very good understanding about petalinux/yocto, I tried to start with the following steps:

I began with trying to integrate the wayland recipes from openembedded:
http://cgit.openembedded.org/openembedded-core/tree/meta/recipes-graphics/wayland

I copied this folder over into my petalinux recipes folder and ran

    $ petalinux-build -c wayland
    [INFO] building wayland
    [INFO] sourcing bitbake
    [INFO] generating user layers
    INFO: bitbake wayland
    Loading cache: 100% |############################################################| Time: 0:00:00
    Loaded 3826 entries from dependency cache.
    ERROR: ParseError at <my_petalinuxroot>/project-spec/meta-user/recipes-apps/wayland/weston_9.0.0.bb:22: Could not inherit file classes/features_check.bbclass
  
    Summary: There was 1 ERROR message shown, returning a non-zero exit code.
    ERROR: Failed to build wayland

I searched through my Petalinux project and didn't find any other *.bbclass files, so I don't know where this could be put if I copied it over from openembedded.
So I grepped for this and found:

    $ rg features_check
    weston_9.0.0.bb
    22:inherit meson pkgconfig useradd features_check
 
    weston-init.bb
    65:inherit update-rc.d features_check systemd useradd

Since it wasn't obvious to me if the inclusion of this even does anything, I removed it and ran the build again:

    $ petalinux-build -c wayland
    [INFO] building wayland
    [INFO] sourcing bitbake
    [INFO] generating user layers
    INFO: bitbake wayland
    Loading cache: 100% |############################################################| Time: 0:00:00
    Loaded 3826 entries from dependency cache.
    Parsing recipes: 100% |##########################################################| Time: 0:00:02
    Parsing of 2799 .bb files complete (2791 cached, 8 parsed). 3836 targets, 162 skipped, 0 masked, 0 errors.
    NOTE: Resolving any missing task queue dependencies
    Initialising tasks: 100% |#######################################################| Time: 0:00:00
    Checking sstate mirror object availability: 100% |###############################| Time: 0:00:03
    Sstate summary: Wanted 62 Found 18 Missed 88 Current 320 (29% match, 88% complete)
    NOTE: Executing SetScene Tasks
    NOTE: Executing RunQueue Tasks
    ERROR: wayland-native-1.19.0-r0 do_configure: meson failed
    ERROR: wayland-native-1.19.0-r0 do_configure: Function failed: do_configure (log file is located at <my_petalinuxroot>/build/tmp/work/x86_64-linux/wayland-native/1.19.0-r0/temp/log.do_configure.8492)
    ERROR: Logfile of failure stored in: <my_petalinuxroot>/build/tmp/work/x86_64-linux/wayland-native/1.19.0-r0/temp/log.do_configure.8492
    Log data follows:
    | DEBUG: Executing shell function do_configure
    | NOTE: Executing meson -Ddocumentation=false -Dlibraries=false -Ddtd_validation=true...
    | The Meson build system
    | Version: 0.47.2
    | Source dir: <my_petalinuxroot>/build/tmp/work/x86_64-linux/wayland-native/1.19.0-r0/wayland-1.19.0
    | Build dir: <my_petalinuxroot>/build/tmp/work/x86_64-linux/wayland-native/1.19.0-r0/build
    | Build type: native build
    |
    | meson.build:1:0: ERROR:  Meson version is 0.47.2 but project requires >= 0.52.1.
    |
    | A full log can be found at <my_petalinuxroot>/build/tmp/work/x86_64-linux/wayland-native/1.19.0-r0/build/meson-logs/meson-log.txt
    | ERROR: meson failed
    | WARNING: <my_petalinuxroot>/build/tmp/work/x86_64-linux/wayland-native/1.19.0-r0/temp/run.do_configure.8492:1 exit 1 from 'exit 1'
    | ERROR: Function failed: do_configure (log file is located at <my_petalinuxroot>/build/tmp/work/x86_64-linux/wayland-native/1.19.0-r0/temp/log.do_configure.8492)
    ERROR: Task (virtual:native:<my_petalinuxroot>/project-spec/meta-user/recipes-apps/wayland/wayland_1.19.0.bb:do_configure) failed with exit code '1'
    NOTE: Tasks Summary: Attempted 1328 tasks of which 1314 didn't need to be rerun and 1 failed.
 
    Summary: 1 task failed:
      virtual:native:<my_petalinuxroot>/project-spec/meta-user/recipes-apps/wayland/wayland_1.19.0.bb:do_configure
    Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
    ERROR: Failed to build wayland

Ok, it seems I need a newer meson, so I copied this over too from openembedded and tried to build it:
http://cgit.openembedded.org/openembedded-core/tree/meta/recipes-devtools/meson

    $ petalinux-build -c meson
    [INFO] building meson
    [INFO] sourcing bitbake
    [INFO] generating user layers
    INFO: bitbake meson
    Loading cache: 100% |############################################################| Time: 0:00:00
    Loaded 3835 entries from dependency cache.
    Parsing recipes: 100% |##########################################################| Time: 0:00:01
    Parsing of 2801 .bb files complete (2798 cached, 3 parsed). 3839 targets, 162 skipped, 0 masked, 0 errors.
    NOTE: Resolving any missing task queue dependencies
    ERROR: Nothing RPROVIDES 'python3-pkg-resources' (but <my_petalinuxroot>/project-spec/meta-user/recipes-apps/meson/meson_0.57.1.bb RDEPENDS on or otherwise requires it)
    NOTE: Runtime target 'python3-pkg-resources' is unbuildable, removing...
    Missing or unbuildable dependency chain was: ['python3-pkg-resources']
    ERROR: Required build target 'meson' has no buildable providers.
    Missing or unbuildable dependency chain was: ['meson', 'python3-pkg-resources']
 
    Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
    ERROR: Failed to build meson

And this is where I started to get stuck. Grepping the openembedded repo for 'python3-pkg-resources' didn't turn up anything. Googling it seeems to suggest it is part of python-setuptools.
So I tried to install python3-setuptools by copying it over again:
http://cgit.openembedded.org/openembedded-core/tree/meta/recipes-devtools/python/python3-setuptools_54.1.1.bb

    $ petalinux-build -c python3-setuptools
    [INFO] building python3-setuptools
    [INFO] sourcing bitbake
    [INFO] generating user layers
    INFO: bitbake python3-setuptools
    Loading cache: 100% |############################################################| Time: 0:00:00
    Loaded 3838 entries from dependency cache.
    WARNING: <my_petalinuxroot>/project-spec/meta-user/recipes-apps/python3-setuptools/python3-setuptools_54.1.1.bb: Unable to get checksum for python3-setuptools-native SRC_URI entry 0001-conditionally-do-not-fetch-code-by-easy_install.patch: file could not be found
    Parsing recipes: 100% |##########################################################| Time: 0:00:01
    Parsing of 2802 .bb files complete (2800 cached, 2 parsed). 3842 targets, 162 skipped, 0 masked, 0 errors.
    NOTE: Resolving any missing task queue dependencies
    ERROR: Nothing RPROVIDES 'python3-pkg-resources-native' (but virtual:native:<my_petalinuxroot>/project-spec/meta-user/recipes-apps/python3-setuptools/python3-setuptools_54.1.1.bb RDEPENDS on or otherwise requires it)
    NOTE: Runtime target 'python3-pkg-resources-native' is unbuildable, removing...
    Missing or unbuildable dependency chain was: ['python3-pkg-resources-native']
    ERROR: Required build target 'python3-setuptools' has no buildable providers.
    Missing or unbuildable dependency chain was: ['python3-setuptools', 'python3-setuptools-native', 'python3-pkg-resources-native']
 
    Summary: There was 1 WARNING message shown.
    Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
    ERROR: Failed to build python3-setuptools

I couldn't find 'python3-setuptools-native' or 'python3-pkg-resources-native' in the openembedded repo, so here my journey is over for now.


Is this way I tried even the correct way to get wayland from source into my petalinux project? Or is there a better solution?

Any help would be really appreciated.

Rgeards,
Jürgen Haase


Yocto Project Status WW11`21

Stephen Jolley
 

Current Dev Position: YP 3.3 M4 (Feature Freeze)

Next Deadline: 5th April 2021 YP 3.3 M4 build

 

Next Team Meetings:

 

Key Status/Updates:

  • YP 3.3 M3 rc1 had an issue with the beaglebone reference platform. As such, we plan to build an rc2 when this has been fixed.
  • The release series name for core has been bumped to “hardknott” and the previous one, “gatesgarth” has now been removed. We do this so that layers being actively maintained can be clearly identified compared to those which are not. Layers will need to be updated to show compatibility with the 3.3 core.
  • We’ve taken a number of version upgrades and other changes as the benefits to taking them seem to outweigh the potential risk.
  • There is a pending change to remove ‘stale’ sstate task output before the main build starts in master-next. This has been testing for a while with no reports of issues and seems to perform well so will likely be included in M3 rc2.
  • “Pending” state patch review is still needed, we have some really old stale ones which really need decisions to be made about their future. It would help a lot if recipe maintainers could review recipe patchsets and upstream them or remove them if they are no longer relevant. 
  • Intermittent autobuilder issues continue to occur and are now at a record high level. You can see the list of failures we’re continuing to see by searching for the “AB-INT” tag in bugzilla: https://bugzilla.yoctoproject.org/buglist.cgi?quicksearch=AB-INT

We are working to identify the load pattern on the infrastructure that seems to trigger these.

 

Ways to contribute:

 

YP 3.3 Milestone Dates:

  • YP 3.3 M3 will go back to QA for rc2 soon.
  • YP 3.3 M4 build date 2021/04/05
  • YP 3.3 M4 Release date 2021/04/30

 

Planned upcoming dot releases:

  • YP 3.2.3 build date 2021/03/22
  • YP 3.2.3 release date 2021/04/02
  • YP 3.1.7 build date 2021/03/29
  • YP 3.1.7 release date 2021/04/09
  • YP 3.2.4 build date 2021/05/3
  • YP 3.2.4 release date 2021/05/14
  • YP 3.1.8 build date 2021/05/17
  • YP 3.1.8 release date 2021/05/28

 

Tracking Metrics:

 

The Yocto Project’s technical governance is through its Technical Steering Committee, more information is available at:

https://wiki.yoctoproject.org/wiki/TSC

 

The Status reports are now stored on the wiki at: https://wiki.yoctoproject.org/wiki/Weekly_Status

 

[If anyone has suggestions for other information you’d like to see on this weekly status update, let us know!]

 

Thanks,

 

Stephen K. Jolley

Yocto Project Program Manager

(    Cell:                (208) 244-4460

* Email:              sjolley.yp.pm@...

 


Re: [meta-rockchip][PATCH v3] NanoPi-M4: add machines

Trevor Woerner
 

Applied, thanks! :-)


Anecdotally, having the bmap file available has the following effect on
writing a core-image-base image to a µSD card:
without: 33s
with: 11s

4581 - 4600 of 57387