Lately, `make check` runs have been failing. When "--with-ovs-source" is not specified at configure time, the configure script automatically sets the location to "$srcdir/ovs". This location is passed along the chain and eventually added to AUTOTEST_PATH when running the tests.
$srcdir is a relative path name, which is fine when building the code. This falls apart, though, when tests are run. Tests are not run from the build directory, but instead from the tests/ directory. Therefore, the relative path to ovs/ is different. This causes most tests to fail since files are not in the expected location. The fix is to set OVSDIR to an absolute path instead. Autoconf documents an $abs_srcdir variable, but this is not set until after configure checks are run. It is meant to be used by Makefiles. Therefore, we use the trick of cd-ing to the directory and calling pwd to expand it to the absolute path. Signed-off-by: Mark Michelson <[email protected]> --- acinclude.m4 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/acinclude.m4 b/acinclude.m4 index 3f8db03cf..2c607ea8e 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -381,7 +381,7 @@ AC_DEFUN([OVN_CHECK_OVS], [ AC_ERROR([$OVSDIR is not an OVS source directory]) fi else - OVSDIR=$srcdir/ovs + OVSDIR=$(cd $srcdir/ovs; pwd) fi AC_MSG_RESULT([$OVSDIR]) -- 2.29.2 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
