Commit Graph

229 Commits

Author SHA1 Message Date
Alyssa Ross
e1ed62abc2 cargo: install man pages
I thought about doing a seperate output for these, but they're tiny
compared to the size of the binary, so there's no point.

(cherry picked from commit 0489c1b4b2)
2020-02-12 17:56:01 +01:00
Andreas Rammhold
5c8612d90c
cargo: use bundled libgit2
Cargo uses git-rs which is made to be built against the bundled libgit2
version that hasn't been part of a stable release yet. Using our libgit2
instead of the master version fails during runtime as they are not
compatible anymore.

After the next libgit2 update we can try again but it is likely that
there will also be yet another cargo release at that point in time…
2020-02-12 17:16:32 +01:00
Benjamin Hipple
2115a2037c fetchcargo: use flat tar.gz file for vendored src instead of recursive hash dir
This has several advantages:

1. It takes up less space on disk in-between builds in the nix store.
2. It uses less space in the binary cache for vendor derivation packages.
3. It uses less network traffic downloading from the binary cache.
4. It plays nicely with hashed mirrors like tarballs.nixos.org, which only
   substitute --flat hashes on single files (not recursive directory hashes).
5. It's consistent with how simple `fetchurl` src derivations work.
6. It provides a stronger abstraction between input src-package and output
   package, e.g., it's harder to accidentally depend on the src derivation at
   runtime by referencing something like `${src}/etc/index.html`. Likewise, in
   the store it's harder to get confused with something that is just there as a
   build-time dependency vs. a runtime dependency, since the build-time
   src dependencies are tarred up.

Disadvantages are:
1. It takes slightly longer to untar at the start of a build.

As currently implemented, this attaches the compacted vendor.tar.gz feature as a
rider on `verifyCargoDeps`, since both of them are relatively newly implemented
behavior that change the `cargoSha256`.

If this PR is accepted, I will push forward the remaining rust packages with a
series of treewide PRs to update the `cargoSha256`s.
2020-02-10 10:17:29 -05:00
Bastian Köcher
60a479d91d rustc: 1.40.0 -> 1.41.0 2020-02-09 09:20:07 +01:00
Daiderd Jordan
8df4338f51
rustPackages: make rustc-dev optional
This was only introduced in 1.40.0 and doesn't work on older versions.

    thread 'main' panicked at 'Error: no rules matched rustc-dev.', src/bootstrap/builder.rs:231:21
    note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.
    failed to run: /build/rustc-1.38.0-src/build/bootstrap/debug/bootstrap dist rustc-dev
2020-01-18 10:57:13 +01:00
Symphorien Gibol
47681d7c5c rust: include the rustc-dev component
This enables to compile rls and rustc

