146 lines
4.3 KiB
Plaintext
146 lines
4.3 KiB
Plaintext
# -*- Autoconf -*-
|
|
# Process this file with autoconf to produce a configure script.
|
|
|
|
AC_PREREQ(2.59)
|
|
AC_INIT(libdatrie,
|
|
m4_esyscmd([build-aux/git-version-gen]),
|
|
[https://github.com/tlwg/libdatrie/issues])
|
|
AC_CONFIG_SRCDIR([datrie/trie.h])
|
|
AC_CONFIG_HEADER([config.h])
|
|
AC_CONFIG_AUX_DIR(build-aux)
|
|
AC_CONFIG_MACRO_DIR([m4])
|
|
|
|
AM_INIT_AUTOMAKE(dist-xz no-dist-gzip)
|
|
|
|
# Library versioning
|
|
# Library code modified: REVISION++
|
|
# Interfaces added: CURRENT++ REVISION=0 AGE++
|
|
# Interfaces changed/removed: CURRENT++ REVISION=0 AGE=0
|
|
LT_CURRENT=5
|
|
LT_REVISION=0
|
|
LT_AGE=4
|
|
AC_SUBST(LT_CURRENT)
|
|
AC_SUBST(LT_REVISION)
|
|
AC_SUBST(LT_AGE)
|
|
|
|
DOXYGEN_REQ_VER=1.8.8
|
|
|
|
# Checks for programs.
|
|
AC_PROG_CC
|
|
AC_PROG_INSTALL
|
|
AC_PROG_LN_S
|
|
AC_PROG_MAKE_SET
|
|
AC_LIBTOOL_WIN32_DLL
|
|
AC_PROG_LIBTOOL
|
|
|
|
# Whether linker support --version-script option
|
|
echo '{global:hello; local:*;};' > conftest.ver
|
|
AC_LIBTOOL_LINKER_OPTION(
|
|
[whether linker supports -version-script],
|
|
datrie_cv_have_version_script,
|
|
[-Wl,-version-script -Wl,conftest.ver])
|
|
|
|
AM_CONDITIONAL(LD_HAS_VERSION_SCRIPT,
|
|
test "$datrie_cv_have_version_script" = "yes")
|
|
|
|
# Checks for libraries.
|
|
|
|
#
|
|
# Checks for iconv
|
|
#
|
|
found_iconv=no
|
|
# Check in the C library first
|
|
AC_CHECK_FUNC(iconv_open, [with_libiconv=no; found_iconv=yes])
|
|
# Check if we have GNU libiconv
|
|
if test $found_iconv = "no"; then
|
|
AC_CHECK_LIB(iconv, libiconv_open, [with_libiconv=gnu; found_iconv=yes])
|
|
fi
|
|
# Check if we have a iconv in -liconv, possibly from vendor
|
|
if test $found_iconv = "no"; then
|
|
AC_CHECK_LIB(iconv, iconv_open, [with_libiconv=native; found_iconv=yes])
|
|
fi
|
|
if test $found_iconv = "no"; then
|
|
AC_MSG_ERROR([*** No usable iconv() implementation found])
|
|
fi
|
|
|
|
case $with_libiconv in
|
|
gnu|native)
|
|
ICONV_LIBS="-liconv"
|
|
;;
|
|
esac
|
|
AC_SUBST(ICONV_LIBS)
|
|
|
|
#
|
|
# Checks for locale_charset() and nl_langinfo(CODESET)
|
|
#
|
|
AC_CHECK_LIB(iconv, locale_charset,
|
|
[have_locale_charset=yes], [have_locale_charset=no])
|
|
if test x$have_locale_charset = xyes; then
|
|
AC_DEFINE(HAVE_LOCALE_CHARSET,1,[Have locale_charset()])
|
|
fi
|
|
AC_CACHE_CHECK(
|
|
[for nl_langinfo (CODESET)], datrie_cv_langinfo_codeset,
|
|
[AC_TRY_COMPILE([#include <langinfo.h>],
|
|
[char *codeset = nl_langinfo (CODESET);],
|
|
[datrie_cv_langinfo_codeset=yes],
|
|
[datrie_cv_langinfo_codeset=no])]
|
|
)
|
|
if test x$datrie_cv_langinfo_codeset = xyes; then
|
|
AC_DEFINE(HAVE_LANGINFO_CODESET,1,[Have nl_langinfo (CODESET)])
|
|
fi
|
|
if test x$have_locale_charset = xno && test x$datrie_cv_langinfo_codeset = xno
|
|
then
|
|
AC_MSG_ERROR([*** No locale_charset() nor nl_langinfo(CODESET) found.
|
|
Please consider installing GNU libiconv.])
|
|
fi
|
|
|
|
|
|
# Checks for header files.
|
|
AC_HEADER_STDC
|
|
AC_CHECK_HEADERS([limits.h stdlib.h stdio.h string.h])
|
|
|
|
# Checks for typedefs, structures, and compiler characteristics.
|
|
AC_C_CONST
|
|
AC_TYPE_SIZE_T
|
|
|
|
dnl Disable doc generation with doxygen option
|
|
AC_ARG_ENABLE(doxygen-doc,
|
|
[AC_HELP_STRING([--disable-doxygen-doc],
|
|
[disable document generation with doxygen])],
|
|
, enable_doxygen_doc="yes")
|
|
|
|
if test "x$enable_doxygen_doc" = "xyes"; then
|
|
AC_CHECK_PROG(DOXYGEN,doxygen,doxygen,no)
|
|
if test "x$DOXYGEN" = "xno"; then
|
|
enable_doxygen_doc="no"
|
|
else
|
|
AC_MSG_CHECKING([doxygen >= $DOXYGEN_REQ_VER])
|
|
DOXYGEN_VER=$($DOXYGEN --version)
|
|
AX_COMPARE_VERSION([$DOXYGEN_VER],[ge],[DOXYGEN_REQ_VER],
|
|
[AC_MSG_RESULT([$DOXYGEN_VER, yes])],
|
|
[AC_MSG_RESULT([$DOXYGEN_VER, no, documentation disabled]); enable_doxygen_doc="no"])
|
|
fi
|
|
fi
|
|
|
|
dnl where to install the doxygen-generated HTML doc
|
|
AC_ARG_WITH(html-docdir,
|
|
[AC_HELP_STRING([--with-html-docdir=DIR],
|
|
[where to install the doxyten-generated HTML doc [PREFIX/share/doc/datrie/html]])],
|
|
[htmldocdir="$withval"], [htmldocdir=\$\{prefix\}/share/doc/datrie/html])
|
|
AC_SUBST(htmldocdir)
|
|
|
|
AM_CONDITIONAL(ENABLE_DOXYGEN_DOC,test "x$enable_doxygen_doc" = "xyes")
|
|
|
|
# Checks for library functions.
|
|
AC_CHECK_FUNCS([malloc])
|
|
|
|
AC_CONFIG_FILES([Makefile
|
|
datrie-0.2.pc
|
|
datrie/Makefile
|
|
tools/Makefile
|
|
man/Makefile
|
|
doc/Makefile
|
|
doc/Doxyfile
|
|
tests/Makefile])
|
|
AC_OUTPUT
|