Re: [OE-core] [PATCH] selftest/multiconfig: Test that multiconfigs in separate layers works

2022-06-09 Thread Richard Purdie
Hi Jose,

On Thu, 2022-06-09 at 18:53 +0100, Jose Quaresma wrote:
> The same test using the same TMPDIR will be useful as there are some
> layers doing that.
> AFAIK the archiver and the rm_works don't like it very much.

Note that the same TMPDIR is only supported if you're only changing
MACHINE. If you're changing distro config, all bets are off and you
shouldn't be sharing TMPDIR.

I wish we had warning messages when users did that but we currently
don't. It should be possible to add but isn't straightforward.

> The OE-core rm_work bbclass doesn't like multiconfig with the same
> TMPDIR.
> This issue with the rm_works is because the native packages use the
> same directory and bitbake
> will run the native tasks twice, one for each machine. I need to
> exclude them to get a green build:
> RM_WORK_EXCLUDE:append = " texinfo-dummy-native gettext-minimal-
> native gnu-config"
> Another interesting detail is that these recipes that have the source
> dir in
> the working dir: $S == $WORKDIR

If they're building twice, the configuration is differing and they
probably shouldn't be sharing TMPDIR. If there is a configuration you
think should work I'd be interested in the two configs to see why it
builds twice.

Cheers,

Richard



-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166788): 
https://lists.openembedded.org/g/openembedded-core/message/166788
Mute This Topic: https://lists.openembedded.org/mt/91641952/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] selftest/multiconfig: Test that multiconfigs in separate layers works

2022-06-09 Thread Jose Quaresma
Hi Richard,

The same test using the same TMPDIR will be useful as there are some layers
doing that.
AFAIK the archiver and the rm_works don't like it very much.

The OE-core rm_work bbclass doesn't like multiconfig with the same TMPDIR.
This issue with the rm_works is because the native packages use the same
directory and bitbake
will run the native tasks twice, one for each machine. I need to
exclude them to get a green build:
RM_WORK_EXCLUDE:append = " texinfo-dummy-native gettext-minimal-native
gnu-config"
Another interesting detail is that these recipes that have the source dir in
the working dir: $S == $WORKDIR

Jose

Richard Purdie  escreveu no dia quinta,
9/06/2022 à(s) 10:42:

> We should test that mutliconfigs from a layer work, not just build/conf.
> This adds such a test.
>
> [YOCTO #13566]
>
> Signed-off-by: Richard Purdie 
> ---
>  meta-selftest/conf/multiconfig/muslmc.conf  |  2 ++
>  meta/lib/oeqa/selftest/cases/multiconfig.py | 13 +
>  2 files changed, 15 insertions(+)
>  create mode 100644 meta-selftest/conf/multiconfig/muslmc.conf
>
> diff --git a/meta-selftest/conf/multiconfig/muslmc.conf
> b/meta-selftest/conf/multiconfig/muslmc.conf
> new file mode 100644
> index 000..043cd1ccc3b
> --- /dev/null
> +++ b/meta-selftest/conf/multiconfig/muslmc.conf
> @@ -0,0 +1,2 @@
> +TCLIBC = "musl"
> +TMPDIR = "${TOPDIR}/tmp-mc-musl"
> diff --git a/meta/lib/oeqa/selftest/cases/multiconfig.py
> b/meta/lib/oeqa/selftest/cases/multiconfig.py
> index baae9b456f5..83cbd1345da 100644
> --- a/meta/lib/oeqa/selftest/cases/multiconfig.py
> +++ b/meta/lib/oeqa/selftest/cases/multiconfig.py
> @@ -70,3 +70,16 @@ TMPDIR = "${TOPDIR}/tmp-mc-tiny"
>
>  result = bitbake('mc:test:multiconfig-test-parse -c showvar')
>  self.assertIn('MCTESTVAR=test2', result.output.splitlines())
> +
> +def test_multiconfig_inlayer(self):
> +"""
> +Test that a multiconfig from meta-selftest works.
> +"""
> +
> +config = """
> +BBMULTICONFIG = "muslmc"
> +"""
> +self.write_config(config)
> +
> +# Build a core-image-minimal, only dry run needed to check config
> is present
> +bitbake('mc:muslmc:bash -n')
> --
> 2.34.1
>
>
> 
>
>

-- 
Best regards,

José Quaresma

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166787): 
https://lists.openembedded.org/g/openembedded-core/message/166787
Mute This Topic: https://lists.openembedded.org/mt/91641952/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH 18/21] perl: update 5.34.1 -> 5.36.0

2022-06-09 Thread Martin Jansa
I was reading
https://bugzilla.yoctoproject.org/show_bug.cgi?id=14096
https://bugzilla.yoctoproject.org/show_bug.cgi?id=13244
and your e-mail about the make issue in perl, but in my case it looks a bit
different I think.

It was with the make-native dependency, but happens only in
selftest test_ccache_tool:

2022-06-09 11:30:21,855 - oe-selftest - INFO - test_ccache_tool
(buildoptions.ImageOptionsTests.test_ccache_tool)
2022-06-09 12:53:41,855 - oe-selftest - INFO - Keepalive message
2022-06-09 14:17:01,856 - oe-selftest - INFO - Keepalive message
2022-06-09 15:40:21,856 - oe-selftest - INFO - Keepalive message
^^ was what triggered me to look where it got stuck.

I can build perl-native fine in my other oe-core nodistro build directory
and now I've built it ok also in regular poky build directory as in:
5f249a407f6 vim: put xxd in its own package

While the selftest was stuck I was checking where exactly it got stuck in
the WORKDIR and
oe_runmake -j 1 installman
'DESTDIR=/OE/build/poky/build-st/tmp/work/x86_64-linux/perl-native/5.36.0-r0/image'
install 2>&1 | tee installman.log
finished fine, while:
oe_runmake -j 2 installman
'DESTDIR=/OE/build/poky/build-st/tmp/work/x86_64-linux/perl-native/5.36.0-r0/image'
install 2>&1  | tee installman.log
was getting stuck:


Generating a Unix-style Makefile
Writing Makefile for Sys::Hostname
cd ext/XS-Typemap/ && ../../miniperl_top -I../../lib Makefile.PL \
 INSTALLDIRS=perl INSTALLMAN1DIR=none INSTALLMAN3DIR=none \
 PERL_CORE=1 LIBPERL_A=libperl.so.5.36.0 PERL="../../miniperl_top"
Generating a Unix-style Makefile
Writing Makefile for XS::APItest
Generating a Unix-style Makefile
Writing Makefile for XS::Typemap

With -n, it looks like it got stuck just before building buildtoc:


cd ext/XS-APItest/ && ../../miniperl_top -I../../lib Makefile.PL \
 INSTALLDIRS=perl INSTALLMAN1DIR=none INSTALLMAN3DIR=none \
 PERL_CORE=1 LIBPERL_A=libperl.so.5.36.0 PERL="../../miniperl_top"
cd ext/XS-Typemap/ && ../../miniperl_top -I../../lib Makefile.PL \
 INSTALLDIRS=perl INSTALLMAN1DIR=none INSTALLMAN3DIR=none \
 PERL_CORE=1 LIBPERL_A=libperl.so.5.36.0 PERL="../../miniperl_top"
./miniperl_top -f pod/buildtoc -q
./miniperl_top installman
--destdir=/OE/build/poky/build-st/tmp/work/x86_64-linux/perl-native/5.36.0-r0/image

make[1]: Leaving directory
'/OE/build/poky/build-st/tmp/work/x86_64-linux/perl-native/5.36.0-r0/perl-5.36.0'

It didn't start miniperl_top (which itself works fine):
martin@jama
/OE/build/poky/build-st/tmp/work/x86_64-linux/perl-native/5.36.0-r0/perl-5.36.0
$ ./miniperl_top -f pod/buildtoc -q
martin@jama
/OE/build/poky/build-st/tmp/work/x86_64-linux/perl-native/5.36.0-r0/perl-5.36.0
$ echo $?
0

martin   3016692  0.0  0.0  99860  2788 ?S17:47   0:00 make -j
40
DESTDIR=/OE/build/poky/build-st/tmp/work/x86_64-linux/perl-native/5.36.0-r0/image
install
martin   3016738 99.9  0.0 101440  4184 ?R17:47  56:21 make
install.man

Attaching to process 3016738
Reading symbols from
/OE/build/poky/build-st/tmp/work/x86_64-linux/perl-native/5.36.0-r0/recipe-sysroot-native/usr/bin/make...
(No debugging symbols found in
/OE/build/poky/build-st/tmp/work/x86_64-linux/perl-native/5.36.0-r0/recipe-sysroot-native/usr/bin/make)
Reading symbols from
/OE/build/poky/build-st/tmp/sysroots-uninative/x86_64-linux/lib/libc.so.6...
Reading symbols from
/OE/build/poky/build-st/tmp/sysroots-uninative/x86_64-linux/lib/.debug/libc.so.6...
Reading symbols from
/OE/build/poky/build-st/tmp/sysroots-uninative/x86_64-linux/lib/ld-linux-x86-64.so.2...
Reading symbols from
/OE/build/poky/build-st/tmp/sysroots-uninative/x86_64-linux/lib/.debug/ld-linux-x86-64.so.2...
(No debugging symbols found in
/OE/build/poky/build-st/tmp/sysroots-uninative/x86_64-linux/lib/.debug/ld-linux-x86-64.so.2)
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib64/libthread_db.so.1".
0x55c946453a1f in ?? ()
(gdb) bt
#0  0x55c946453a1f in ?? ()
#1  0x55c946452bf3 in ?? ()
#2  0x55c946453b98 in ?? ()
#3  0x55c946452bf3 in ?? ()
#4  0x55c946453b98 in ?? ()
#5  0x55c946452bf3 in ?? ()
#6  0x55c946453b98 in ?? ()
#7  0x55c946452bf3 in ?? ()
#8  0x55c946453b98 in ?? ()
#9  0x55c946452bf3 in ?? ()
#10 0x55c946453fd6 in update_goal_chain ()
#11 0x55c946438df3 in main ()
(gdb)

I've reproduced this twice today, so I was assuming it's just new separate
issue from new perl version - that's why I was asking if someone else is
seeing this behavior now.

I'll try to reproduce this with ccache enabled in regular build (I normally
don't use poky nor selftest). If it fails again, I'll enable debug for
make-native (or switch back to make-4.3 from gentoo).

Regards,

