summaryrefslogtreecommitdiff
path: root/tools/llvm-ar/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'tools/llvm-ar/CMakeLists.txt')
-rw-r--r--tools/llvm-ar/CMakeLists.txt18
1 files changed, 18 insertions, 0 deletions
diff --git a/tools/llvm-ar/CMakeLists.txt b/tools/llvm-ar/CMakeLists.txt
index 503999c262..f15a1e2a86 100644
--- a/tools/llvm-ar/CMakeLists.txt
+++ b/tools/llvm-ar/CMakeLists.txt
@@ -4,4 +4,22 @@ add_llvm_tool(llvm-ar
llvm-ar.cpp
)
+# FIXME: this is duplicated from the clang CMakeLists.txt
+# FIXME: bin/llvm-ranlib is not a valid build target with this setup (pr17024)
+
+if(UNIX)
+ set(LLVM_LINK_OR_COPY create_symlink)
+ set(llvm_ar_binary "llvm-ar${CMAKE_EXECUTABLE_SUFFIX}")
+else()
+ set(LLVM_LINK_OR_COPY copy)
+ set(llvm_ar_binary "${LLVM_BINARY_DIR}/bin/${CMAKE_CFG_INTDIR}/llvm-ar${CMAKE_EXECUTABLE_SUFFIX}")
+endif()
+
+set(llvm_ranlib "${LLVM_BINARY_DIR}/bin/${CMAKE_CFG_INTDIR}/llvm-ranlib${CMAKE_EXECUTABLE_SUFFIX}")
+add_custom_command(TARGET llvm-ar POST_BUILD
+ COMMAND ${CMAKE_COMMAND} -E ${LLVM_LINK_OR_COPY} "${llvm_ar_binary}" "${llvm_ranlib}")
+
+set_property(DIRECTORY APPEND
+ PROPERTY ADDITIONAL_MAKE_CLEAN_FILES ${llvm_ranlib})
+
# TODO: Support check-local.