summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--clang-tools-extra/clang-query/Makefile2
-rw-r--r--clang-tools-extra/clang-query/tool/CMakeLists.txt17
-rw-r--r--clang-tools-extra/clang-query/tool/Makefile39
-rw-r--r--clang-tools-extra/test/CMakeLists.txt5
-rw-r--r--clang-tools-extra/test/clang-query/errors.c1
-rw-r--r--clang-tools-extra/test/clang-query/function-decl.c3
-rw-r--r--clang-tools-extra/test/lit.cfg3
-rw-r--r--clang-tools-extra/test/lit.site.cfg.in1
8 files changed, 50 insertions, 21 deletions
diff --git a/clang-tools-extra/clang-query/Makefile b/clang-tools-extra/clang-query/Makefile
index 4d73966511f..13903b98a8c 100644
--- a/clang-tools-extra/clang-query/Makefile
+++ b/clang-tools-extra/clang-query/Makefile
@@ -11,4 +11,6 @@ CLANG_LEVEL := ../../..
LIBRARYNAME := clangQuery
include $(CLANG_LEVEL)/../../Makefile.config
+DIRS = tool
+
include $(CLANG_LEVEL)/Makefile
diff --git a/clang-tools-extra/clang-query/tool/CMakeLists.txt b/clang-tools-extra/clang-query/tool/CMakeLists.txt
index f54c4e67341..2b58bf6dc2c 100644
--- a/clang-tools-extra/clang-query/tool/CMakeLists.txt
+++ b/clang-tools-extra/clang-query/tool/CMakeLists.txt
@@ -1,11 +1,8 @@
-if(HAVE_LIBEDIT)
- include_directories(${CMAKE_CURRENT_SOURCE_DIR}/..)
+include_directories(${CMAKE_CURRENT_SOURCE_DIR}/..)
- add_clang_executable(clang-query ClangQuery.cpp)
- target_link_libraries(clang-query
- edit
- clangFrontend
- clangQuery
- clangTooling
- )
-endif()
+add_clang_executable(clang-query ClangQuery.cpp)
+target_link_libraries(clang-query
+ clangFrontend
+ clangQuery
+ clangTooling
+ )
diff --git a/clang-tools-extra/clang-query/tool/Makefile b/clang-tools-extra/clang-query/tool/Makefile
new file mode 100644
index 00000000000..9da754a9bb8
--- /dev/null
+++ b/clang-tools-extra/clang-query/tool/Makefile
@@ -0,0 +1,39 @@
+##===- tools/extra/clang-query/tool/Makefile ---------------*- Makefile -*-===##
+#
+# The LLVM Compiler Infrastructure
+#
+# This file is distributed under the University of Illinois Open Source
+# License. See LICENSE.TXT for details.
+#
+##===----------------------------------------------------------------------===##
+
+CLANG_LEVEL := ../../../..
+include $(CLANG_LEVEL)/../../Makefile.config
+
+TOOLNAME = clang-query
+
+# No plugins, optimize startup time.
+TOOL_NO_EXPORTS = 1
+
+SOURCES = ClangQuery.cpp
+
+LINK_COMPONENTS := $(TARGETS_TO_BUILD) asmparser bitreader support mc mcparser option
+USEDLIBS = clangQuery.a clangDynamicASTMatchers.a clangFormat.a clangTooling.a \
+ clangFrontend.a clangSerialization.a clangDriver.a clangRewriteFrontend.a \
+ LLVMLineEditor.a clangRewriteCore.a clangParse.a clangSema.a clangAnalysis.a \
+ clangAST.a clangASTMatchers.a clangEdit.a clangLex.a clangBasic.a
+
+include $(CLANG_LEVEL)/Makefile
+
+CPP.Flags += -I$(PROJ_SRC_DIR)/..
+
+# BUILT_SOURCES gets used as a prereq for many top-level targets. However, at
+# the point those targets are defined, $(ObjDir) hasn't been defined and so the
+# directory to create becomes /<name>/ which is not what we want. So instead,
+# this .objdir recipe is defined at at point where $(ObjDir) is defined and
+# it's specialized to $(ObjDir) to ensure it only works on targets we want it
+# to.
+$(ObjDir)/%.objdir:
+ $(Verb) $(MKDIR) $(ObjDir)/$* > /dev/null
+ $(Verb) $(DOTDIR_TIMESTAMP_COMMAND) > $@
+
diff --git a/clang-tools-extra/test/CMakeLists.txt b/clang-tools-extra/test/CMakeLists.txt
index d4cc3abec29..6a98cdd0504 100644
--- a/clang-tools-extra/test/CMakeLists.txt
+++ b/clang-tools-extra/test/CMakeLists.txt
@@ -37,6 +37,7 @@ set(CLANG_TOOLS_TEST_DEPS
# Individual tools we test.
clang-apply-replacements
clang-modernize
+ clang-query
clang-tidy
modularize
module-map-checker
@@ -47,10 +48,6 @@ set(CLANG_TOOLS_TEST_DEPS
ExtraToolsUnitTests
)
-if(HAVE_LIBEDIT)
- list(APPEND CLANG_TOOLS_TEST_DEPS clang-query)
-endif()
-
add_lit_testsuite(check-clang-tools "Running the Clang extra tools' regression tests"
${CMAKE_CURRENT_BINARY_DIR}
DEPENDS ${CLANG_TOOLS_TEST_DEPS}
diff --git a/clang-tools-extra/test/clang-query/errors.c b/clang-tools-extra/test/clang-query/errors.c
index 96bb6bf216c..bbb74212574 100644
--- a/clang-tools-extra/test/clang-query/errors.c
+++ b/clang-tools-extra/test/clang-query/errors.c
@@ -2,7 +2,6 @@
// RUN: not clang-query -f %S/Inputs/foo.script %s -- | FileCheck %s
// RUN: not clang-query -f %S/Inputs/nonexistent.script %s -- 2>&1 | FileCheck --check-prefix=CHECK-NONEXISTENT %s
// RUN: not clang-query -c foo -f foo %s -- 2>&1 | FileCheck --check-prefix=CHECK-BOTH %s
-// REQUIRES: libedit
// CHECK: unknown command: foo
// CHECK-NOT: unknown command: bar
diff --git a/clang-tools-extra/test/clang-query/function-decl.c b/clang-tools-extra/test/clang-query/function-decl.c
index 8a2c4bf1201..f35cba03781 100644
--- a/clang-tools-extra/test/clang-query/function-decl.c
+++ b/clang-tools-extra/test/clang-query/function-decl.c
@@ -1,5 +1,4 @@
// RUN: clang-query -c "match functionDecl()" %s -- | FileCheck %s
-// REQUIRES: libedit
-// CHECK: function-decl.c:5:1: note: "root" binds here
+// CHECK: function-decl.c:4:1: note: "root" binds here
void foo(void) {}
diff --git a/clang-tools-extra/test/lit.cfg b/clang-tools-extra/test/lit.cfg
index e2d0bdff6ea..41a17cbce72 100644
--- a/clang-tools-extra/test/lit.cfg
+++ b/clang-tools-extra/test/lit.cfg
@@ -174,6 +174,3 @@ if platform.system() not in ['Windows'] or lit_config.getBashPath() != '':
# ANSI escape sequences in non-dumb terminal
if platform.system() not in ['Windows']:
config.available_features.add('ansi-escape-sequences')
-
-if config.have_libedit == "1":
- config.available_features.add('libedit')
diff --git a/clang-tools-extra/test/lit.site.cfg.in b/clang-tools-extra/test/lit.site.cfg.in
index 2491cd8be5f..277f648c59c 100644
--- a/clang-tools-extra/test/lit.site.cfg.in
+++ b/clang-tools-extra/test/lit.site.cfg.in
@@ -8,7 +8,6 @@ config.lit_tools_dir = "@LLVM_LIT_TOOLS_DIR@"
config.clang_tools_binary_dir = "@CLANG_TOOLS_BINARY_DIR@"
config.clang_tools_dir = "@CLANG_TOOLS_DIR@"
config.target_triple = "@TARGET_TRIPLE@"
-config.have_libedit = "@HAVE_LIBEDIT@"
# Support substitution of the tools and libs dirs with user parameters. This is
# used when we can't determine the tool dir at configuration time.
OpenPOWER on IntegriCloud