base
This commit is contained in:
@@ -0,0 +1,167 @@
|
||||
AC_PREREQ(2.58) dnl 2.58 required for AS_HELP_STRING
|
||||
|
||||
dnl Extract the version (sans LF) from .version, created at release-time.
|
||||
m4_define(ne_version, [m4_translit(m4_include(.version), [
|
||||
])])
|
||||
|
||||
AC_INIT(neon, ne_version, [neon@webdav.org])
|
||||
|
||||
AC_COPYRIGHT([Copyright 2000-2005 Joe Orton and others
|
||||
This configure script may be copied, distributed and modified under the
|
||||
terms of the GNU Library General Public license; see src/COPYING.LIB for
|
||||
more details.])
|
||||
|
||||
AC_CONFIG_HEADER(config.h)
|
||||
AC_CONFIG_SRCDIR(src/ne_request.c)
|
||||
|
||||
NEON_WITH_LIBS
|
||||
|
||||
# Pass through initial LDFLAGS verbatim to neon-config, so that extra
|
||||
# libraries which are detected (e.g. OpenSSL) can still be found when
|
||||
# building using the --libs output of neon-config.
|
||||
user_LDFLAGS=$LDFLAGS
|
||||
|
||||
# By default, allow 'make install' to work.
|
||||
ALLOW_INSTALL=yes
|
||||
|
||||
AC_DEFINE([_GNU_SOURCE], 1, [Always defined to enable GNU extensions])
|
||||
AC_DEFINE([NEON_IS_LIBRARY], 1, [Defined when neon is built as a library])
|
||||
|
||||
AH_BOTTOM([
|
||||
/* Enable leak-tracking versions of ne_*alloc when NEON_MEMLEAK is enabled */
|
||||
#ifdef NEON_MEMLEAK
|
||||
# include "memleak.h"
|
||||
#endif])
|
||||
|
||||
AC_PROG_INSTALL
|
||||
|
||||
dnl Avoid libtool 1.5 bug where configure fails if a C++ compiler
|
||||
dnl is not available.
|
||||
m4_ifdef([AC_LIBTOOL_TAGS], [AC_LIBTOOL_TAGS([])])
|
||||
|
||||
AC_DISABLE_SHARED
|
||||
AC_PROG_LIBTOOL
|
||||
|
||||
AC_EXEEXT
|
||||
|
||||
AC_ARG_ENABLE(webdav,
|
||||
AS_HELP_STRING([--disable-webdav],[disable WebDAV support]))
|
||||
|
||||
if test "$enable_webdav" = "no"; then
|
||||
NEON_WITHOUT_WEBDAV
|
||||
else
|
||||
# Yes, we do need an XML parser. The _BUNDLED macros handle
|
||||
# this normally.
|
||||
NEON_NEED_XML_PARSER=yes
|
||||
fi
|
||||
|
||||
# The bundled macros also set this, which makes sure we recurse
|
||||
# into the 'src' directory.
|
||||
NEON_BUILD_BUNDLED=yes
|
||||
|
||||
# Define NEON_VERSION etc and make the appropriate substitutions.
|
||||
NE_VERSIONS_BUNDLED
|
||||
|
||||
# Pass the interface version on to libtool when linking libneon.la
|
||||
NEON_LINK_FLAGS="-version-info ${NEON_INTERFACE_VERSION}"
|
||||
|
||||
# Library-internal symbols are in the ne__ namespace: tell libtool
|
||||
# to not export these from the built library if possible.
|
||||
NEON_LINK_FLAGS="$NEON_LINK_FLAGS -export-symbols-regex '^ne_[[^_]]'"
|
||||
|
||||
# Checks to compile test suite
|
||||
NEON_TEST
|
||||
|
||||
LIBNEON_SOURCE_CHECKS
|
||||
|
||||
# Use the libtool-type build.
|
||||
NEON_LIBTOOL_BUILD
|
||||
# Find an XML parser
|
||||
NEON_XML_PARSER
|
||||
# Extra checks for debugging, compiler warnings
|
||||
NEON_DEBUG
|
||||
# Leave till last to prevent CFLAGS affecting checks.
|
||||
NEON_WARNINGS
|
||||
|
||||
CPPFLAGS="$CPPFLAGS -I\${top_builddir}"
|
||||
|
||||
AC_ARG_ENABLE(memleak,
|
||||
AS_HELP_STRING([--enable-memleak],
|
||||
[for test builds only: enable memory leak checking]))
|
||||
|
||||
if test "$enable_memleak" = "yes"; then
|
||||
CPPFLAGS="$CPPFLAGS -DNEON_MEMLEAK -I\$(top_srcdir)/src"
|
||||
# disable 'make install'
|
||||
ALLOW_INSTALL=memleak
|
||||
fi
|
||||
|
||||
# Enable tests for optional features
|
||||
TESTS="\$(BASIC_TESTS)"
|
||||
HELPERS=""
|
||||
if test $NE_FLAG_SSL = yes; then
|
||||
# Only enable SSL tests if an openssl binary is found (needed to make
|
||||
# certs etc).
|
||||
AC_PATH_PROG(OPENSSL, openssl, notfound)
|
||||
if test "$OPENSSL" != "notfound"; then
|
||||
TESTS="$TESTS \$(SSL_TESTS)"
|
||||
HELPERS="$HELPERS \$(SSL_HELPERS)"
|
||||
else
|
||||
AC_MSG_WARN([no openssl binary in \$PATH: SSL tests disabled])
|
||||
fi
|
||||
fi
|
||||
if test $NE_FLAG_ZLIB = yes; then
|
||||
TESTS="$TESTS \$(ZLIB_TESTS)"
|
||||
HELPERS="$HELPERS \$(ZLIB_HELPERS)"
|
||||
fi
|
||||
if test x$enable_webdav != xno; then
|
||||
TESTS="$TESTS \$(DAV_TESTS)"
|
||||
fi
|
||||
|
||||
AC_ARG_ENABLE(tests-install,
|
||||
AS_HELP_STRING([--enable-tests-install],
|
||||
[enable installation of the test suite]),,
|
||||
[enable_tests_install=no])
|
||||
|
||||
# If test suite installation is not required, it's more
|
||||
# efficient to link the test programs using -no-install:
|
||||
if test "$enable_tests_install" = "no"; then
|
||||
TEST_LDFLAGS="-no-install"
|
||||
fi
|
||||
|
||||
AC_SUBST(TEST_LDFLAGS)
|
||||
|
||||
AC_CONFIG_FILES([neon-config], [chmod +x neon-config])
|
||||
AC_CONFIG_FILES([Makefile src/Makefile test/Makefile neon.pc])
|
||||
|
||||
AC_SUBST(NEON_VERSION)
|
||||
AC_SUBST(NEON_BUILD_BUNDLED)
|
||||
AC_SUBST(top_builddir)
|
||||
AC_SUBST(user_LDFLAGS)
|
||||
AC_SUBST(HELPERS)
|
||||
AC_SUBST(TESTS)
|
||||
AC_SUBST(ALLOW_INSTALL)
|
||||
|
||||
AC_OUTPUT
|
||||
|
||||
# for VPATH builds:
|
||||
test -d test/common || mkdir test/common
|
||||
|
||||
AC_MSG_NOTICE([Configured to build AC_PACKAGE_STRING:
|
||||
|
||||
Install prefix: ${prefix}
|
||||
Compiler: ${CC}
|
||||
XML Parser: ${neon_xml_parser_message}
|
||||
SSL library: ${ne_SSL_message}
|
||||
zlib support: ${ne_ZLIB_message}
|
||||
Build libraries: Shared=${enable_shared}, Static=${enable_static}
|
||||
])
|
||||
|
||||
case $ALLOW_INSTALL in
|
||||
memleak)
|
||||
AC_MSG_NOTICE([Configured with development-only flags:
|
||||
|
||||
WARNING: This copy of neon has been configured with memory leak checking
|
||||
WARNING: enabled, which should only be used in a development copy of neon.
|
||||
WARNING: This neon library should not be installed for use by applications.
|
||||
]);;
|
||||
esac
|
||||
Reference in New Issue
Block a user