diff --git a/configure.ac b/configure.ac index c5f2353..892b0ba 100644 --- a/configure.ac +++ b/configure.ac @@ -1,14 +1,42 @@ +# -*- Autoconf -*- +# Process this file with autoconf to produce a configure script. + +AC_PREREQ([2.69]) AC_INIT([sermon], [0.9], [david.a.baer@gmail.com]) AM_INIT_AUTOMAKE([-Wall -Werror foreign]) +AC_CONFIG_SRCDIR([config.h.in]) +AC_CONFIG_HEADERS([config.h]) + +# Checks for programs. AC_PROG_CC AC_PROG_LEX AC_PROG_YACC + +# Checks for libraries. PKG_CHECK_MODULES([libxml2], [libxml-2.0]) PKG_CHECK_MODULES([libxslt], [libxslt]) -AC_CONFIG_HEADERS([config.h]) -AC_CONFIG_FILES([ - Makefile - src/Makefile - data/Makefile -]) +AC_CHECK_LIB([bsd], [strlcpy], [ PKG_CHECK_MODULES([libbsd], [libbsd]) ]) + +# Checks for header files. +AC_FUNC_ALLOCA +AC_CHECK_HEADERS([inttypes.h libintl.h limits.h malloc.h stddef.h stdint.h stdlib.h string.h unistd.h]) + +# Checks for typedefs, structures, and compiler characteristics. +AC_C_INLINE +AC_TYPE_INT16_T +AC_TYPE_INT32_T +AC_TYPE_INT8_T +AC_TYPE_SIZE_T +AC_TYPE_UINT16_T +AC_TYPE_UINT32_T +AC_TYPE_UINT8_T + +# Checks for library functions. +AC_FUNC_MALLOC +AC_FUNC_REALLOC +AC_CHECK_FUNCS([memset realpath strdup strndup]) + +AC_CONFIG_FILES([Makefile + data/Makefile + src/Makefile]) AC_OUTPUT diff --git a/src/Makefile.am b/src/Makefile.am index a25dd09..159084f 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -14,7 +14,7 @@ sermon_SOURCES = citations.c \ utf8.c \ xml.c \ xslt.c -sermon_LDADD = ${libxml2_LIBS} ${libxslt_LIBS} +sermon_LDADD = ${libxml2_LIBS} ${libxslt_LIBS} ${libbsd_LIBS} CLEANFILES = sermon_lexer.c \ sermon_parser.c \ sermon_parser.h diff --git a/src/sermon_lexer.l b/src/sermon_lexer.l index 899ca6d..77a6225 100644 --- a/src/sermon_lexer.l +++ b/src/sermon_lexer.l @@ -1,5 +1,6 @@ %{ #include +#include "sermon.h" #include "sermon_parser.h" #ifdef LEXDEBUG