[Intel-gfx] [PATCH i-g-t] igt: Fix detection of missing flex

Tvrtko Ursulin tursulin at ursulin.net
Fri May 26 11:11:04 UTC 2017


From: Tvrtko Ursulin <tvrtko.ursulin at intel.com>

AM_PROG_FLEX macro will set the LEX variable using the missing
script when the flex is not present. This will confuse the
configure.ac check, which expects the AC_PROG_FLEX behaviour,
and will so fail to detect the missing flex:

	AS_IF([test x"$LEX" != "x:" -a x"$YACC" != xyacc],
		[enable_assembler=yes],
		[enable_assembler=no])

This is because AM_PROG_LEX sets the LEX variable to
"${SHELL} /home/sc/intel-gpu-tools/build-aux/missing flex",
while AC_PROG_LEX would set it to ":".

If for some reason we really need to keep AM_PROG_LEX,
alternative fix could be something like this placed before
the above AS_IF check:

	AC_MSG_CHECKING([checking for working flex])
	if ! eval "$LEX --version >/dev/null 2>&1"; then
		AC_MSG_RESULT([failed])
		LEX=:
	else
		AC_MSG_RESULT([pass])
	fi

Note the evil eval needed to recursively expand variables.

Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
---
 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/configure.ac b/configure.ac
index 5342e33c8293..82857a8325b1 100644
--- a/configure.ac
+++ b/configure.ac
@@ -40,7 +40,7 @@ AM_INIT_AUTOMAKE([1.12 foreign subdir-objects dist-bzip2])
 AM_PATH_PYTHON([3],, [:])
 
 AC_PROG_CC
-AM_PROG_LEX
+AC_PROG_LEX
 AC_PROG_YACC
 
 # check for gtk-doc
-- 
2.9.4



More information about the Intel-gfx mailing list