OSDN Git Service

[CMake] Fix incorrect rpath for tests if LLVM_LOCAL_RPATH isn't set
authorRaul Tambre <raul@tambre.ee>
Fri, 8 Jan 2021 19:19:42 +0000 (21:19 +0200)
committerRaul Tambre <raul@tambre.ee>
Fri, 8 Jan 2021 19:24:18 +0000 (21:24 +0200)
d9ce31ae7d (D94322) removed the check because I thought it was dead
due to checking the existance of a variable (which always existed).

This causes LLDB tests to fail as they set NO_INSTALL_RPATH because
they're never meant to be installed, but we still would end up using
the install rpath.

Add the check back and make it explicitly check for an empty value
to make the purpose clearer and avoid implicit test for a false/true
value.

Differential Revision: https://reviews.llvm.org/D94326

llvm/cmake/modules/AddLLVM.cmake

index 17b3ad3..97c9980 100644 (file)
@@ -865,7 +865,7 @@ macro(add_llvm_executable name)
 
   if(NOT ARG_NO_INSTALL_RPATH)
     llvm_setup_rpath(${name})
-  else()
+  elseif(NOT "${LLVM_LOCAL_RPATH}" STREQUAL "")
     # Enable BUILD_WITH_INSTALL_RPATH unless CMAKE_BUILD_RPATH is set.
     if("${CMAKE_BUILD_RPATH}" STREQUAL "")
       set_property(TARGET ${name} PROPERTY BUILD_WITH_INSTALL_RPATH ON)