gn build: Create a variable for the host toolchain and start using it in the tblgen...
authorPeter Collingbourne <peter@pcc.me.uk>
Fri, 11 Jan 2019 19:53:06 +0000 (19:53 +0000)
committerPeter Collingbourne <peter@pcc.me.uk>
Fri, 11 Jan 2019 19:53:06 +0000 (19:53 +0000)
Differential Revision: https://reviews.llvm.org/D56575

llvm-svn: 350964

llvm/utils/gn/build/BUILDCONFIG.gn
llvm/utils/gn/secondary/clang/utils/TableGen/clang_tablegen.gni
llvm/utils/gn/secondary/llvm/utils/TableGen/tablegen.gni

index 5ff504d..1e5af9a 100644 (file)
@@ -26,7 +26,9 @@ set_defaults("source_set") {
 }
 
 if (host_os == "win") {
-  set_default_toolchain("//llvm/utils/gn/build/toolchain:win")
+  host_toolchain = "//llvm/utils/gn/build/toolchain:win"
 } else {
-  set_default_toolchain("//llvm/utils/gn/build/toolchain:unix")
+  host_toolchain = "//llvm/utils/gn/build/toolchain:unix"
 }
+
+set_default_toolchain(host_toolchain)
index 20706cc..efc1e3c 100644 (file)
@@ -35,7 +35,6 @@ template("clang_tablegen") {
                              "visibility",
                            ])
 
-    # FIXME: In cross builds, this should depend on the host binary.
     tblgen_target = "//clang/utils/TableGen:clang-tblgen"
   }
 }
index d98ed6b..5037832 100644 (file)
@@ -39,9 +39,9 @@ template("tablegen") {
     if (defined(invoker.tblgen_target)) {
       tblgen_target = invoker.tblgen_target
     } else {
-      # FIXME: In cross builds, this should depend on the host binary.
       tblgen_target = "//llvm/utils/TableGen:llvm-tblgen"
     }
+    tblgen_target += "($host_toolchain)"
     tblgen_executable = get_label_info(tblgen_target, "root_out_dir") +
                         "/bin/" + get_label_info(tblgen_target, "name")
     deps = [