X-Git-Url: https://git.draconx.ca/gitweb/cdecl99.git/blobdiff_plain/00d66b21918b9db6e171217e2fb9556aacbf451b..a5bd3ad316db03f0e4de775908a920a3833f2a26:/configure.ac diff --git a/configure.ac b/configure.ac index 5596f74..5fd17d6 100644 --- a/configure.ac +++ b/configure.ac @@ -1,22 +1,88 @@ +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 There is NO WARRANTY, to the extent permitted by law. + AC_PREREQ([2.68]) -AC_INIT([cdecl99], [0.1], [nbowler@draconx.ca]) -AC_CONFIG_HEADER([config.h]) -AC_CONFIG_MACRO_DIR([m4]) +AC_INIT([cdecl99], [1a], [nbowler@draconx.ca]) +AC_CONFIG_HEADERS([config.h]) -AM_INIT_AUTOMAKE([-Wall -Werror foreign subdir-objects]) +AM_INIT_AUTOMAKE([-Wall -Wno-portability foreign subdir-objects dist-xz]) AM_SILENT_RULES([yes]) +DX_AUTOMAKE_COMPAT AC_PROG_CC_C99 +AM_PROG_CC_C_O +gl_EARLY + +LT_INIT +gl_INIT -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_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 +#if HAVE_READLINE_HISTORY_H +# include +#endif +], [dnl +(*add_history)(""); +])], [dx_cv_rl_add_history=yes], [dx_cv_rl_add_history=no]) +LIBS=$dx_save_libs +]) -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]) +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.])]) -LT_INIT +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. +m4_traceoff([AM_GNU_GETTEXT]) +AM_GNU_GETTEXT([external]) +DX_LINGUAS + +DX_PROG_FLEX([], [have_flex=yes], [have_flex=no]) +AM_CONDITIONAL([HAVE_FLEX], [test x"$have_flex" = x"yes"]) + +DX_PROG_BISON([], [have_bison=yes], [have_bison=no]) +AM_CONDITIONAL([HAVE_BISON], [test x"$have_bison" = x"yes"]) + +DX_BISON_COMPAT +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 ]) +AH_BOTTOM([#include ]) + +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([Makefile]) +AC_CONFIG_FILES([ + Makefile +]) AC_OUTPUT