[commit: testsuite] master: fix runtests to set LD_LIBRARY_PATH environment variable. (d262089)

David Terei davidterei at gmail.com
Fri Jan 25 02:33:47 CET 2013


Repository : ssh://darcs.haskell.org//srv/darcs/testsuite

On branch  : master

http://hackage.haskell.org/trac/ghc/changeset/d262089127c54bfe81963628ac70a309f8133492

>---------------------------------------------------------------

commit d262089127c54bfe81963628ac70a309f8133492
Author: David Terei <davidterei at gmail.com>
Date:   Thu Jan 24 14:18:56 2013 -0800

    fix runtests to set LD_LIBRARY_PATH environment variable.
    
    Patch from Karel Gardas <karel.gardas at centrum.cz>.

>---------------------------------------------------------------

 driver/runtests.py |   48 ++++++++++++++++++++++++++----------------------
 1 files changed, 26 insertions(+), 22 deletions(-)

diff --git a/driver/runtests.py b/driver/runtests.py
index 66e3bf4..d2b5c78 100644
--- a/driver/runtests.py
+++ b/driver/runtests.py
@@ -181,28 +181,32 @@ from testlib import *
 
 # On Windows we need to set $PATH to include the paths to all the DLLs
 # in order for the dynamic library tests to work.
-if windows or darwin:
-    pkginfo = getStdout([config.ghc_pkg, 'dump'])
-    topdir = config.libdir
-    for line in pkginfo.split('\n'):
-        if line.startswith('library-dirs:'):
-            path = line.rstrip()
-            path = re.sub('^library-dirs: ', '', path)
-            path = re.sub('\\$topdir', topdir, path)
-            if path.startswith('"'):
-                path = re.sub('^"(.*)"$', '\\1', path)
-                path = re.sub('\\\\(.)', '\\1', path)
-            if windows:
-                if config.cygwin:
-                    # On cygwin we can't put "c:\foo" in $PATH, as : is a
-                    # field separator. So convert to /cygdrive/c/foo instead.
-                    # Other pythons use ; as the separator, so no problem.
-                    path = re.sub('([a-zA-Z]):', '/cygdrive/\\1', path)
-                    path = re.sub('\\\\', '/', path)
-                os.environ['PATH'] = os.pathsep.join([path, os.environ.get("PATH", "")])
-            else:
-                # darwin
-                os.environ['DYLD_LIBRARY_PATH'] = os.pathsep.join([path, os.environ.get("DYLD_LIBRARY_PATH", "")])
+# if windows or darwin:
+pkginfo = getStdout([config.ghc_pkg, 'dump'])
+topdir = config.libdir
+for line in pkginfo.split('\n'):
+    if line.startswith('library-dirs:'):
+        path = line.rstrip()
+        path = re.sub('^library-dirs: ', '', path)
+        path = re.sub('\\$topdir', topdir, path)
+        if path.startswith('"'):
+            path = re.sub('^"(.*)"$', '\\1', path)
+            path = re.sub('\\\\(.)', '\\1', path)
+        if windows:
+            if config.cygwin:
+                # On cygwin we can't put "c:\foo" in $PATH, as : is a
+                # field separator. So convert to /cygdrive/c/foo instead.
+                # Other pythons use ; as the separator, so no problem.
+                path = re.sub('([a-zA-Z]):', '/cygdrive/\\1', path)
+                path = re.sub('\\\\', '/', path)
+            os.environ['PATH'] = os.pathsep.join([path, os.environ.get("PATH", "")])
+        elif darwin:
+            # darwin
+            os.environ['DYLD_LIBRARY_PATH'] = os.pathsep.join([path, os.environ.get("DYLD_LIBRARY_PATH", "")])
+        else:
+            # unix
+            os.environ['LD_LIBRARY_PATH'] = os.pathsep.join([path, os.environ.get("LD_LIBRARY_PATH", "")])
+
 
 global testopts_local
 testopts_local.x = TestOptions()





More information about the ghc-commits mailing list