summaryrefslogtreecommitdiff
path: root/toolchains/CC/clang.TARGETS
blob: c68b1aa8a55b3e6d9c554194b691a7df6b701d4e (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
{ "defaults":
  { "type": "export"
  , "target": "defaults (unexported)"
  , "flexible_config":
    ["ARCH", "ENV", "HOST_ARCH", "TARGET_ARCH", "TOOLCHAIN_CONFIG"]
  }
, "defaults (unexported)":
  { "type": ["@", "rules", "CC", "defaults"]
  , "arguments_config": ["TOOLCHAIN_CONFIG"]
  , "CC": ["clang/bin/clang"]
  , "CXX": ["clang/bin/clang++"]
  , "AR": ["clang/bin/ar"]
  , "CXXFLAGS":
    { "type": "if"
    , "cond":
      { "type": "lookup"
      , "key": "USE_LIBCXX"
      , "map":
        { "type": "var"
        , "name": "TOOLCHAIN_CONFIG"
        , "default": {"type": "empty_map"}
        }
      }
    , "then": ["-nostdlib++", "-stdlib=libc++"]
    }
  , "LDFLAGS":
    { "type": "if"
    , "cond":
      { "type": "lookup"
      , "key": "STATIC_RUNLIBS"
      , "map":
        { "type": "var"
        , "name": "TOOLCHAIN_CONFIG"
        , "default": {"type": "empty_map"}
        }
      }
    , "then":
      { "type": "++"
      , "$1":
        [ ["-static-libgcc"]
        , { "type": "if"
          , "cond":
            { "type": "lookup"
            , "key": "USE_LIBCXX"
            , "map":
              { "type": "var"
              , "name": "TOOLCHAIN_CONFIG"
              , "default": {"type": "empty_map"}
              }
            }
          , "then":
            [ "-Wl,--push-state"
            , "-Wl,-Bstatic"
            , "-lc++"
            , "-lc++abi"
            , "-Wl,--pop-state"
            , "-lpthread"
            ]
          , "else": ["-static-libstdc++", "-l:libstdc++.a"]
          }
        ]
      }
    }
  , "deps":
    { "type": "if"
    , "cond":
      { "type": "lookup"
      , "key": "STATIC_RUNLIBS"
      , "map":
        { "type": "var"
        , "name": "TOOLCHAIN_CONFIG"
        , "default": {"type": "empty_map"}
        }
      }
    , "then": []
    , "else":
      { "type": "if"
      , "cond":
        { "type": "lookup"
        , "key": "USE_LIBCXX"
        , "map":
          { "type": "var"
          , "name": "TOOLCHAIN_CONFIG"
          , "default": {"type": "empty_map"}
          }
        }
      , "then": [["@", "clang", "", "runlibs_libcxx"]]
      , "else": [["@", "clang", "", "runlibs"]]
      }
    }
  , "toolchain": ["staged-clang"]
  , "PATH": ["/bin", "/usr/bin"]
  }
, "staged-clang": {"type": "install", "dirs": [[["", "toolchain"], "clang"]]}
}