about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/compilers/rust/rustfmt.nix
blob: 66a18f40ad425d168b5e8d8f63e3582a49474e91 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{ stdenv, rustPlatform, Security }:

rustPlatform.buildRustPackage rec {
  pname = "rustfmt";
  inherit (rustPlatform.rust.rustc) version src;

  # the rust source tarball already has all the dependencies vendored, no need to fetch them again
  cargoVendorDir = "vendor";
  buildAndTestSubdir = "src/tools/rustfmt";

  # changes hash of vendor directory otherwise
  dontUpdateAutotoolsGnuConfigScripts = true;

  buildInputs = stdenv.lib.optional stdenv.isDarwin Security;

  # As of 1.0.0 and rustc 1.30 rustfmt requires a nightly compiler
  RUSTC_BOOTSTRAP = 1;

  meta = with stdenv.lib; {
    description = "A tool for formatting Rust code according to style guidelines";
    homepage = "https://github.com/rust-lang-nursery/rustfmt";
    license = with licenses; [ mit asl20 ];
    maintainers = with maintainers; [ globin basvandijk ];
    platforms = platforms.all;
  };
}