summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* */*: destable sparcArthur Zamarin2025-09-021-1/+1
| | | | | | | Result of running the command: grep --include="*.ebuild" -r . -e 'KEYWORDS=.*[" ]sparc' -l | xargs ekeyword ~sparc Signed-off-by: Arthur Zamarin <[email protected]>
* dev-lang/rust: move patches from files/ to git repoMatt Jolly2025-07-291-0/+2
| | | | | | | | Add reminder to ebuild to update the git repo and make a new tag as required instead of using filesdir: that's how we end up exceeding the limit; things are very rarely cleaned up here! Signed-off-by: Matt Jolly <[email protected]>
* dev-lang/rust: enable system-llvm by defaultSam James2025-07-191-1/+1
| | | | | | | | | As noted in 850d5e6b5cd12da2ad9bc37d3b21b87ef210c7f7, this is fine to do these days. Combined with the LLVM_TARGET fixes from earlier today, this should lead to a nice build-time improvement too. Closes: https://bugs.gentoo.org/735154 Signed-off-by: Sam James <[email protected]>
* dev-lang/rust: match LLVM_TARGETSSam James2025-07-191-1/+1
| | | | | | | | | | | | We already depend on the right LLVM targets but without =, but we need that as it's automagic otherwise. I'm not completely convinced we need it here, but my aim is to avoid breaking things and then improve more later. Bug: https://bugs.gentoo.org/735154 Bug: https://bugs.gentoo.org/767700 Bug: https://bugs.gentoo.org/768267 Signed-off-by: Sam James <[email protected]>
* dev-lang/rust: actually fix verify sigMatt Jolly2025-06-041-0/+1
| | | | | | My previous fix didn't actually unpack tarballs at all. Signed-off-by: Matt Jolly <[email protected]>
* dev-lang/rust: fix verify-sigMatt Jolly2025-06-041-0/+9
| | | | | | | When the patch tarballs were added the ebuilds were not updated to ensure that only upstream-signed files are verified. Signed-off-by: Matt Jolly <[email protected]>
* dev-lang/rust, sys-devel/rust-std: disable py3.10Matt Jolly2025-06-041-1/+1
| | | | Signed-off-by: Matt Jolly <[email protected]>
* dev-lang/rust: drop build `x.py` verbosityMatt Jolly2025-06-041-3/+3
| | | | | | | | | | | | | After discussion with upstream, reduce the number of `v`s passed to of our `x.py` invocations. There is no documentation on why `-vvv` was added but it's suspected to be development troubleshooting shrapnel. `-vv` is retained for tests where the extra verbosity may actually be useful, however for most cases `-v` is suitable as it includes the invocation along with any warnings or errors; we probably don't need thousands of backtraces or diagnostic messages. Signed-off-by: Matt Jolly <[email protected]>
* dev-lang/rust: stop using FILESDIRMatt Jolly2025-06-041-20/+30
| | | | | | | | | | | files/ has been too big for a while now. Instead use the rust-patches repository that was created to manage these patches. No revbumps required - they were either done beforehand when we dropped a bad patch _or_ are not required as the only additions are backported build-time fixes (done in previous commits). Signed-off-by: Matt Jolly <[email protected]>
* dev-lang/rust: add GCC 15 patches to older RustsMatt Jolly2025-06-041-2/+5
| | | | Signed-off-by: Matt Jolly <[email protected]>
* dev-lang/rust: Drop unused patchMatt Jolly2025-04-231-1/+0
| | | | | | | | We've been saying that we'll update this for years now. Clearly not happening; it can live in Git history. Signed-off-by: Matt Jolly <[email protected]>
* dev-lang/rust: provide more neutral `default-linker`Sam James2025-03-201-1/+1
| | | | | | | | ... 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 <[email protected]>
* dev-lang/rust: fix experimental targets checkZ. Liu2025-02-221-14/+15
| | | | | | | | | | | | | | 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 <[email protected]> Closes: https://github.com/gentoo/gentoo/pull/40698 Signed-off-by: Sam James <[email protected]>
* dev-lang/rust: must depend on dev-lang/gcc[cxx]Cristian Othón Martínez Vera2025-02-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: [email protected]: 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 <[email protected]> Closes: https://github.com/gentoo/gentoo/pull/40600 Signed-off-by: Arthur Zamarin <[email protected]>
* dev-lang/rust: experimental target must be available firstZ. Liu2025-02-161-1/+8
| | | | | | | | | | | | | 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 <[email protected]> Closes: https://github.com/gentoo/gentoo/pull/40594 Signed-off-by: Sam James <[email protected]>
* dev-lang/rust: Set RPATH instead of using ld.so.conf for libsMatt Jolly2025-02-101-0/+744
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 <[email protected]> Signed-off-by: Sam James <[email protected]>