summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorPetr Hosek <phosek@chromium.org>2019-04-21 01:09:15 +0000
committerPetr Hosek <phosek@chromium.org>2019-04-21 01:09:15 +0000
commit33b996408fa30df104e842a1390ebd70f435b69f (patch)
tree66e2a91b4621a53fc9650a9548c2593ee393d060 /llvm
parent7fc7b368bda20c92a165e73a9ce21768cb4b1e6a (diff)
downloadbcm5719-llvm-33b996408fa30df104e842a1390ebd70f435b69f.tar.gz
bcm5719-llvm-33b996408fa30df104e842a1390ebd70f435b69f.zip
[gn] Move Features.inc to clangd, create a config for it
ClangdLSPServer and clangd unittests now include Features.inc so we need to append the target_gen_dir that contains it to their include_dirs. To do so, we use a public config that's applied to any target that depends on the features one. Differential Revision: https://reviews.llvm.org/D60919 llvm-svn: 358837
Diffstat (limited to 'llvm')
-rw-r--r--llvm/utils/gn/secondary/clang-tools-extra/clangd/BUILD.gn22
-rw-r--r--llvm/utils/gn/secondary/clang-tools-extra/clangd/tool/BUILD.gn22
-rw-r--r--llvm/utils/gn/secondary/clang-tools-extra/unittests/clangd/BUILD.gn1
3 files changed, 25 insertions, 20 deletions
diff --git a/llvm/utils/gn/secondary/clang-tools-extra/clangd/BUILD.gn b/llvm/utils/gn/secondary/clang-tools-extra/clangd/BUILD.gn
index b25dec1c14c..24fa5b3f7e0 100644
--- a/llvm/utils/gn/secondary/clang-tools-extra/clangd/BUILD.gn
+++ b/llvm/utils/gn/secondary/clang-tools-extra/clangd/BUILD.gn
@@ -1,7 +1,29 @@
+import("//clang-tools-extra/clangd/xpc/enable.gni")
+import("//llvm/utils/gn/build/write_cmake_config.gni")
+
+config("features_config") {
+ # To pick up the generated inc files.
+ include_dirs = [ target_gen_dir ]
+ visibility = [ ":features" ]
+}
+
+write_cmake_config("features") {
+ input = "Features.inc.in"
+ output = "$target_gen_dir/Features.inc"
+ values = []
+ if (clangd_build_xpc) {
+ values += [ "CLANGD_BUILD_XPC=1" ]
+ } else {
+ values += [ "CLANGD_BUILD_XPC=0" ]
+ }
+ public_configs = [ ":features_config" ]
+}
+
static_library("clangd") {
output_name = "clangDaemon"
configs += [ "//llvm/utils/gn/build:clang_code" ]
deps = [
+ ":features",
"//clang-tools-extra/clang-tidy/abseil",
"//clang-tools-extra/clang-tidy/android",
"//clang-tools-extra/clang-tidy/boost",
diff --git a/llvm/utils/gn/secondary/clang-tools-extra/clangd/tool/BUILD.gn b/llvm/utils/gn/secondary/clang-tools-extra/clangd/tool/BUILD.gn
index c59356b6cb3..25b256367f3 100644
--- a/llvm/utils/gn/secondary/clang-tools-extra/clangd/tool/BUILD.gn
+++ b/llvm/utils/gn/secondary/clang-tools-extra/clangd/tool/BUILD.gn
@@ -1,25 +1,12 @@
import("//clang-tools-extra/clangd/xpc/enable.gni")
-import("//llvm/utils/gn/build/write_cmake_config.gni")
-
-write_cmake_config("features") {
- # FIXME: Try moving Features.inc.in to tools, seems like a better location.
- input = "../Features.inc.in"
- output = "$target_gen_dir/Features.inc"
- values = []
- if (clangd_build_xpc) {
- values += [ "CLANGD_BUILD_XPC=1" ]
- } else {
- values += [ "CLANGD_BUILD_XPC=0" ]
- }
-}
executable("clangd") {
configs += [ "//llvm/utils/gn/build:clang_code" ]
deps = [
- ":features",
"//clang-tools-extra/clang-tidy",
"//clang-tools-extra/clangd",
+ "//clang-tools-extra/clangd:features",
"//clang-tools-extra/clangd/refactor/tweaks",
"//clang/lib/AST",
"//clang/lib/Basic",
@@ -37,12 +24,7 @@ executable("clangd") {
]
}
- include_dirs = [
- "..",
-
- # To pick up the generated inc files.
- "$target_gen_dir",
- ]
+ include_dirs = [ ".." ]
sources = [
"ClangdMain.cpp",
]
diff --git a/llvm/utils/gn/secondary/clang-tools-extra/unittests/clangd/BUILD.gn b/llvm/utils/gn/secondary/clang-tools-extra/unittests/clangd/BUILD.gn
index 2a173501a01..48b676d4cd8 100644
--- a/llvm/utils/gn/secondary/clang-tools-extra/unittests/clangd/BUILD.gn
+++ b/llvm/utils/gn/secondary/clang-tools-extra/unittests/clangd/BUILD.gn
@@ -5,6 +5,7 @@ unittest("ClangdTests") {
deps = [
"//clang-tools-extra/clang-tidy",
"//clang-tools-extra/clangd",
+ "//clang-tools-extra/clangd:features",
"//clang-tools-extra/clangd/refactor/tweaks",
"//clang/lib/AST",
"//clang/lib/Basic",
OpenPOWER on IntegriCloud