summaryrefslogtreecommitdiff
path: root/dev-lang/rust/rust-1.84.1-r1.ebuild
AgeCommit message (Collapse)Author
2025-06-04dev-lang/rust: drop i586 baseline patchMatt Jolly
Rust upstream have identified issues with this patch relating to broken x87 handling in LLVM. Drop the patch and revbump all impacted revisions to ensure that this is cleaned up. Closes: https://www.github.com/gentoo/gentoo/pulls/40616 Signed-off-by: Matt Jolly <kangie@gentoo.org>
2025-04-20dev-lang/rust: allow building with moldblackteahamburger
Closes: https://bugs.gentoo.org/952925 Signed-off-by: blackteahamburger <blackteahamburger@outlook.com> Closes: https://github.com/gentoo/gentoo/pull/41387 Signed-off-by: Sam James <sam@gentoo.org>
2025-04-10dev-lag/rust: require lld only if USE="lto system-llvm"Z. Liu
Signed-off-by: Z. Liu <zhixu.liu@gmail.com> Closes: https://github.com/gentoo/gentoo/pull/41523 Signed-off-by: Sam James <sam@gentoo.org>
2025-03-21dev-lang/rust: fix build using clang but not lldZ. Liu
use-lld appeared first in commit bfba6ef328bbba327cae8918e795c11b89217672 refactored in commit befd1eb4ec78e19f0c8628fa75241ea3ed6ec792 Closes: https://bugs.gentoo.org/948027 Signed-off-by: Z. Liu <zhixu.liu@gmail.com> Closes: https://github.com/gentoo/gentoo/pull/40772 Signed-off-by: Sam James <sam@gentoo.org>
2025-03-20dev-lang/rust: provide more neutral `default-linker`Sam James
... otherwise CC at the time of building dev-lang/rust is baked in, which is problematic if e.g. CC=clang-19 is used and then it gets depcleaned later (as reported on the gentoo-user ML). Signed-off-by: Sam James <sam@gentoo.org>
2025-02-28dev-lang/rust: Stabilize 1.84.1-r1 sparc, #950037Arthur Zamarin
Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
2025-02-22dev-lang/rust: fix experimental targets checkZ. Liu
1. target in ALL_LLVM_TARGETS has prefix llvm_targets_, so the check in last commit failed always. 2. using associate array for the test of experimental target's existence 3. sed -i 's:LLVM_EXPERIMENTAL_TARGETS:RUST_EXPERIMENTAL_TARGETS:g' to fix warning on var name collide with ALL_LLVM_EXPERIMENTAL_TARGETS in llvm.org.eclass Fixes: ff8e2b548c258e60463b1df0224beda29c7aacec Signed-off-by: Z. Liu <zhixu.liu@gmail.com> Closes: https://github.com/gentoo/gentoo/pull/40698 Signed-off-by: Sam James <sam@gentoo.org>
2025-02-22dev-lang/rust: Stabilize 1.84.1-r1 arm64, #950037Arthur Zamarin
Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
2025-02-22dev-lang/rust: Stabilize 1.84.1-r1 x86, #950037Arthur Zamarin
Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
2025-02-22dev-lang/rust: Stabilize 1.84.1-r1 amd64, #950037Arthur Zamarin
Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
2025-02-21dev-lang/rust: Stabilize 1.84.1-r1 ppc64, #950037Arthur Zamarin
Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
2025-02-21dev-lang/rust: Stabilize 1.84.1-r1 ppc, #950037Arthur Zamarin
Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
2025-02-21dev-lang/rust: Stabilize 1.84.1-r1 arm, #950037Arthur Zamarin
Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
2025-02-21dev-lang/rust: must depend on dev-lang/gcc[cxx]Cristian Othón Martínez Vera
Found while compiling with a fresh crossdev installation. Without that, the build fails with the following error: ```[profiler_builtins 0.0.0] cargo::rerun-if-env-changed=LLVM_PROFILER_RT_LIB [profiler_builtins 0.0.0] cargo::rerun-if-env-changed=RUST_COMPILER_RT_FOR_PROFILER [profiler_builtins 0.0.0] cargo::rerun-if-changed=/usr/i686-pc-linux-musl/tmp/portage/dev-lang/rust-1.82.0-r102/work/rustc-1.82.0-src/src/llvm-project/compiler-rt/lib/profile [profiler_builtins 0.0.0] cargo::rerun-if-changed=/usr/i686-pc-linux-musl/tmp/portage/dev-lang/rust-1.82.0-r102/work/rustc-1.82.0-src/src/llvm-project/compiler-rt/include [profiler_builtins 0.0.0] TARGET = Some("i686-unknown-linux-gnu") [profiler_builtins 0.0.0] OPT_LEVEL = Some("3") [profiler_builtins 0.0.0] HOST = Some("x86_64-unknown-linux-gnu") [profiler_builtins 0.0.0] cargo:rerun-if-env-changed=CC_i686-unknown-linux-gnu [profiler_builtins 0.0.0] CC_i686-unknown-linux-gnu = None [profiler_builtins 0.0.0] cargo:rerun-if-env-changed=CC_i686_unknown_linux_gnu [profiler_builtins 0.0.0] CC_i686_unknown_linux_gnu = Some("i686-pc-linux-musl-gcc") [profiler_builtins 0.0.0] cargo:rerun-if-env-changed=CC_ENABLE_DEBUG_OUTPUT [profiler_builtins 0.0.0] cargo:rerun-if-env-changed=CRATE_CC_NO_DEFAULTS [profiler_builtins 0.0.0] CRATE_CC_NO_DEFAULTS = None [profiler_builtins 0.0.0] DEBUG = Some("false") [profiler_builtins 0.0.0] CARGO_CFG_TARGET_FEATURE = Some("fxsr,sse,sse2") [profiler_builtins 0.0.0] cargo:rerun-if-env-changed=CFLAGS_i686-unknown-linux-gnu [profiler_builtins 0.0.0] CFLAGS_i686-unknown-linux-gnu = None [profiler_builtins 0.0.0] cargo:rerun-if-env-changed=CFLAGS_i686_unknown_linux_gnu [profiler_builtins 0.0.0] CFLAGS_i686_unknown_linux_gnu = Some("-ffunction-sections -fdata-sections -fPIC -m32 -march=i686") [profiler_builtins 0.0.0] cargo:warning=i686-pc-linux-musl-gcc: error: /usr/i686-pc-linux-musl/tmp/portage/dev-lang/rust-1.82.0-r102/work/rustc-1.82.0-src/src/llvm-project/compiler-rt/lib/profile/InstrProfiling Runtime.cpp: C++ compiler not installed on this system [profiler_builtins 0.0.0] [profiler_builtins 0.0.0] [profiler_builtins 0.0.0] error occurred: Command "i686-pc-linux-musl-gcc" "-O3" "-ffunction-sections" "-fdata-sections" "-fPIC" "-m32" "-march=i686" "-I" "/usr/i686-pc-linux-musl/tmp/portage/dev-lang/rust-1.82 .0-r102/work/rustc-1.82.0-src/src/llvm-project/compiler-rt/include" "-ffunction-sections" "-fdata-sections" "-fPIC" "-m32" "-march=i686" "-fno-builtin" "-fomit-frame-pointer" "-fvisibility=hidden" "-DVISIBILITY _HIDDEN" "-DCOMPILER_RT_HAS_UNAME=1" "-DCOMPILER_RT_HAS_FCNTL_LCK=1" "-DCOMPILER_RT_HAS_ATOMICS=1" "-o" "/usr/i686-pc-linux-musl/tmp/portage/dev-lang/rust-1.82.0-r102/work/rustc-1.82.0-src/build/x86_64-unknown- linux-gnu/stage1-std/i686-unknown-linux-gnu/release/build/profiler_builtins-acc5b54be66bd911/out/79fe831ac9526f6c-InstrProfilingRuntime.o" "-c" "/usr/i686-pc-linux-musl/tmp/portage/dev-lang/rust-1.82.0-r102/wor k/rustc-1.82.0-src/src/llvm-project/compiler-rt/lib/profile/ InstrProfilingRuntime.cpp" with args i686-pc-linux-musl-gcc did not execute successfully (status code exit status: 1). [profiler_builtins 0.0.0] [profiler_builtins 0.0.0] The following warnings were emitted during compilation: warning: profiler_builtins@0.0.0: i686-pc-linux-musl-gcc: error: /usr/i686-pc-linux-musl/tmp/portage/dev-lang/rust-1.82.0-r102/work/rustc-1.82.0-src/src/llvm-project/compiler-rt/lib/profile/InstrProfilingRuntime.cpp: C++ compiler not installed on this system error: failed to run custom build command for `profiler_builtins v0.0.0 (/usr/i686-pc-linux-musl/tmp/portage/dev-lang/rust-1.82.0-r102/work/rustc-1.82.0-src/library/profiler_builtins)` note: To improve backtraces for build dependencies, set the CARGO_PROFILE_RELEASE_BUILD_OVERRIDE_DEBUG=true environment variable to enable debug information generation.``` Signed-off-by: Cristian Othón Martínez Vera <cfuga@cfuga.mx> Closes: https://github.com/gentoo/gentoo/pull/40600 Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
2025-02-16dev-lang/rust: experimental target must be available firstZ. Liu
current experimental targets are defined from v1.73 only, so the final experimental target list should be the intersection of ALL_LLVM_EXPERIMENTAL_TARGETS in ALL_LLVM_TARGETS. Fixes: 94e2375d8bbaa777c83a3bffd60355075ee6ff83 Fixes: 3d841904ebfe01e74cb01eae6456b30f6aeca7e8 Closes: https://bugs.gentoo.org/949795 Signed-off-by: Z. Liu <zhixu.liu@gmail.com> Closes: https://github.com/gentoo/gentoo/pull/40594 Signed-off-by: Sam James <sam@gentoo.org>
2025-02-10dev-lang/rust: drop preinst/postinst workaround for 1.84.{0,1}Matt Jolly
This workaround is only required when migrating from non-slotted Rust to slotted Rust. Since these versions have never had a non-slotted counterpart, this step is superfluous. Remove it now in conjunction with an unrelated revbump so that the workaround isn't carried forward any further. Signed-off-by: Matt Jolly <kangie@gentoo.org> Signed-off-by: Sam James <sam@gentoo.org>
2025-02-10dev-lang/rust: Set RPATH instead of using ld.so.conf for libsMatt Jolly
For a reason lost to the sands of time, Gentoo was previously disabling the `rpath` option in the Rust config.toml and instead adding Rust the Rust lib path to `ld.so.conf` via entries installed in `/etc/env.d`. This was fine before we enabled slotting on the Rust package, however with increasing numbers of Rust slots a hash collision was inevitable and eventually happened between 1.84.0 and 1.84.1, resulting in `undefined symbol` errors when invoking `rustc` or `cargo`. Since we install Rust in a very similar way to upstream, it makes sense to set the `RUNPATH` to `$ORIGIN/../lib` as their packaging does and not pollute ld.so.conf with Rust paths. This enables dev-lang/rust binaries to search relative to their install location, and will therefore always respect EPREFIX. Also drop obsolete 1.82.0-r100; no need to revbump that. Closes: https://bugs.gentoo.org/949374 Signed-off-by: Matt Jolly <kangie@gentoo.org> Signed-off-by: Sam James <sam@gentoo.org>