aboutsummaryrefslogtreecommitdiff
path: root/clang/CMakeLists.txt
diff options
context:
space:
mode:
authorHans Wennborg <hans@hanshq.net>2013-08-24 00:22:23 +0000
committerHans Wennborg <hans@hanshq.net>2013-08-24 00:22:23 +0000
commit25971caf92e7c48d5f985cb0cdab406f2c4b09e5 (patch)
tree42b148d65e7ac2223b6915600e6e21b3f7d0707b /clang/CMakeLists.txt
parent1654627f27f6574300bb65a990f01c278610194f (diff)
downloadllvm-25971caf92e7c48d5f985cb0cdab406f2c4b09e5.zip
llvm-25971caf92e7c48d5f985cb0cdab406f2c4b09e5.tar.gz
llvm-25971caf92e7c48d5f985cb0cdab406f2c4b09e5.tar.bz2
CMake: support the LLVM_INSTALL_TOOLCHAIN_ONLY flag
Differential Revision: http://llvm-reviews.chandlerc.com/D1498 llvm-svn: 189156
Diffstat (limited to 'clang/CMakeLists.txt')
-rw-r--r--clang/CMakeLists.txt42
1 files changed, 28 insertions, 14 deletions
diff --git a/clang/CMakeLists.txt b/clang/CMakeLists.txt
index b975c0e..35379a2 100644
--- a/clang/CMakeLists.txt
+++ b/clang/CMakeLists.txt
@@ -34,6 +34,8 @@ if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
get_filename_component(PATH_TO_LLVM_BUILD ${CLANG_PATH_TO_LLVM_BUILD}
ABSOLUTE)
+ option(LLVM_INSTALL_TOOLCHAIN_ONLY "Only include toolchain files in the 'install' target." OFF)
+
include(AddLLVM)
include(TableGen)
include("${CLANG_PATH_TO_LLVM_BUILD}/share/llvm/cmake/LLVMConfig.cmake")
@@ -237,10 +239,13 @@ macro(add_clang_library name)
target_link_libraries( ${name} ${LLVM_COMMON_LIBS} )
link_system_libs( ${name} )
- install(TARGETS ${name}
- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
- ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
- RUNTIME DESTINATION bin)
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "libclang")
+ install(TARGETS ${name}
+ LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+ ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+ RUNTIME DESTINATION bin)
+ endif()
+
set_target_properties(${name} PROPERTIES FOLDER "Clang libraries")
endmacro(add_clang_library)
@@ -254,22 +259,31 @@ include_directories(BEFORE
${CMAKE_CURRENT_SOURCE_DIR}/include
)
-install(DIRECTORY include/
+if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ install(DIRECTORY include/
+ DESTINATION include
+ FILES_MATCHING
+ PATTERN "*.def"
+ PATTERN "*.h"
+ PATTERN "config.h" EXCLUDE
+ PATTERN ".svn" EXCLUDE
+ )
+
+ install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/
+ DESTINATION include
+ FILES_MATCHING
+ PATTERN "CMakeFiles" EXCLUDE
+ PATTERN "*.inc"
+ )
+endif()
+
+install(DIRECTORY include/clang-c
DESTINATION include
FILES_MATCHING
- PATTERN "*.def"
PATTERN "*.h"
- PATTERN "config.h" EXCLUDE
PATTERN ".svn" EXCLUDE
)
-install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/
- DESTINATION include
- FILES_MATCHING
- PATTERN "CMakeFiles" EXCLUDE
- PATTERN "*.inc"
- )
-
add_definitions( -D_GNU_SOURCE )
option(CLANG_ENABLE_ARCMT "Build ARCMT." ON)