All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [OE-Core][PATCH v4 00/11] Add rust runtime tests
       [not found] <17342835AC830076.27785@lists.openembedded.org>
@ 2022-12-26  9:41 ` Alex Kiernan
  2022-12-26 10:27   ` Richard Purdie
       [not found]   ` <17345100F004118F.27785@lists.openembedded.org>
  0 siblings, 2 replies; 10+ messages in thread
From: Alex Kiernan @ 2022-12-26  9:41 UTC (permalink / raw)
  To: Richard Purdie, Patches and discussions about the oe-core layer

[-- Attachment #1: Type: text/plain, Size: 3069 bytes --]

There's something odd happened here. Three of the patches in the previous
version I posted look to have been merged in poky, but not oe-core? I
thought the flow was from oe-core into poky.

On Sun, 25 Dec 2022, 21:59 Alex Kiernan via lists.openembedded.org,
<alex.kiernan=gmail.com@lists.openembedded.org> wrote:

>
> This series adds runtime tests for rust and cargo, merges (most of) the
> include files into the base recipes and fixes target cargo builds.
>
> Also add SDK_TOOLCHAIN_LANGS for selection of target toolchains as part
> of packagegroup-core-sdk.
>
> Changes in v4:
> - Fixup `__stack_chk_fail_local` in musl-x86
> - Add crossbeam atomics fixes for ppc/mips
>
> Changes in v3:
> - Switch to packagegroup-core-sdk driven from TARGET_TOOLCHAIN_LANGS
>   (which defaults to SDK_TOOLCHAIN_LANGS)
>
> Changes in v2:
> - Drop rust.inc/rust.bb merge, not actually made use of in the change
>   set
> - Reorder so cargo test goes after build fixes
>
> Alex Kiernan (11):
>   rust-llvm: Merge .inc into .bb
>   rust-llvm: Update LLVM_VERSION to match embedded version
>   packagegroup-rust-sdk-target: Add Rust SDK target packagegroup
>   packagegroup-core-sdk: Add SDK toolchain language selection support
>   cargo: Merge .inc into .bb
>   cargo: Extend DEBUG_PREFIX_MAP to cover vendor
>   rust: Merge .inc into .bb
>   rust: Move musl-x86 fix for `__stack_chk_fail_local` to rust-source
>   cargo: Override crossbeam-utils with 0.8.14
>   packagegroup-rust-sdk-target: Add cargo
>   oeqa/runtime/rust: Add cargo test
>
>  meta/lib/oeqa/runtime/cases/rust.py           |  17 ++
>  .../packagegroups/packagegroup-core-sdk.bb    |  10 +-
>  .../packagegroup-rust-sdk-target.bb           |  14 ++
>  meta/recipes-devtools/cargo/cargo.inc         |  69 ------
>  meta/recipes-devtools/cargo/cargo_1.66.0.bb   |  80 ++++++-
>  meta/recipes-devtools/rust/rust-llvm.inc      |  78 ------
>  .../recipes-devtools/rust/rust-llvm_1.66.0.bb |  82 ++++++-
>  meta/recipes-devtools/rust/rust-source.inc    |   5 +
>  meta/recipes-devtools/rust/rust-target.inc    |  10 -
>  meta/recipes-devtools/rust/rust.inc           | 223 ------------------
>  meta/recipes-devtools/rust/rust_1.66.0.bb     | 223 +++++++++++++++++-
>  11 files changed, 420 insertions(+), 391 deletions(-)
>  create mode 100644 meta/recipes-core/packagegroups/
> packagegroup-rust-sdk-target.bb
>  delete mode 100644 meta/recipes-devtools/cargo/cargo.inc
>  delete mode 100644 meta/recipes-devtools/rust/rust-llvm.inc
>  delete mode 100644 meta/recipes-devtools/rust/rust-target.inc
>  delete mode 100644 meta/recipes-devtools/rust/rust.inc
>
> --
> 2.39.0
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#174995):
> https://lists.openembedded.org/g/openembedded-core/message/174995
> Mute This Topic: https://lists.openembedded.org/mt/95880347/3618097
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [
> alex.kiernan@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
>

[-- Attachment #2: Type: text/html, Size: 5005 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [OE-Core][PATCH v4 00/11] Add rust runtime tests
  2022-12-26  9:41 ` [OE-Core][PATCH v4 00/11] Add rust runtime tests Alex Kiernan
@ 2022-12-26 10:27   ` Richard Purdie
       [not found]   ` <17345100F004118F.27785@lists.openembedded.org>
  1 sibling, 0 replies; 10+ messages in thread
