Commit Graph

765 Commits

Author SHA1 Message Date
Wolfgang Walther
46c0c0eae7 Merge branch 'staging-next' into staging 2025-12-10 18:42:31 +01:00
Ihar Hrachyshka
567e8dfd8e treewide: clean up 'meta = with' pattern
This commit was created by a combination of scripts and tools:
- an ast-grep script to prefix things in meta with `lib.`,
- a modified nixf-diagnose / nixf combination to remove unused `with
lib;`, and
- regular nixfmt.

Co-authored-by: Wolfgang Walther <walther@technowledgy.de>
2025-12-10 18:09:49 +01:00
Jörg Thalheim
65037cffdb rustc, cargo-llvm-cov: enable profiler runtime on Darwin
Enable the LLVM profiler runtime on macOS by passing `--enable-profiler`
to rustc's configure. This allows cargo-llvm-cov and other coverage tools
to work on Darwin platforms.

The profiler is explicitly disabled for wasm and bpf targets which don't
support it.
2025-11-29 15:21:57 +01:00
Leona Maroni
5c9b757f6b Merge remote-tracking branch 'origin/master' into staging-next 2025-11-15 09:51:23 +01:00
Wolfgang Walther
55f496d0eb maintainers: drop various inactive maintainers (#459104) 2025-11-14 22:18:34 +00:00
Luka Blašković
f93a104922 rust: 1.91.0 -> 1.91.1 2025-11-11 06:08:54 +00:00
Wolfgang Walther
215c5bf597 maintainers: drop havvy
Inactive since 2023.
2025-11-06 10:58:08 +01:00
Winter
826c4e658a rust: 1.90.0 -> 1.91.0 (#457185) 2025-11-04 19:32:56 +00:00
nixpkgs-ci[bot]
b07ca7b994 Merge master into staging-next 2025-11-04 19:27:06 +00:00
Ross Smyth
ef981af9a9 cargo-auditable: RossSmyth adopts 2025-11-04 11:41:30 -05:00
Luka Blašković
6dc97c4c87 rust: 1.90.0 -> 1.91.0
Co-authored-by: winston <hey@winston.sh>
2025-11-04 07:29:58 +00:00
K900
531f9f1681 Merge remote-tracking branch 'origin/master' into staging-next 2025-11-03 13:42:40 +03:00
Michael Daniels
30420dabad treewide: drop figsoda as maintainer (part 2)
s/maintainers = with maintainers; [ figsoda ];/maintainers = with maintainers; [ ];/
2025-11-02 20:16:11 -05:00
K900
0b0c249f09 Merge remote-tracking branch 'origin/staging-next' into staging 2025-10-25 10:00:19 +03:00
Samuel Holland
8cf7fbde48 rust: Enable bootstrap on powerpc64le-unknown-linux-musl
Official tarballs for this target have been built since version 1.85.0.

Link: https://github.com/rust-lang/rust/pull/133801
2025-10-24 00:59:03 -05:00
Marie Ramlow
72155d28e2 rust: 1.89.0 -> 1.90.0 2025-10-12 13:24:19 +02:00
K900
e93c560b79 Merge remote-tracking branch 'origin/master' into staging-next 2025-10-05 12:17:08 +03:00
Wolfgang Walther
91a8fee3aa treewide: remove redundant parentheses
Auto-fixed by nixf-diagnose.
2025-10-05 10:52:03 +02:00
K900
f8d669f413 Merge remote-tracking branch 'origin/master' into staging-next 2025-10-04 21:10:21 +03:00
NAHO
c8d4dabc43 pkgs: remove optional builtins prefixes from prelude functions
Remove optional builtins prefixes from prelude functions by running:

    builtins=(
      abort
      baseNameOf
      break
      derivation
      derivationStrict
      dirOf
      false
      fetchGit
      fetchMercurial
      fetchTarball
      fetchTree
      fromTOML
      import
      isNull
      map
      null
      placeholder
      removeAttrs
      scopedImport
      throw
      toString
      true
    )

    fd \
      --type file \
      . \
      pkgs \
      --exec-batch sed --in-place --regexp-extended "
        s/\<builtins\.($(
          printf '%s\n' "${builtins[@]}" |
            paste --delimiter '|' --serial -
        ))\>/\1/g
      "

    nix fmt
2025-10-04 19:02:37 +02:00
K900
63730dc4de Merge remote-tracking branch 'origin/master' into staging-next 2025-09-26 22:55:30 +03:00
Guy Chronister
475a0e3a44 various: remove superflous usages of pname 2025-09-25 20:45:06 -05:00
Tristan Ross
deb4234fc1 rust: track latest LLVM to simplify version bumps 2025-09-15 20:33:57 -07:00
Alyssa Ross
03738e5632 rustc: fix rust-gdb, rust-gdbgui and rust-lldb on cross compilers (#440482) 2025-09-15 04:37:35 +00:00
Marie Ramlow
f3423e9fdd clippy: fix cross linting
Clippy uses `clippy-driver` for linting, which needs to be pointed to the
correct sysroot, just like our rustc.

Fixes: https://github.com/NixOS/nixpkgs/issues/278508
2025-09-10 09:01:48 +02:00
Marie Ramlow
5f746cb259 rust: add powerpc-linux as a target platform 2025-09-10 08:15:07 +02:00
Marie Ramlow
b8fa8e32b0 rustc: fix rust-gdb, rust-gdbgui and rust-lldb on cross compilers
Since cross compilers can also build code for the build platform, we
should also install these debug scripts so they are available just like
in our non-cross rustc.
2025-09-08 18:29:01 +02:00
nixpkgs-ci[bot]
28a77664bb Merge master into staging-next 2025-08-31 18:04:38 +00:00
Alyssa Ross
5b48b63e28 rustc: fix misnamed "tier1TargetPlatforms"
Link: https://github.com/NixOS/nixpkgs/pull/437113#pullrequestreview-3156043129
2025-08-31 18:16:05 +02:00
nixpkgs-ci[bot]
33bedf3c25 Merge master into staging-next 2025-08-31 12:06:11 +00:00
Tristan Ross
27fcc80c3a rustc: fix pkgsLLVM
Fixes `libunwind` from not being included due to improper usage of
`lib.optional` by passing a list instead of a single item. Drops the
hack for `llvmPackages` since just passing it through works now.
2025-08-31 11:57:55 +05:30
nixpkgs-ci[bot]
664c1d7072 Merge staging-next into staging 2025-08-15 00:18:56 +00:00
K900
b5531da4b1 Merge remote-tracking branch 'origin/master' into staging-next 2025-08-14 21:21:33 +03:00
Marie Ramlow
7f494c2b23 rustc: also symlink libexec when doing fastCross
We also need to symlink libexec when doing fastCross.
It contains rust-analyzer-proc-macro-srv which rust-analyzer needs for proc macro expansion to work.
2025-08-14 18:39:24 +02:00
dramforever
39aef90642 rustc: Fix configure flags for custom target JSON
For custom target JSON, rustc bootstrap expects config to be set for
target."/path/to/target.json", so use that.
2025-08-13 16:13:10 +02:00
Valentine Briese
dc402c1fc6 rust: 1.88.0 -> 1.89.0 2025-08-10 12:58:52 +02:00
nixpkgs-ci[bot]
6a5e5fa747 Merge staging-next into staging 2025-07-29 18:07:08 +00:00
Tristan Ross
9093a19b61 rustc: un-mark broken for LLVM stdenv
Essentially reverts ebbcb003f9 since
6814b2f572 fixes it.
2025-07-28 07:56:17 -07:00
Kamil Zaripov
859c24dfc8 rustc: Fix cross-compilation for the targets with dot in name
When you are trying to cross-compile rustc to the target platform with
the dot in name, e.g. "thumb8vm.main-none-eabi", rustc compilation fails
with this error during configuration:

    armv8m-unknown-none-eabi-rustc> Running phase: configurePhase
    armv8m-unknown-none-eabi-rustc> patching script interpreter paths in ./configure
    armv8m-unknown-none-eabi-rustc> ./configure: interpreter directive changed from "#!/bin/sh" to "/nix/store/ih68ar79msmj0496pgld4r3vqfr7bbin-bash-5.2p37/bin/sh"
    armv8m-unknown-none-eabi-rustc> configure flags: --prefix=/nix/store/wscr78z0s5v2hxx3p1n4qjgjnds8dm0g-armv8m-unknown-none-eabi-rustc-1.86.0 --sysconfdir=/nix/store/wscr78z0s5v2hxx3p1n4qjgjnds8dm0g-armv8m-unknown-none-eabi-rustc-1.86.0/etc --release-channel=stable --set=build.rustc=/nix/store/f9zdz15l2zd408yq7a3bgrj593kpwjqx-rustc-wrapper-1.86.0/bin/rustc --set=build.cargo=/nix/store/ygri5mmqmril5ll9lhawa01faa2qhdvd-cargo-1.86.0/bin/cargo --tools=rustc\,rustdoc\,rust-analyzer-proc-macro-srv --enable-rpath --enable-vendor --disable-lld --build=x86_64-unknown-linux-gnu --host=x86_64-unknown-linux-gnu --target=thumbv8m.main-none-eabi --set=target.x86_64-unknown-linux-gnu.cc=/nix/store/a0d7m3zn9p2dfa1h7ag9h2wzzr2w25sn-gcc-wrapper-14.2.1.20250322/bin/cc --set=target.x86_64-unknown-linux-gnu.cc=/nix/store/a0d7m3zn9p2dfa1h7ag9h2wzzr2w25sn-gcc-wrapper-14.2.1.20250322/bin/cc --set=target.thumbv8m.main-none-eabi.cc=/nix/store/wnnwk5vknch7d8jy3cdykbsnn5qrmjj3-armv8m-unknown-none-eabi-gcc-wrapper-14.2.1.20250322/bin/armv8m-unknown-none-eabi-cc --set=target.thumbv8m.main-none-eabi.linker=/nix/store/wnnwk5vknch7d8jy3cdykbsnn5qrmjj3-armv8m-unknown-none-eabi-gcc-wrapper-14.2.1.20250322/bin/armv8m-unknown-none-eabi-cc --set=target.x86_64-unknown-linux-gnu.linker=/nix/store/a0d7m3zn9p2dfa1h7ag9h2wzzr2w25sn-gcc-wrapper-14.2.1.20250322/bin/cc --set=target.x86_64-unknown-linux-gnu.linker=/nix/store/a0d7m3zn9p2dfa1h7ag9h2wzzr2w25sn-gcc-wrapper-14.2.1.20250322/bin/cc --set=target.x86_64-unknown-linux-gnu.cxx=/nix/store/a0d7m3zn9p2dfa1h7ag9h2wzzr2w25sn-gcc-wrapper-14.2.1.20250322/bin/c++ --set=target.x86_64-unknown-linux-gnu.cxx=/nix/store/a0d7m3zn9p2dfa1h7ag9h2wzzr2w25sn-gcc-wrapper-14.2.1.20250322/bin/c++ --set=target.thumbv8m.main-none-eabi.cxx=/nix/store/wnnwk5vknch7d8jy3cdykbsnn5qrmjj3-armv8m-unknown-none-eabi-gcc-wrapper-14.2.1.20250322/bin/armv8m-unknown-none-eabi-c++ --set=target.x86_64-unknown-linux-gnu.crt-static=false --set=target.x86_64-unknown-linux-gnu.crt-static=false --set=target.thumbv8m.main-none-eabi.crt-static=false --enable-llvm-link-shared --set=target.x86_64-unknown-linux-gnu.llvm-config=/nix/store/bw1i8r1ilp79xyybr2n633aq3jj1wrrd-llvm-19.1.7-dev/bin/llvm-config --set=target.x86_64-unknown-linux-gnu.llvm-config=/nix/store/bw1i8r1ilp79xyybr2n633aq3jj1wrrd-llvm-19.1.7-dev/bin/llvm-config --set=target.thumbv8m.main-none-eabi.llvm-config=/nix/store/bw1i8r1ilp79xyybr2n633aq3jj1wrrd-llvm-19.1.7-dev/bin/llvm-config --disable-llvm-bitcode-linker --disable-docs
    armv8m-unknown-none-eabi-rustc> configure: processing command line
    armv8m-unknown-none-eabi-rustc> configure:
    armv8m-unknown-none-eabi-rustc> configure: build.configure-args := ['--prefix=/nix/store/wscr78z0s5v2hxx3p1n4qjgj ...
    armv8m-unknown-none-eabi-rustc> configure: install.prefix       := /nix/store/wscr78z0s5v2hxx3p1n4qjgjnds8dm0g-ar ...
    armv8m-unknown-none-eabi-rustc> configure: install.sysconfdir   := /nix/store/wscr78z0s5v2hxx3p1n4qjgjnds8dm0g-ar ...
    armv8m-unknown-none-eabi-rustc> configure: rust.channel         := stable
    armv8m-unknown-none-eabi-rustc> configure: build.rustc          := /nix/store/f9zdz15l2zd408yq7a3bgrj593kpwjqx-ru ...
    armv8m-unknown-none-eabi-rustc> configure: build.cargo          := /nix/store/ygri5mmqmril5ll9lhawa01faa2qhdvd-ca ...
    armv8m-unknown-none-eabi-rustc> configure: target.x86_64-unknown-linux-gnu.cc := /nix/store/a0d7m3zn9p2dfa1h7ag9h ...
    armv8m-unknown-none-eabi-rustc> configure: target.x86_64-unknown-linux-gnu.cc := /nix/store/a0d7m3zn9p2dfa1h7ag9h ...
    armv8m-unknown-none-eabi-rustc> configure: target.thumbv8m.main-none-eabi.cc := /nix/store/wnnwk5vknch7d8jy3cdykb ...
    armv8m-unknown-none-eabi-rustc> configure: target.thumbv8m.main-none-eabi.linker := /nix/store/wnnwk5vknch7d8jy3c ...
    armv8m-unknown-none-eabi-rustc> configure: target.x86_64-unknown-linux-gnu.linker := /nix/store/a0d7m3zn9p2dfa1h7 ...
    armv8m-unknown-none-eabi-rustc> configure: target.x86_64-unknown-linux-gnu.linker := /nix/store/a0d7m3zn9p2dfa1h7 ...
    armv8m-unknown-none-eabi-rustc> configure: target.x86_64-unknown-linux-gnu.cxx := /nix/store/a0d7m3zn9p2dfa1h7ag9 ...
    armv8m-unknown-none-eabi-rustc> configure: target.x86_64-unknown-linux-gnu.cxx := /nix/store/a0d7m3zn9p2dfa1h7ag9 ...
    armv8m-unknown-none-eabi-rustc> configure: target.thumbv8m.main-none-eabi.cxx := /nix/store/wnnwk5vknch7d8jy3cdyk ...
    armv8m-unknown-none-eabi-rustc> configure: target.x86_64-unknown-linux-gnu.crt-static := False
    armv8m-unknown-none-eabi-rustc> configure: target.x86_64-unknown-linux-gnu.crt-static := False
    armv8m-unknown-none-eabi-rustc> configure: target.thumbv8m.main-none-eabi.crt-static := False
    armv8m-unknown-none-eabi-rustc> configure: target.x86_64-unknown-linux-gnu.llvm-config := /nix/store/bw1i8r1ilp79 ...
    armv8m-unknown-none-eabi-rustc> configure: target.x86_64-unknown-linux-gnu.llvm-config := /nix/store/bw1i8r1ilp79 ...
    armv8m-unknown-none-eabi-rustc> configure: target.thumbv8m.main-none-eabi.llvm-config := /nix/store/bw1i8r1ilp79x ...
    armv8m-unknown-none-eabi-rustc> configure: build.tools          := ['rustc', 'rustdoc', 'rust-analyzer-proc-macro ...
    armv8m-unknown-none-eabi-rustc> configure: rust.rpath           := True
    armv8m-unknown-none-eabi-rustc> configure: build.vendor         := True
    armv8m-unknown-none-eabi-rustc> configure: rust.lld             := False
    armv8m-unknown-none-eabi-rustc> configure: build.build          := x86_64-unknown-linux-gnu
    armv8m-unknown-none-eabi-rustc> configure: build.host           := ['x86_64-unknown-linux-gnu']
    armv8m-unknown-none-eabi-rustc> configure: build.target         := ['thumbv8m.main-none-eabi']
    armv8m-unknown-none-eabi-rustc> configure: llvm.link-shared     := True
    armv8m-unknown-none-eabi-rustc> configure: rust.llvm-bitcode-linker := False
    armv8m-unknown-none-eabi-rustc> configure: build.docs           := False
    armv8m-unknown-none-eabi-rustc> configure: profile              := dist
    armv8m-unknown-none-eabi-rustc> Traceback (most recent call last):
    armv8m-unknown-none-eabi-rustc>   File "/build/rustc-1.86.0-src/./src/bootstrap/configure.py", line 762, in <module>
    armv8m-unknown-none-eabi-rustc>     section_order, sections, targets = parse_args(sys.argv[1:])
    armv8m-unknown-none-eabi-rustc>                                        ^^^^^^^^^^^^^^^^^^^^^^^^
    armv8m-unknown-none-eabi-rustc>   File "/build/rustc-1.86.0-src/./src/bootstrap/configure.py", line 446, in parse_args
    armv8m-unknown-none-eabi-rustc>     return parse_example_config(known_args, config)
    armv8m-unknown-none-eabi-rustc>            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    armv8m-unknown-none-eabi-rustc>   File "/build/rustc-1.86.0-src/./src/bootstrap/configure.py", line 622, in parse_example_config
    armv8m-unknown-none-eabi-rustc>     configure_file(sections, top_level_keys, targets, config)
    armv8m-unknown-none-eabi-rustc>   File "/build/rustc-1.86.0-src/./src/bootstrap/configure.py", line 709, in configure_file
    armv8m-unknown-none-eabi-rustc>     configure_section(targets[target], section_config[target])
    armv8m-unknown-none-eabi-rustc>   File "/build/rustc-1.86.0-src/./src/bootstrap/configure.py", line 683, in configure_section
    armv8m-unknown-none-eabi-rustc>     raise RuntimeError("failed to find config line for {}".format(key))
    armv8m-unknown-none-eabi-rustc> RuntimeError: failed to find config line for main-none-eabi

This is probably related to
https://github.com/rust-lang/rust/issues/130602 and thus target string
should be double-quotted so bootstrap/configure.py can parse it
correctly.

Changes tested on x86_64-linux build machine with rustc built for
"thumb8vm.main-none-eabi" target.
2025-07-25 15:49:40 +02:00
K900
9ea52fa88d Merge remote-tracking branch 'origin/staging-next' into staging 2025-07-25 07:23:57 +03:00
Wolfgang Walther
4fbb23ef4e top-level/release-attrpaths-superset: remove __attrsFailEvaluation (#428015) 2025-07-24 19:45:36 +00:00
Wolfgang Walther
90604d95bc Merge branch 'staging-next' into staging 2025-07-24 14:33:09 +02:00
Wolfgang Walther
5a0711127c treewide: run nixfmt 1.0.0 2025-07-24 13:55:40 +02:00
nixpkgs-ci[bot]
a506444d89 Merge staging-next into staging 2025-07-23 18:05:43 +00:00
Wolfgang Walther
59233ecd0d top-level/release-attrpaths-superset: remove __attrsFailEvaluation
This doesn't seem to be necessary anymore. I confirmed by:
- Adding a lib.warn into the __attrsFailsEvaluation branch - never got
any.
- Removing it everywhere and running full Eval on it - no errors, no
rebuilds.
2025-07-23 19:23:23 +02:00
Alyssa Ross
abc50135a4 rustc: unset PKG_CONFIG_*
This hasn't been required to cross compile rustc since
20e24e42d4 ("rustc: 1.67.1 -> 1.68.0").
2025-07-22 19:04:10 +02:00
Alyssa Ross
1f6f9b0d21 cargo: unset HOST_PKG_CONFIG_PATH
This is no longer required for the original use case since
83aaf61836 ("cargo,clippy,rustc,rustfmt: 1.78.0 -> 1.79.0").
2025-07-20 10:11:45 +02:00
Alyssa Ross
62a8751672 rust: drop Firefox and Thunderbird from checklist
This hasn't been done for the last few releases, there haven't
been any problems, and documentation should match reality.  Last time
Thunderbird broke there was a patch for it that could be backported.
2025-07-15 12:05:26 +02:00
K900
b960b040a2 Merge remote-tracking branch 'origin/master' into staging-next 2025-07-08 15:12:10 +03:00
OPNA2608
76c4ca93f4 rustc: Add support for bootstrapping ppc64-elfv1
Add powerpc64-unknown-linux-gnu to the hash printing script, and add the entry to bootstrapHashes.
2025-07-08 10:05:11 +02:00