ctdb: fix autotest with socket-wrapper installed in the system
authorMichael Adam <obnox@samba.org>
Tue, 21 Jun 2016 07:50:53 +0000 (09:50 +0200)
committerMichael Adam <obnox@samba.org>
Fri, 8 Jul 2016 11:46:47 +0000 (13:46 +0200)
Signed-off-by: Michael Adam <obnox@samba.org>
ctdb/wscript

index 3eae06653dd759fd3add75f965cb5226812ed437..9f0f1e1d2e55fd2db8d3ff615aeb67da99acc8dc 100755 (executable)
@@ -107,6 +107,16 @@ def configure(conf):
     conf.RECURSE('lib/tdb')
     if conf.env.standalone_ctdb or conf.CONFIG_GET('ENABLE_SELFTEST'):
         conf.RECURSE('lib/socket_wrapper')
+        conf.env.SOCKET_WRAPPER_SO_PATH = conf.CONFIG_GET('LIBSOCKET_WRAPPER_SO_PATH')
+        using_system_socket_wrapper = conf.CONFIG_GET('USING_SYSTEM_SOCKET_WRAPPER')
+        if not using_system_socket_wrapper and conf.env.standalone_ctdb:
+            #
+            # We need to override the path here, as otherwise the 'ctdb' subdir
+            # is missing. This is because the socket_wrapper wscript constructs
+            # the path from the conf.srcdir, and this is not populated from the
+            # the cwd but from the location of waf.
+            #
+            conf.env.SOCKET_WRAPPER_SO_PATH = '%s/bin/shared/libsocket-wrapper.so' % os.getcwd()
 
     conf.CHECK_HEADERS('sched.h')
     conf.CHECK_HEADERS('procinfo.h')
@@ -816,7 +826,8 @@ def test(ctx):
 
 
 def autotest(ctx):
-    ld = 'LD_PRELOAD=%s/bin/shared/libsocket-wrapper.so' % os.getcwd()
+    env = samba_utils.LOAD_ENVIRONMENT()
+    ld = 'LD_PRELOAD=%s' % env.SOCKET_WRAPPER_SO_PATH
     cmd = '%s tests/run_tests.sh -e -S -C' % ld
     ret = samba_utils.RUN_COMMAND(cmd)
     if ret != 0: