Blame configure.ac

Packit 1422b7
                                               -*- Autoconf -*-
Packit 1422b7
# Process this file with autoconf to produce a configure script.
Packit 1422b7
Packit 1422b7
AC_PREREQ(2.61)
Packit 1422b7
AC_INIT([liblognorm], [2.0.5], [rgerhards@adiscon.com])
Packit 1422b7
AM_INIT_AUTOMAKE
Packit 1422b7
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
Packit 1422b7
AC_CONFIG_SRCDIR([src/lognorm.c])
Packit 1422b7
AC_CONFIG_HEADER([config.h])
Packit 1422b7
Packit 1422b7
AC_USE_SYSTEM_EXTENSIONS
Packit 1422b7
Packit 1422b7
# Checks for programs.
Packit 1422b7
AC_PROG_CC
Packit 1422b7
AM_PROG_CC_C_O
Packit 1422b7
AC_PROG_CC_C99
Packit 1422b7
AC_PROG_LIBTOOL
Packit 1422b7
Packit 1422b7
m4_ifdef([AX_IS_RELEASE], [
Packit 1422b7
	AX_IS_RELEASE([git-directory])
Packit 1422b7
	m4_ifdef([AX_COMPILER_FLAGS], [
Packit 1422b7
		AX_COMPILER_FLAGS()
Packit 1422b7
	], [
Packit 1422b7
		if test "$GCC" = "yes"
Packit 1422b7
		then CFLAGS="$CFLAGS -W -Wall -Wformat-security -Wshadow -Wcast-align -Wpointer-arith -Wmissing-format-attribute -g"
Packit 1422b7
		fi
Packit 1422b7
		AC_MSG_WARN([missing AX_COMPILER_FLAGS macro, not using it])
Packit 1422b7
	])
Packit 1422b7
], [
Packit 1422b7
	if test "$GCC" = "yes"
Packit 1422b7
	then CFLAGS="$CFLAGS -W -Wall -Wformat-security -Wshadow -Wcast-align -Wpointer-arith -Wmissing-format-attribute -g"
Packit 1422b7
	fi
Packit 1422b7
	AC_MSG_WARN([missing AX_IS_RELEASE macro, not using AX_COMPILER_FLAGS macro because of this])
Packit 1422b7
])
Packit 1422b7
Packit 1422b7
Packit 1422b7
Packit 1422b7
# Checks for libraries.
Packit 1422b7
save_LIBS=$LIBS
Packit 1422b7
LIBS=
Packit 1422b7
AC_SEARCH_LIBS(clock_getm4_defn([AC_AUTOCONF_VERSION]), [2.68]time, rt)
Packit 1422b7
LIBS=$save_LIBS
Packit 1422b7
Packit 1422b7
# Checks for header files.
Packit 1422b7
AC_HEADER_STDC
Packit 1422b7
#AC_CHECK_HEADERS([])
Packit 1422b7
Packit 1422b7
# Checks for typedefs, structures, and compiler characteristics.
Packit 1422b7
AC_C_CONST
Packit 1422b7
AC_TYPE_SIZE_T
Packit 1422b7
#AC_HEADER_TIME
Packit 1422b7
#AC_STRUCT_TM
Packit 1422b7
Packit 1422b7
# Checks for library functions.
Packit 1422b7
AC_FUNC_SELECT_ARGTYPES
Packit 1422b7
AC_TYPE_SIGNAL
Packit 1422b7
AC_FUNC_STRERROR_R
Packit 1422b7
AC_CHECK_FUNCS([strdup strndup strtok_r])
Packit 1422b7
Packit 1422b7
LIBLOGNORM_CFLAGS="-I\$(top_srcdir)/src"
Packit 1422b7
LIBLOGNORM_LIBS="\$(top_builddir)/src/liblognorm.la"
Packit 1422b7
AC_SUBST(LIBLOGNORM_CFLAGS)
Packit 1422b7
AC_SUBST(LIBLOGNORM_LIBS)
Packit 1422b7
Packit 1422b7
# modules we require
Packit 1422b7
PKG_CHECK_MODULES(LIBESTR, libestr >= 0.0.0)
Packit 1422b7
PKG_CHECK_MODULES(JSON_C, libfastjson,, )
Packit 1422b7
# add libestr flags to pkgconfig file for static linking
Packit 1422b7
AC_SUBST(pkg_config_libs_private, $LIBESTR_LIBS)
Packit 1422b7
Packit 1422b7
# Regular expressions
Packit 1422b7
AC_ARG_ENABLE(regexp,
Packit 1422b7
        [AS_HELP_STRING([--enable-regexp],[Enable regular expressions support @<:@default=no@:>@])],
Packit 1422b7
        [case "${enableval}" in
Packit 1422b7
         yes) enable_regexp="yes" ;;
Packit 1422b7
          no) enable_regexp="no" ;;
