Commit graph

287 commits

Author SHA1 Message Date
Ben Wolsieffer 5a923e552c rustc: add host platform to --target when building cross-compiler
As of 1.48, std is only built for platforms in --target. If the host platform is
not included, the resulting rustc can't compile build.rs scripts.
2020-12-12 15:24:55 -05:00
John Ericson 68fa053f46
Merge pull request #105383 from NixOS/more-rustc-musl
rustc: Improve musl support
2020-12-02 11:16:24 -05:00
John Ericson 47b99769f9 rustc: Improve musl support
There was a slight error in the target logic I didn't notice before, and
also should do the same thing for the other platforms.
2020-12-02 15:30:51 +00:00
Frederik Rietdijk 0d8491cb2b Merge master into staging-next 2020-11-29 13:51:10 +01:00
John Ericson 5d75fe4ed0
Merge pull request #105314 from lopsided98/rustc-musl-target
rustc: allow building for musl targets
2020-11-29 00:39:36 -05:00
Ben Wolsieffer 2857455b03 rustc: allow building for musl targets 2020-11-28 22:15:35 -05:00
John Ericson b7650aaa77 rust: Clean up target configs and test some more
See the new docs for details. The difference is vis-a-vis older versions
of this PR, not master.
2020-11-28 19:36:28 +00:00
John Ericson 8ddf5c6907 Merge remote-tracking branch 'upstream/master' into aj-rust-custom-target 2020-11-28 18:10:38 +00:00
John Ericson c6617d28ef Merge remote-tracking branch 'upstream/master' into aj-rust-custom-target 2020-11-28 17:09:12 +00:00
Milan Pässler 9eb79c42eb
rust: 1.47 -> 1.48 2020-11-24 09:26:47 +01:00
oxalica 68060f6f6f
makeRustPlatform: add rustLibSrc
rust-analyzer: rustcSrc -> rustLibSrc to fix build
2020-11-07 01:42:27 +08:00
Ryan Burns 33eb9cd961 rustc: enable on ppc64le 2020-11-04 20:56:54 -08:00
Vladimír Čunát 89023c38fc
Recover the complicated situation after my bad merge
I made a mistake merge.  Reverting it in c778945806 undid the state
on master, but now I realize it crippled the git merge mechanism.
As the merge contained a mix of commits from `master..staging-next`
and other commits from `staging-next..staging`, it got the
`staging-next` branch into a state that was difficult to recover.

I reconstructed the "desired" state of staging-next tree by:
 - checking out the last commit of the problematic range: 4effe769e2
 - `git rebase -i --preserve-merges a8a018ddc0` - dropping the mistaken
   merge commit and its revert from that range (while keeping
   reapplication from 4effe769e2)
 - merging the last unaffected staging-next commit (803ca85c20)
 - fortunately no other commits have been pushed to staging-next yet
 - applying a diff on staging-next to get it into that state
2020-10-26 09:01:04 +01:00
Vladimír Čunát c778945806
Revert "Merge #101508: libraw: 0.20.0 -> 0.20.2"
I'm sorry; I didn't notice it contained staging commits.

This reverts commit 17f5305b6c, reversing
changes made to a8a018ddc0.
2020-10-25 09:41:51 +01:00
Jan Tojnar 5c766c5c24
Merge branch 'staging-next' into staging 2020-10-18 21:21:03 +02:00
Aaron Janse ccbc9988ce remove unused import 2020-10-15 17:31:32 -07:00
Aaron Janse d906fda8d2 parameterize rustcSrc 2020-10-15 17:27:51 -07:00
Aaron Janse a153be896f use rustcSrc 2020-10-14 22:54:04 -07:00
Frederik Rietdijk b981eca057 Merge master into staging-next 2020-10-14 11:32:49 +02:00
John Ericson c0df12de5d rust: Add support for managing target JSON in Nix 2020-10-14 04:20:23 +00:00
John Ericson f3db41d730
Merge pull request #99335 from obsidiansystems/make-rust-platform-separate
makeRustPlatform: Put back in it's own file.
2020-10-13 22:15:47 -04:00
John Ericson 54b4b470c3 makeRustPlatform: Put back in it's own file.
We expose it on the top level, but I don't think it makes sense to pull
it from a specific version of the rust tools when it is in fact version
agnostic.

This reverts a tiny portion of 912dca193a.
2020-10-13 20:05:29 -04:00
Frederik Rietdijk dc0aeee5db Merge staging-next into staging 2020-10-13 19:35:37 +02:00
Frederik Rietdijk 9e1943edc0 Merge master into staging-next 2020-10-13 19:34:34 +02:00
Finn Behrens 75ead1b43a
rust: 1.46.0 -> 1.47.0 2020-10-12 22:29:20 +02:00
Ben Wolsieffer f0fdecfbb4 buildRustCrate: fix target config environment variables on 32-bit ARM 2020-09-29 01:40:06 -04:00
Bas van Dijk c01133316f rust: remove 1.44.1 since firefox and thunderbird build with 1.46 2020-09-23 16:29:30 +02:00
Bas van Dijk b837bd4305 rust: 1.45.2 -> 1.46.0
This adds the rust toolchain 1.46.0:

https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-1460-2020-08-27

