summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-ar
diff options
context:
space:
mode:
authorNAKAMURA Takumi <geek4civic@gmail.com>2014-12-08 13:43:38 +0000
committerNAKAMURA Takumi <geek4civic@gmail.com>2014-12-08 13:43:38 +0000
commit999a8d89f85917d46c5c1a987e8e82e02f0816cb (patch)
tree8b61ae56e6077144839ddd01e257136c08a52686 /llvm/tools/llvm-ar
parentf97d0cbe58300f089195288ab738f532f552163a (diff)
downloadbcm5719-llvm-999a8d89f85917d46c5c1a987e8e82e02f0816cb.tar.gz
bcm5719-llvm-999a8d89f85917d46c5c1a987e8e82e02f0816cb.zip
[CMake] Fix installation of llvm-ranlib on multiconfig builder.
Introduce install_symlink.cmake from clang/tools/driver/clang_symlink.cmake. FIXME: Would it be generalized? llvm-svn: 223655
Diffstat (limited to 'llvm/tools/llvm-ar')
-rw-r--r--llvm/tools/llvm-ar/CMakeLists.txt2
-rw-r--r--llvm/tools/llvm-ar/install_symlink.cmake25
2 files changed, 26 insertions, 1 deletions
diff --git a/llvm/tools/llvm-ar/CMakeLists.txt b/llvm/tools/llvm-ar/CMakeLists.txt
index feb959031f9..da1789e2e96 100644
--- a/llvm/tools/llvm-ar/CMakeLists.txt
+++ b/llvm/tools/llvm-ar/CMakeLists.txt
@@ -24,4 +24,4 @@ add_custom_command(OUTPUT ${llvm_ranlib}
DEPENDS llvm-ar)
add_custom_target(llvm-ranlib ALL DEPENDS ${llvm_ranlib})
-install(FILES "${llvm_ranlib}" DESTINATION bin)
+install(SCRIPT install_symlink.cmake -DCMAKE_INSTALL_PREFIX=\"${CMAKE_INSTALL_PREFIX}\")
diff --git a/llvm/tools/llvm-ar/install_symlink.cmake b/llvm/tools/llvm-ar/install_symlink.cmake
new file mode 100644
index 00000000000..e313897b8b3
--- /dev/null
+++ b/llvm/tools/llvm-ar/install_symlink.cmake
@@ -0,0 +1,25 @@
+# We need to execute this script at installation time because the
+# DESTDIR environment variable may be unset at configuration time.
+# See PR8397.
+
+if(UNIX)
+ set(LINK_OR_COPY create_symlink)
+ set(DESTDIR $ENV{DESTDIR})
+else()
+ set(LINK_OR_COPY copy)
+endif()
+
+# CMAKE_EXECUTABLE_SUFFIX is undefined on cmake scripts. See PR9286.
+if( WIN32 )
+ set(EXECUTABLE_SUFFIX ".exe")
+else()
+ set(EXECUTABLE_SUFFIX "")
+endif()
+
+set(bindir "${DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/")
+
+message("Creating llvm-ranlib")
+
+execute_process(
+ COMMAND "${CMAKE_COMMAND}" -E ${LINK_OR_COPY} "llvm-ar${EXECUTABLE_SUFFIX}" "llvm-ranlib${EXECUTABLE_SUFFIX}"
+ WORKING_DIRECTORY "${bindir}")
OpenPOWER on IntegriCloud