]> git.draconx.ca Git - cdecl99.git/blobdiff - configure.ac
Use AC_CONFIG_HEADERS rather than AC_CONFIG_HEADER.
[cdecl99.git] / configure.ac
index 103bae2253fe0caa874c87fdadef91f958d32f23..e0a67aac01adaeb46911b4d676bc73a196a455a3 100644 (file)
@@ -1,4 +1,4 @@
-dnl Copyright © 2011 Nick Bowler
+dnl Copyright © 2011-2013, 2020-2021 Nick Bowler
 dnl
 dnl License WTFPL2: Do What The Fuck You Want To Public License, version 2.
 dnl This is free software: you are free to do what the fuck you want to.
 dnl
 dnl License WTFPL2: Do What The Fuck You Want To Public License, version 2.
 dnl This is free software: you are free to do what the fuck you want to.
@@ -6,18 +6,41 @@ dnl There is NO WARRANTY, to the extent permitted by law.
 
 AC_PREREQ([2.68])
 AC_INIT([cdecl99], [0.1], [nbowler@draconx.ca])
 
 AC_PREREQ([2.68])
 AC_INIT([cdecl99], [0.1], [nbowler@draconx.ca])
-AC_CONFIG_HEADER([config.h])
-AC_CONFIG_MACRO_DIR([m4])
+AC_CONFIG_HEADERS([config.h])
 
 
-AM_INIT_AUTOMAKE([-Wall -Werror foreign subdir-objects])
+AM_INIT_AUTOMAKE([-Wall -Wno-portability foreign subdir-objects])
 AM_SILENT_RULES([yes])
 AM_SILENT_RULES([yes])
+DX_AUTOMAKE_COMPAT
 
 AC_PROG_CC_C99
 
 AC_PROG_CC_C99
+AM_PROG_CC_C_O
 gl_EARLY
 
 LT_INIT
 gl_INIT
 
 gl_EARLY
 
 LT_INIT
 gl_INIT
 
+AC_CACHE_CHECK([if readline supports add_history], [dx_cv_rl_add_history], [dnl
+dx_cv_rl_add_history=no
+dx_save_libs=$LIBS
+LIBS="$LIBS $LIBREADLINE"
+AC_LINK_IFELSE([AC_LANG_PROGRAM([dnl
+#include <stdio.h>
+#if HAVE_READLINE_HISTORY_H
+#  include <readline/history.h>
+#endif
+], [dnl
+(*add_history)("");
+])], [dx_cv_rl_add_history=yes], [dx_cv_rl_add_history=no])
+LIBS=$dx_save_libs
+])
+
+AS_IF([test x"$dx_cv_rl_add_history" = x"yes"],
+       [AC_DEFINE([HAVE_RL_ADD_HISTORY], [1],
+               [Define to 1 if readline supports add_history.])])
+
+m4_include([lib/gnulib.mk])
+DX_GLSYM_PREFIX([cdecl__])
+
 dnl We provide our own makefile rules for gettext.  Disable tracing of
 dnl AM_GNU_GETTEXT to prevent autoreconf from running autopoint, and to
 dnl prevent automake from growing gratuitous error conditions.
 dnl We provide our own makefile rules for gettext.  Disable tracing of
 dnl AM_GNU_GETTEXT to prevent autoreconf from running autopoint, and to
 dnl prevent automake from growing gratuitous error conditions.
@@ -25,17 +48,37 @@ m4_traceoff([AM_GNU_GETTEXT])
 AM_GNU_GETTEXT([external])
 DX_LINGUAS
 
 AM_GNU_GETTEXT([external])
 DX_LINGUAS
 
-AC_ARG_VAR([FLEX], [Command to invoke flex.  Defaults to flex.])
-AC_ARG_VAR([FLEXFLAGS], [Additional options to pass to flex.])
-AC_CHECK_PROGS([FLEX], [flex], [flex])
-
-AC_ARG_VAR([BISON], [Command to invoke GNU Bison.  Defaults to bison.])
-AC_ARG_VAR([BISONFLAGS], [Additional options to pass to Bison.])
-AC_CHECK_PROGS([BISON], [bison], [bison])
+DX_PROG_FLEX([], [], [FLEX=false])
+DX_PROG_BISON([], [], [BISON=false])
+DX_BISON_COMPAT
 BISON_I18N
 
 BISON_I18N
 
+BISON_COMPAT=
+AS_IF([test x"$dx_cv_bison_api_header_include" = x"yes"],
+  [BISON_COMPAT="'--define=api.header.include={\"\$(*F).h\"}'"])
+AS_IF([test x"$dx_cv_bison_warn_no_deprecated" = x"yes"],
+  [AS_VAR_APPEND([BISON_COMPAT], ["${BISON_COMPAT:+ }-Wno-deprecated"])])
+AC_SUBST([BISON_COMPAT])
+
+AH_TOP([#include <conf_pre.h>])
+AH_BOTTOM([#include <conf_post.h>])
+
+AC_ARG_WITH([gsl],
+       [AS_HELP_STRING([--with-gsl],
+               [specify whether to build test programs requiring the GNU Scientific Library. [default=auto]]
+       )], [with_gsl=$withval], [with_gsl=auto])
+
+AS_CASE([$with_gsl],
+       [no], [have_gsl=no],
+       [yes], [DX_CHECK_GSL([1.0], [have_gsl=yes])],
+       [DX_CHECK_GSL([1.0], [have_gsl=yes], [have_gsl=no])])
+AM_CONDITIONAL([HAVE_GSL], [test x"$have_gsl" = x"yes"])
+
+AC_CONFIG_TESTDIR([.], [test:.])
+DX_PROG_AUTOTEST
+AM_CONDITIONAL([HAVE_AUTOTEST], [test x"$dx_cv_autotest_works" = x"yes"])
+
 AC_CONFIG_FILES([
 AC_CONFIG_FILES([
-       lib/Makefile
        Makefile
 ])
 AC_OUTPUT
        Makefile
 ])
 AC_OUTPUT