From f55a30699684586cdbd0bc1957dbe85069657116 Mon Sep 17 00:00:00 2001 From: Alp Toker Date: Mon, 14 Jul 2014 22:17:16 +0000 Subject: [PATCH] Fix the !CLANG_ENABLE_ARCMT build llvm-svn: 212995 --- clang/test/CMakeLists.txt | 9 ++++++++- clang/tools/CMakeLists.txt | 5 +++-- clang/tools/libclang/ARCMigrate.cpp | 10 ++++++++++ clang/tools/libclang/CMakeLists.txt | 23 +++++++++++++++-------- 4 files changed, 36 insertions(+), 11 deletions(-) diff --git a/clang/test/CMakeLists.txt b/clang/test/CMakeLists.txt index fe80df4..2052873 100644 --- a/clang/test/CMakeLists.txt +++ b/clang/test/CMakeLists.txt @@ -26,11 +26,18 @@ endif () list(APPEND CLANG_TEST_DEPS clang clang-headers - c-index-test diagtool arcmt-test c-arcmt-test + c-index-test diagtool clang-check clang-format clang-tblgen ) +if (CLANG_ENABLE_ARCMT) + list(APPEND CLANG_TEST_DEPS + arcmt-test + c-arcmt-test + ) +endif () + if (ENABLE_CLANG_EXAMPLES) list(APPEND CLANG_TEST_DEPS clang-interpreter diff --git a/clang/tools/CMakeLists.txt b/clang/tools/CMakeLists.txt index 58be615..d3f67a8 100644 --- a/clang/tools/CMakeLists.txt +++ b/clang/tools/CMakeLists.txt @@ -5,9 +5,10 @@ if(CLANG_ENABLE_REWRITER) add_subdirectory(clang-format-vs) endif() +add_subdirectory(c-index-test) +add_subdirectory(libclang) + if(CLANG_ENABLE_ARCMT) - add_subdirectory(libclang) - add_subdirectory(c-index-test) add_subdirectory(arcmt-test) add_subdirectory(c-arcmt-test) endif() diff --git a/clang/tools/libclang/ARCMigrate.cpp b/clang/tools/libclang/ARCMigrate.cpp index 6ddc22f..375c5f4 100644 --- a/clang/tools/libclang/ARCMigrate.cpp +++ b/clang/tools/libclang/ARCMigrate.cpp @@ -35,6 +35,10 @@ struct Remap { extern "C" { CXRemapping clang_getRemappings(const char *migrate_dir_path) { +#ifndef CLANG_ENABLE_ARCMT + llvm::errs() << "error: feature not enabled in this build\n"; + return nullptr; +#else bool Logging = ::getenv("LIBCLANG_LOGGING"); if (!migrate_dir_path) { @@ -71,10 +75,15 @@ CXRemapping clang_getRemappings(const char *migrate_dir_path) { } return remap.release(); +#endif } CXRemapping clang_getRemappingsFromFileList(const char **filePaths, unsigned numFiles) { +#ifndef CLANG_ENABLE_ARCMT + llvm::errs() << "error: feature not enabled in this build\n"; + return nullptr; +#else bool Logging = ::getenv("LIBCLANG_LOGGING"); std::unique_ptr remap(new Remap()); @@ -112,6 +121,7 @@ CXRemapping clang_getRemappingsFromFileList(const char **filePaths, } return remap.release(); +#endif } unsigned clang_remap_getNumFiles(CXRemapping map) { diff --git a/clang/tools/libclang/CMakeLists.txt b/clang/tools/libclang/CMakeLists.txt index d6bbbf8..e7ab63f 100644 --- a/clang/tools/libclang/CMakeLists.txt +++ b/clang/tools/libclang/CMakeLists.txt @@ -37,6 +37,20 @@ set(SOURCES ../../include/clang-c/Index.h ) +set(LIBS + clangAST + clangBasic + clangFrontend + clangIndex + clangLex + clangSema + clangTooling +) + +if (CLANG_ENABLE_ARCMT) + list(APPEND LIBS clangARCMigrate) +endif () + option(LIBCLANG_BUILD_STATIC "Build libclang as a static library (in addition to a shared one)" OFF) @@ -69,14 +83,7 @@ add_clang_library(libclang ${ENABLE_SHARED} ${ENABLE_STATIC} DEPENDS clang-headers LINK_LIBS - clangARCMigrate - clangAST - clangBasic - clangFrontend - clangIndex - clangLex - clangSema - clangTooling + ${LIBS} LINK_COMPONENTS BitReader -- 2.7.4