From: Richard Purdie @ 2022-12-26 10:27 UTC (permalink / raw)
  To: Alex Kiernan, Patches and discussions about the oe-core layer

On Mon, 2022-12-26 at 09:41 +0000, Alex Kiernan wrote:
> There's something odd happened here. Three of the patches in the
> previous version I posted look to have been merged in poky, but not
> oe-core? I thought the flow was from oe-core into poky.

I'd attempted to take three of them into master-next to try and move
things along a little with testing. It looks like I've messed something
up. I'll try and reconcile things, thanks for pointing it out. Not sure
how I managed this!

Cheers,

Richard


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [OE-Core][PATCH v4 00/11] Add rust runtime tests
       [not found]   ` <17345100F004118F.27785@lists.openembedded.org>
@ 2022-12-26 11:15     ` Richard Purdie
  0 siblings, 0 replies; 10+ messages in thread
From: Richard Purdie @ 2022-12-26 11:15 UTC (permalink / raw)
  To: Alex Kiernan, Patches and discussions about the oe-core layer

On Mon, 2022-12-26 at 10:27 +0000, Richard Purdie via
lists.openembedded.org wrote:
> On Mon, 2022-12-26 at 09:41 +0000, Alex Kiernan wrote:
> > There's something odd happened here. Three of the patches in the
> > previous version I posted look to have been merged in poky, but not
> > oe-core? I thought the flow was from oe-core into poky.
> 
> I'd attempted to take three of them into master-next to try and move
> things along a little with testing. It looks like I've messed something
> up. I'll try and reconcile things, thanks for pointing it out. Not sure
> how I managed this!

I can only think I ran some commands in the wrong terminal window. The
simplest thing for me to do was to bring the branches into sync which
I've done, which means some of the series did merge. I don't think that
should be a problem and we can build incrementally on it.

Cheers,

Richard


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [OE-Core][PATCH v4 00/11] Add rust runtime tests
  2022-12-29 12:53         ` Richard Purdie
@ 2022-12-29 19:25           ` Alex Kiernan
  0 siblings, 0 replies; 10+ messages in thread
From: Alex Kiernan @ 2022-12-29 19:25 UTC (permalink / raw)
  To: Richard Purdie; +Cc: openembedded-core, Kokkonda, Sundeep, Randy MacLeod

