Commit Graph

493 Commits

Author SHA1 Message Date
Alyssa Ross
3f01b576af
Merge remote-tracking branch 'nixpkgs/staging-next' into staging
Conflicts:
	nixos/doc/manual/from_md/release-notes/rl-2111.section.xml
	nixos/doc/manual/release-notes/rl-2111.section.md
2021-10-28 16:07:38 +00:00
Bernardo Meurer
f17c3516fb
makeRustPlatform: allow to easily override stdenv 2021-10-26 22:13:38 -07:00
Yureka
6594da569b
rustc: 1.55.0 -> 1.56.0 2021-10-22 10:04:09 +02:00
John Wiegley
96c0f7e4dd
rustPackages.rls: Fix 1.55 build on Darwin (#140232)
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2021-10-03 02:16:19 +02:00
Alyssa Ross
28a97eab19
rust: 1.54.0 -> 1.55.0 2021-09-10 09:26:43 +00:00
Alyssa Ross
a43efb9884
cargo: don't use vendored curl
Using the curl from Nixpkgs will fix Cargo 0.55.0 on Darwin.
2021-09-10 09:26:42 +00:00
Jan Tojnar
7a04c2ad68 Merge branch 'staging-next' into staging
- boost 171 removed on staging-next
- re-generated node-packages.nix

; Conflicts:
;	pkgs/development/java-modules/m2install.nix
;	pkgs/development/node-packages/node-packages.nix
;	pkgs/top-level/all-packages.nix
2021-08-22 01:13:41 +02:00
Robin Stumm
d89c29deb8 rust.toRustTarget: fix for windows
change vendor from "w64" to "pc"
broken since 91718534f1
2021-08-20 12:43:02 +02:00
Alyssa Ross
1d1ef50501 rustc: 1.53.1 -> 1.54.0
Tested builds of fd and firefox on x86_64-linux.
2021-07-30 11:26:01 +00:00
Alyssa Ross
37ac6d6e76 rustc: 1.52.1 -> 1.53.0 2021-06-19 10:16:10 +09:00
Alyssa Ross
181f012824 rustc: don't install uninstall.sh 2021-06-18 13:58:16 +00:00
Sandro
c1a8f04935
Merge pull request #126725 from SuperSandro2000/cargo-no-ruby 2021-06-15 02:50:23 +02:00
Sandro Jäckel
f3ce27d2db
rust: remove ruby from rustPlatform 2021-06-13 20:38:22 +02:00
github-actions[bot]
65e3e9dc51
Merge master into staging-next 2021-06-01 07:50:21 +00:00
Zhaofeng Li
6288319a3a rust: Add support for riscv64 2021-05-31 14:55:35 -07:00
github-actions[bot]
f2a2e8f5e9
Merge master into staging-next 2021-05-28 12:48:40 +00:00
Daniël de Kok
1da0b1dbc9
Merge pull request #122158 from danieldk/import-cargo-lock
rustPlatform.buildRustPackage: support direct use of Cargo.lock
2021-05-28 12:07:25 +02:00
Daniël de Kok
b3969f3ad7 rustPlatform.buildRustPackage: support direct use of Cargo.lock
This change introduces the cargoLock argument to buildRustPackage,
which can be used in place of cargo{Sha256,Hash} or cargoVendorDir. It
uses the importCargoLock function to build the vendor
directory. Differences compared to cargo{Sha256,Hash}:

- Requires a Cargo.lock file.
- Does not require a Cargo hash.
- Retrieves all dependencies as fixed-output derivations.

This makes buildRustPackage much easier to use as part of a Rust
project, since it does not require updating cargo{Sha256,Hash} for
every change to the lock file.
2021-05-28 08:01:28 +02:00
Daniël de Kok
2f46d77e28 rustPlatform.importCargoLock: init
This function can be used to create an output path that is a cargo
vendor directory. In contrast to e.g. fetchCargoTarball all the
dependent crates are fetched using fixed-output derivations. The
hashes for the fixed-output derivations are gathered from the
Cargo.lock file.

Usage is very simple, e.g.:

importCargoLock {
  lockFile = ./Cargo.lock;
}

would use the lockfile from the current directory.

The implementation of this function is based on Eelco Dolstra's
import-cargo:

https://github.com/edolstra/import-cargo/blob/master/flake.nix

Compared to upstream:

- We use fetchgit in place of builtins.fetchGit.
- Sync to current cargo vendoring.
2021-05-28 08:01:25 +02:00
github-actions[bot]
a673990e6c
Merge master into staging-next 2021-05-25 18:43:22 +00:00
Daniël de Kok
7eddab91f5
Merge pull request #123867 from danieldk/maturin-0.10.5
maturin: 0.10.4 -> 0.10.6
2021-05-25 16:01:47 +02:00
Daniël de Kok
11307c1d47 maturinBuildHook: add rustc to deps
maturin 0.10.5 uses rustc -vV to find the host:

e886c85f5a

We now need to make rustc visible to the hook for maturin to work
properly.
2021-05-21 07:51:27 +02:00
Luka Blaskovic
ded99630e9 rustc: 1_52, use correct llvm version 2021-05-17 08:40:12 -07:00
github-actions[bot]
5c18268a6b
Merge staging-next into staging 2021-05-16 06:22:08 +00:00
github-actions[bot]
d6fe7f78a8
Merge master into staging-next 2021-05-16 06:22:05 +00:00
Ben Wolsieffer
9d6134ae6d rustc: allowing building for ARMv5
toRustTarget needed to handle the armv5tel case
2021-05-15 11:43:51 -04:00
Jonathan Ringer
4bb359aa99 rustc: 1.52.0 -> 1.52.1 2021-05-10 16:00:44 -07:00
Pavol Rusnak
252bf94a74 rust: 1.51.0 -> 1.52.0 2021-05-08 11:42:10 -07:00
John Ericson
50b6631929 rustc: Fix build
Thanks @jonringer for catching, and sorry I didn't myself!
2021-04-30 23:09:15 -07:00
Andrew Childs
7869d16545 llvmPackages: Multuple outputs for everythting
Also begin to start work on cross compilation, though that will have to
be finished later.

The patches are based on the first version of
https://reviews.llvm.org/D99484. It's very annoying to do the
back-porting but the review has uncovered nothing super major so I'm
fine sticking with what I've got.

Beyond making the outputs work, I also strove to re-sync the packages,
as they have been drifting pointlessly apart for some time.

----

Other misc notes, highly incomplete

- lvm-config-native and llvm-config are put in `dev` because they are
  tools just for build time.

- Clang no longer has an lld dep. That was introduced in
  db29857eb3, but if clang needs help
  finding lld when it is used we should just pass it flags / put in the
  resource dir. Providing it at build time increases critical path
  length for no good reason.

----

A note on `nativeCC`:

`stdenv` takes tools from the previous stage, so:

1. `pkgsBuildBuild`: `(?1, x, x)`
2. `pkgsBuildBuild.stdenv.cc`: `(?0, ?1, x)`

while:

1. `pkgsBuildBuild`: `(?1, x, x)`
2. `pkgsBuildBuild.targetPackages`: `(x, x, ?2)`
3. `pkgsBuildBuild.targetPackages.stdenv.cc`: `(?1, x, x)`
2021-04-30 05:41:00 +00:00
Finn Behrens
30e6c07310 rustc: reenable aarch64-darwin for 1.51.0 2021-04-09 13:53:51 +02:00
Arthur Gautier
6f73a8570c rust: 1.50.0 -> 1.51.0
Signed-off-by: Arthur Gautier <baloo@superbaloo.net>
2021-04-02 06:03:40 +10:00
Ivan Babrou
2cf3641a5c rustc: update llvm on darwin to current
We downgraded when LLVM 10 wasn't working well on Darwin: #101136.
Now that we're using LLVM 11, the issue is no longer present.
2021-03-20 06:12:48 +10:00
Jörg Thalheim
fc02aa17fe
Merge pull request #112792 from Kloenk/rust_1-50-0
rust: 1.49.0 -> 1.50.0
2021-03-07 13:56:59 +00:00
Ben Siraphob
e03c068af5 treewide: makeWrapper buildInputs to nativeBuildInputs 2021-02-19 20:09:16 +07:00
Daniël de Kok
2376921de5 rls: update preBuild for changes in buildRustPackage
preBuild is now run before changing to buildAndTestSubdir, so use full
path to tests/client.rs in preBuild.
2021-02-17 16:47:15 +01:00
Daniël de Kok
05e40e79a8 buildRustPackage: factor out check phase to cargoCheckHook
API change:

`cargoParallelTestThreads` suggests that this attribute sets the
number of threads used during tests, while it is actually a boolean
option (use 1 thread or NIX_BUILD_CORES threads). In the hook, this
is replaced by a more canonical name `dontUseCargoParallelTests`.
2021-02-16 08:09:15 +01:00
Daniël de Kok
9757c7101a buildRustPackage: factor out install phase to cargoInstallHook 2021-02-15 12:17:18 +01:00
Finn Behrens
70dd7b038b
rust: 1.49.0 -> 1.50.0 2021-02-14 10:28:40 +01:00
Daniël de Kok
160cf87086 rustPlatform.maturinBuildHook: init
This build hook can be used to build Python packages using maturin.
2021-02-12 08:40:43 +01:00
Daniël de Kok
a8efb2053f buildRustPackage: factor out build phase to cargoBuildHook
- API change: remove the `target` argument of `buildRustPackage`, the
  target should always be in sync with the C/C++ compiler that is used.

- Gathering of binaries has moved from `buildPhase` to `installPhase`,
  this simplifies the hook and orders this functionality logically
  with the installation logic.
2021-02-11 20:00:12 +01:00
Daniël de Kok
d083f412fa buildRustPackage: factor out setting up .cargo/config to cargoSetupHook
This makes it possible to reuse this functionality as a hook in
derivations that do not use buildRustPackage.
2021-02-10 07:01:24 +01:00
volth
bc0d605cf1 treewide: fix double quoted strings in meta.description
Signed-off-by: Ben Siraphob <bensiraphob@gmail.com>
2021-01-24 19:56:59 +07:00
Ben Siraphob
acc5f7b18a pkgs/development/compilers: stdenv.lib -> lib 2021-01-23 08:57:37 +07:00
Jörg Thalheim
5e0f8f6762
Merge pull request #109919 from pjjw/musl-rust-bootstrap-fix
rust: add musl-libc targets to bootstrapping
2021-01-21 15:24:35 +00:00
Jonathan Ringer
9bb3fccb5b treewide: pkgs.pkgconfig -> pkgs.pkg-config, move pkgconfig to alias.nix
continuation of #109595

pkgconfig was aliased in 2018, however, it remained in
all-packages.nix due to its wide usage. This cleans
up the remaining references to pkgs.pkgsconfig and
moves the entry to aliases.nix.

python3Packages.pkgconfig remained unchanged because
it's the canonical name of the upstream package
on pypi.
2021-01-19 01:16:25 -08:00
Peter Woodman
0b8620e9b6
rust: add musl-libc targets to bootstrapping 2021-01-19 02:27:41 -05:00
Frederik Rietdijk
379ca4ddcf Merge staging-next into staging 2021-01-09 13:29:53 +01:00
Pavol Rusnak
271f4001c3
rust: fix comment about invocation of print-hashes.sh 2021-01-08 14:38:42 +01:00
Jörg Thalheim
4a580eb51b
Merge pull request #108635 from petabyteboy/feature/rust-1-49
rust: 1.48.0 -> 1.49.0
2021-01-08 05:31:47 +00:00
Luka Blaskovic
1f3cc427dc rls: set RUST_SRC_PATH to rustLibSrc 2021-01-07 10:31:03 +00:00
Milan Pässler
dde8ad8d12
rust: 1.48.0 -> 1.49.0 2021-01-07 04:11:51 +01:00
Luka Blaskovic
c73d96f776 rustc: cleanup, use correct llvm version 2020-12-14 15:14:03 +00:00
github-actions[bot]
11d68e6adb
Merge staging-next into staging 2020-12-13 00:42:45 +00:00
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
Jörg Thalheim
650db4a0db
Merge pull request #106284 from raboof/rustc-deterministic-manifest 2020-12-08 09:47:33 +00:00
Arnout Engelen
b909a333ad
rustc: generate deterministic manifest
The order of the entries in the manifest generated while installing
rustc depends on the (parallel) build, so let's sort it to make it
deterministic. Also remove install.log from the output.

Co-Authored-By: Jörg Thalheim <joerg@thalheim.io>
2020-12-07 23:02:09 +01: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
Alyssa Ross
dcb43197ea rust_1_38_0: drop 2020-03-14 16:55:06 +00:00
Alyssa Ross
7f00b33261
rust_1_38, rust_1_42: drop patch version from attr
I find it extremely unlikely we'll ever package two different patch
versions of the same minor Rust version.  New patch versions should
generally be compatible, so we shouldn't give people the expectation
they'll be able to pin to one.  And by including the patch version in
the attribute name, we'd have to change the attribute every time a
patch version was released, which would unnecessarily create diff
noise and maintenance headaches for what should be a seamless upgrade.
2020-03-13 21:24:07 +00:00
Alyssa Ross
dc3c338e29 rustc: 1.41.0 -> 1.42.0
The patch is included in rust master[1], but neither that, nor the
QuiltOS version we were using previously, apply to 1.42.0, so I've
included the fixed version here.

[1]: 4f15867faf
2020-03-13 19:51:52 +00:00
John Ericson
783fa4616e rustc: Add way to override the arch and config triple for rust
Sometimes it is useful for it to be slightly different. Going forward we
should, however, try to make this fallback rarely needed.
2020-03-12 09:56:55 -04:00
John Ericson
83a4705f49
Merge pull request #80843 from obsidiansystems/rust-no-std
rust 1.41: Fix build with no_std only target
2020-02-23 00:48:45 -05:00
John Ericson
0b0e691833 rust 1.41: Fix build with no_std only target
See https://github.com/rust-lang/rust/pull/69381
2020-02-22 18:34:05 -05:00
Cole Helbling
2edec098de
rls: add llvm to buildInputs
The Hydra build [1] was failing because it was unable to link `LLVM-9`.
Additionally, quote the homepage URL for compliance with RFC 45.

[1] https://hydra.nixos.org/build/112823631/nixlog/2
2020-02-19 20:03:56 -08:00
Cole Helbling
502c0ee899
clippy: add rustc.llvm to buildInputs
The Hydra build [1] failed because it was unable to link to `LLVM9`; add
`llvmShared` to `passthru` in order to stay up to date with required
LLVM versions. Also quote the homepage URLs, since that's preferred.

[1] https://hydra.nixos.org/build/112989779/nixlog/1
2020-02-18 08:46:31 -08:00
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
Eelco Dolstra
513bd49b44 rustc: 1.34.2 -> 1.35.0 2019-07-03 08:52:27 +02:00
volth
f3282c8d1e treewide: remove unused variables (#63177)
* treewide: remove unused variables

* making ofborg happy
2019-06-16 19:59:05 +00:00
Will Dietz
915c2de370
rustc: 1.34.0 -> 1.34.2, security
https://blog.rust-lang.org/2019/05/14/Rust-1.34.2.html
2019-05-19 03:56:31 -05:00
Matthew Bauer
f0b7561275 rustc: use llvm5 for bootstrapping 2019-04-26 21:55:09 -04:00
Ivan Kozik
a0c1b7be7d rustc: 1.33.0 -> 1.34.0 2019-04-12 16:32:19 +00:00
John Ericson
716503d063 Merge branch 'staging' into rust-cross 2019-04-01 00:47:46 -04:00
Michael Eden
8391528096 rust: disable stripping to prevent bad cross rlibs 2019-03-29 11:11:55 -04:00
Michael Eden
54e9082375 rust: Don't force gcc6 2019-03-29 11:11:53 -04:00
Jörg Thalheim
912dca193a rust: fix cross-compilation 2019-03-29 11:11:00 -04:00
Michael Eden
3c930188c8 cargo: No need to skip space around = at Nix level 2019-03-29 10:28:20 -04:00
Michael Eden
7f6de09751 rust: Fix grammar in comment 2019-03-29 10:28:20 -04:00
Luka Blaskovic
8d3e91077b rust: 1.32.0 -> 1.33.0 2019-03-01 07:56:40 +00:00
Jörg Thalheim
6f6900495d
Merge pull request #54323 from lblasc/rust132
rust: 1.31.0 -> 1.32.0
2019-01-28 16:14:57 +00:00
Jörg Thalheim
b5c1deca8a
treewide: remove wkennington as maintainer
He prefers to contribute to his own nixpkgs fork triton.
Since he is still marked as maintainer in many packages
this leaves the wrong impression he still maintains those.
2019-01-26 10:05:32 +00:00
Ingolf Wagner
c5f0dbb660 rustc: mark compileprocess as timeconsuming 2019-01-24 18:30:35 +01:00
Luka Blaskovic
cc5b55f944 rust: 1.31.0 -> 1.32.0 2019-01-22 08:05:17 +00:00
Jörg Thalheim
84557733f7
rust: Remove unused buildRustPackage from binaryBuild.nix 2018-12-18 06:07:57 +01:00
Jörg Thalheim
3a5b4a631d
rustc: 1.30.1 -> 1.31.0 2018-12-06 22:22:10 +00:00
Jörg Thalheim
9e39329e1f
Merge pull request #50006 from alyssais/rust-1.30.1
rust: 1.30.0 -> 1.30.1
2018-11-14 11:29:22 +00:00
Alyssa Ross
934e489401
rust: 1.30.0 -> 1.30.1 2018-11-09 15:27:52 +00:00
Symphorien Gibol
973eca740b rustc: fix build with unbundled jemalloc and llvm on darwin
jemalloc with stripped prefix would cause segfaults in free:
https://github.com/NixOS/nixpkgs/pull/49557#issuecomment-436734677

Thanks to @danieldk for darwin testing/debugging.
2018-11-08 13:10:24 +01:00
Symphorien Gibol
4b0d441cc4 rustc: build with system llvm and jemalloc
Just like fedora does: https://src.fedoraproject.org/rpms/rust/blob/master/f/rust.spec

Also some cleanup of tests which were removed but no longer exist.
2018-11-08 13:04:37 +01:00
Daiderd Jordan
1b47b95638
cargo: fix darwin build
It depends the Security framework now.
2018-10-26 16:06:56 +01:00
Daiderd Jordan
0d64e81ce6
rustc: fix moved tests and darwin build 2018-10-26 12:14:24 +01:00
Jörg Thalheim
cafecf16af
rust: 1.29.1 -> 1.30.0 2018-10-26 10:37:46 +01:00
Andreas Rammhold
aef6830d3e rustc: 1.29.0 -> 1.29.1
From the changelog:

- The standard library's `str::repeat` function contained an out of bounds write
  caused by an integer overflow. This has been fixed by deterministically
  panicking when an overflow happens.
2018-10-03 16:26:48 +02:00
Symphorien Gibol
ffafe959ee rustc: 1.27 -> 1.29 2018-09-14 14:22:56 +02:00
John Ericson
0828e2d8c3 treewide: Remove usage of remaining redundant platform compatability stuff
Want to get this out of here for 18.09, so it can be deprecated
thereafter.
2018-08-30 17:20:32 -04:00
John Ericson
2c2f1e37d4 reewide: Purge all uses stdenv.system and top-level system
It is deprecated and will be removed after 18.09.
2018-08-30 17:20:32 -04:00
Tuomas Tynkkynen
7e0561370b rust: Set dontUpdateAutotoolsGnuConfigScripts everywhere
It's needed on ARM nowadays as well, so just put it everywhere.
2018-08-14 10:40:47 +03:00
Jörg Thalheim
218298b30f
Merge branch 'master' into unused5 2018-07-21 15:41:22 +01:00
Frederik Rietdijk
8424ac61a9
Merge pull request #43862 from volth/unused3
[bot] treewide: remove unused 'args@' in lambdas
2018-07-21 11:14:44 +02:00
volth
52f53c69ce pkgs/*: remove unreferenced function arguments 2018-07-21 02:48:04 +00:00
volth
dda95bae35 [bot] treewide: remove unused 'args@' in lambdas 2018-07-20 19:54:05 +00:00
volth
6d2857a311 [bot] treewide: remove unused 'inherit' in let blocks 2018-07-20 19:38:19 +00:00
Eelco Dolstra
323fe3a305
rustc: Disable tests for now 2018-07-09 12:35:01 +02:00