build: Error out early if flex or bison are not found.
authorAndre Noll <maan@tuebingen.mpg.de>
Thu, 11 Jan 2018 08:05:13 +0000 (09:05 +0100)
committerAndre Noll <maan@tuebingen.mpg.de>
Sun, 11 Feb 2018 10:25:55 +0000 (11:25 +0100)
The configure script tests for these executables, but we happily
proceed even if they are not found. For the m4 executable we got
the check right, however. Introduce a general helper that calls
AC_PATH_PROG() to locate an executable and aborts if it is not found.

configure.ac

index 1a375e9..499571a 100644 (file)
@@ -46,20 +46,21 @@ AC_DEFUN([LIB_SUBST_FLAGS], [
        AC_SUBST($1_cppflags)
        AC_SUBST($1_ldflags)
 ])
+AC_DEFUN([REQUIRE_EXECUTABLE], [
+        AC_PATH_PROG(m4_toupper([$1]), [$1])
+        test -z "$m4_toupper([$1])" && AC_MSG_ERROR(
+               [$1 is required to build this package])
+])
 
 AC_USE_SYSTEM_EXTENSIONS
 AC_C_BIGENDIAN()
-
-AC_PATH_PROG([BISON], [bison])
-AC_PATH_PROG([FLEX], [flex])
-
-AC_PATH_PROG([M4], [m4])
-test -z "$M4" && AC_MSG_ERROR(
-       [The m4 macro processor is required to build this package])
-
 AC_PROG_CC
 AC_PROG_CPP
 
+REQUIRE_EXECUTABLE([bison])
+REQUIRE_EXECUTABLE([flex])
+REQUIRE_EXECUTABLE([m4])
+
 executables="recv filter audioc write afh play"
 ########################################################################### osl
 STASH_FLAGS