On Thu, Dec 29, 2022 at 12:53 PM Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
>
> On Wed, 2022-12-28 at 14:51 +0000, Alex Kiernan wrote:
> > On Wed, Dec 28, 2022 at 12:01 AM Richard Purdie
> > <richard.purdie@linuxfoundation.org> wrote:
> > >
> > > On Tue, 2022-12-27 at 18:09 +0000, Alex Kiernan wrote:
> > > > On Mon, Dec 26, 2022 at 6:33 PM Richard Purdie
> > > > <richard.purdie@linuxfoundation.org> wrote:
> > > > >
> > > > > On Sun, 2022-12-25 at 21:59 +0000, Alex Kiernan wrote:
> > > > > > This series adds runtime tests for rust and cargo, merges (most of) the
> > > > > > include files into the base recipes and fixes target cargo builds.
> > > > > >
> > > > > > Also add SDK_TOOLCHAIN_LANGS for selection of target toolchains as part
> > > > > > of packagegroup-core-sdk.
> > > > > >
> > > > > > Changes in v4:
> > > > > > - Fixup `__stack_chk_fail_local` in musl-x86
> > > > > > - Add crossbeam atomics fixes for ppc/mips
> > > > > >
> > > > > > Changes in v3:
> > > > > > - Switch to packagegroup-core-sdk driven from TARGET_TOOLCHAIN_LANGS
> > > > > >   (which defaults to SDK_TOOLCHAIN_LANGS)
> > > > > >
> > > > > > Changes in v2:
> > > > > > - Drop rust.inc/rust.bb merge, not actually made use of in the change
> > > > > >   set
> > > > > > - Reorder so cargo test goes after build fixes
> > > > > >
> > > > > > Alex Kiernan (11):
> > > > > >   rust-llvm: Merge .inc into .bb
> > > > > >   rust-llvm: Update LLVM_VERSION to match embedded version
> > > > > >   packagegroup-rust-sdk-target: Add Rust SDK target packagegroup
> > > > > >   packagegroup-core-sdk: Add SDK toolchain language selection support
> > > > > >   cargo: Merge .inc into .bb
> > > > > >   cargo: Extend DEBUG_PREFIX_MAP to cover vendor
> > > > > >   rust: Merge .inc into .bb
> > > > > >   rust: Move musl-x86 fix for `__stack_chk_fail_local` to rust-source
> > > > > >   cargo: Override crossbeam-utils with 0.8.14
> > > > > >   packagegroup-rust-sdk-target: Add cargo
> > > > > >   oeqa/runtime/rust: Add cargo test
> > > > >
> > > > > Looks much better thanks. There was one remaining issue which showed up
> > > > > in testing with a reproducibility issue:
> > > > >
> > > > > https://autobuilder.yoctoproject.org/typhoon/#/builders/117/builds/2119/steps/12/logs/stdio
> > > > >
> > > > > We did already have an open bug for a rust reproducibility issue and we
> > > > > excluded it from the tests until we could get to the bottom of it, I
> > > > > suspect cargo may have the same issue. It frustrates me a bit as it is
> > > > > the one reproducibility exclusion for core.
> > > > >
> > > > > Ideally we would fix it but excluding it from the tests and noting it
> > > > > in the bug may be an option if it is the same issue. It may be simpler
> > > > > to reproduce and fix the issue with cargo too.
> > > > >
> > > > > Cc: Sundeep who as been looking at it.
> > > > >
> > > >
> > > > Just reading the ticket and the upstream ones... the upstream ticket
> > > > is closed as remap path fixes it (which it looks like it does to me),
> > > > there are build paths embedded in the build directory which don't get
> > > > caught by that, but they're in thing like bootstrap which isn't
> > > > packaged (which may or may not be an issue, but I'm suspecting not);
> > > > it kinda feels like we're missing something.
> > > >
> > > > Can I get hold of the cargo packages generated here to have a poke at them?
> > >
> > > Yes. The key line in the log is:
> > >
> > > 022-12-26 11:56:30,555 - oe-selftest - INFO - Non-reproducible packages will be copied to /srv/autobuilder/autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20221226-0vk5efsk
> > >
> > > i.e.
> > >
> > > https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20221226-0vk5efsk
> > >
> > > where you'll find both the package files and diffoscope output:
> > >
> > > https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20221226-0vk5efsk/packages/diff-html/
> > >
> > > which seems to be saying the symbol table changed size which is
> > > unusual. I didn't look very deeply.
> > >
> >
> > Upstream has this ticket which, given how I did the patching for
> > cargo, feels like the right kind of thing (rust has something similar
> > out of the box):
> >
> > https://github.com/rust-lang/rust/issues/98185
> >
> > I've switched it around so that it uses local patching rather than
> > cargo patching, which if it is this, seems like it might resolve it.
>
> It was a different issue, thanks for tracking that down and fixing it!
>

I'm not so sure - there's a .cargo/config.toml in the vendored rustc
tarball which explicitly patches one of the vendored sources (it feels
odd, but hey...), so I think we'll trip over this issue (assuming
that's what the problem is).

> The tests all passed so I merged the v5 series. Thanks for working
> through things, I think this makes our rust situation much more robust
> and should help future proof it :)
>

:)

