Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 872533

Summary: >=dev-lang/rust-1.64.0: armv7-musl is configured as armv7-unknown-linux-gnueabihf
Product: Gentoo Linux Reporter: tt_1 <herrtimson>
Component: Current packagesAssignee: Gentoo Rust Project <rust>
Status: UNCONFIRMED ---    
Severity: normal CC: navi, randy, rust
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://bugs.gentoo.org/show_bug.cgi?id=671736
https://bugs.gentoo.org/show_bug.cgi?id=842246
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: output of emerge --info
full config.toml

Description tt_1 2022-09-23 15:20:27 UTC
Created attachment 813817 [details]
output of emerge --info

hey there, 

I wonder what kind of rust host does the rust team want to see running on armv7+musl in the future? 

right now, it does default to the glibc rust host: 

[build]
build-stage = 2
test-stage = 2
doc-stage = 2
build = "armv7-unknown-linux-gnueabihf"
host = ["armv7-unknown-linux-gnueabihf"]
target = ["armv7-unknown-linux-gnueabihf"]
cargo = "/usr/lib/rust/1.63.0/bin/cargo"
rustc = "/usr/lib/rust/1.63.0/bin/rustc"
rustfmt = "/usr/lib/rust/1.63.0/bin/rustfmt"
incremental = false
default-linker = "armv7a-unknown-linux-musleabihf-gcc"
parallel-compiler = false
[dist]
src-tarball = false
compression-formats = ["xz"]
[target.armv7-unknown-linux-gnueabihf]
ar = "armv7a-unknown-linux-musleabihf-ar"
cc = "armv7a-unknown-linux-musleabihf-gcc"
cxx = "armv7a-unknown-linux-musleabihf-g++"
linker = "armv7a-unknown-linux-musleabihf-gcc"
ranlib = "armv7a-unknown-linux-musleabihf-ranlib"
llvm-libunwind = "no"
crt-static = false

(I removed non relevant parts for an easier read, full config.toml will be attached)
Comment 1 tt_1 2022-09-23 15:21:24 UTC
Created attachment 813820 [details]
full config.toml
Comment 2 tt_1 2022-09-23 15:22:24 UTC
output of emerge -pv =dev-lang/rust-1.64.0::gentoo

[ebuild     U #] dev-lang/rust-1.64.0:stable/1.64::gentoo [1.63.0:stable/1.63::smaeul] USE="dist system-bootstrap -clippy -debug -doc (-llvm-libunwind) (-miri) -nightly (-parallel-compiler) -profiler% -rls -rust-analyzer% -rust-src% -rustfmt -system-llvm -test -verify-sig -wasm" CPU_FLAGS_ARM="(-neon%) (-thumb2%)" LLVM_TARGETS="(ARM) -AArch64 -AMDGPU -AVR -BPF -Hexagon -Lanai -MSP430 -Mips -NVPTX -PowerPC -RISCV -Sparc -SystemZ -WebAssembly -X86 -XCore" 0 KiB

Total: 1 package (1 upgrade), Size of downloads: 0 KiB
Comment 3 Georgy Yakovlev archtester gentoo-dev 2022-09-24 21:30:21 UTC
nothing changed in this area with rust-1.64,

eclass (rust-toolchain) forces this because we have no installer.

currently we use this as reference

https://forge.rust-lang.org/infra/other-installation-methods.html

so if this page does not have musl installer we force glibc host.


as for the future, a variant of this https://github.com/gentoo/gentoo/pull/20727
will be implemented, currently in progress.


you'd be able to set any rust triplet in make.conf, and ours will come from profiles.

support for extra triplets on some profiles is also planned (like thumb-neon on arm in addition to regular host)
Comment 4 Georgy Yakovlev archtester gentoo-dev 2022-09-24 21:32:47 UTC
and ofc rust-toolchain will be reworked or obsoleted completely.
it's inflexible.