Added Trevor who may be working on upgrading python-cryptography. Added Anatol since he was interested last time we worked on merging. Again, let me know if you want to be dropped by replying privately. No one from the meta-rust community responded last time so I'm assuming that y'all are just on vacation! ;-) On 2021-08-17 10:52 a.m., Randy MacLeod wrote: > On 2021-08-13 11:22 a.m., Vinay Kumar wrote: >> Hi Randy, >> >>>> Vinay or I will look into glibc/qemuppc64 >>>> if no one else is working on that. >> >> The failure is due to the below error in libstd-rs package build. >> "error: unrecognized arch "powerpc64le" in target specification" >> >> The reason for this is "arch": "powerpc64le" from the below target >> specific file. >> ,,, > > Thanks Vinay, applied. > > I'll push a new branch to poky-contrib later today. I fixed and worked-around a few issues and pushed a new branch: http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=rmacleod/rust-redo-aug-17-2021-a 1. There are only a few new commits including Vinay's: 757da4cbf1e rust: remove Rust version 1.51.0 toolchain a4808f787ca cargo_common: remove http_proxy b6941135c00 rust-common.inc: Fix build failure with qemuppc64. If anyone wants to help by doing test builds, trying to generate and use and SDK with rust in it or anything else, that'd be great. Alex also ran a test build on the Autobuilder: https://autobuilder.yoctoproject.org/typhoon/#/builders/83/builds/2439 but I have yet to look at the failed stages in the run. Testing logs and debugging notes below for those interested. ../Randy The test: oe-selftest -r distrodata.Distrodata.test_maintainers is fixed by creating maintainer records for all rusty packages and by removing the older version of the rust toolchain: 757da4cbf1e rust: remove Rust version 1.51.0 toolchain I suppose that if the meta-rust users want to keep an older TC it can live in meta-rust. Then, these tests: oe-selftest -r sstatetests.SStateTests.test_sstate_noop_samesigs oe-selftest -r sstatetests.SStateTests.test_sstate_sametune_samesigs were failing. One issue was fixed by the work-around of: a4808f787ca cargo_common: remove http_proxy Debugging the next step was a challenge since I hadn't worked with diffsigs before. Then to simplify, I removed all rusty .bb package ( by mv foo.bb foo.bb.hide) until I was down to the first recipe in the dependency tree: rust-llvm-native. and then running: oe-selftest -r sstatetests.SStateTests.test_sstate_noop_samesigs \ sstatetests.SStateTests.test_sstate_sametune_samesigs \ 2021-08-19 17:54:12,878 - oe-selftest - INFO - Ran 2 tests in 142.010s - OK - RESULTS: - RESULTS - sstatetests.SStateTests.test_sstate_noop_samesigs: PASSED (41.45s) - RESULTS - sstatetests.SStateTests.test_sstate_sametune_samesigs: PASSED (98.89s) - SUMMARY: - oe-selftest () - Ran 2 tests in 142.012s - oe-selftest - OK - All required tests passed (successes=2, skipped=0, failures=0, errors=0) adding the next self consistent group of package: cargo/cargo-cross-canadian_1.54.0.bb cargo/cargo_1.54.0.bb rust/libstd-rs_1.54.0.bb rust/rust-cross-canadian_1.54.0.bb rust/rust-cross_1.54.0.bb rust/rust-tools-cross-canadian_1.54.0.bb rust/rust_1.54.0.bb I see another http_proxy failure that seems to require a feature drop in cargo: https://github.com/rust-lang/cargo/blob/master/src/cargo/ops/registry.rs#L524 Patching out a feature doesn't seem like a good idea but maybe someone else has a better one? To see if there were other problems lurking menacingly behind the proxy error, I disabled the http_proxy test in: meta/lib/oeqa/selftest/cases/sstatetests.py -http_proxy = "http://example.com/" +http_proxy = "" and ran again to find: - RESULTS - sstatetests.SStateTests.test_sstate_noop_samesigs: PASSED (50.63s) - RESULTS - sstatetests.SStateTests.test_sstate_sametune_samesigs: FAILED (160.05s) so that's somewhat encouraging but there is still the error: File ".../meta/lib/oeqa/selftest/cases/sstatetests.py", line 449, in test_sstate_sametune_samesigs self.assertCountEqual(files1, files2) AssertionError: Element counts were not equal: First has 1, Second has 0: '/ala-lpggp31/rmacleod/src/distro/yocto/b/aug-19-a-st/\ tmp-sstatesamehash/stamps/x86_64-linux/\ lib32-rust-cross-i686/1.54.0-r0.do_rust_gen_targets.sigdata.\ fc54579cc139c777172242c3da3e0' First has 1, Second has 0: '/ala-lpggp31/rmacleod/src/distro/yocto/b/aug-19-a-st/\ tmp-sstatesamehash/stamps/x86_64-linux/\ lib32-rust-cross-i686/1.54.0-r0.do_compile.sigdata.\ 86cb5a1346b0615cb21fab3c0110cc964ecced' ... lots of similar lines of diffsig info ... Hacking the test to not clean up and running bitbake-dumpsigs on the two sig files for the first error, I get the two files attached. I also attached the tmp/log/oe-selftest-results.log file. That's it for now. ../Randy > > ../Randy >> >> On Fri, Aug 13, 2021 at 8:50 PM Vinay Kumar >> wrote: >>> >>> rust-common.inc: Fix build failure with qemuppc64. >>> >>> The glibc build of "rust-hello-world" throws error in libstd-rs package. >>> error: unrecognized arch "powerpc64le" in target specification >>> >>> The same got fixed by changing the arch to "powerpc64". >>> >>> Signed-off-by: Vinay Kumar >>> --- >>>   meta/recipes-devtools/rust/rust-common.inc | 2 ++ >>>   1 file changed, 2 insertions(+) >>> >>> diff --git a/meta/recipes-devtools/rust/rust-common.inc >>> b/meta/recipes-devtools/rust/rust-common.inc >>> index 350517c723..f574152815 100644 >>> --- a/meta/recipes-devtools/rust/rust-common.inc >>> +++ b/meta/recipes-devtools/rust/rust-common.inc >>> @@ -248,6 +248,8 @@ def arch_to_rust_target_arch(arch): >>>           return "mips64" >>>       elif arch == "armv7": >>>           return "arm" >>> +    elif arch == "powerpc64le": >>> +        return "powerpc64" >>>       else: >>>           return arch >>> >>> -- >>> 2.31.1 >>> > > > > > > -- # Randy MacLeod # Wind River Linux