Packit 1422b7
           *) AC_MSG_ERROR(bad value ${enableval} for --enable-regexp) ;;
Packit 1422b7
         esac],
Packit 1422b7
        [enable_regexp="no"]
Packit 1422b7
)
Packit 1422b7
AM_CONDITIONAL(ENABLE_REGEXP, test x$enable_regexp = xyes)
Packit 1422b7
if test "$enable_regexp" = "yes"; then
Packit 1422b7
        PKG_CHECK_MODULES(PCRE, libpcre)
Packit 1422b7
        AC_DEFINE(FEATURE_REGEXP, 1, [Regular expressions support enabled.])
Packit 1422b7
	FEATURE_REGEXP=1
Packit 1422b7
else
Packit 1422b7
	FEATURE_REGEXP=0
Packit 1422b7
fi
Packit 1422b7
AC_SUBST(FEATURE_REGEXP)
Packit 1422b7
Packit 1422b7
# debug mode settings
Packit 1422b7
AC_ARG_ENABLE(debug,
Packit 1422b7
        [AS_HELP_STRING([--enable-debug],[Enable debug mode @<:@default=no@:>@])],
Packit 1422b7
        [case "${enableval}" in
Packit 1422b7
         yes) enable_debug="yes" ;;
Packit 1422b7
          no) enable_debug="no" ;;
Packit 1422b7
           *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;;
Packit 1422b7
         esac],
Packit 1422b7
        [enable_debug="no"]
Packit 1422b7
)
Packit 1422b7
if test "$enable_debug" = "yes"; then
Packit 1422b7
        AC_DEFINE(DEBUG, 1, [Defined if debug mode is enabled.])
Packit 1422b7
fi
Packit 1422b7
if test "$enable_debug" = "no"; then
Packit 1422b7
        AC_DEFINE(NDEBUG, 1, [Defined if debug mode is disabled.])
Packit 1422b7
fi
Packit 1422b7
Packit 1422b7
# advanced statistics
Packit 1422b7
AC_ARG_ENABLE(advanced-stats,
Packit 1422b7
        [AS_HELP_STRING([--enable-advanced-stats],[Enable advanced statistics @<:@default=no@:>@])],
Packit 1422b7
        [case "${enableval}" in
Packit 1422b7
         yes) enable_advstats="yes" ;;
Packit 1422b7
          no) enable_advstats="no" ;;
Packit 1422b7
           *) AC_MSG_ERROR(bad value ${enableval} for --enable-advstats) ;;
Packit 1422b7
         esac],
Packit 1422b7
        [enable_advstats="no"]
Packit 1422b7
)
Packit 1422b7
if test "$enable_advstats" = "yes"; then
Packit 1422b7
        AC_DEFINE(ADVANCED_STATS, 1, [Defined if advanced statistics are enabled.])
Packit 1422b7
fi
Packit 1422b7
Packit 1422b7
# docs (html) build settings
Packit 1422b7
AC_ARG_ENABLE(docs,
Packit 1422b7
	[AS_HELP_STRING([--enable-docs],[Enable building HTML docs (requires Sphinx) @<:@default=no@:>@])],
Packit 1422b7
	[case "${enableval}" in
Packit 1422b7
		yes) enable_docs="yes" ;;
Packit 1422b7
		no) enable_docs="no" ;;
Packit 1422b7
		*) AC_MSG_ERROR(bad value ${enableval} for --enable-docs) ;;
Packit 1422b7
	esac],
Packit 1422b7
	[enable_docs="no"]
Packit 1422b7
)
Packit 1422b7
if test "$enable_docs" = "yes"; then
Packit 1422b7
	AC_CHECK_PROGS([SPHINXBUILD], [sphinx-build sphinx-build3 sphinx-build2], [no])