-- 
Alex Kiernan


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [OE-Core][PATCH v4 00/11] Add rust runtime tests
  2022-12-28 14:51       ` Alex Kiernan
@ 2022-12-29 12:53         ` Richard Purdie
  2022-12-29 19:25           ` Alex Kiernan
  0 siblings, 1 reply; 10+ messages in thread
From: Richard Purdie @ 2022-12-29 12:53 UTC (permalink / raw)
  To: Alex Kiernan; +Cc: openembedded-core, Kokkonda, Sundeep, Randy MacLeod

On Wed, 2022-12-28 at 14:51 +0000, Alex Kiernan wrote:
> On Wed, Dec 28, 2022 at 12:01 AM Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> > 
> > On Tue, 2022-12-27 at 18:09 +0000, Alex Kiernan wrote:
> > > On Mon, Dec 26, 2022 at 6:33 PM Richard Purdie
> > > <richard.purdie@linuxfoundation.org> wrote:
> > > > 
> > > > On Sun, 2022-12-25 at 21:59 +0000, Alex Kiernan wrote:
> > > > > This series adds runtime tests for rust and cargo, merges (most of) the
> > > > > include files into the base recipes and fixes target cargo builds.
> > > > > 
> > > > > Also add SDK_TOOLCHAIN_LANGS for selection of target toolchains as part
> > > > > of packagegroup-core-sdk.
> > > > > 
> > > > > Changes in v4:
> > > > > - Fixup `__stack_chk_fail_local` in musl-x86
> > > > > - Add crossbeam atomics fixes for ppc/mips
> > > > > 
> > > > > Changes in v3:
> > > > > - Switch to packagegroup-core-sdk driven from TARGET_TOOLCHAIN_LANGS
> > > > >   (which defaults to SDK_TOOLCHAIN_LANGS)
> > > > > 
> > > > > Changes in v2:
> > > > > - Drop rust.inc/rust.bb merge, not actually made use of in the change
> > > > >   set
> > > > > - Reorder so cargo test goes after build fixes
> > > > > 
> > > > > Alex Kiernan (11):
> > > > >   rust-llvm: Merge .inc into .bb
> > > > >   rust-llvm: Update LLVM_VERSION to match embedded version
> > > > >   packagegroup-rust-sdk-target: Add Rust SDK target packagegroup
> > > > >   packagegroup-core-sdk: Add SDK toolchain language selection support
> > > > >   cargo: Merge .inc into .bb
> > > > >   cargo: Extend DEBUG_PREFIX_MAP to cover vendor
> > > > >   rust: Merge .inc into .bb
> > > > >   rust: Move musl-x86 fix for `__stack_chk_fail_local` to rust-source
> > > > >   cargo: Override crossbeam-utils with 0.8.14
> > > > >   packagegroup-rust-sdk-target: Add cargo
> > > > >   oeqa/runtime/rust: Add cargo test
> > > > 
> > > > Looks much better thanks. There was one remaining issue which showed up
> > > > in testing with a reproducibility issue:
> > > > 
> > > > https://autobuilder.yoctoproject.org/typhoon/#/builders/117/builds/2119/steps/12/logs/stdio
> > > > 
> > > > We did already have an open bug for a rust reproducibility issue and we
> > > > excluded it from the tests until we could get to the bottom of it, I
> > > > suspect cargo may have the same issue. It frustrates me a bit as it is
> > > > the one reproducibility exclusion for core.
> > > > 
> > > > Ideally we would fix it but excluding it from the tests and noting it
> > > > in the bug may be an option if it is the same issue. It may be simpler
> > > > to reproduce and fix the issue with cargo too.
> > > > 
> > > > Cc: Sundeep who as been looking at it.
> > > > 
> > > 
> > > Just reading the ticket and the upstream ones... the upstream ticket
> > > is closed as remap path fixes it (which it looks like it does to me),
> > > there are build paths embedded in the build directory which don't get
> > > caught by that, but they're in thing like bootstrap which isn't
> > > packaged (which may or may not be an issue, but I'm suspecting not);
> > > it kinda feels like we're missing something.
> > > 
> > > Can I get hold of the cargo packages generated here to have a poke at them?
> > 
> > Yes. The key line in the log is:
> > 
> > 022-12-26 11:56:30,555 - oe-selftest - INFO - Non-reproducible packages will be copied to /srv/autobuilder/autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20221226-0vk5efsk
> > 
> > i.e.
> > 
> > https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20221226-0vk5efsk
> > 
> > where you'll find both the package files and diffoscope output:
> > 
> > https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20221226-0vk5efsk/packages/diff-html/
> > 
> > which seems to be saying the symbol table changed size which is
> > unusual. I didn't look very deeply.
> > 
> 
> Upstream has this ticket which, given how I did the patching for
> cargo, feels like the right kind of thing (rust has something similar
> out of the box):
> 
> https://github.com/rust-lang/rust/issues/98185
> 
> I've switched it around so that it uses local patching rather than
> cargo patching, which if it is this, seems like it might resolve it.

It was a different issue, thanks for tracking that down and fixing it!

The tests all passed so I merged the v5 series. Thanks for working
through things, I think this makes our rust situation much more robust
and should help future proof it :)

Cheers,

Richard


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [OE-Core][PATCH v4 00/11] Add rust runtime tests
  2022-12-28  0:00     ` Richard Purdie
@ 2022-12-28 14:51       ` Alex Kiernan
  2022-12-29 12:53         ` Richard Purdie
  0 siblings, 1 reply; 10+ messages in thread
From: Alex Kiernan @ 2022-12-28 14:51 UTC (permalink / raw)
  To: Richard Purdie; +Cc: openembedded-core, Kokkonda, Sundeep, Randy MacLeod