On Thu, Jun 9, 2022 at 6:21 PM Richard Purdie <
richard.pur...@linuxfoundation.org> wrote:

> On Thu, 2022-06-09 at 14:44 +0200, Martin Jansa wrote:
> > On Mon, Jun 6, 2022 at 2:02 PM Alexander Kanavin 
> wrote:
> > > Signed-off-by: Alexander Kanavin 
> > > ---
> > >  

[OE-core] [PATCH] archiver: use bb.note instead of echo

2022-06-09 Thread Jose Quaresma
Signed-off-by: Jose Quaresma 
---
 meta/classes/archiver.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/classes/archiver.bbclass b/meta/classes/archiver.bbclass
index b1d7aa0247..938f8ffa00 100644
--- a/meta/classes/archiver.bbclass
+++ b/meta/classes/archiver.bbclass
@@ -580,7 +580,7 @@ python do_dumpdata () {
 
 SSTATETASKS += "do_deploy_archives"
 do_deploy_archives () {
-echo "Deploying source archive files from ${ARCHIVER_TOPDIR} to 
${DEPLOY_DIR_SRC}."
+bbnote "Deploying source archive files from ${ARCHIVER_TOPDIR} to 
${DEPLOY_DIR_SRC}."
 }
 python do_deploy_archives_setscene () {
 sstate_setscene(d)
-- 
2.36.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166785): 
https://lists.openembedded.org/g/openembedded-core/message/166785
Mute This Topic: https://lists.openembedded.org/mt/91650212/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH v3] archiver: avoid race conditions when using multiconfig and sharing the same TMPDIR

2022-06-09 Thread Jose Quaresma
The archiver doesn't support using multiconfig sharing the same TMPDIR.
When in the multiconfig and using the same TMPDIR: the two machines can make
the same copy at the same time to the same destination, which will not work.

This issiue can be replicated with meta-ti layer:
|# use a multiconfig machine
|MACHINE = "am64xx-evm"
|# archive sources for target recipes in conf/local.conf
|INHERIT += "archiver"
|COPYLEFT_RECIPE_TYPES = "target"
|ARCHIVER_MODE[src] = "original"
|ARCHIVER_MODE[diff] = "1"
|# and run bitbake with:
|bitbake mc:k3r5:gcc-source-11.2.0 gcc-source-11.2.0 -c do_unpack_and_patch -f

Fixes the following:
|ERROR: mc:k3r5:gcc-source-11.2.0-11.2.0-r0 do_unpack_and_patch: Error 
executing a python function in exec_func_python() autogenerated:
|
|The stack trace of python calls that resulted in this exception/failure was:
|File: 'exec_func_python() autogenerated', lineno: 2, function: 
| 0001:
| *** 0002:do_unpack_and_patch(d)
| 0003:
|File: 
'/build/conf/../../layers/openembedded-core/meta/classes/archiver.bbclass', 
lineno: 489, function: do_unpack_and_patch
| 0485:# Save the original source for creating the patches
| 0486:if d.getVarFlag('ARCHIVER_MODE', 'diff') == '1':
| 0487:src = d.getVar('S').rstrip('/')
| 0488:src_orig = '%s.orig' % src
| *** 0489:oe.path.copytree(src, src_orig)
| 0490:
| 0491:if bb.data.inherits_class('dos2unix', d):
| 0492:bb.build.exec_func('do_convert_crlf_to_lf', d)
| 0493:
|File: '/build/conf/../../layers/openembedded-core/meta/lib/oe/path.py', 
lineno: 94, function: copytree
| 0090:# This way we also preserve hardlinks between files in the tree.
| 0091:
| 0092:bb.utils.mkdirhier(dst)
| 0093:cmd = "tar --xattrs --xattrs-include='*' -cf - -S -C %s -p . | 
tar --xattrs --xattrs-include='*' -xf - -C %s" % (src, dst)
| *** 0094:subprocess.check_output(cmd, shell=True, 
stderr=subprocess.STDOUT)
| 0095:
| 0096:def copyhardlinktree(src, dst):
| 0097:"""Make a tree of hard links when possible, otherwise copy."""
| 0098:bb.utils.mkdirhier(dst)
|File: '/usr/lib/python3.10/subprocess.py', lineno: 420, function: check_output
| 0416:else:
| 0417:empty = b''
| 0418:kwargs['input'] = empty
| 0419:
| *** 0420:return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
| 0421:   **kwargs).stdout
| 0422:
| 0423:
| 0424:class CompletedProcess(object):
|File: '/usr/lib/python3.10/subprocess.py', lineno: 524, function: run
| 0520:# We don't call process.wait() as .__exit__ does that 
for us.
| 0521:raise
| 0522:retcode = process.poll()
| 0523:if check and retcode:
| *** 0524:raise CalledProcessError(retcode, process.args,
| 0525: output=stdout, stderr=stderr)
| 0526:return CompletedProcess(process.args, retcode, stdout, stderr)
| 0527:
| 0528:
|Exception: subprocess.CalledProcessError: Command 'tar --xattrs 
--xattrs-include='*' -cf - -S -C 
/build/tmp-lmp/work-shared/gcc-11.2.0-r0/gcc-11.2.0 -p . | tar --xattrs 
--xattrs-include='*' |-xf - -C 
/build/tmp-lmp/work-shared/gcc-11.2.0-r0/gcc-11.2.0.orig' returned non-zero 
exit status 2.
|
|Subprocess output:
|tar: ./gcc/config/moxie/predicates.md: file changed as we read it
|tar: ./patches: Cannot stat: No such file or directory
|tar: Exiting with failure status due to previous errors
|
|ERROR: Logfile of failure stored in: 
/build/tmp-lmp/work-shared/gcc-11.2.0-r0/temp/log.do_unpack_and_patch.291906
|ERROR: Task 
(mc:k3r5:/build/conf/../../layers/openembedded-core/meta/recipes-devtools/gcc/gcc-source_11.2.bb:do_unpack_and_patch)
 failed with exit code '1'

Signed-off-by: Jose Quaresma 
---

 v2: replace "bb.error" with "bb.fatal"
 v3: instead of failing make it more resilient

 meta/classes/archiver.bbclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/meta/classes/archiver.bbclass b/meta/classes/archiver.bbclass
index c19c770d11..b1d7aa0247 100644
--- a/meta/classes/archiver.bbclass
+++ b/meta/classes/archiver.bbclass
@@ -485,7 +485,8 @@ python do_unpack_and_patch() {
 # Save the original source for creating the patches
 if d.getVarFlag('ARCHIVER_MODE', 'diff') == '1':
 src = d.getVar('S').rstrip('/')
-src_orig = '%s.orig' % src
+# append machine name to avoid races in multiconfig when using the 
same TMPDIR
+src_orig = '%s.orig.%s' % (src, d.getVar('MACHINE'))
 oe.path.copytree(src, src_orig)
 
 if bb.data.inherits_class('dos2unix', d):
-- 
2.36.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166784): 
https://lists.openembedded.org/g/openembedded-core/message/166784
Mute This Topic: https://lists.openembedded.org/mt/91650171/21656
Group Owner: 

Re: [OE-core] [PATCH v2] archiver: exit to avoid race conditions

2022-06-09 Thread Jose Quaresma
Hi,

Instead of failing make it more resilient for when used with multiconfig
sharing the same TMPDIR.
I will send a v3

Jose

Jose Quaresma via lists.openembedded.org  escreveu no dia sexta, 27/05/2022 à(s)
11:29:

