From 635e5f48a4e09ff1a64ffeb7dfc3d46d847aeedd Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Fri, 19 Oct 2012 23:29:40 +0200 Subject: [PATCH] configure: CIRCLEQ are needed in the parser, not only in mconf In fact, the CIRCLEQ are needed in the parser, so all the frontends are impacted, not only mconf. Fail building on systems that miss those macros, instead of just disabling mconf. Signed-off-by: "Yann E. MORIN" --- configure.ac | 48 +++++++++++++++++------------------------------- 1 file changed, 17 insertions(+), 31 deletions(-) diff --git a/configure.ac b/configure.ac index e1bbca0..ed22393 100644 --- a/configure.ac +++ b/configure.ac @@ -176,7 +176,6 @@ AC_SUBST([kf_CFLAGS], ["$wall_CFLAGS $werror_CFLAGS"]) #---------------------------------------- # Dependencies that will be needed, depending on the frontends -[need_circleq="$enable_mconf"] AS_CASE( ["$enable_mconf":"$enable_nconf"], [*yes*], [need_curses=yes], @@ -232,6 +231,23 @@ AC_CHECK_FUNCS([ bzero memmove memset ]) AC_CHECK_FUNCS([ strcasecmp strchr strcspn strdup strncasecmp strpbrk strrchr strspn strtol ]) AC_CHECK_FUNCS([ gettimeofday mkdir regcomp setlocale uname ]) +#---------------------------------------- +# Check headers and macros for circle queues +AC_CHECK_HEADERS( + [sys/queue.h], + [AC_MSG_CHECKING([for CIRCLEQ_XXX macros in sys/queue.h]) + AC_PREPROC_IFELSE( + [AC_LANG_PROGRAM( + [[#include + #ifndef CIRCLEQ_HEAD + #error no + #endif]] + [[]])], + [AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no]) + AC_MSG_ERROR([CIRCLEQ_XXX macros not defined in sys/queue.h (parser)])])], + [AC_MSG_ERROR([could not find sys/queue.h header (parser)])]) + #---------------------------------------- # Check for gettext, for the kconfig frontends [has_gettext="$enable_L10n"] @@ -263,36 +279,6 @@ AS_IF( AC_SUBST([intl_CPPFLAGS]) AC_SUBST([intl_LIBS]) -#---------------------------------------- -# Check headers and macros for circle queues -AS_IF( - [test "$need_circleq" = "yes" -o "$need_circleq" = "auto"], - [AC_CHECK_HEADERS( - [sys/queue.h], - [AC_MSG_CHECKING([for CIRCLEQ_XXX macros in sys/queue.h]) - AC_PREPROC_IFELSE( - [AC_LANG_PROGRAM( - [[#include - #ifndef CIRCLEQ_HEAD - #error no - #endif]] - [[]])], - [AC_MSG_RESULT([yes]) - has_circleq=yes], - [AC_MSG_RESULT([no]) - AS_IF( - [test "$need_circleq" = "yes"], - [AC_MSG_ERROR([CIRCLEQ_XXX macros not defined in sys/queue.h (frontend: mconf)])], - [has_circleq=no])])], - [AS_IF( - [test "$need_circleq" = "yes"], - [AC_MSG_ERROR([could not find sys/queue.h header (frontend: mconf)])], - [has_circleq=no])])]) - -AS_IF( - [test "$has_circleq" = "no"], - [enable_mconf=no]) - #---------------------------------------- # Check for ncurses, for the mconf & nconf frontends AS_IF( -- 2.39.5