Extend configure to pass the detect python binary to C code, and
use it in the test suite, rather than searching PATH
Signed-off-by: Cole Robinson <crobinso(a)redhat.com>
---
configure.ac | 1 +
tests/testutils.c | 12 +-----------
2 files changed, 2 insertions(+), 11 deletions(-)
diff --git a/configure.ac b/configure.ac
index 2e5af075ea..6c7c186d18 100644
--- a/configure.ac
+++ b/configure.ac
@@ -705,6 +705,7 @@ AC_PATH_PROGS([PYTHON], [python3])
if test -z "$PYTHON"; then
AC_MSG_ERROR(['python3' binary is required to build libvirt])
fi
+AC_DEFINE_UNQUOTED([PYTHON], "$PYTHON", [path to python binary])
AC_PATH_PROG([FLAKE8], [flake8])
if test -z "$FLAKE8"; then
AC_MSG_WARN(['flake8' binary is required to check python code style])
diff --git a/tests/testutils.c b/tests/testutils.c
index a8215afa42..6efc877d0c 100644
--- a/tests/testutils.c
+++ b/tests/testutils.c
@@ -58,7 +58,6 @@ static size_t testCounter;
static virBitmapPtr testBitmap;
char *progname;
-static char *python;
virArch virTestHostArch = VIR_ARCH_X86_64;
@@ -428,14 +427,9 @@ virTestRewrapFile(const char *filename)
virStringHasSuffix(filename, ".ldargs")))
return 0;
- if (!python) {
- fprintf(stderr, "cannot rewrap %s: unable to find python in path",
filename);
- return -1;
- }
-
script = g_strdup_printf("%s/scripts/test-wrap-argv.py", abs_top_srcdir);
- cmd = virCommandNewArgList(python, script, "--in-place", filename, NULL);
+ cmd = virCommandNewArgList(PYTHON, script, "--in-place", filename, NULL);
if (virCommandRun(cmd, NULL) < 0)
goto cleanup;
@@ -919,9 +913,6 @@ int virTestMain(int argc,
}
}
- /* Find python early because some tests override PATH */
- python = virFindFileInPath("python");
-
ret = (func)();
virResetLastError();
@@ -931,7 +922,6 @@ int virTestMain(int argc,
fprintf(stderr, " %-3zu %s\n", testCounter, ret == 0 ? "OK" :
"FAIL");
}
virLogReset();
- VIR_FREE(python);
return ret;
}
--
2.23.0