diff options
author | Hans Wennborg <hans@hanshq.net> | 2013-08-24 00:22:23 +0000 |
---|---|---|
committer | Hans Wennborg <hans@hanshq.net> | 2013-08-24 00:22:23 +0000 |
commit | 25971caf92e7c48d5f985cb0cdab406f2c4b09e5 (patch) | |
tree | 42b148d65e7ac2223b6915600e6e21b3f7d0707b /clang/CMakeLists.txt | |
parent | 1654627f27f6574300bb65a990f01c278610194f (diff) | |
download | llvm-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.txt | 42 |
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) |