Index: tools/clang/CMakeLists.txt |
diff --git a/tools/clang/CMakeLists.txt b/tools/clang/CMakeLists.txt |
index 1b16704a689fb6769c02f54e42a82ec1b91ffff8..21b5a9fcea7b3858f94f063bec8eefec465cf313 100644 |
--- a/tools/clang/CMakeLists.txt |
+++ b/tools/clang/CMakeLists.txt |
@@ -5,21 +5,10 @@ enable_testing() |
list(APPEND CMAKE_MODULE_PATH "${LLVM_BUILD_DIR}/share/llvm/cmake") |
# These tools are built using LLVM's build system, not Chromium's. |
-# It expects LLVM_SRC_DIR and LLVM_BUILD_DIR to be set. |
-# For example: |
-# |
-# cmake -GNinja \ |
-# -DLLVM_BUILD_DIR=$CHROMIUM_SRC_DIR/third_party/llvm-build/Release+Asserts \ |
-# -DLLVM_SRC_DIR=$CHROMIUM_SRC_DIR/third_party/llvm \ |
-# -DCHROMIUM_TOOLS=blink_gc_plugin;plugin \ |
-# $CHROMIUM_SRC_DIR/tools/clang/ |
-# ninja |
+# The build script generates a shim CMakeLists.txt in the LLVM source tree, |
+# which simply forwards to this file. |
-include(LLVMConfig) |
-include(AddLLVM) |
-include(HandleLLVMOptions) |
- |
# Use rpath to find the bundled standard C++ library. |
set(CMAKE_BUILD_WITH_INSTALL_RPATH ON) |
if (APPLE) |
@@ -29,18 +18,15 @@ else(UNIX) |
set(CMAKE_INSTALL_RPATH "\$ORIGIN/../lib") |
endif() |
-set(LLVM_RUNTIME_OUTPUT_INTDIR "${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin") |
-set(LLVM_LIBRARY_OUTPUT_INTDIR "${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib") |
- |
-include_directories("${LLVM_SRC_DIR}/include" |
- "${LLVM_SRC_DIR}/tools/clang/include" |
- "${LLVM_BUILD_DIR}/include" |
- "${LLVM_BUILD_DIR}/tools/clang/include") |
+include_directories("${CMAKE_SOURCE_DIR}/include" |
+ "${CMAKE_SOURCE_DIR}/tools/clang/include" |
+ "${CMAKE_BINARY_DIR}/include" |
+ "${CMAKE_BINARY_DIR}/tools/clang/include") |
-link_directories("${LLVM_SRC_DIR}/lib" |
- "${LLVM_SRC_DIR}/tools/clang/lib" |
- "${LLVM_BUILD_DIR}/lib" |
- "${LLVM_BUILD_DIR}/tools/clang/lib") |
+link_directories("${CMAKE_SOURCE_DIR}/lib" |
+ "${CMAKE_SOURCE_DIR}/tools/clang/lib" |
+ "${CMAKE_BINARY_DIR}/lib" |
+ "${CMAKE_BINARY_DIR}/tools/clang/lib") |
# cr_add_test( |
# name |
@@ -49,11 +35,20 @@ link_directories("${LLVM_SRC_DIR}/lib" |
# ) |
function(cr_add_test name testprog) |
add_test(NAME ${name} COMMAND ${testprog} ${ARGN}) |
- add_dependencies(check-all ${name}) |
+ add_dependencies(cr-check-all ${name}) |
endfunction(cr_add_test) |
# Tests for all enabled tools can be run by building this target. |
-add_custom_target(check-all COMMAND ${CMAKE_CTEST_COMMAND} -V) |
+add_custom_target(cr-check-all COMMAND ${CMAKE_CTEST_COMMAND} -V) |
+ |
+function(cr_install) |
+ install(${ARGN} COMPONENT chrome-tools OPTIONAL) |
+endfunction(cr_install) |
+ |
+# Custom install target, so the chrome tools can be installed without installing |
+# all the other LLVM targets. |
+add_custom_target(cr-install COMMAND |
+ ${CMAKE_COMMAND} -D COMPONENT=chrome-tools -P cmake_install.cmake) |
foreach(tool ${CHROMIUM_TOOLS}) |
add_subdirectory(${tool}) |