> The archiver doesn't support using multiconfig sharing the same TMPDIR
> so rise an error when we have something that shouldn't exist.
>
> When in the multiconfig and using the same TMPDIR: the two machines can
> make
> the same copy at the same time to the same destination, which will not
> work.
>
> Signed-off-by: Jose Quaresma 
> ---
>
>  v2: replace "bb.error" with "bb.fatal"
>
>  meta/classes/archiver.bbclass | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/meta/classes/archiver.bbclass b/meta/classes/archiver.bbclass
> index c19c770d11..87c0f90252 100644
> --- a/meta/classes/archiver.bbclass
> +++ b/meta/classes/archiver.bbclass
> @@ -486,6 +486,8 @@ python do_unpack_and_patch() {
>  if d.getVarFlag('ARCHIVER_MODE', 'diff') == '1':
>  src = d.getVar('S').rstrip('/')
>  src_orig = '%s.orig' % src
> +if os.path.isdir(src_orig):
> +bb.fatal("A previous copy of the original source already
> exist '%s'" % src_orig)
>  oe.path.copytree(src, src_orig)
>
>  if bb.data.inherits_class('dos2unix', d):
> --
> 2.36.1
>
>
> 
>
>

-- 
Best regards,

José Quaresma

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166783): 
https://lists.openembedded.org/g/openembedded-core/message/166783
Mute This Topic: https://lists.openembedded.org/mt/91373641/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH 18/21] perl: update 5.34.1 -> 5.36.0

2022-06-09 Thread Richard Purdie
On Thu, 2022-06-09 at 14:44 +0200, Martin Jansa wrote:
> On Mon, Jun 6, 2022 at 2:02 PM Alexander Kanavin  
> wrote:
> > Signed-off-by: Alexander Kanavin 
> > ---
> >  .../{perlcross_1.3.7.bb => perlcross_1.4.bb}  |  2 +-
> >  .../perl/files/perl-configpm-switch.patch     |  2 +-
> >  .../perl/files/perl-dynloader.patch           |  2 +-
> >  .../perl/files/perl-rdepends.txt              | 49 ---
> >  .../perl/{perl_5.34.1.bb => perl_5.36.0.bb}   |  2 +-
> >  5 files changed, 35 insertions(+), 22 deletions(-)
> >  rename meta/recipes-devtools/perl-cross/{perlcross_1.3.7.bb => 
> > perlcross_1.4.bb} (92%)
> >  rename meta/recipes-devtools/perl/{perl_5.34.1.bb => perl_5.36.0.bb} (99%)
> > 
> 
> 
> Have anyone else seen perl.do_install getting stuck with this new shiny 
> version as well?
> 
>  690770 martin      20   0 10020  3700  3196 S   0.0  0.0  0:00.00 │        
> └─ /bin/sh 
> /OE/build/poky/build-st/tmp/work/x86_64-linux/perl-native/5.36.0-r0/temp/run.do_install.690768
>  690771 martin      20   0 99860  1948  1364 S   0.0  0.0  0:00.00 │          
>  └─ make -j 40 
> DESTDIR=/OE/build/poky/build-st/tmp/work/x86_64-linux/perl-native/5.36.0-r0/image
>  install
>  690816 martin      20   0   99M  3340  1428 R 102.1  0.0  3h06:44 │          
>     └─ make install.man 

I've seen perl and the kernel hang in make for some versions, I did try
and put a warning about the known Fedora issue. Was this with the
recent make-native dependency added? If so that would indicate it is
potentially a bug in the current make version :(

Cheers,

Richard


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166782): 
https://lists.openembedded.org/g/openembedded-core/message/166782
Mute This Topic: https://lists.openembedded.org/mt/91575167/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH] meson.bbclass: add cython binary to cross/native toolchain config

2022-06-09 Thread Jack Mitchell
This allows building Cython based Python modules with the native
meson support which has been present since meson version 0.59.

https://mesonbuild.com/Cython.html

Signed-off-by: Jack Mitchell 
---
 meta/classes/meson.bbclass | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta/classes/meson.bbclass b/meta/classes/meson.bbclass
index b265e6659f..546cd0476f 100644
--- a/meta/classes/meson.bbclass
+++ b/meta/classes/meson.bbclass
@@ -59,6 +59,7 @@ do_write_config() {
 [binaries]
 c = ${@meson_array('CC', d)}
 cpp = ${@meson_array('CXX', d)}
+cython = 'cython3'
 ar = ${@meson_array('AR', d)}
 nm = ${@meson_array('NM', d)}
 strip = ${@meson_array('STRIP', d)}
@@ -98,6 +99,7 @@ EOF
 [binaries]
 c = ${@meson_array('BUILD_CC', d)}
 cpp = ${@meson_array('BUILD_CXX', d)}
+cython = 'cython3'
 ar = ${@meson_array('BUILD_AR', d)}
 nm = ${@meson_array('BUILD_NM', d)}
 strip = ${@meson_array('BUILD_STRIP', d)}
-- 
2.36.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166781): 
https://lists.openembedded.org/g/openembedded-core/message/166781
Mute This Topic: https://lists.openembedded.org/mt/91646286/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] Objcopy --add-gnu-debuglink call removes kernel module signature

2022-06-09 Thread Bruce Ashfield
On Thu, Jun 9, 2022 at 8:21 AM  wrote:
>
> Hello,
>
> I've noticed that on kirkstone branch, the call to objcopy 
> --add-gnu-debuglink, made by splitdebuginfo() function, on a signed kernel 
> module is removing the signature.
> An easy fix is to set  INHIBIT_PACKAGE_DEBUG_SPLIT to "1" in the kernel 
> recipe, this way kernel module signatures are not removed.
> Maybe I can submitt this simple fix to meta-security layer.
> But maybe it is better to handle it in oe-core as it was done in runstrip() 
> function in lib/oe/package.py, there is already a is_kernel_module_signed() 
> helper that detect if a kernel module is signed or not.
> What do you think?

It would be worth checking with Saul/Joshua to make sure that SBOM or
licensing isn't hooked into the debug split packages. I vaguely recall
Saul requiring the debug split, or at least debug info, to track down
the kernel source for a given module, so that it could be part of
SBOM.

Anything we did for this signed issue, would have be be sure to not break that.

Bruce

>
> Regards
> --
> Leo
> 
>


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166780): 
https://lists.openembedded.org/g/openembedded-core/message/166780
Mute This Topic: https://lists.openembedded.org/mt/91643928/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCHv2] systemd: Fix build without utmp

2022-06-09 Thread Martin Jansa
* backport the fix for regression in v251.2

Signed-off-by: Martin Jansa 
---
 ...red-utmp-wtmp-fix-build-without-utmp.patch | 32 +++
 meta/recipes-core/systemd/systemd_251.2.bb|  1 +
 2 files changed, 33 insertions(+)
 create mode 100644 
meta/recipes-core/systemd/systemd/0001-shared-utmp-wtmp-fix-build-without-utmp.patch

diff --git 
a/meta/recipes-core/systemd/systemd/0001-shared-utmp-wtmp-fix-build-without-utmp.patch
 
b/meta/recipes-core/systemd/systemd/0001-shared-utmp-wtmp-fix-build-without-utmp.patch
new file mode 100644
index 00..2bb9565bf2
--- /dev/null
+++ 
b/meta/recipes-core/systemd/systemd/0001-shared-utmp-wtmp-fix-build-without-utmp.patch
@@ -0,0 +1,32 @@
+From d6e2c2d34d336398f5948a8b731fefff3dc0ff12 Mon Sep 17 00:00:00 2001
+From: Christian Hesse 
+Date: Thu, 2 Jun 2022 20:49:46 +0200
+Subject: [PATCH] shared/utmp-wtmp: fix build without utmp
+
+Commit 16618332388442f2f1c3e52b0a9fde00121564a3 changed a function to
+add an extra argument. The data types used when building without utmp
+missed the change.
+
+Upstream-Status: Backport [d6e2c2d34d336398f5948a8b731fefff3dc0ff12]
+Signed-off-by: Martin Jansa 
+
+---
+ src/shared/utmp-wtmp.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/shared/utmp-wtmp.h b/src/shared/utmp-wtmp.h
+index 36e4203b4f..188d011fdd 100644
+--- a/src/shared/utmp-wtmp.h
 b/src/shared/utmp-wtmp.h
+@@ -59,7 +59,7 @@ static inline int utmp_wall(
+ const char *message,
+ const char *username,
+ const char *origin_tty,
+-bool (*match_tty)(const char *tty, void *userdata),
++bool (*match_tty)(const char *tty, bool is_local, void 
*userdata),
+ void *userdata) {
+ return 0;
+ }
+-- 
+2.36.1
+
diff --git a/meta/recipes-core/systemd/systemd_251.2.bb 
b/meta/recipes-core/systemd/systemd_251.2.bb
index 80f80849d0..8370bec0ca 100644
--- a/meta/recipes-core/systemd/systemd_251.2.bb
+++ b/meta/recipes-core/systemd/systemd_251.2.bb
@@ -24,6 +24,7 @@ SRC_URI += "file://touchscreen.rules \

file://0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch \
file://0003-implment-systemd-sysv-install-for-OE.patch \

file://0001-Move-sysusers.d-sysctl.d-binfmt.d-modules-load.d-to-.patch \
+   file://0001-shared-utmp-wtmp-fix-build-without-utmp.patch \
"
 
 # patches needed by musl
-- 
2.35.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166779): 
https://lists.openembedded.org/g/openembedded-core/message/166779
Mute This Topic: https://lists.openembedded.org/mt/91644642/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH] systemd: Fix build without utmp

2022-06-09 Thread Martin Jansa
* backport the fix for regression in v251.2

Signed-off-by: Martin Jansa 
---
 meta/recipes-core/systemd/systemd_251.2.bb | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/recipes-core/systemd/systemd_251.2.bb 
b/meta/recipes-core/systemd/systemd_251.2.bb
index 80f80849d0..8370bec0ca 100644
--- a/meta/recipes-core/systemd/systemd_251.2.bb
+++ b/meta/recipes-core/systemd/systemd_251.2.bb
@@ -24,6 +24,7 @@ SRC_URI += "file://touchscreen.rules \

file://0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch \
file://0003-implment-systemd-sysv-install-for-OE.patch \

file://0001-Move-sysusers.d-sysctl.d-binfmt.d-modules-load.d-to-.patch \
+   file://0001-shared-utmp-wtmp-fix-build-without-utmp.patch \
"
 
 # patches needed by musl
-- 
2.35.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166778): 
https://lists.openembedded.org/g/openembedded-core/message/166778
Mute This Topic: https://lists.openembedded.org/mt/91644630/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH 18/21] perl: update 5.34.1 -> 5.36.0

2022-06-09 Thread Martin Jansa
On Mon, Jun 6, 2022 at 2:02 PM Alexander Kanavin 
wrote:

> Signed-off-by: Alexander Kanavin 
> ---
>  .../{perlcross_1.3.7.bb => perlcross_1.4.bb}  |  2 +-
>  .../perl/files/perl-configpm-switch.patch |  2 +-
>  .../perl/files/perl-dynloader.patch   |  2 +-
>  .../perl/files/perl-rdepends.txt  | 49 ---
>  .../perl/{perl_5.34.1.bb => perl_5.36.0.bb}   |  2 +-
>  5 files changed, 35 insertions(+), 22 deletions(-)
>  rename meta/recipes-devtools/perl-cross/{perlcross_1.3.7.bb =>
> perlcross_1.4.bb} (92%)
>  rename meta/recipes-devtools/perl/{perl_5.34.1.bb => perl_5.36.0.bb}
> (99%)
>

Have anyone else seen perl.do_install getting stuck with this new shiny
version as well?

 690770 martin  20   0 10020  3700  3196 S   0.0  0.0  0:00.00 │
 └─ /bin/sh
/OE/build/poky/build-st/tmp/work/x86_64-linux/perl-native/5.36.0-r0/temp/run.do_install.690768
 690771 martin  20   0 99860  1948  1364 S   0.0  0.0  0:00.00 │
└─ make -j 40
DESTDIR=/OE/build/poky/build-st/tmp/work/x86_64-linux/perl-native/5.36.0-r0/image
install
 690816 martin  20   0   99M  3340  1428 R 102.1  0.0  3h06:44 │
   └─ make install.man

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166777): 
https://lists.openembedded.org/g/openembedded-core/message/166777
Mute This Topic: https://lists.openembedded.org/mt/91575167/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] Objcopy --add-gnu-debuglink call removes kernel module signature

2022-06-09 Thread sartre . l
Hello,

I've noticed that on kirkstone branch, the call to objcopy --add-gnu-debuglink, 
made by splitdebuginfo() function, on a signed kernel module is removing the 
signature.
An easy fix is to set  INHIBIT_PACKAGE_DEBUG_SPLIT to "1" in the kernel recipe, 
this way kernel module signatures are not removed.
Maybe I can submitt this simple fix to meta-security layer.
But maybe it is better to handle it in oe-core as it was done in runstrip() 
function in lib/oe/package.py, there is already a is_kernel_module_signed() 
helper that detect if a kernel module is signed or not.
What do you think?

Regards
--
Leo

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166776): 
https://lists.openembedded.org/g/openembedded-core/message/166776
Mute This Topic: https://lists.openembedded.org/mt/91643928/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH] devtool: Fix _copy_file() TypeError

