summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt21
-rw-r--r--cmake/modules/AddClang.cmake2
2 files changed, 23 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c2016a45ca..40cf7dfdf6 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -543,6 +543,27 @@ if( CLANG_INCLUDE_DOCS )
add_subdirectory(docs)
endif()
+# Custom target to install all clang libraries.
+add_custom_target(clang-libraries)
+set_target_properties(clang-libraries PROPERTIES FOLDER "Misc")
+
+if(NOT CMAKE_CONFIGURATION_TYPES)
+ add_llvm_install_targets(install-clang-libraries
+ DEPENDS clang-libraries
+ COMPONENT clang-libraries)
+endif()
+
+get_property(CLANG_LIBS GLOBAL PROPERTY CLANG_LIBS)
+if(CLANG_LIBS)
+ list(REMOVE_DUPLICATES CLANG_LIBS)
+ foreach(lib ${CLANG_LIBS})
+ add_dependencies(clang-libraries ${lib})
+ if(NOT CMAKE_CONFIGURATION_TYPES)
+ add_dependencies(install-clang-libraries install-${lib})
+ endif()
+ endforeach()
+endif()
+
add_subdirectory(cmake/modules)
if(CLANG_STAGE)
diff --git a/cmake/modules/AddClang.cmake b/cmake/modules/AddClang.cmake
index 7fcf93f1a3..4c3f2d19f7 100644
--- a/cmake/modules/AddClang.cmake
+++ b/cmake/modules/AddClang.cmake
@@ -108,6 +108,8 @@ macro(add_clang_library name)
DEPENDS ${name}
COMPONENT ${name})
endif()
+
+ set_property(GLOBAL APPEND PROPERTY CLANG_LIBS ${name})
endif()
set_property(GLOBAL APPEND PROPERTY CLANG_EXPORTS ${name})
else()