]> granicus.if.org Git - clang/commitdiff
[test] Extend llvm_shlib_dir fix to unittests
authorMichal Gorny <mgorny@gentoo.org>
Thu, 15 Dec 2016 20:31:08 +0000 (20:31 +0000)
committerMichal Gorny <mgorny@gentoo.org>
Thu, 15 Dec 2016 20:31:08 +0000 (20:31 +0000)
Extend the fix from rL286952 to unittests. The fix added clang built
library directories (via llvm_shlib_dir) to LD_LIBRARY_PATH.
The previous logic has used llvm_libs_dir only which points to installed
LLVM when doing stand-alone builds.

The patch also removes the redundant win32 code that is no longer
necessary now that shlibdir is used unconditionally.

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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@289865 91177308-0d34-0410-b5e6-96231b3b80d8

test/Unit/lit.cfg

index 4fa6e78ed63b34eaa643fbbf3bc2a6cfabdd8f39..39fad0099cebf6ca86b3d517dc5bb569c1a286ea 100644 (file)
@@ -94,15 +94,16 @@ elif platform.system() == 'Darwin':
 elif platform.system() == 'Windows':
     shlibpath_var = 'PATH'
 
+# in stand-alone builds, shlibdir is clang's build tree
+# while llvm_libs_dir is installed LLVM (and possibly older clang)
+llvm_shlib_dir = getattr(config, 'shlibdir', None)
+if not llvm_shlib_dir:
+    lit_config.fatal('No shlibdir set!')
 # Point the dynamic loader at dynamic libraries in 'lib'.
 llvm_libs_dir = getattr(config, 'llvm_libs_dir', None)
 if not llvm_libs_dir:
     lit_config.fatal('No LLVM libs dir set!')
-shlibpath = os.path.pathsep.join((llvm_libs_dir,
+shlibpath = os.path.pathsep.join((llvm_shlib_dir, llvm_libs_dir,
                                  config.environment.get(shlibpath_var,'')))
 
-# Win32 seeks DLLs along %PATH%.
-if sys.platform in ['win32', 'cygwin'] and os.path.isdir(config.shlibdir):
-    shlibpath = os.path.pathsep.join((config.shlibdir, shlibpath))
-
 config.environment[shlibpath_var] = shlibpath