2022-06-09 Thread Xiaobing Luo
From: Xiaobing Luo 

when devtool finish, the _copy_file() failed.

TypeError: _copy_file() got an unexpected keyword argument
'base_outdir'


Fixes: 05f2d5d2ce00 ("devtool: finish: add dry-run option")

Signed-off-by: Xiaobing Luo 
---
 scripts/lib/devtool/standard.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/lib/devtool/standard.py b/scripts/lib/devtool/standard.py
index 01fb5ad96ff6..4b50e3c63bac 100644
--- a/scripts/lib/devtool/standard.py
+++ b/scripts/lib/devtool/standard.py
@@ -353,7 +353,7 @@ def _move_file(src, dst, dry_run_outdir=None, 
base_outdir=None):
 bb.utils.mkdirhier(dst_d)
 shutil.move(src, dst)
 
-def _copy_file(src, dst, dry_run_outdir=None):
+def _copy_file(src, dst, dry_run_outdir=None, base_outdir=None):
 """Copy a file. Creates all the directory components of destination 
path."""
 dry_run_suffix = ' (dry-run)' if dry_run_outdir else ''
 logger.debug('Copying %s to %s%s' % (src, dst, dry_run_suffix))
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166775): 
https://lists.openembedded.org/g/openembedded-core/message/166775
Mute This Topic: https://lists.openembedded.org/mt/91643312/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH 4/5] base/buildhistory/image-buildinfo: Use common buildcfg function

2022-06-09 Thread Richard Purdie
Reduce code duplication to a common function in oe.buildcfg.

Signed-off-by: Richard Purdie 
---
 meta/classes/base.bbclass|  7 ++-
 meta/classes/buildhistory.bbclass| 10 +++---
 meta/classes/image-buildinfo.bbclass |  8 ++--
 meta/lib/oe/buildcfg.py  |  7 +++
 4 files changed, 14 insertions(+), 18 deletions(-)

diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index f59e95fef06..20968a50766 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -218,11 +218,8 @@ def get_source_date_epoch_value(d):
 return oe.reproducible.epochfile_read(d.getVar('SDE_FILE'), d)
 
 def get_layers_branch_rev(d):
-layers = (d.getVar("BBLAYERS") or "").split()
-layers_branch_rev = ["%-20s = \"%s:%s\"" % (os.path.basename(i), \
-oe.buildcfg.get_metadata_git_branch(i, None).strip(), \
-oe.buildcfg.get_metadata_git_revision(i, None)) \
-for i in layers]
+revisions = oe.buildcfg.get_layer_revisions(d)
+layers_branch_rev = ["%-20s = \"%s:%s\"" % (r[1], r[2], r[3]) for r in 
revisions]
 i = len(layers_branch_rev)-1
 p1 = layers_branch_rev[i].find("=")
 s1 = layers_branch_rev[i][p1:]
diff --git a/meta/classes/buildhistory.bbclass 
b/meta/classes/buildhistory.bbclass
index 6fffd471896..4ba9ec8f25d 100644
--- a/meta/classes/buildhistory.bbclass
+++ b/meta/classes/buildhistory.bbclass
@@ -742,13 +742,9 @@ def buildhistory_get_build_id(d):
 return('\n%s\n%s\n' % (statusheader, '\n'.join(statuslines)))
 
 def buildhistory_get_metadata_revs(d):
-# We want an easily machine-readable format here, so get_layers_branch_rev 
isn't quite what we want
-layers = (d.getVar("BBLAYERS") or "").split()
-medadata_revs = ["%-17s = %s:%s%s" % (os.path.basename(i), \
-oe.buildcfg.get_metadata_git_branch(i, None).strip(), \
-oe.buildcfg.get_metadata_git_revision(i, None), \
-oe.buildcfg.is_layer_modified(i)) \
-for i in layers]
+# We want an easily machine-readable format here
+revisions = oe.buildcfg.get_layer_revisions(d)
+medadata_revs = ["%-17s = %s:%s%s" % (r[1], r[2], r[3], r[4]) for r in 
revisions]
 return '\n'.join(medadata_revs)
 
 def outputvars(vars, listvars, d):
diff --git a/meta/classes/image-buildinfo.bbclass 
b/meta/classes/image-buildinfo.bbclass
index c149660f31a..d4a12b5e102 100644
--- a/meta/classes/image-buildinfo.bbclass
+++ b/meta/classes/image-buildinfo.bbclass
@@ -28,12 +28,8 @@ def image_buildinfo_outputvars(vars, d):
 
 # Returns layer revisions along with their respective status
 def get_layer_revs(d):
-layers = (d.getVar("BBLAYERS") or "").split()
-medadata_revs = ["%-17s = %s:%s %s" % (os.path.basename(i), \
-oe.buildcfg.get_metadata_git_branch(i, None).strip(), \
-oe.buildcfg.get_metadata_git_revision(i, None), \
-oe.buildcfg.is_layer_modified(i)) \
-for i in layers]
+revisions = oe.buildcfg.get_layer_revisions(d)
+medadata_revs = ["%-17s = %s:%s%s" % (r[1], r[2], r[3], r[4]) for r in 
revisions]
 return '\n'.join(medadata_revs)
 
 def buildinfo_target(d):
diff --git a/meta/lib/oe/buildcfg.py b/meta/lib/oe/buildcfg.py
index 364c40a2f02..90f5e057153 100644
--- a/meta/lib/oe/buildcfg.py
+++ b/meta/lib/oe/buildcfg.py
@@ -40,3 +40,10 @@ def is_layer_modified(path):
 # (expected) return code 1 in a modified git repo. For example, we get
 # output and a 129 return code when a layer isn't a git repo at all.
 return " -- modified"
+
+def get_layer_revisions(d):
+layers = (d.getVar("BBLAYERS") or "").split()
+revisions = []
+for i in layers:
+revisions.append((i, os.path.basename(i), get_metadata_git_branch(i, 
None).strip(), get_metadata_git_revision(i, None), is_layer_modified(i)))
+return revisions
-- 
2.34.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166773): 
https://lists.openembedded.org/g/openembedded-core/message/166773
Mute This Topic: https://lists.openembedded.org/mt/91643184/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH 5/5] image-buildinfo: Improve and extend to SDK coverage too

2022-06-09 Thread Richard Purdie
Rename the default file from "build" to "buildinfo" since this is more
obvious to anyone looking in an image.

Add SDK_BUILDINFO_FILE and allow the same information to be written into
SDK images. This will be useful for buildtools-tarball and uninative-tarball.

Signed-off-by: Richard Purdie 
---
 meta/classes/image-buildinfo.bbclass | 28 ++--
 1 file changed, 22 insertions(+), 6 deletions(-)

diff --git a/meta/classes/image-buildinfo.bbclass 
b/meta/classes/image-buildinfo.bbclass
index d4a12b5e102..ef790bb73b4 100644
--- a/meta/classes/image-buildinfo.bbclass
+++ b/meta/classes/image-buildinfo.bbclass
@@ -1,5 +1,5 @@
 #
-# Writes build information to target filesystem on /etc/build
+# Writes build information to target filesystem on /etc/buildinfo
 #
 # Copyright (C) 2014 Intel Corporation
 # Author: Alejandro Enedino Hernandez Samaniego 
@@ -13,7 +13,8 @@
 IMAGE_BUILDINFO_VARS ?= "DISTRO DISTRO_VERSION"
 
 # Desired location of the output file in the image.
-IMAGE_BUILDINFO_FILE ??= "${sysconfdir}/build"
+IMAGE_BUILDINFO_FILE ??= "${sysconfdir}/buildinfo"
+SDK_BUILDINFO_FILE ??= "/buildinfo"
 
 # From buildhistory.bbclass
 def image_buildinfo_outputvars(vars, d):
@@ -40,11 +41,12 @@ def buildinfo_target(d):
 vars = (d.getVar("IMAGE_BUILDINFO_VARS") or "")
 return image_buildinfo_outputvars(vars, d)
 
