summary refs log tree commit diff
path: root/pkgs/development/compilers/rustc/common.nix
blob: d766f22c6adb4dddd31dd60c5ec449237f7fc939 (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
27
28
29
30
31
32
33
34
35
{stdenv, version}:

{
  inherit version;

  platform = if stdenv.system == "i686-linux"
    then "linux-i386"
    else if stdenv.system == "x86_64-linux"
    then "linux-x86_64"
    else if stdenv.system == "i686-darwin"
    then "macos-i386"
    else if stdenv.system == "x86_64-darwin"
    then "macos-x86_64"
    else abort "no snapshot to boostrap for this platform (missing platform url suffix)";

  target = if stdenv.system == "i686-linux"
    then "i686-unknown-linux-gnu"
    else if stdenv.system == "x86_64-linux"
    then "x86_64-unknown-linux-gnu"
    else if stdenv.system == "i686-darwin"
    then "i686-apple-darwin"
    else if stdenv.system == "x86_64-darwin"
    then "x86_64-apple-darwin"
    else abort "no snapshot to boostrap for this platform (missing target triple";

  meta = with stdenv.lib; {
    homepage = http://www.rust-lang.org/;
    description = "A safe, concurrent, practical language";
    maintainers = with maintainers; [ madjar cstrahan ];
    license = map (builtins.getAttr "shortName") [ licenses.mit licenses.asl20 ];
    platforms = platforms.linux;
  };

  name = "rustc-${version}";
}