summaryrefslogtreecommitdiff
path: root/rules/rust/TARGETS
blob: c3e0b900e648cc6d346e17bbf1fb485d4617a06a (plain)
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
{ "aarch64-unknown-linux-gnu":
  { "type": "defaults"
  , "CARGO_CFG_TARGET_ARCH": ["aarch64"]
  , "CARGO_CFG_TARGET_ENDIAN": ["little"]
  , "CARGO_CFG_TARGET_ENV": ["gnu"]
  , "CARGO_CFG_TARGET_FAMILY": ["unix"]
  , "CARGO_CFG_TARGET_FEATURE": ["neon"]
  , "CARGO_CFG_TARGET_HAS_ATOMIC": ["128,16,32,64,8,ptr"]
  , "CARGO_CFG_TARGET_OS": ["linux"]
  , "CARGO_CFG_TARGET_POINTER_WIDTH": ["64"]
  , "CARGO_CFG_TARGET_VENDOR": ["unkwnown"]
  , "CARGO_CFG_UNIX": ["true"]
  , "TARGET": ["aarch64-unknown-linux-gnu"]
  }
, "defaults":
  { "type": "defaults"
  , "arguments_config":
    ["DEBUG", "ARCH", "TARGET_ARCH", "HOST_ARCH", "TOOLCHAIN_CONFIG"]
  , "PATH":
    { "type": "lookup"
    , "key": "PATH"
    , "map":
      { "type": "lookup"
      , "key": "RUST"
      , "map":
        { "type": "var"
        , "name": "TOOLCHAIN_CONFIG"
        , "default": {"type": "empty_map"}
        }
      , "default": {"type": "empty_map"}
      }
    , "default": ["/usr/bin", "/bin"]
    }
  , "RUSTC":
    [ { "type": "lookup"
      , "key": "RUSTC"
      , "map":
        { "type": "lookup"
        , "key": "RUST"
        , "map":
          { "type": "var"
          , "name": "TOOLCHAIN_CONFIG"
          , "default": {"type": "empty_map"}
          }
        , "default": {"type": "empty_map"}
        }
      , "default":
        { "type": "let*"
        , "bindings":
          [ [ "rustup-home"
            , { "type": "lookup"
              , "key": "RUSTUP_HOME"
              , "map":
                { "type": "lookup"
                , "key": "RUST"
                , "map":
                  { "type": "var"
                  , "name": "TOOLCHAIN_CONFIG"
                  , "default": {"type": "empty_map"}
                  }
                , "default": {"type": "empty_map"}
                }
              }
            ]
          , [ "toolchain"
            , { "type": "lookup"
              , "key": "TOOLCHAIN"
              , "map":
                { "type": "lookup"
                , "key": "RUST"
                , "map":
                  { "type": "var"
                  , "name": "TOOLCHAIN_CONFIG"
                  , "default": {"type": "empty_map"}
                  }
                , "default": {"type": "empty_map"}
                }
              }
            ]
          , [ "rustc"
            , { "type": "if"
              , "cond": {"type": "var", "name": "rustup-home"}
              , "then":
                { "type": "join"
                , "$1":
                  [ {"type": "var", "name": "rustup-home"}
                  , "toolchains"
                  , { "type": "join"
                    , "$1":
                      [ { "type": "var"
                        , "name": "toolchain"
                        , "default": "stable"
                        }
                      , { "type": "var"
                        , "name": "HOST_ARCH"
                        , "default":
                          { "type": "var"
                          , "name": "ARCH"
                          , "default":
                            { "type": "fail"
                            , "msg":
                              { "type": "join"
                              , "$1":
                                [ "To properly select a Rust compiler under the RUSTUP_HOME directory \""
                                , {"type": "var", "name": "rustup-home"}
                                , "\" please provide either ARCH or HOST_ARCH."
                                ]
                              , "separator": ""
                              }
                            }
                          }
                        }
                      , "unknown"
                      , "linux"
                      , "gnu"
                      ]
                    , "separator": "-"
                    }
                  , "bin"
                  , "rustc"
                  ]
                , "separator": "/"
                }
              , "else": "rustc"
              }
            ]
          ]
        , "body": {"type": "var", "name": "rustc"}
        }
      }
    ]
  , "RUSTC_FLAGS":
    { "type": "++"
    , "$1":
      [ ["--color=always", "--cap-lints=warn"]
      , { "type": "if"
        , "cond": {"type": "var", "name": "DEBUG"}
        , "then": []
        , "else":
          ["-Copt-level=2", "--codegen=debuginfo=0", "-Cembed-bitcode=no"]
        }
      ]
    }
  , "base":
    { "type": "case"
    , "case":
      { "": []
      , "aarch64": ["aarch64-unknown-linux-gnu"]
      , "wasm32": ["wasm32-unknown-unknown"]
      , "x86_64": ["x86_64-unknown-linux-gnu"]
      }
    , "expr":
      { "type": "var"
      , "name": "TARGET_ARCH"
      , "default": {"type": "var", "name": "ARCH", "default": ""}
      }
    }
  }
, "wasm32-unknown-unknown":
  { "type": "defaults"
  , "CARGO_CFG_TARGET_ARCH": ["wasm32"]
  , "CARGO_CFG_TARGET_ENDIAN": ["little"]
  , "CARGO_CFG_TARGET_ENV": [""]
  , "CARGO_CFG_TARGET_FAMILY": ["wasm"]
  , "CARGO_CFG_TARGET_HAS_ATOMIC": ["16,32,64,8,ptr"]
  , "CARGO_CFG_TARGET_OS": ["unknown"]
  , "CARGO_CFG_TARGET_POINTER_WIDTH": ["32"]
  , "CARGO_CFG_TARGET_VENDOR": ["unkwnown"]
  , "TARGET": ["wasm32-unknown-unknown"]
  }
, "x86_64-unknown-linux-gnu":
  { "type": "defaults"
  , "CARGO_CFG_TARGET_ARCH": ["x86_64"]
  , "CARGO_CFG_TARGET_ENDIAN": ["little"]
  , "CARGO_CFG_TARGET_ENV": ["gnu"]
  , "CARGO_CFG_TARGET_FAMILY": ["unix"]
  , "CARGO_CFG_TARGET_FEATURE": ["fxsr,sse,sse2"]
  , "CARGO_CFG_TARGET_HAS_ATOMIC": ["16,32,64,8,ptr"]
  , "CARGO_CFG_TARGET_OS": ["linux"]
  , "CARGO_CFG_TARGET_POINTER_WIDTH": ["64"]
  , "CARGO_CFG_TARGET_VENDOR": ["unkwnown"]
  , "CARGO_CFG_UNIX": ["true"]
  , "TARGET": ["x86_64-unknown-linux-gnu"]
  }
}