On 2021-08-11 9:14 a.m., Randy MacLeod wrote:
On 2021-08-10 8:22 p.m., Randy MacLeod wrote:
I started working on the merge of meta-rust to oe-core again.
CCing widely at the beginning this time.
Please reply to me privately if you want to be dropped.
I really need other people to sign up as [co-]maintainers!
I pushed what I did today to:
http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/log/?h=rmacleod/rust-redo-aug-10-2021-a
$ git log --stat below.
I've only started but so far, what I see is that, as expected,
rust-hello-world works for
qemux86-64, qemuarm and likely other targets. I'm doing a
buildall-qemu overnight.
The oe-selftests that we had problems with before are still a problem:
oe-selftest still has at least three tests failing:
1.
oe-selftest -r distrodata.Distrodata.test_maintainers
This is due having two versions of cargo and rust.
--> I'll remove 1.51 unless people object.
2.
oe-selftest -r sstatetests.SStateTests.test_sstate_noop_samesigs
oe-selftest -r sstatetests.SStateTests.test_sstate_sametune_samesigs
I've just started to look at these test failures.
$ bitbake-dump-sigs shows a diff like:
List of dependencies for variable BASEDEPENDS is set()
List of dependencies for variable BUILD_AR is {'BUILD_PREFIX'}
-List of dependencies for variable BUILD_AS is {'BUILD_PREFIX',
'BUILD_AS_ARCH'}
+List of dependencies for variable BUILD_AS is {'BUILD_AS_ARCH',
'BUILD_PREFIX'}
List of dependencies for variable BUILD_AS_ARCH is set()
-List of dependencies for variable BUILD_CC is {'BUILD_PREFIX',
'BUILD_CC_ARCH'}
-List of dependencies for variable BUILD_CCLD is {'BUILD_PREFIX',
'BUILD_CC_ARCH'}
+List of dependencies for variable BUILD_CC is {'BUILD_CC_ARCH',
'BUILD_PREFIX'}
+List of dependencies for variable BUILD_CCLD is {'BUILD_CC_ARCH',
'BUILD_PREFIX'}
List of dependencies for variable BUILD_CC_ARCH is set()
Tips welcome!
Btw, I know that the rust community is working on reproducibility:
https://github.com/rust-lang/rust/labels/A-reproducibility
This diffsigs problem may be related but I haven't looked at the
issue long enough yet to tell.
4.
I'll run a test on the autobuilder to see if the debian build from
Feb is still a problem:
rust-native doesn't build on debian8:
https://autobuilder.yoctoproject.org/typhoon/#/builders/116/builds/40/steps/13/logs/stdio
I'll run buildall-qemu rust-hello-world overnight.
Results below.
Vinay or I will look into glibc/qemuppc64
if no one else is working on that.
The musl build failures are all alike with the error shown below.
Has anyone see that before?
../Randy
BUILDALL-QEMU LOG FOR rust-hello-world
START TIME: 2021-08-10_17:23:20
HOSTNAME: ala-lpggp3
HOST OS: Ubuntu 18.04.3 LTS
HOST KERNEL: 5.4.0-80-generic
===============
BUILD RESULTS:
[glibc]
PASS: qemuriscv32
PASS: qemuarmv5
PASS: qemumips
PASS: qemux86-64
PASS: qemuarm64
PASS: qemumips64
PASS: qemuarm
PASS: qemuppc
PASS: qemuriscv64
FAIL: qemuppc64
PASS: qemux86
[musl]
FAIL: qemuriscv32
FAIL: qemuarmv5
FAIL: qemumips
PASS: qemux86-64
PASS: qemuarm64
FAIL: qemumips64
FAIL: qemuarm
FAIL: qemuppc
FAIL: qemuriscv64
FAIL: qemuppc64
FAIL: qemux86
===============
PASSED: 12
FAILED: 10
The musl failures seemed odd so I did a build without any
sstate-cache and indeed things are not as bad as last night's runs show.
I get the same results with a second run with the newly generated
sstate-cache.
$ cat rust-hello-world-buildall.log
BUILDALL-QEMU LOG FOR rust-hello-world
START TIME: 2021-08-11_06:53:10
HOSTNAME: ala-lpggp3
HOST OS: Ubuntu 18.04.3 LTS
HOST KERNEL: 5.4.0-80-generic
===============
BUILD RESULTS:
[musl]
FAIL: qemuriscv32
PASS: qemuarmv5
PASS: qemumips
PASS: qemux86-64
PASS: qemuarm64
PASS: qemumips64
PASS: qemuarm
FAIL: qemuppc
PASS: qemuriscv64
FAIL: qemuppc64
PASS: qemux86
===============
PASSED: 8
FAILED: 3
../Randy
---
Typical musl build failure log:
Sstate summary: Wanted 62 Local 0 Network 0 Missed 62 Current 142 (0%
match, 69% complete)
NOTE: Executing Tasks
ERROR: rust-cross-arm-1.54.0-r0 do_prepare_recipe_sysroot: Error
executing a python function in exec_python_func() autogenerated:
The stack trace of python calls that resulted in this
exception/failure was:
File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
0001:
*** 0002:extend_recipe_sysroot(d)
0003:
File:
'/ala-lpggp31/rmacleod/src/distro/yocto/poky-contrib.git/meta/classes/staging.bbclass',
lineno: 582, function: extend_recipe_sysroot
0578: if "/bin/" in l or "/sbin/" in l:
0579: # defer /*bin/* files until last in
case they need libs
0580: binfiles[l] = (targetdir, dest)
0581: else:
*** 0582: staging_copyfile(l, targetdir, dest,
postinsts, seendirs)
0583:
0584: # Handle deferred binfiles
0585: for l in binfiles:
0586: (targetdir, dest) = binfiles[l]
File:
'/ala-lpggp31/rmacleod/src/distro/yocto/poky-contrib.git/meta/classes/staging.bbclass',
lineno: 149, function: staging_copyfile
0145: if os.path.islink(c):
0146: linkto = os.readlink(c)
0147: if os.path.lexists(dest):
0148: if not os.path.islink(dest):
*** 0149: raise OSError(errno.EEXIST, "Link %s already
exists as a file" % dest, dest)
0150: if os.readlink(dest) == linkto:
0151: return dest
0152: raise OSError(errno.EEXIST, "Link %s already
exists to a different location? (%s vs %s)" % (dest,
os.readlink(dest), linkto), dest)
0153: os.symlink(linkto, dest)
Exception: FileExistsError: [Errno 17] Link
/ala-lpggp31/rmacleod/src/distro/yocto/b/rust-aug-10-master-redo-a/tmp/work/x86_64-linux/rust-cross-arm/1.54.0-r0/recipe-sysroot/usr/include/c++/11.2.0/arm-poky-linux'
ERROR: Logfile of failure stored in:
/ala-lpggp31/rmacleod/src/distro/yocto/b/rust-aug-10-master-redo-a/tmp/work/x86_64-linux/rust-cross-arm/1.54.0-r0/temp/log.do_prepare_recipe_sysroot.73161
ERROR: Task
(/ala-lpggp31/rmacleod/src/distro/yocto/poky-contrib.git/meta/recipes-devtools/rust/rust-cross_1.54.0.bb:do_prepare_recipe_sysroot)
failed with exit code '1'
NOTE: Tasks Summary: Attempted 755 tasks of which 645 didn't need to
be rerun and 1 failed.
Summary: 1 task failed:
/ala-lpggp31/rmacleod/src/distro/yocto/poky-contrib.git/meta/recipes-devtools/rust/rust-cross_1.54.0.bb:do_prepare_recipe_sysroot
Summary: There was 1 ERROR message shown, returning a non-zero exit code.
Thanks,
../Randy
$ git log --stat origin/master..HEAD
commit 725c11999a38244cc28e1d1fe17a7e05c5bdb7a3
Author: Randy MacLeod <randy.macl...@windriver.com>
Date: Wed Feb 24 20:48:23 2021
maintainers: Add myself as maintainer for rust pkgs
I'm willing to do the rust package maintenance but
if anyone else wants to sign up, that would be welcome.
Signed-off-by: Randy MacLeod <randy.macl...@windriver.com>
meta/conf/distro/include/maintainers.inc | 10 ++++++++++
1 file changed, 10 insertions(+)
commit a658c5c7fac6160f7720bbf30ae35ccc143fcb57
Author: Randy MacLeod <randy.macl...@windriver.com>
Date: Wed Feb 24 20:48:22 2021
cargo/rust/rustfmt: exclude from world
cargo, rust, and rustfmt can't be built for the targets yet
so exclude them from world builds.
Signed-off-by: Randy MacLeod <randy.macl...@windriver.com>
meta/recipes-devtools/cargo/cargo.inc | 1 +
meta/recipes-example/rustfmt/rustfmt_1.4.2.bb | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
commit 8860562733d7cce3cede27fc611f984a2d9351d6
Author: Randy MacLeod <randy.macl...@windriver.com>
Date: Wed Feb 24 20:48:20 2021
rust: update the README to conform to being in oe-core
Provide the full link to the meta-rust issue since
the README is no longer part of meta-rust.
Signed-off-by: Randy MacLeod <randy.macl...@windriver.com>
meta/recipes-devtools/rust/README-rust.md | 25
+++++++------------------
1 file changed, 7 insertions(+), 18 deletions(-)
commit 7398219dcfffe746038d36bbbaacbd52265a3fc7
Author: Randy MacLeod <randy.macl...@windriver.com>
Date: Wed Feb 24 20:48:18 2021
rust: mv README.md to recipes-devtools/rust/README-rust.md
Import the meta-rust/README.md but relocate and rename it.
Signed-off-by: Randy MacLeod <randy.macl...@windriver.com>
meta/recipes-devtools/rust/README-rust.md | 69
+++++++++++++++++++++++++++++++
1 file changed, 69 insertions(+)
commit 80586a849e1c725310f58ed9705febf97bc00bda
Author: Randy MacLeod <randy.macl...@windriver.com>
Date: Tue Aug 10 13:52:19 2021
rust: initial merge of most of meta-rust
In the meta-rust repo at commit:
448047c Upgrade to 1.54.0 (#359)
Make the required directories:
mkdir ../oe-core/meta/recipes-devtools/rust
mkdir ../oe-core/meta/recipes-devtools/cargo
mkdir ../oe-core/meta/recipes-example
and then:
cp recipes-devtools/rust/* ../oe-core/meta/recipes-devtools/rust
cp recipes-devtools/cargo/*
../oe-core/meta/recipes-devtools/cargo
cp lib/crate.py ../oe-core/meta/lib
cp recipes-example/* ../oe-core/meta/recipes-example
cp conf/distro/include/rust_*
../oe-core/meta/conf/distro/include/
cp classes/* ../oe-core/meta/classes/
cp
recipes-core/packagegroups/packagegroup-rust-cross-canadian.bb
../oe-core/meta/recipes-core/packagegroups
Signed-off-by: Randy MacLeod <randy.macl...@windriver.com>
meta/classes/cargo.bbclass | 89 ++
meta/classes/cargo_common.bbclass | 129 +++
meta/classes/crate-fetch.bbclass | 13 +
meta/classes/rust-bin.bbclass | 149 ++++
meta/classes/rust-common.bbclass | 174 ++++
meta/classes/rust.bbclass | 45 +
meta/conf/distro/include/rust_security_flags.inc | 7 +
meta/conf/distro/include/rust_versions.inc | 13 +
meta/lib/crate.py | 149 ++++
.../packagegroup-rust-cross-canadian.bb | 18 +
.../cargo/cargo-1.51.0/0001-Disable-http2.patch | 28 +
.../cargo/cargo-1.51.0/riscv-march.patch | 73 ++
.../cargo/cargo-1.51.0/rv64gc.patch | 37 +
.../cargo/cargo-cross-canadian.inc | 74 ++
.../cargo/cargo-cross-canadian_1.51.0.bb | 6 +
.../cargo/cargo-cross-canadian_1.54.0.bb | 6 +
meta/recipes-devtools/cargo/cargo.inc | 50 ++
meta/recipes-devtools/cargo/cargo_1.51.0.bb | 8 +
meta/recipes-devtools/cargo/cargo_1.54.0.bb | 4 +
meta/recipes-devtools/rust/files/riscv-march.patch | 73 ++
meta/recipes-devtools/rust/files/rv64gc.patch | 37 +
...001-Add-base-definitions-for-riscv64-musl.patch | 904
++++++++++++++++++++
...-linux-musl-mod.rs-add-riscv64-to-b64-set.patch | 29 +
...3-FIXUP-Correct-definitions-to-match-musl.patch | 740
+++++++++++++++++
...pdate-1.51.0-checksums-for-modified-files.patch | 21 +
.../0004-Update-checksums-for-modified-files.patch | 21 +
...-definitions-for-riscv64-musl-libc-0.2.93.patch | 905
+++++++++++++++++++++
...-musl-mod.rs-add-riscv64-to-b64-set-libc-.patch | 31 +
...ect-definitions-to-match-musl-libc-0.2.93.patch | 741
+++++++++++++++++
...ksums-for-modified-files-for-rust-1.54.0-.patch | 23 +
meta/recipes-devtools/rust/libstd-rs.inc | 40 +
meta/recipes-devtools/rust/libstd-rs_1.51.0.bb | 12 +
meta/recipes-devtools/rust/libstd-rs_1.54.0.bb | 11 +
meta/recipes-devtools/rust/rust-common.inc | 346 ++++++++
.../rust/rust-cross-canadian-common.inc | 53 ++
meta/recipes-devtools/rust/rust-cross-canadian.inc | 78 ++
.../rust/rust-cross-canadian_1.51.0.bb | 6 +
.../rust/rust-cross-canadian_1.54.0.bb | 6 +
meta/recipes-devtools/rust/rust-cross.inc | 71 ++
meta/recipes-devtools/rust/rust-cross_1.51.0.bb | 2 +
meta/recipes-devtools/rust/rust-cross_1.54.0.bb | 2 +
meta/recipes-devtools/rust/rust-llvm.inc | 63 ++
.../rust-llvm/0001-nfc-Fix-missing-include.patch | 26 +
.../0002-llvm-allow-env-override-of-exe-path.patch | 32 +
meta/recipes-devtools/rust/rust-llvm_1.51.0.bb | 7 +
meta/recipes-devtools/rust/rust-llvm_1.54.0.bb | 5 +
.../recipes-devtools/rust/rust-snapshot-1.51.0.inc | 18 +
.../recipes-devtools/rust/rust-snapshot-1.54.0.inc | 18 +
meta/recipes-devtools/rust/rust-snapshot.inc | 9 +
meta/recipes-devtools/rust/rust-source-1.51.0.inc | 3 +
meta/recipes-devtools/rust/rust-source-1.54.0.inc | 3 +
meta/recipes-devtools/rust/rust-source.inc | 3 +
meta/recipes-devtools/rust/rust-target.inc | 10 +
.../rust/rust-tools-cross-canadian.inc | 38 +
.../rust/rust-tools-cross-canadian_1.51.0.bb | 6 +
.../rust/rust-tools-cross-canadian_1.54.0.bb | 6 +
meta/recipes-devtools/rust/rust.inc | 193 +++++
...t-Fix-dash-vs-underscore-mismatches-in-op.patch | 75 ++
meta/recipes-devtools/rust/rust_1.51.0.bb | 16 +
meta/recipes-devtools/rust/rust_1.54.0.bb | 11 +
.../rust-hello-world/0001-enable-LTO.patch | 23 +
.../rust-hello-world/rust-hello-world_git.bb | 17 +
meta/recipes-example/rustfmt/rustfmt_1.4.2.bb | 171 ++++
63 files changed, 5977 insertions(+)
--
# Randy MacLeod
# Wind River Linux
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#154722):
https://lists.openembedded.org/g/openembedded-core/message/154722
Mute This Topic: https://lists.openembedded.org/mt/84806759/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-