-# Write build information to target filesystem
-python buildinfo () {
+python buildinfo() {
 if not d.getVar('IMAGE_BUILDINFO_FILE'):
 return
-with open(d.expand('${IMAGE_ROOTFS}${IMAGE_BUILDINFO_FILE}'), 'w') as 
build:
+destfile = d.expand('${BUILDINFODEST}${IMAGE_BUILDINFO_FILE}')
+bb.utils.mkdirhier(os.path.dirname(destfile))
+with open(destfile, 'w') as build:
 build.writelines((
 '''---
 Build Configuration:  |
@@ -62,4 +64,18 @@ Layer Revisions:  |
))
 }
 
-IMAGE_PREPROCESS_COMMAND += "buildinfo;"
+# Write build information to target filesystem
+python buildinfo_image () {
+d.setVar("BUILDINFODEST", "${IMAGE_ROOTFS}")
+bb.build.exec_func("buildinfo", d)
+}
+
+python buildinfo_sdk () {
+d.setVar("BUILDINFODEST", "${SDK_OUTPUT}/${SDKPATH}")
+d.setVar("IMAGE_BUILDINFO_FILE", d.getVar("SDK_BUILDINFO_FILE"))
+bb.build.exec_func("buildinfo", d)
+}
+
+IMAGE_PREPROCESS_COMMAND += "buildinfo_image;"
+POPULATE_SDK_PRE_TARGET_COMMAND += "buildinfo_sdk;"
+
-- 
2.34.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166774): 
https://lists.openembedded.org/g/openembedded-core/message/166774
Mute This Topic: https://lists.openembedded.org/mt/91643185/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH 1/5] classes/buildcfg: Move git/layer revision code into new OE module buildcfg

2022-06-09 Thread Richard Purdie
There is a load of duplicated git/layer/revision code which makes
most sesne as a python library, not bbclass code. Start to refactor as such.

Signed-off-by: Richard Purdie 
---
 meta/classes/base.bbclass|  9 +++---
 meta/classes/buildhistory.bbclass|  4 +--
 meta/classes/image-buildinfo.bbclass |  4 +--
 meta/classes/metadata_scm.bbclass| 43 ++--
 meta/lib/oe/buildcfg.py  | 40 ++
 5 files changed, 51 insertions(+), 49 deletions(-)
 create mode 100644 meta/lib/oe/buildcfg.py

diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index bdb3ac33c67..f59e95fef06 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -7,12 +7,11 @@ inherit staging
 inherit mirrors
 inherit utils
 inherit utility-tasks
-inherit metadata_scm
 inherit logging
 
 OE_EXTRA_IMPORTS ?= ""
 
-OE_IMPORTS += "os sys time oe.path oe.utils oe.types oe.package 
oe.packagegroup oe.sstatesig oe.lsb oe.cachedpath oe.license oe.qa 
oe.reproducible oe.rust ${OE_EXTRA_IMPORTS}"
+OE_IMPORTS += "os sys time oe.path oe.utils oe.types oe.package 
oe.packagegroup oe.sstatesig oe.lsb oe.cachedpath oe.license oe.qa 
oe.reproducible oe.rust oe.buildcfg ${OE_EXTRA_IMPORTS}"
 OE_IMPORTS[type] = "list"
 
 PACKAGECONFIG_CONFARGS ??= ""
@@ -35,6 +34,8 @@ def oe_import(d):
 # We need the oe module name space early (before INHERITs get added)
 OE_IMPORTED := "${@oe_import(d)}"
 
+inherit metadata_scm
+
 def lsb_distro_identifier(d):
 adjust = d.getVar('LSB_DISTRO_ADJUST')
 adjust_func = None
@@ -219,8 +220,8 @@ def get_source_date_epoch_value(d):
 def get_layers_branch_rev(d):
 layers = (d.getVar("BBLAYERS") or "").split()
 layers_branch_rev = ["%-20s = \"%s:%s\"" % (os.path.basename(i), \
-base_get_metadata_git_branch(i, None).strip(), \
-base_get_metadata_git_revision(i, None)) \
+oe.buildcfg.get_metadata_git_branch(i, None).strip(), \
+oe.buildcfg.get_metadata_git_revision(i, None)) \
 for i in layers]
 i = len(layers_branch_rev)-1
 p1 = layers_branch_rev[i].find("=")
diff --git a/meta/classes/buildhistory.bbclass 
b/meta/classes/buildhistory.bbclass
index 4345ffc6939..f2493b3765a 100644
--- a/meta/classes/buildhistory.bbclass
+++ b/meta/classes/buildhistory.bbclass
@@ -761,8 +761,8 @@ def buildhistory_get_metadata_revs(d):
 # We want an easily machine-readable format here, so get_layers_branch_rev 
isn't quite what we want
 layers = (d.getVar("BBLAYERS") or "").split()
 medadata_revs = ["%-17s = %s:%s%s" % (os.path.basename(i), \
-base_get_metadata_git_branch(i, None).strip(), \
-base_get_metadata_git_revision(i, None), \
+oe.buildcfg.get_metadata_git_branch(i, None).strip(), \
+oe.buildcfg.get_metadata_git_revision(i, None), \
 buildhistory_get_modified(i)) \
 for i in layers]
 return '\n'.join(medadata_revs)
diff --git a/meta/classes/image-buildinfo.bbclass 
b/meta/classes/image-buildinfo.bbclass
index 94c585d4cd9..25ca8d8fe6b 100644
--- a/meta/classes/image-buildinfo.bbclass
+++ b/meta/classes/image-buildinfo.bbclass
@@ -46,8 +46,8 @@ def get_layer_git_status(path):
 def get_layer_revs(d):
 layers = (d.getVar("BBLAYERS") or "").split()
 medadata_revs = ["%-17s = %s:%s %s" % (os.path.basename(i), \
-base_get_metadata_git_branch(i, None).strip(), \
-base_get_metadata_git_revision(i, None), \
+oe.buildcfg.get_metadata_git_branch(i, None).strip(), \
+oe.buildcfg.get_metadata_git_revision(i, None), \
 get_layer_git_status(i)) \
 for i in layers]
 return '\n'.join(medadata_revs)
diff --git a/meta/classes/metadata_scm.bbclass 
b/meta/classes/metadata_scm.bbclass
index 47cb969b8d8..f646b3159a4 100644
--- a/meta/classes/metadata_scm.bbclass
+++ b/meta/classes/metadata_scm.bbclass
@@ -1,44 +1,5 @@
-def base_detect_revision(d):
-path = base_get_scmbasepath(d)
-return base_get_metadata_git_revision(path, d)
 
-def base_detect_branch(d):
-path = base_get_scmbasepath(d)
-return base_get_metadata_git_branch(path, d)
-
-def base_get_scmbasepath(d):
-return os.path.join(d.getVar('COREBASE'), 'meta')
-
-def base_get_metadata_svn_revision(path, d):
-# This only works with older subversion. For newer versions 
-# this function will need to be fixed by someone interested
-revision = ""
-try:
-with open("%s/.svn/entries" % path) as f:
-revision = f.readlines()[3].strip()
-except (IOError, IndexError):
-pass
-return revision
-
-def base_get_metadata_git_branch(path, d):
-import bb.process
-
-try:
-rev, _ = bb.process.run('git rev-parse --abbrev-ref HEAD', cwd=path)
-except bb.process.ExecutionError:
-rev = ''
-return rev.strip()
-
-def base_get_metadata_git_revision(path, d):
-import bb.process
-
-try:
-rev, _ = bb.process.run('git rev-parse HEAD', 

[OE-core] [PATCH 2/5] lib/buildcfg: Share common clean/dirty layer function

2022-06-09 Thread Richard Purdie
The comments even say this was copy/paste code. Move to a
shared library function.

Signed-off-by: Richard Purdie 
---
 meta/classes/buildhistory.bbclass| 18 +-
 meta/classes/image-buildinfo.bbclass | 18 +-
 meta/lib/oe/buildcfg.py  | 15 ++-
 3 files changed, 16 insertions(+), 35 deletions(-)

diff --git a/meta/classes/buildhistory.bbclass 
b/meta/classes/buildhistory.bbclass
index f2493b3765a..6fffd471896 100644
--- a/meta/classes/buildhistory.bbclass
+++ b/meta/classes/buildhistory.bbclass
@@ -741,29 +741,13 @@ def buildhistory_get_build_id(d):
 statusheader = d.getVar('BUILDCFG_HEADER')
 return('\n%s\n%s\n' % (statusheader, '\n'.join(statuslines)))
 
-def buildhistory_get_modified(path):
-# copied from get_layer_git_status() in image-buildinfo.bbclass
-import subprocess
-try:
-subprocess.check_output("""cd %s; export PSEUDO_UNLOAD=1; set -e;
-git diff --quiet --no-ext-diff
-git diff --quiet --no-ext-diff --cached""" % 
path,
-shell=True,
-stderr=subprocess.STDOUT)
-return ""
-except subprocess.CalledProcessError as ex:
-# Silently treat errors as "modified", without checking for the
-# (expected) return code 1 in a modified git repo. For example, we get
-# output and a 129 return code when a layer isn't a git repo at all.
-return " -- modified"
-
 def buildhistory_get_metadata_revs(d):
 # We want an easily machine-readable format here, so get_layers_branch_rev 
isn't quite what we want
 layers = (d.getVar("BBLAYERS") or "").split()
 medadata_revs = ["%-17s = %s:%s%s" % (os.path.basename(i), \
 oe.buildcfg.get_metadata_git_branch(i, None).strip(), \
 oe.buildcfg.get_metadata_git_revision(i, None), \
-buildhistory_get_modified(i)) \
+oe.buildcfg.is_layer_modified(i)) \
 for i in layers]
 return '\n'.join(medadata_revs)
 
diff --git a/meta/classes/image-buildinfo.bbclass 
b/meta/classes/image-buildinfo.bbclass
index 25ca8d8fe6b..c149660f31a 100644
--- a/meta/classes/image-buildinfo.bbclass
+++ b/meta/classes/image-buildinfo.bbclass
@@ -26,29 +26,13 @@ def image_buildinfo_outputvars(vars, d):
 ret += "%s = %s\n" % (var, value)
 return ret.rstrip('\n')
 
-# Gets git branch's status (clean or dirty)
-def get_layer_git_status(path):
-import subprocess
-try:
-subprocess.check_output("""cd %s; export PSEUDO_UNLOAD=1; set -e;
-git diff --quiet --no-ext-diff
-git diff --quiet --no-ext-diff --cached""" % 
path,
-shell=True,
-stderr=subprocess.STDOUT)
-return ""
-except subprocess.CalledProcessError as ex:
-# Silently treat errors as "modified", without checking for the
-# (expected) return code 1 in a modified git repo. For example, we get
-# output and a 129 return code when a layer isn't a git repo at all.
-return "-- modified"
-
 # Returns layer revisions along with their respective status
 def get_layer_revs(d):
 layers = (d.getVar("BBLAYERS") or "").split()
 medadata_revs = ["%-17s = %s:%s %s" % (os.path.basename(i), \
 oe.buildcfg.get_metadata_git_branch(i, None).strip(), \
 oe.buildcfg.get_metadata_git_revision(i, None), \
-get_layer_git_status(i)) \
+oe.buildcfg.is_layer_modified(i)) \
 for i in layers]
 return '\n'.join(medadata_revs)
 
diff --git a/meta/lib/oe/buildcfg.py b/meta/lib/oe/buildcfg.py
index a749fc53039..a7549f1e229 100644
--- a/meta/lib/oe/buildcfg.py
+++ b/meta/lib/oe/buildcfg.py
@@ -37,4 +37,17 @@ def get_metadata_git_revision(path, d):
 except bb.process.ExecutionError:
 rev = ''
 return rev.strip()
- 
+
+def is_layer_modified(path):
+try:
+subprocess.check_output("""cd %s; export PSEUDO_UNLOAD=1; set -e;
+git diff --quiet --no-ext-diff
+git diff --quiet --no-ext-diff --cached""" % 
path,
+shell=True,
+stderr=subprocess.STDOUT)
+return ""
+except subprocess.CalledProcessError as ex:
+# Silently treat errors as "modified", without checking for the
+# (expected) return code 1 in a modified git repo. For example, we get
+# output and a 129 return code when a layer isn't a git repo at all.
+return " -- modified"
-- 
2.34.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166771): 
https://lists.openembedded.org/g/openembedded-core/message/166771
Mute This Topic: https://lists.openembedded.org/mt/91643182/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org

[OE-core] [PATCH 3/5] buildcfg: Drop unused svn revision function

2022-06-09 Thread Richard Purdie
This isn't used anywhere and everyone is using git now, the functions
are now hardcoded as such too. Drop this function.

Signed-off-by: Richard Purdie 
---
 meta/lib/oe/buildcfg.py | 11 ---
 1 file changed, 11 deletions(-)

diff --git a/meta/lib/oe/buildcfg.py b/meta/lib/oe/buildcfg.py
index a7549f1e229..364c40a2f02 100644
--- a/meta/lib/oe/buildcfg.py
+++ b/meta/lib/oe/buildcfg.py
@@ -13,17 +13,6 @@ def detect_branch(d):
 def get_scmbasepath(d):
 return os.path.join(d.getVar('COREBASE'), 'meta')
 
-def get_metadata_svn_revision(path, d):
-# This only works with older subversion. For newer versions 
-# this function will need to be fixed by someone interested
-revision = ""
-try:
-with open("%s/.svn/entries" % path) as f:
-revision = f.readlines()[3].strip()
-except (IOError, IndexError):
-pass
-return revision
-
 def get_metadata_git_branch(path, d):
 try:
 rev, _ = bb.process.run('git rev-parse --abbrev-ref HEAD', cwd=path)
-- 
2.34.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166772): 
https://lists.openembedded.org/g/openembedded-core/message/166772
Mute This Topic: https://lists.openembedded.org/mt/91643183/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] e2fsprogs: add alternatives handling of lsattr as well

2022-06-09 Thread Rasmus Villemoes via lists.openembedded.org
On 09/06/2022 09.20, Luca Ceresoli wrote:
> Hi Rasmus,
> 
> On Wed,  8 Jun 2022 15:12:05 +0200
> "Rasmus Villemoes via lists.openembedded.org"
>  wrote:
>  ^^^
> 
> As you can see above, your sender address is getting mangled. This is
> not your fault, but it makes applying your patches annoying.
> 
> Can you please try to work around that by setting the sendemail.from
> parameter in your git config?

Sorry about that, didn't know it.

It's not completely clear if I should put just the email address or the
full "Name " in that configuration item, i.e. whether it's

[sendemail]
from = rasmus.villem...@prevas.dk

or

[sendemail]
from = Rasmus Villemoes 

For now I've gone with the latter, please let me know if that's correct.
In any case we'll see if it works the next time I submit a patch.

Rasmus

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166769): 
https://lists.openembedded.org/g/openembedded-core/message/166769
Mute This Topic: https://lists.openembedded.org/mt/91622646/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] mesa: upgrade 22.0.3 -> 22.1.1

2022-06-09 Thread Alexander Kanavin
I have looked into this and submitted a patch upstream for this:
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16942

Let's defer the update until upstream addresses this one way or another.

Alex

On Tue, 7 Jun 2022 at 12:41, Luca Ceresoli via lists.openembedded.org
 wrote:
>
> Hi wangmy,
>
> On Mon, 6 Jun 2022 20:27:12 +0800
> "wangmy"  wrote:
>
> > Signed-off-by: Wang Mingyu 
>
> There are lots of failures when testing with this patch applied:
>
>   (EE) AIGLX error: Calling driver entry point failed
>
> Here are some logs:
>
> https://autobuilder.yoctoproject.org/typhoon/#/builders/73/builds/5275/steps/12/logs/stdio
> https://autobuilder.yoctoproject.org/typhoon/#/builders/64/builds/5318/steps/13/logs/stdio
> https://autobuilder.yoctoproject.org/typhoon/#/builders/76/builds/5291/steps/13/logs/stdio
> https://autobuilder.yoctoproject.org/typhoon/#/builders/72/builds/5338/steps/19/logs/stdio
> https://autobuilder.yoctoproject.org/typhoon/#/builders/109/builds/4202/steps/13/logs/stdio
>
> --
> Luca Ceresoli, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com
>
> 
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166768): 
https://lists.openembedded.org/g/openembedded-core/message/166768
Mute This Topic: https://lists.openembedded.org/mt/91575609/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH] selftest/multiconfig: Test that multiconfigs in separate layers works

2022-06-09 Thread Richard Purdie
We should test that mutliconfigs from a layer work, not just build/conf.
This adds such a test.

[YOCTO #13566]

Signed-off-by: Richard Purdie 
---
 meta-selftest/conf/multiconfig/muslmc.conf  |  2 ++
 meta/lib/oeqa/selftest/cases/multiconfig.py | 13 +
 2 files changed, 15 insertions(+)
 create mode 100644 meta-selftest/conf/multiconfig/muslmc.conf

diff --git a/meta-selftest/conf/multiconfig/muslmc.conf 
b/meta-selftest/conf/multiconfig/muslmc.conf
new file mode 100644
index 000..043cd1ccc3b
--- /dev/null
+++ b/meta-selftest/conf/multiconfig/muslmc.conf
@@ -0,0 +1,2 @@
+TCLIBC = "musl"
+TMPDIR = "${TOPDIR}/tmp-mc-musl"
diff --git a/meta/lib/oeqa/selftest/cases/multiconfig.py 
b/meta/lib/oeqa/selftest/cases/multiconfig.py
index baae9b456f5..83cbd1345da 100644
--- a/meta/lib/oeqa/selftest/cases/multiconfig.py
+++ b/meta/lib/oeqa/selftest/cases/multiconfig.py
@@ -70,3 +70,16 @@ TMPDIR = "${TOPDIR}/tmp-mc-tiny"
 
 result = bitbake('mc:test:multiconfig-test-parse -c showvar')
 self.assertIn('MCTESTVAR=test2', result.output.splitlines())
+
+def test_multiconfig_inlayer(self):
+"""
+Test that a multiconfig from meta-selftest works.
+"""
+
+config = """
+BBMULTICONFIG = "muslmc"
+"""
+self.write_config(config)
+
+# Build a core-image-minimal, only dry run needed to check config is 
present
+bitbake('mc:muslmc:bash -n')
-- 
2.34.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166767): 
https://lists.openembedded.org/g/openembedded-core/message/166767
Mute This Topic: https://lists.openembedded.org/mt/91641952/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [meta-java] icedtea7-native build fails on kirkstone and in master

2022-06-09 Thread Bartosz Golaszewski
Hi!

I'm trying to build java support with the following configuration:

Build Configuration:
BB_VERSION   = "2.0.0"
BUILD_SYS= "x86_64-linux"
NATIVELSBSTRING  = "universal"
TARGET_SYS   = "x86_64-poky-linux"
MACHINE  = "qemux86-64"
DISTRO   = "poky"
DISTRO_VERSION   = "4.0.1"
TUNE_FEATURES= "m64 core2"
TARGET_FPU   = ""
meta
meta-poky= "kirkstone:45d7615dfef8093a2467d52ca1130e62db6a1187"
meta-oe  = "kirkstone:fcc7d7eae82be4c180f2e8fa3db90a8ab3be07b7"
meta-java= "kirkstone:1a8059f6b257ebe6fcae6416e499784d976afd24"

---

PREFERRED_PROVIDER_virtual/java-initial-native = "cacao-initial-native"
PREFERRED_PROVIDER_virtual/java-native = "jamvm-native"
PREFERRED_PROVIDER_virtual/javac-native = "ecj-bootstrap-native"

---

The build fails for icedtea7-native but it's hard to tell why exactly
from the logs. Here is the full output: https://pastebin.com/3dRt6J0Y

It seems to be failing here:

| Checking for mapfile use in:
/home/brgl/workspace/target-build-yocto/build/tmp/work/x86_64-linux/icedtea7-native/2.1.3-r1.0/icedtea-2.1.3/build/openjdk.build-boot/lib/amd64/libmanagement.so
| Library loads for:
/home/brgl/workspace/target-build-yocto/build/tmp/work/x86_64-linux/icedtea7-native/2.1.3-r1.0/icedtea-2.1.3/build/openjdk.build-boot/lib/amd64/libmanagement.so
| make[5]: Leaving directory
'/home/brgl/workspace/target-build-yocto/build/tmp/work/x86_64-linux/icedtea7-native/2.1.3-r1.0/icedtea-2.1.3/build/openjdk-boot/jdk/make/java/management'
| make[5]: *** [../../common/Library.gmk:225:
/home/brgl/workspace/target-build-yocto/build/tmp/work/x86_64-linux/icedtea7-native/2.1.3-r1.0/icedtea-2.1.3/build/openjdk.build-boot/lib/amd64/libmanagement.so]
Error 1
| make[4]: Leaving directory
'/home/brgl/workspace/target-build-yocto/build/tmp/work/x86_64-linux/icedtea7-native/2.1.3-r1.0/icedtea-2.1.3/build/openjdk-boot/jdk/make/java'
| make[4]: *** [Makefile:63: all] Error 1
| make[3]: Leaving directory
'/home/brgl/workspace/target-build-yocto/build/tmp/work/x86_64-linux/icedtea7-native/2.1.3-r1.0/icedtea-2.1.3/build/openjdk-boot/jdk/make'
| make[3]: *** [Makefile:247: all] Error 1
| make[2]: Leaving directory
'/home/brgl/workspace/target-build-yocto/build/tmp/work/x86_64-linux/icedtea7-native/2.1.3-r1.0/icedtea-2.1.3/build/openjdk-boot'
| make[2]: *** [make/jdk-rules.gmk:79: jdk-build] Error 2
| make[1]: Leaving directory
'/home/brgl/workspace/target-build-yocto/build/tmp/work/x86_64-linux/icedtea7-native/2.1.3-r1.0/icedtea-2.1.3/build/openjdk-boot'
| make[1]: *** [Makefile:244: build_product_image] Error 2
| make: *** [Makefile:2252: stamps/icedtea-boot.stamp] Error 2

But not sure why.

Thanks in advance for any help.
Bart

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166766): 
https://lists.openembedded.org/g/openembedded-core/message/166766
Mute This Topic: https://lists.openembedded.org/mt/91641852/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH v2] dbus: Soecify runstatedir configure option

2022-06-09 Thread Pavel Zhukov
Without specifing runstatedir tmpfiles.d is configured to use /var/run
for dbus and this causes deprecation warnings in system logs.

Signed-off-by: Pavel Zhukov 
---
 meta/recipes-core/dbus/dbus_1.14.0.bb | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-core/dbus/dbus_1.14.0.bb 
b/meta/recipes-core/dbus/dbus_1.14.0.bb
index 7598c45f8e..0046b9fda2 100644
--- a/meta/recipes-core/dbus/dbus_1.14.0.bb
+++ b/meta/recipes-core/dbus/dbus_1.14.0.bb
@@ -24,6 +24,7 @@ EXTRA_OECONF = "--disable-xml-docs \
 --enable-tests \
 --enable-checks \
 --enable-asserts \
+--runstatedir=/run \
 "
 EXTRA_OECONF:append:class-target = " SYSTEMCTL=${base_bindir}/systemctl"
 
@@ -131,7 +132,7 @@ do_install() {
sed 's:@bindir@:${bindir}:' < ${WORKDIR}/dbus-1.init 
>${WORKDIR}/dbus-1.init.sh
install -m 0755 ${WORKDIR}/dbus-1.init.sh 
${D}${sysconfdir}/init.d/dbus-1
install -d ${D}${sysconfdir}/default/volatiles
-   echo "d messagebus messagebus 0755 ${localstatedir}/run/dbus 
none" \
+   echo "d messagebus messagebus 0755 /run/dbus none" \
 > ${D}${sysconfdir}/default/volatiles/99_dbus
fi
 
-- 
2.35.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166765): 
https://lists.openembedded.org/g/openembedded-core/message/166765
Mute This Topic: https://lists.openembedded.org/mt/91641805/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH] dbus: Soecify runstatedir configure option

2022-06-09 Thread Pavel Zhukov
From: Pavel Zhukov 

Without specifing runstatedir tmpfiles.d is configured to use /var/run
for dbus and this causes deprecation warnings in system logs.

Signed-off-by: Pavel Zhukov 
---
 meta/recipes-core/dbus/dbus_1.14.0.bb | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-core/dbus/dbus_1.14.0.bb 
b/meta/recipes-core/dbus/dbus_1.14.0.bb
index 7598c45f8e..0046b9fda2 100644
--- a/meta/recipes-core/dbus/dbus_1.14.0.bb
+++ b/meta/recipes-core/dbus/dbus_1.14.0.bb
@@ -24,6 +24,7 @@ EXTRA_OECONF = "--disable-xml-docs \
 --enable-tests \
 --enable-checks \
 --enable-asserts \
+--runstatedir=/run \
 "
 EXTRA_OECONF:append:class-target = " SYSTEMCTL=${base_bindir}/systemctl"
 
@@ -131,7 +132,7 @@ do_install() {
sed 's:@bindir@:${bindir}:' < ${WORKDIR}/dbus-1.init 
>${WORKDIR}/dbus-1.init.sh
install -m 0755 ${WORKDIR}/dbus-1.init.sh 
${D}${sysconfdir}/init.d/dbus-1
install -d ${D}${sysconfdir}/default/volatiles
-   echo "d messagebus messagebus 0755 ${localstatedir}/run/dbus 
none" \
+   echo "d messagebus messagebus 0755 /run/dbus none" \
 > ${D}${sysconfdir}/default/volatiles/99_dbus
fi
 
-- 
2.35.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166764): 
https://lists.openembedded.org/g/openembedded-core/message/166764
Mute This Topic: https://lists.openembedded.org/mt/91641795/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH] uboot-sign: Fix potential index error issues

2022-06-09 Thread Richard Purdie
Someone reported that if some other shell function has left i or j set,
the concat_dtb_helper function could fail. Add a small tweak to avoid this.

[YOCTO #14815]

Signed-off-by: Richard Purdie 
---
 meta/classes/uboot-sign.bbclass | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta/classes/uboot-sign.bbclass b/meta/classes/uboot-sign.bbclass
index 4ca8118eb27..31ffe1f4720 100644
--- a/meta/classes/uboot-sign.bbclass
+++ b/meta/classes/uboot-sign.bbclass
@@ -134,6 +134,8 @@ concat_dtb_helper() {
 
if [ -n "${UBOOT_CONFIG}" ]
then
+   i=0
+   j=0
for config in ${UBOOT_MACHINE}; do
i=$(expr $i + 1);
for type in ${UBOOT_CONFIG}; do
-- 
2.34.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166763): 
https://lists.openembedded.org/g/openembedded-core/message/166763
Mute This Topic: https://lists.openembedded.org/mt/91641584/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[OE-core] [PATCH] ltp: use bfd even when gold is used with ld-is-gold

2022-06-09 Thread Martin Jansa
* version 20220527 added KVM test infrastructure which currently fails to build 
with gold due to
  SORT_NONE in linker script which isn't supported by gold:
  https://sourceware.org/bugzilla/show_bug.cgi?id=18097
  
https://github.com/linux-test-project/ltp/commit/3fce2064b54843218d085aae326c8f7ecf3a8c41#diff-39268f0855c634ca48c8993fcd2c95b12a65b79e8d9fa5ccd6b0f5a8785c0dd6R36

Signed-off-by: Martin Jansa 
---
 meta/recipes-extended/ltp/ltp_20220527.bb | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/meta/recipes-extended/ltp/ltp_20220527.bb 
b/meta/recipes-extended/ltp/ltp_20220527.bb
index b136c83860..b3ef8f5910 100644
--- a/meta/recipes-extended/ltp/ltp_20220527.bb
+++ b/meta/recipes-extended/ltp/ltp_20220527.bb
@@ -33,6 +33,12 @@ S = "${WORKDIR}/git"
 
 inherit autotools-brokensep pkgconfig
 
+# Version 20220527 added KVM test infrastructure which currently fails to 
build with gold due to
+# SORT_NONE in linker script which isn't supported by gold:
+# https://sourceware.org/bugzilla/show_bug.cgi?id=18097
+# 
https://github.com/linux-test-project/ltp/commit/3fce2064b54843218d085aae326c8f7ecf3a8c41#diff-39268f0855c634ca48c8993fcd2c95b12a65b79e8d9fa5ccd6b0f5a8785c0dd6R36
+LDFLAGS:append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' 
-fuse-ld=bfd', '', d)}"
+
 TARGET_CC_ARCH += "${LDFLAGS}"
 
 export prefix = "/opt/${PN}"
-- 
2.35.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166762): 
https://lists.openembedded.org/g/openembedded-core/message/166762
Mute This Topic: https://lists.openembedded.org/mt/91641377/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH 17/21] ltp: upgrade 20220121 -> 20220527

2022-06-09 Thread Martin Jansa
This seems to be causing:
http://errors.yoctoproject.org/Errors/Details/657959/
when ld-is-gold is used.

Added in upstream commit:
  commit 3fce2064b54843218d085aae326c8f7ecf3a8c41
  Author: Martin Doucha 
  Date:   Thu Apr 21 14:33:50 2022 +0200

KVM test infrastructure

https://github.com/linux-test-project/ltp/commit/3fce2064b54843218d085aae326c8f7ecf3a8c41#diff-39268f0855c634ca48c8993fcd2c95b12a65b79e8d9fa5ccd6b0f5a8785c0dd6R36

On Mon, Jun 6, 2022 at 2:02 PM Alexander Kanavin 
wrote:

> Disable stack protection as newly added kvm tests won't build with it.
>
> Signed-off-by: Alexander Kanavin 
> ---
>  meta/conf/distro/include/security_flags.inc   |  1 +
>  ...sh-sort-filelist-for-reproducibility.patch | 28 ---
>  .../ltp/{ltp_20220121.bb => ltp_20220527.bb}  |  3 +-
>  3 files changed, 2 insertions(+), 30 deletions(-)
>  delete mode 100644
> meta/recipes-extended/ltp/ltp/0001-metadata-parse.sh-sort-filelist-for-reproducibility.patch
>  rename meta/recipes-extended/ltp/{ltp_20220121.bb => ltp_20220527.bb}
> (97%)
>
> diff --git a/meta/conf/distro/include/security_flags.inc
> b/meta/conf/distro/include/security_flags.inc
> index 8374cb8544..2972f05b4e 100644
> --- a/meta/conf/distro/include/security_flags.inc
> +++ b/meta/conf/distro/include/security_flags.inc
> @@ -61,6 +61,7 @@ TARGET_LDFLAGS:append:class-cross-canadian = "
> ${SECURITY_LDFLAGS}"
>  SECURITY_STACK_PROTECTOR:pn-gcc-runtime = ""
>  SECURITY_STACK_PROTECTOR:pn-glibc = ""
>  SECURITY_STACK_PROTECTOR:pn-glibc-testsuite = ""
> +SECURITY_STACK_PROTECTOR:pn-ltp = ""
>  # All xorg module drivers need to be linked this way as well and are
>  # handled in recipes-graphics/xorg-driver/xorg-driver-common.inc
>  SECURITY_LDFLAGS:pn-xserver-xorg = "${SECURITY_X_LDFLAGS}"
> diff --git
> a/meta/recipes-extended/ltp/ltp/0001-metadata-parse.sh-sort-filelist-for-reproducibility.patch
> b/meta/recipes-extended/ltp/ltp/0001-metadata-parse.sh-sort-filelist-for-reproducibility.patch
> deleted file mode 100644
> index e8d9f212a9..00
> ---
> a/meta/recipes-extended/ltp/ltp/0001-metadata-parse.sh-sort-filelist-for-reproducibility.patch
> +++ /dev/null
> @@ -1,28 +0,0 @@
> -From 4aad23f208cc7725cd61bbe5aaadb9994c794cd0 Mon Sep 17 00:00:00 2001
> -From: Alexander Kanavin 
> -Date: Wed, 26 Jan 2022 20:58:46 +0100
> -Subject: [PATCH] metadata/parse.sh: sort filelist for reproducibility
> -
> -find does not guarantee the order of the files.
> -
> -Upstream-Status: Submitted [
> https://github.com/linux-test-project/ltp/pull/907]
> -Signed-off-by: Alexander Kanavin 
> 
> - metadata/parse.sh | 2 +-
> -
> -diff --git a/metadata/parse.sh b/metadata/parse.sh
> -index b43d024c68..1811665bfe 100755
>  a/metadata/parse.sh
> -+++ b/metadata/parse.sh
> -@@ -29,7 +29,7 @@ echo ' "tests": {'
> -
> - first=1
> -
> --for test in `find testcases/ -name '*.c'`; do
> -+for test in `find testcases/ -name '*.c'|sort`; do
> -   a=$($top_builddir/metadata/metaparse -Iinclude
> -Itestcases/kernel/syscalls/utils/ "$test")
> -   if [ -n "$a" ]; then
> -   if [ -z "$first" ]; then
> ---
> -2.20.1
> -
> diff --git a/meta/recipes-extended/ltp/ltp_20220121.bb
> b/meta/recipes-extended/ltp/ltp_20220527.bb
> similarity index 97%
> rename from meta/recipes-extended/ltp/ltp_20220121.bb
> rename to meta/recipes-extended/ltp/ltp_20220527.bb
> index 8a13dcf9d0..b136c83860 100644
> --- a/meta/recipes-extended/ltp/ltp_20220121.bb
> +++ b/meta/recipes-extended/ltp/ltp_20220527.bb
> @@ -22,11 +22,10 @@ CFLAGS:append:x86-64 = " -fomit-frame-pointer"
>
>  CFLAGS:append:powerpc64 = " -D__SANE_USERSPACE_TYPES__"
>  CFLAGS:append:mipsarchn64 = " -D__SANE_USERSPACE_TYPES__"
> -SRCREV = "b0561ad8d9ee9fe1244b5385e941eb65a21e91a1"
> +SRCREV = "6f88e0f6f1d6eb12c48c902f50f47ecbd3b0f18a"
>
>  SRC_URI = "git://
> github.com/linux-test-project/ltp.git;branch=master;protocol=https \
> file://0001-Remove-OOM-tests-from-runtest-mm.patch \
> -
>  file://0001-metadata-parse.sh-sort-filelist-for-reproducibility.patch \
> file://disable_hanging_tests.patch \
> "
>
> --
> 2.30.2
>
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166761): 
https://lists.openembedded.org/g/openembedded-core/message/166761
Mute This Topic: https://lists.openembedded.org/mt/91575165/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [master][kirkstone][PATCH] efivar: add musl libc compatibility

2022-06-09 Thread Davide Gardenal
Greetings,

I’m here to flag that this patch has not yet landed to kirkstone-nut, is there 
any reason why?

Davide

> Il giorno 24 mag 2022, alle ore 10:04, Davide Gardenal 
>  ha scritto:
>
> Backport patch to get efivar working with musl.
>
> Upstream issue:
> https://github.com/rhboot/efivar/issues/202
>
> After commit meta-oe/1582f81805ee3114bc1a44bd5cf52d21f96702ca
> fwupd gives an error when trying to build with musl because
> efivar is not compatible. This fixes the issue.
>
> Signed-off-by: Davide Gardenal 
> ---
> .../efisecdb-fix-build-with-musl-libc.patch   | 184 ++
> meta/recipes-bsp/efivar/efivar_38.bb  |   3 +-
> 2 files changed, 185 insertions(+), 2 deletions(-)
> create mode 100644 
> meta/recipes-bsp/efivar/efivar/efisecdb-fix-build-with-musl-libc.patch
>
> diff --git 
> a/meta/recipes-bsp/efivar/efivar/efisecdb-fix-build-with-musl-libc.patch 
> b/meta/recipes-bsp/efivar/efivar/efisecdb-fix-build-with-musl-libc.patch
> new file mode 100644
> index 00..ec5b285a06
> --- /dev/null
> +++ b/meta/recipes-bsp/efivar/efivar/efisecdb-fix-build-with-musl-libc.patch
> @@ -0,0 +1,184 @@
> +From cece3ffd5be2f8641eb694513f2b73e5eb97ffd3 Mon Sep 17 00:00:00 2001
> +From: Natanael Copa 
> +Date: Fri, 28 Jan 2022 12:13:30 +0100
> +Subject: [PATCH] efisecdb: fix build with musl libc
> +
> +Refactor code to use POSIX atexit(3) instead of the GNU specific
> +on_exit(3).
> +
> +Resolves: #197
> +Resolves: #202
> +Signed-off-by: Natanael Copa 
> +
> +Upstream-Status: Backport
> +https://github.com/rhboot/efivar/commit/cece3ffd5be2f8641eb694513f2b73e5eb97ffd3
> +
> +Signed-off-by: Davide Gardenal 
> +---
> + src/compiler.h |  2 --
> + src/efisecdb.c | 68 +++---
> + 2 files changed, 26 insertions(+), 44 deletions(-)
> +
> +diff --git a/src/compiler.h b/src/compiler.h
> +index e2f18f0b..d95fb014 100644
> +--- a/src/compiler.h
>  b/src/compiler.h
> +@@ -7,8 +7,6 @@
> + #ifndef COMPILER_H_
> + #define COMPILER_H_
> +
> +-#include 
> +-
> + /* GCC version checking borrowed from glibc. */
> + #if defined(__GNUC__) && defined(__GNUC_MINOR__)
> + #  define GNUC_PREREQ(maj,min) \
> +diff --git a/src/efisecdb.c b/src/efisecdb.c
> +index f8823737..6bd5ad90 100644
> +--- a/src/efisecdb.c
>  b/src/efisecdb.c
> +@@ -25,6 +25,10 @@
> + extern char *optarg;
> + extern int optind, opterr, optopt;
> +
> ++static efi_secdb_t *secdb = NULL;
> ++static list_t infiles;
> ++static list_t actions;
> ++
> + struct hash_param {
> + char *name;
> + efi_secdb_type_t algorithm;
> +@@ -187,12 +191,11 @@ add_action(list_t *list, action_type_t action_type, 
> const efi_guid_t *owner,
> + }
> +
> + static void
> +-free_actions(int status UNUSED, void *actionsp)
> ++free_actions(void)
> + {
> +-list_t *actions = (list_t *)actionsp;
> + list_t *pos, *tmp;
> +
> +-for_each_action_safe(pos, tmp, actions) {
> ++for_each_action_safe(pos, tmp, ) {
> + action_t *action = list_entry(pos, action_t, list);
> +
> + list_del(>list);
> +@@ -202,12 +205,11 @@ free_actions(int status UNUSED, void *actionsp)
> + }
> +
> + static void
> +-free_infiles(int status UNUSED, void *infilesp)
> ++free_infiles(void)
> + {
> +-list_t *infiles = (list_t *)infilesp;
> + list_t *pos, *tmp;
> +
> +-for_each_ptr_safe(pos, tmp, infiles) {
> ++for_each_ptr_safe(pos, tmp, ) {
> + ptrlist_t *entry = list_entry(pos, ptrlist_t, list);
> +
> + list_del(>list);
> +@@ -216,27 +218,12 @@ free_infiles(int status UNUSED, void *infilesp)
> + }
> +
> + static void
> +-maybe_free_secdb(int status UNUSED, void *voidp)
> ++maybe_free_secdb(void)
> + {
> +-efi_secdb_t **secdbp = (efi_secdb_t **)voidp;
> +-
> +-if (secdbp == NULL || *secdbp == NULL)
> ++if (secdb == NULL)
> + return;
> +
> +-efi_secdb_free(*secdbp);
> +-}
> +-
> +-static void
> +-maybe_do_unlink(int status, void *filep)
> +-{
> +-char **file = (char **)filep;
> +-
> +-if (status == 0)
> +-return;
> +-if (file == NULL || *file == NULL)
> +-return;
> +-
> +-unlink(*file);
> ++efi_secdb_free(secdb);
> + }
> +
> + static void
> +@@ -323,15 +310,6 @@ parse_input_files(list_t *infiles, char **outfile, 
> efi_secdb_t **secdb,
> + return status;
> + }
> +
> +-/*
> +- * These need to be static globals so that they're not on main's stack when
> +- * on_exit() fires.
> +- */
> +-static efi_secdb_t *secdb = NULL;
> +-static list_t infiles;
> +-static list_t actions;
> +-static char *outfile = NULL;
> +-
> + int
> + main(int argc, char *argv[])
> + {
> +@@ -351,6 +329,7 @@ main(int argc, char *argv[])
> + bool do_sort_data = false;
> + bool sort_descending = false;
> + int status = 0;
> ++char *outfile = NULL;
> +
> + const char sopts[] = ":aAc:dfg:h:i:Lo:rs:t:v?";
> + const struct option lopts[] = {
> +@@ -376,10 +355,9 @@ main(int argc, char *argv[])
> + 

Re: [OE-core] [PATCH] e2fsprogs: add alternatives handling of lsattr as well

2022-06-09 Thread Luca Ceresoli via lists.openembedded.org
Hi Rasmus,

On Wed,  8 Jun 2022 15:12:05 +0200
"Rasmus Villemoes via lists.openembedded.org"
 wrote:
 ^^^

As you can see above, your sender address is getting mangled. This is
not your fault, but it makes applying your patches annoying.

Can you please try to work around that by setting the sendemail.from
parameter in your git config?

You can read the details in this discussion:
https://lists.openembedded.org/g/openembedded-core/message/166515?p=%2C%2C%2C20%2C0%2C0%2C0%3A%3Acreated%2C0%2Crootfs.py%3A+find+.ko.zst+kernel+modules%2C20%2C2%2C0%2C91453338

Thanks you very much!

-- 
Luca Ceresoli, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166759): 
https://lists.openembedded.org/g/openembedded-core/message/166759
Mute This Topic: https://lists.openembedded.org/mt/91622646/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH v3] python3-cryptography: remove --benchmark-disable option

2022-06-09 Thread Luca Ceresoli via lists.openembedded.org
Hi,

On Wed, 8 Jun 2022 17:31:20 +0800
"Yu, Mingli"  wrote:

> From: Mingli Yu 
> 
> The new version introduced below change, so remove the option
> to avoid python3-pytest-benchmark rdepends to fix the gap.
> 496703c8 Refs #7079 -- added basic scaffholding for benchmarks (#7087)
> 
> Fixes:
>   # ./run-ptest
>   Free memory: 31.283 GB
>   ERROR: usage: pytest [options] [file_or_dir] [file_or_dir] [...]
>   pytest: error: unrecognized arguments: --benchmark-disable
>   inifile: /usr/lib/python3-cryptography/ptest/pyproject.toml
>   rootdir: /usr/lib/python3-cryptography/ptest
> 
> Remove the case test_x509.py to avoid below failure:
>  file /usr/lib64/python3-cryptography/ptest/tests/bench/test_x509.py, line 9
>   def test_aki_public_bytes(benchmark):
>  >   fixture 'benchmark' not found
>  >   available fixtures: backend, cache, capfd, capfdbinary, caplog, 
> capsys, capsysbinary, disable_rsa_checks, doctesty
>  >   use 'pytest --fixtures [testpath]' for help on them.  
> 
> Signed-off-by: Mingli Yu 

I currently see all patches at v1, and a patch has one v2 and two v3s.
This is confusing and chances are whatever I take for testing will be
wrong.

Could you please send the entire series as v4, updated at the
current state of the art and with all the changes discussed in previous
replies?

Thanks!
-- 
Luca Ceresoli, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#166758): 
https://lists.openembedded.org/g/openembedded-core/message/166758
Mute This Topic: https://lists.openembedded.org/mt/91619732/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-