Because rustc-1.46.0 enables static PIE by default for
`x86_64-unknown-linux-musl` this release will suffer from:

https://github.com/NixOS/nixpkgs/issues/94228

So this commit doesn't remove the 1.45.2 release.

This commit also specifies the right LLVM packages to use for each
rust release.
2020-09-23 16:26:20 +02:00
Frederik Rietdijk 0ac85bc455 Merge master into staging-next 2020-08-17 14:54:39 +02:00
zowoq 473536e3b5 buildRustPackage: remove platform.all from packages 2020-08-16 12:48:18 +10:00
Alyssa Ross 5d65255d57 rust: 1.45.0 -> 1.45.2 2020-08-11 00:09:00 +00:00
Konrad Borowski 41d681c85f rustc: use LLVM 10
Fixes rust-lang/rust#74585
2020-07-31 08:52:22 +02:00
Symphorien Gibol 2885306df0 rls: fix build
fix copied from rustfmt
2020-07-25 12:00:00 +00:00
Jan Tojnar 2988feba8c
Merge branch 'master' into staging-next 2020-07-23 08:19:14 +02:00
Aaron Janse 60fd049b65 redox: add as target 2020-07-21 13:11:36 -07:00
Cole Helbling 22fdfc7fbc
rustfmt: fix build with rustc 1.45.0
Due to a recent change in rustc 1.45.0, rustfmt now requires two
additional environment variables to be set in order to build
successfully: `CFG_RELEASE` and `CFG_RELEASE_CHANNEL`.
2020-07-21 10:32:59 -07:00
Alyssa Ross e33bed77ce rust: 1.44.1 -> 1.45.0
Thunderbird and Firefox don't build with 1.45.
2020-07-18 05:18:49 +00:00
Alyssa Ross 204d583573 rust_1_42: drop
Nothing seems to need this to build any more.
2020-07-02 17:42:39 +02:00
Alyssa Ross 1f9cd4cf0a rustc: 1.43.0 -> 1.44.1 2020-07-02 17:42:39 +02:00
Robert Helgesson 82daa41e29
cargo: install bash and zsh completion scripts 2020-06-27 21:21:43 +02:00
Frederik Rietdijk 8576d24b2a Merge staging-next into staging 2020-06-08 12:08:51 +02:00
Luka Blaskovic f7bc0a3996 rls: set RUST_SRC_PATH
rls has racer baked in which needs to know where the rust source
is to be able to do completion for std libs. By default rls will use:
$(rustc --print sysroot)/lib/rustlib/src/rust/src
which is nonexistent, this commit sets the correct source path
in a same way like it's done in racer expression.
2020-06-07 14:18:41 +00:00
Vladimír Čunát 677e3960b5
Merge #82342: rustPlatform: increase build-speed of checkPhase
...for rust-packages (into staging)
2020-06-05 09:12:30 +02:00
Maximilian Bosch 6b23cfe689
rustPlatform: add buildAndTestSubdir-argument
There are several tarballs (such as the `rust-lang/rust`-source) with a
`Cargo.toml` at root and several sub-packages (with their own Cargo.toml)
without using workspaces[1].

In such a case it's needed to move into a subdir to only build the
specified sub-package (e.g. `rustfmt` or `rsl`), however the artifacts
are at `/target` in the root-dir of the build environment. This breaks
the build since `buildRustPackage` searches for executables in `target`
(which is at the build-env's root) at the end of the `buildPhase`.

With the optional `buildAndTestSubdir`-argument, the builder moves into
the specified subdir using `pushd`/`popd` during `buildPhase` and
`checkPhase`.

Also moved the logic to find executables and libs to the end of the `buildPhase`
from a custom `postBuild`-hook to fix packages with custom `build`/`install`-procedures
such as `uutils-coreutils`.

[1] https://doc.rust-lang.org/book/ch14-03-cargo-workspaces.html
2020-05-13 01:47:17 +02:00
Alyssa Ross daf032e2ff rustc: 1.42.0 -> 1.43.0
Kept 1.42 around for Thunderbird.

i686-apple-darwin is no longer supported upstream.  We could still
support building it, for this one release, since we have the binary
for the previous release, (or bootstrap it for future releases from
Rust 1.42,) but since this release is the one that drops support, I
think it makes sense to do it now.  (And probably nobody is using it
anyway.)
2020-05-09 09:11:37 +02:00
Michael Reilly 84cf00f980
treewide: Per RFC45, remove all unquoted URLs 2020-04-10 17:54:53 +01:00
Aneesh Agrawal ce9bec83da
rustc: remove test-only git dependency
The tests have been disabled for over a year,
and AFAIK `git` was added and is only used for the rustc tests.
2020-03-29 06:36:06 +01:00
Orivej Desh 1b89aa3f7a Merge branch 'master' into staging 2020-03-23 00:53:16 +00:00
John Ericson 19a0b38cbe
Merge pull request #82882 from obsidiansystems/armv6-embedded
Misc fixes for armv6 bare metal cross
2020-03-19 10:38:22 -04:00
Benjamin Hipple 05343f6ff1 rust: remove legacy cargo fetcher
We have now migrated every single Rust package in NixPkgs! This deletes the
legacy fetcher, which is now unused.

Resolves #79975
2020-03-18 20:12:32 -07:00