See also https://github.com/rust-lang/rust/pull/64823
2020-01-11 12:00:00 +00:00
Maximilian Bosch
823b96a52b
rustc: fix for structured attrs 2019-12-31 01:29:57 +01:00
Robin Gloster
981ae25113
treewide: NIX_*_COMPILE -> string 2019-12-31 00:07:21 +01:00
Jan Tojnar
4bbc6cc66f
Merge branch 'staging-next' into staging 2019-12-25 05:18:52 +01:00
Jan Tojnar
ca39dd3a8a
Merge branch 'master' into staging-next 2019-12-25 05:15:06 +01:00
Eelco Dolstra
e82fae1a39
rustc: 1.39 -> 1.40 2019-12-24 16:15:36 +00:00
Alyssa Ross
b9d274b89d rustPlatform.fetchcargo: expose 2019-12-23 18:27:56 +00:00
Jörg Thalheim
d68c70f1bb
rustc: add QA documentation (#73296)
rustc: add QA documentation
2019-12-20 14:10:33 +00:00
Jan Tojnar
628ff8db61
rustc: switch to python3 2019-12-15 13:52:53 +01:00
Jan Tojnar
08c0f1200a
cargo: switch to python3 2019-12-15 13:52:40 +01:00
Ben Wolsieffer
83ac9c07e4 rust: add support for armv6l-linux and armv7l-linux 2019-11-23 19:19:31 -05:00
Jörg Thalheim
d2d1c533b0
rustc: add QA documentation 2019-11-13 12:34:42 +00:00
Luka Blaskovic
8bff104114 rustc: bump runtime LLVM to match upstream
```
rustc 1.38.0
binary: rustc
commit-hash: unknown
commit-date: unknown
host: x86_64-unknown-linux-gnu
release: 1.38.0
LLVM version: 9.0
```
2019-11-12 14:50:49 +01:00
Frederik Rietdijk
73b88e17dd Merge staging-next into staging 2019-11-11 12:09:26 +01:00
taku0
97f20c3011 rust: keep multiple version.
Firefox 70.0.1 and Thunderbird 68.2.2 require older version of rustc.
2019-11-08 21:12:01 +09:00
Eelco Dolstra
14ee26ccf5 rustc: 1.38.0 -> 1.39.0 2019-11-07 15:04:06 +01:00
John Ericson
acd2d19484
Merge pull request #72347 from NixOS/bash-no-undef-vars
treewide: `set -u` everywhere
2019-11-04 19:52:33 -05:00
John Ericson
45e5e68c53 rust: Allow IN_NIX_SHELL to be undefined 2019-11-01 14:45:59 -04:00
oxalica
24af7ef427
rust-src: shrink the size 2019-11-01 23:02:34 +08:00
Ricardo M. Correia
7ec975fa84 rustc, cargo: remove myself from maintainers 2019-10-08 19:52:47 +02:00
Jörg Thalheim
173d5a4e6e
rustc: remove test related patches/code
Tests have been disabled since over a year and now the
code starts to bit-rot. As it seems unlikely that they
will come back in near future, let's just remove it.
2019-09-30 10:00:33 +01:00
Eelco Dolstra
9c0968fd81 rustc: 1.37.0 -> 1.38.0 2019-09-26 16:34:48 +02:00
Eelco Dolstra
adb15c3a63 Revert "rustc: Provide compiler-rt sources"
This reverts commit b7a8280312. It's no
longer needed with Rust 1.38.
2019-09-26 14:50:07 +02:00
volth
7bb6b373ab treewide: name -> pname (#67513) 2019-08-31 07:41:22 -04:00
volth
08f68313a4 treewide: remove redundant rec 2019-08-28 11:07:32 +00:00
Frederik Rietdijk
5061fe0c2c Merge staging-next into staging 2019-08-28 08:26:42 +02:00
volth
35d68ef143 treewide: remove redundant quotes 2019-08-26 21:40:19 +00:00
Vladimír Čunát
2e6bf42a22
Merge branch 'master' into staging-next
There ver very many conflicts, basically all due to
name -> pname+version.  Fortunately, almost everything was auto-resolved
by kdiff3, and for now I just fixed up a couple evaluation problems,
as verified by the tarball job.  There might be some fallback to these
conflicts, but I believe it should be minimal.

Hydra nixpkgs: ?compare=1538299
2019-08-24 08:55:37 +02:00
Symphorien Gibol
d9d0647046 rls: tie version to rustc's 2019-08-21 11:21:01 +02:00
Bas van Dijk
06734a93e9 rustfmt: fix build on aarch64 2019-08-19 15:23:41 +02:00
Bas van Dijk
b9c4bef090
Merge pull request #66713 from basvandijk/rustfmt-from-rust-src
rustfmt: use the src as defined by the git submodule in rust
2019-08-19 15:14:23 +02:00
Bas van Dijk
4e5d4d5509 rustfmt: enable tests 2019-08-19 15:09:15 +02:00
Bas van Dijk
dc374218c9
rustfmt: make sure to test rustfmt instead of rustc
Co-Authored-By: symphorien <symphorien@users.noreply.github.com>
2019-08-19 12:54:40 +02:00
Eelco Dolstra
1f3c2bcefe
Merge pull request #66686 from edolstra/rustc-1.37.0
rustc: 1.36.0 -> 1.37.0
2019-08-17 16:22:42 +02:00
Frederik Rietdijk
c68f58d95c Merge master into staging-next 2019-08-17 09:30:16 +02:00
Eelco Dolstra
b7a8280312 rustc: Provide compiler-rt sources
This is needed to build libprofiler_builtins now.

e59f0cc0d3 (diff-daf9539767b10f18e1517f65cdc2e0e2)
https://github.com/rust-lang-nursery/compiler-builtins/issues/295
2019-08-16 15:08:12 +02:00
Eelco Dolstra
a4fc84de44 rustc: 1.36.0 -> 1.37.0 2019-08-16 14:10:13 +02:00
Bas van Dijk
16cb2611d9 rustfmt: use the src as defined by the git submodule in rust
This commit makes sure rustc and rustfmt are compatible by setting
rustfmt's src to the rustfmt git submodule as defined in:

https://github.com/rust-lang/rust/tree/1.36.0/src/tools
2019-08-16 12:54:05 +02:00
Bas van Dijk
682e6fafa4 rustPackages.clippy: init at rust-1.36.0 2019-08-16 09:18:32 +02:00
Eelco Dolstra
7706f36d0d
rustc: Enable profiling support
This matches the upstream binary releases (see
https://github.com/rust-lang/rust/blob/beta/src/ci/docker/x86_64-gnu/Dockerfile).

Upstream also enables sanitizer support but that adds another 39 MiB
to the package size, and who needs sanitizers in Rust anyway ;-)
2019-07-31 22:47:28 +02:00
Eelco Dolstra
57adfbd3d4
rustc: Drop RUSTC_BOOTSTRAP
It's no longer needed.
2019-07-31 22:47:28 +02:00
arcnmx
b53e237ef6
cargo: remove darwin hack
This seems to have recently resolved itself with updates
and is no longer necessary.
2019-07-29 06:50:20 +01:00
Eelco Dolstra
33723434a8 rustc: Add setup hook to set $CARGO_HOME
This works around 'failed to open:
/homeless-shelter/.cargo/.package-cache' with Rust 1.36 even when
we're using 'cargo --frozen'.
2019-07-07 15:18:09 +02:00
Eelco Dolstra
2c0a6e1ea0 rustc: 1.35.0 -> 1.36.0 2019-07-07 15:18:09 +02:00
Daiderd Jordan
368c415a01 rustc: don't patch precompiled binaries on darwin
This doesn't work anymore since 1.35.0 because the load commands end up
being too large, but this is a precompiled binary anyway so it's not
really needed or more impure to use the expected system versions.
2019-07-03 08:52:27 +02:00