Packit 1422b7
	if test "$SPHINXBUILD" = "no"; then
Packit 1422b7
		AC_MSG_ERROR([sphinx-build is required to build documentation, install it or try --disable-docs])
Packit 1422b7
	fi
Packit 1422b7
fi
Packit 1422b7
AM_CONDITIONAL([ENABLE_DOCS], [test "$enable_docs" = "yes"])
Packit 1422b7
Packit 1422b7
AC_ARG_ENABLE(testbench,
Packit 1422b7
        [AS_HELP_STRING([--enable-testbench],[testbench enabled @<:@default=yes@:>@])],
Packit 1422b7
        [case "${enableval}" in
Packit 1422b7
         yes) enable_testbench="yes" ;;
Packit 1422b7
          no) enable_testbench="no" ;;
Packit 1422b7
           *) AC_MSG_ERROR(bad value ${enableval} for --enable-testbench) ;;
Packit 1422b7
         esac],
Packit 1422b7
        [enable_testbench=yes]
Packit 1422b7
)
Packit 1422b7
AM_CONDITIONAL(ENABLE_TESTBENCH, test x$enable_testbench = xyes)
Packit 1422b7
Packit 1422b7
AC_ARG_ENABLE(valgrind,
Packit 1422b7
        [AS_HELP_STRING([--enable-valgrind],[valgrind enabled @<:@default=no@:>@])],
Packit 1422b7
        [case "${enableval}" in
Packit 1422b7
         yes) enable_valgrind="yes" ;;
Packit 1422b7
          no) enable_valgrind=="no" ;;
Packit 1422b7
           *) AC_MSG_ERROR(bad value ${enableval} for --enable-valgrind) ;;
Packit 1422b7
         esac],
Packit 1422b7
        [enable_valgrind=no]
Packit 1422b7
)
Packit 1422b7
AM_CONDITIONAL(ENABLE_VALGRIND, test x$enable_valgrind = xyes)
Packit 1422b7
VALGRIND="$enable_valgrind"
Packit 1422b7
AC_SUBST(VALGRIND)
Packit 1422b7
Packit 1422b7
AC_ARG_ENABLE(tools,
Packit 1422b7
        [AS_HELP_STRING([--enable-tools],[lognorm toolset enabled @<:@default=yes@:>@])],
Packit 1422b7
        [case "${enableval}" in
Packit 1422b7
         yes) enable_tools="yes" ;;
Packit 1422b7
          no) enable_tools="no" ;;
Packit 1422b7
           *) AC_MSG_ERROR(bad value ${enableval} for --enable-tools) ;;
Packit 1422b7
         esac],
Packit 1422b7
        [enable_tools=yes]
Packit 1422b7
)
Packit 1422b7
AM_CONDITIONAL(ENABLE_TOOLS, test x$enable_tools = xyes)
Packit 1422b7
Packit 1422b7
AC_CONFIG_FILES([Makefile \
Packit 1422b7
		lognorm.pc \
Packit 1422b7
		compat/Makefile \
Packit 1422b7
		doc/Makefile \
Packit 1422b7
		src/Makefile \
Packit 1422b7
		src/lognorm-features.h \
Packit 1422b7
		tools/Makefile \
Packit 1422b7
		tests/Makefile \
Packit 1422b7
		tests/options.sh])
Packit 1422b7
AC_OUTPUT
Packit 1422b7
AC_CONFIG_MACRO_DIR([m4])
Packit 1422b7
Packit 1422b7
Packit 1422b7
echo "*****************************************************"
Packit 1422b7
echo "liblognorm will be compiled with the following settings:"
Packit 1422b7
echo
Packit 1422b7
echo "Regex enabled:               $enable_regexp"
Packit 1422b7
echo "Advanced Statistics enabled: $enable_advstats"
Packit 1422b7
echo "Testbench enabled:           $enable_testbench"
Packit 1422b7
echo "Valgrind enabled:            $enable_valgrind"
Packit 1422b7
echo "Debug mode enabled:          $enable_debug"
Packit 1422b7
echo "Tools enabled:               $enable_tools"
Packit 1422b7
echo "Docs enabled:                $enable_docs"
Packit 1422b7