On Wed, Dec 28, 2022 at 12:01 AM Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
>
> On Tue, 2022-12-27 at 18:09 +0000, Alex Kiernan wrote:
> > On Mon, Dec 26, 2022 at 6:33 PM Richard Purdie
> > <richard.purdie@linuxfoundation.org> wrote:
> > >
> > > On Sun, 2022-12-25 at 21:59 +0000, Alex Kiernan wrote:
> > > > This series adds runtime tests for rust and cargo, merges (most of) the
> > > > include files into the base recipes and fixes target cargo builds.
> > > >
> > > > Also add SDK_TOOLCHAIN_LANGS for selection of target toolchains as part
> > > > of packagegroup-core-sdk.
> > > >
> > > > Changes in v4:
> > > > - Fixup `__stack_chk_fail_local` in musl-x86
> > > > - Add crossbeam atomics fixes for ppc/mips
> > > >
> > > > Changes in v3:
> > > > - Switch to packagegroup-core-sdk driven from TARGET_TOOLCHAIN_LANGS
> > > >   (which defaults to SDK_TOOLCHAIN_LANGS)
> > > >
> > > > Changes in v2:
> > > > - Drop rust.inc/rust.bb merge, not actually made use of in the change
> > > >   set
> > > > - Reorder so cargo test goes after build fixes
> > > >
> > > > Alex Kiernan (11):
> > > >   rust-llvm: Merge .inc into .bb
> > > >   rust-llvm: Update LLVM_VERSION to match embedded version
> > > >   packagegroup-rust-sdk-target: Add Rust SDK target packagegroup
> > > >   packagegroup-core-sdk: Add SDK toolchain language selection support
> > > >   cargo: Merge .inc into .bb
> > > >   cargo: Extend DEBUG_PREFIX_MAP to cover vendor
> > > >   rust: Merge .inc into .bb
> > > >   rust: Move musl-x86 fix for `__stack_chk_fail_local` to rust-source
> > > >   cargo: Override crossbeam-utils with 0.8.14
> > > >   packagegroup-rust-sdk-target: Add cargo
> > > >   oeqa/runtime/rust: Add cargo test
> > >
> > > Looks much better thanks. There was one remaining issue which showed up
> > > in testing with a reproducibility issue:
> > >
> > > https://autobuilder.yoctoproject.org/typhoon/#/builders/117/builds/2119/steps/12/logs/stdio
> > >
> > > We did already have an open bug for a rust reproducibility issue and we
> > > excluded it from the tests until we could get to the bottom of it, I
> > > suspect cargo may have the same issue. It frustrates me a bit as it is
> > > the one reproducibility exclusion for core.
> > >
> > > Ideally we would fix it but excluding it from the tests and noting it
> > > in the bug may be an option if it is the same issue. It may be simpler
> > > to reproduce and fix the issue with cargo too.
> > >
> > > Cc: Sundeep who as been looking at it.
> > >
> >
> > Just reading the ticket and the upstream ones... the upstream ticket
> > is closed as remap path fixes it (which it looks like it does to me),
> > there are build paths embedded in the build directory which don't get
> > caught by that, but they're in thing like bootstrap which isn't
> > packaged (which may or may not be an issue, but I'm suspecting not);
> > it kinda feels like we're missing something.
> >
> > Can I get hold of the cargo packages generated here to have a poke at them?
>
> Yes. The key line in the log is:
>
> 022-12-26 11:56:30,555 - oe-selftest - INFO - Non-reproducible packages will be copied to /srv/autobuilder/autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20221226-0vk5efsk
>
> i.e.
>
> https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20221226-0vk5efsk
>
> where you'll find both the package files and diffoscope output:
>
> https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20221226-0vk5efsk/packages/diff-html/
>
> which seems to be saying the symbol table changed size which is
> unusual. I didn't look very deeply.
>

Upstream has this ticket which, given how I did the patching for
cargo, feels like the right kind of thing (rust has something similar
out of the box):

https://github.com/rust-lang/rust/issues/98185

I've switched it around so that it uses local patching rather than
cargo patching, which if it is this, seems like it might resolve it.

--
Alex Kiernan


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [OE-Core][PATCH v4 00/11] Add rust runtime tests
  2022-12-27 18:09   ` Alex Kiernan
@ 2022-12-28  0:00     ` Richard Purdie
  2022-12-28 14:51       ` Alex Kiernan
  0 siblings, 1 reply; 10+ messages in thread
From: Richard Purdie @ 2022-12-28  0:00 UTC (permalink / raw)
  To: Alex Kiernan; +Cc: openembedded-core, Kokkonda, Sundeep, Randy MacLeod

On Tue, 2022-12-27 at 18:09 +0000, Alex Kiernan wrote:
> On Mon, Dec 26, 2022 at 6:33 PM Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> > 
> > On Sun, 2022-12-25 at 21:59 +0000, Alex Kiernan wrote:
> > > This series adds runtime tests for rust and cargo, merges (most of) the
> > > include files into the base recipes and fixes target cargo builds.
> > > 
> > > Also add SDK_TOOLCHAIN_LANGS for selection of target toolchains as part
> > > of packagegroup-core-sdk.
> > > 
> > > Changes in v4:
> > > - Fixup `__stack_chk_fail_local` in musl-x86
> > > - Add crossbeam atomics fixes for ppc/mips
> > > 
> > > Changes in v3:
> > > - Switch to packagegroup-core-sdk driven from TARGET_TOOLCHAIN_LANGS
> > >   (which defaults to SDK_TOOLCHAIN_LANGS)
> > > 
> > > Changes in v2:
> > > - Drop rust.inc/rust.bb merge, not actually made use of in the change
> > >   set
> > > - Reorder so cargo test goes after build fixes
> > > 
> > > Alex Kiernan (11):
> > >   rust-llvm: Merge .inc into .bb
> > >   rust-llvm: Update LLVM_VERSION to match embedded version
> > >   packagegroup-rust-sdk-target: Add Rust SDK target packagegroup
> > >   packagegroup-core-sdk: Add SDK toolchain language selection support
> > >   cargo: Merge .inc into .bb
> > >   cargo: Extend DEBUG_PREFIX_MAP to cover vendor
> > >   rust: Merge .inc into .bb
> > >   rust: Move musl-x86 fix for `__stack_chk_fail_local` to rust-source
> > >   cargo: Override crossbeam-utils with 0.8.14
> > >   packagegroup-rust-sdk-target: Add cargo
> > >   oeqa/runtime/rust: Add cargo test
> > 
> > Looks much better thanks. There was one remaining issue which showed up
> > in testing with a reproducibility issue:
> > 
> > https://autobuilder.yoctoproject.org/typhoon/#/builders/117/builds/2119/steps/12/logs/stdio
> > 
> > We did already have an open bug for a rust reproducibility issue and we
> > excluded it from the tests until we could get to the bottom of it, I
> > suspect cargo may have the same issue. It frustrates me a bit as it is
> > the one reproducibility exclusion for core.
> > 
> > Ideally we would fix it but excluding it from the tests and noting it
> > in the bug may be an option if it is the same issue. It may be simpler
> > to reproduce and fix the issue with cargo too.
> > 
> > Cc: Sundeep who as been looking at it.
> > 
> 
> Just reading the ticket and the upstream ones... the upstream ticket
> is closed as remap path fixes it (which it looks like it does to me),
> there are build paths embedded in the build directory which don't get
> caught by that, but they're in thing like bootstrap which isn't
> packaged (which may or may not be an issue, but I'm suspecting not);
> it kinda feels like we're missing something.
> 
> Can I get hold of the cargo packages generated here to have a poke at them?

Yes. The key line in the log is:

022-12-26 11:56:30,555 - oe-selftest - INFO - Non-reproducible packages will be copied to /srv/autobuilder/autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20221226-0vk5efsk

i.e.

https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20221226-0vk5efsk

where you'll find both the package files and diffoscope output:

https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20221226-0vk5efsk/packages/diff-html/

which seems to be saying the symbol table changed size which is
unusual. I didn't look very deeply.

Cheers,

Richard






^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [OE-Core][PATCH v4 00/11] Add rust runtime tests
  2022-12-26 18:33 ` Richard Purdie
@ 2022-12-27 18:09   ` Alex Kiernan
  2022-12-28  0:00     ` Richard Purdie
  0 siblings, 1 reply; 10+ messages in thread
From: Alex Kiernan @ 2022-12-27 18:09 UTC (permalink / raw)
  To: Richard Purdie; +Cc: openembedded-core, Kokkonda, Sundeep, Randy MacLeod

On Mon, Dec 26, 2022 at 6:33 PM Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
>
> On Sun, 2022-12-25 at 21:59 +0000, Alex Kiernan wrote:
> > This series adds runtime tests for rust and cargo, merges (most of) the
> > include files into the base recipes and fixes target cargo builds.
> >
> > Also add SDK_TOOLCHAIN_LANGS for selection of target toolchains as part
> > of packagegroup-core-sdk.
> >
> > Changes in v4:
> > - Fixup `__stack_chk_fail_local` in musl-x86
> > - Add crossbeam atomics fixes for ppc/mips
> >
> > Changes in v3:
> > - Switch to packagegroup-core-sdk driven from TARGET_TOOLCHAIN_LANGS
> >   (which defaults to SDK_TOOLCHAIN_LANGS)
> >
> > Changes in v2:
> > - Drop rust.inc/rust.bb merge, not actually made use of in the change
> >   set
> > - Reorder so cargo test goes after build fixes
> >
> > Alex Kiernan (11):
> >   rust-llvm: Merge .inc into .bb
> >   rust-llvm: Update LLVM_VERSION to match embedded version
> >   packagegroup-rust-sdk-target: Add Rust SDK target packagegroup
> >   packagegroup-core-sdk: Add SDK toolchain language selection support
> >   cargo: Merge .inc into .bb
> >   cargo: Extend DEBUG_PREFIX_MAP to cover vendor
> >   rust: Merge .inc into .bb
> >   rust: Move musl-x86 fix for `__stack_chk_fail_local` to rust-source
> >   cargo: Override crossbeam-utils with 0.8.14
> >   packagegroup-rust-sdk-target: Add cargo
> >   oeqa/runtime/rust: Add cargo test
>
> Looks much better thanks. There was one remaining issue which showed up
> in testing with a reproducibility issue:
>
> https://autobuilder.yoctoproject.org/typhoon/#/builders/117/builds/2119/steps/12/logs/stdio
>
> We did already have an open bug for a rust reproducibility issue and we
> excluded it from the tests until we could get to the bottom of it, I
> suspect cargo may have the same issue. It frustrates me a bit as it is
> the one reproducibility exclusion for core.
>
> Ideally we would fix it but excluding it from the tests and noting it
> in the bug may be an option if it is the same issue. It may be simpler
> to reproduce and fix the issue with cargo too.
>
> Cc: Sundeep who as been looking at it.
>

Just reading the ticket and the upstream ones... the upstream ticket
is closed as remap path fixes it (which it looks like it does to me),
there are build paths embedded in the build directory which don't get
caught by that, but they're in thing like bootstrap which isn't
packaged (which may or may not be an issue, but I'm suspecting not);
it kinda feels like we're missing something.

Can I get hold of the cargo packages generated here to have a poke at them?

-- 
Alex Kiernan


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [OE-Core][PATCH v4 00/11] Add rust runtime tests
  2022-12-25 21:59 Alex Kiernan
@ 2022-12-26 18:33 ` Richard Purdie
  2022-12-27 18:09   ` Alex Kiernan
  0 siblings, 1 reply; 10+ messages in thread
From: Richard Purdie @ 2022-12-26 18:33 UTC (permalink / raw)
  To: Alex Kiernan, openembedded-core; +Cc: Kokkonda, Sundeep, Randy MacLeod

On Sun, 2022-12-25 at 21:59 +0000, Alex Kiernan wrote:
> This series adds runtime tests for rust and cargo, merges (most of) the
> include files into the base recipes and fixes target cargo builds.
> 
> Also add SDK_TOOLCHAIN_LANGS for selection of target toolchains as part
> of packagegroup-core-sdk.
> 
> Changes in v4:
> - Fixup `__stack_chk_fail_local` in musl-x86
> - Add crossbeam atomics fixes for ppc/mips
> 
> Changes in v3:
> - Switch to packagegroup-core-sdk driven from TARGET_TOOLCHAIN_LANGS
>   (which defaults to SDK_TOOLCHAIN_LANGS)
> 
> Changes in v2:
> - Drop rust.inc/rust.bb merge, not actually made use of in the change
>   set
> - Reorder so cargo test goes after build fixes
> 
> Alex Kiernan (11):
>   rust-llvm: Merge .inc into .bb
>   rust-llvm: Update LLVM_VERSION to match embedded version
>   packagegroup-rust-sdk-target: Add Rust SDK target packagegroup
>   packagegroup-core-sdk: Add SDK toolchain language selection support
>   cargo: Merge .inc into .bb
>   cargo: Extend DEBUG_PREFIX_MAP to cover vendor
>   rust: Merge .inc into .bb
>   rust: Move musl-x86 fix for `__stack_chk_fail_local` to rust-source
>   cargo: Override crossbeam-utils with 0.8.14
>   packagegroup-rust-sdk-target: Add cargo
>   oeqa/runtime/rust: Add cargo test

Looks much better thanks. There was one remaining issue which showed up
in testing with a reproducibility issue:

https://autobuilder.yoctoproject.org/typhoon/#/builders/117/builds/2119/steps/12/logs/stdio

We did already have an open bug for a rust reproducibility issue and we
excluded it from the tests until we could get to the bottom of it, I
suspect cargo may have the same issue. It frustrates me a bit as it is
the one reproducibility exclusion for core.

Ideally we would fix it but excluding it from the tests and noting it
in the bug may be an option if it is the same issue. It may be simpler
to reproduce and fix the issue with cargo too.

Cc: Sundeep who as been looking at it.

Cheers,

Richard


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [OE-Core][PATCH v4 00/11] Add rust runtime tests
@ 2022-12-25 21:59 Alex Kiernan
  2022-12-26 18:33 ` Richard Purdie
  0 siblings, 1 reply; 10+ messages in thread
From: Alex Kiernan @ 2022-12-25 21:59 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alex Kiernan


This series adds runtime tests for rust and cargo, merges (most of) the
include files into the base recipes and fixes target cargo builds.

Also add SDK_TOOLCHAIN_LANGS for selection of target toolchains as part
of packagegroup-core-sdk.

Changes in v4:
- Fixup `__stack_chk_fail_local` in musl-x86
- Add crossbeam atomics fixes for ppc/mips

Changes in v3:
- Switch to packagegroup-core-sdk driven from TARGET_TOOLCHAIN_LANGS
  (which defaults to SDK_TOOLCHAIN_LANGS)

Changes in v2:
- Drop rust.inc/rust.bb merge, not actually made use of in the change
  set
- Reorder so cargo test goes after build fixes

Alex Kiernan (11):
  rust-llvm: Merge .inc into .bb
  rust-llvm: Update LLVM_VERSION to match embedded version
  packagegroup-rust-sdk-target: Add Rust SDK target packagegroup
  packagegroup-core-sdk: Add SDK toolchain language selection support
  cargo: Merge .inc into .bb
  cargo: Extend DEBUG_PREFIX_MAP to cover vendor
  rust: Merge .inc into .bb
  rust: Move musl-x86 fix for `__stack_chk_fail_local` to rust-source
  cargo: Override crossbeam-utils with 0.8.14
  packagegroup-rust-sdk-target: Add cargo
  oeqa/runtime/rust: Add cargo test

 meta/lib/oeqa/runtime/cases/rust.py           |  17 ++
 .../packagegroups/packagegroup-core-sdk.bb    |  10 +-
 .../packagegroup-rust-sdk-target.bb           |  14 ++
 meta/recipes-devtools/cargo/cargo.inc         |  69 ------
 meta/recipes-devtools/cargo/cargo_1.66.0.bb   |  80 ++++++-
 meta/recipes-devtools/rust/rust-llvm.inc      |  78 ------
 .../recipes-devtools/rust/rust-llvm_1.66.0.bb |  82 ++++++-
 meta/recipes-devtools/rust/rust-source.inc    |   5 +
 meta/recipes-devtools/rust/rust-target.inc    |  10 -
 meta/recipes-devtools/rust/rust.inc           | 223 ------------------
 meta/recipes-devtools/rust/rust_1.66.0.bb     | 223 +++++++++++++++++-
 11 files changed, 420 insertions(+), 391 deletions(-)
 create mode 100644 meta/recipes-core/packagegroups/packagegroup-rust-sdk-target.bb
 delete mode 100644 meta/recipes-devtools/cargo/cargo.inc
 delete mode 100644 meta/recipes-devtools/rust/rust-llvm.inc
 delete mode 100644 meta/recipes-devtools/rust/rust-target.inc
 delete mode 100644 meta/recipes-devtools/rust/rust.inc

-- 
2.39.0



^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2022-12-29 19:25 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <17342835AC830076.27785@lists.openembedded.org>
2022-12-26  9:41 ` [OE-Core][PATCH v4 00/11] Add rust runtime tests Alex Kiernan
2022-12-26 10:27   ` Richard Purdie
     [not found]   ` <17345100F004118F.27785@lists.openembedded.org>
2022-12-26 11:15     ` Richard Purdie
2022-12-25 21:59 Alex Kiernan
2022-12-26 18:33 ` Richard Purdie
2022-12-27 18:09   ` Alex Kiernan
2022-12-28  0:00     ` Richard Purdie
2022-12-28 14:51       ` Alex Kiernan
2022-12-29 12:53         ` Richard Purdie
2022-12-29 19:25           ` Alex Kiernan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.