a885b2c253
Menuselect was originally included in the DAHDI-Tools repository with an svn external. Since git does not handle externals so well, menuselect is being brought into the tree directly. This allows menuselect to be present for all the commits on the 2.4, 2.5, and 2.6 releases. The command is: $ svn export http://svn.asterisk.org/svn/menuselect/trunk menuselect Signed-off-by: Shaun Ruffell <sruffell@digium.com>
344 lines
7.8 KiB
Plaintext
344 lines
7.8 KiB
Plaintext
dnl
|
|
dnl "$Id: configure.in 260 2010-04-27 19:11:06Z qwell $"
|
|
dnl
|
|
dnl Configuration script for Mini-XML, a small XML-like file parsing library.
|
|
dnl
|
|
dnl Copyright 2003-2009 by Michael Sweet.
|
|
dnl
|
|
dnl This program is free software; you can redistribute it and/or
|
|
dnl modify it under the terms of the GNU Library General Public
|
|
dnl License as published by the Free Software Foundation; either
|
|
dnl version 2, or (at your option) any later version.
|
|
dnl
|
|
dnl This program is distributed in the hope that it will be useful,
|
|
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
dnl GNU General Public License for more details.
|
|
dnl
|
|
|
|
dnl Specify a source file from the distribution...
|
|
AC_INIT(mxml.h)
|
|
|
|
dnl Set the name of the config header file...
|
|
AC_CONFIG_HEADER(config.h)
|
|
|
|
dnl Version number...
|
|
VERSION=2.2.2
|
|
AC_SUBST(VERSION)
|
|
AC_DEFINE_UNQUOTED(MXML_VERSION, "Mini-XML v$VERSION")
|
|
|
|
dnl Clear default debugging options and set normal optimization by
|
|
dnl default unless the user asks for debugging specifically.
|
|
CFLAGS="${CFLAGS:=}"
|
|
CXXFLAGS="${CXXFLAGS:=}"
|
|
LDFLAGS="${LDFLAGS:=}"
|
|
AC_SUBST(LDFLAGS)
|
|
OPTIM=""
|
|
AC_SUBST(OPTIM)
|
|
|
|
AC_ARG_WITH(ansi, [ --with-ansi set full ANSI C mode, default=no],
|
|
use_ansi="$withval",
|
|
use_ansi="no")
|
|
|
|
AC_ARG_WITH(archflags, [ --with-archflags set additional architecture flags, default=none],
|
|
ARCHFLAGS="$withval",
|
|
ARCHFLAGS="")
|
|
AC_SUBST(ARCHFLAGS)
|
|
|
|
AC_ARG_ENABLE(debug, [ --enable-debug turn on debugging, default=no],
|
|
if eval "test x$enable_debug = xyes"; then
|
|
OPTIM="-g"
|
|
fi)
|
|
|
|
AC_ARG_WITH(docdir, [ --with-docdir set directory for documentation, default=${prefix}/share/doc/mxml],
|
|
docdir="$withval",
|
|
docdir="NONE")
|
|
|
|
AC_SUBST(docdir)
|
|
|
|
AC_ARG_WITH(vsnprintf, [ --with-vsnprintf use vsnprintf emulation functions, default=auto],
|
|
use_vsnprintf="$withval",
|
|
use_vsnprintf="no")
|
|
|
|
dnl Get the operating system and version number...
|
|
uname=`uname`
|
|
uversion=`uname -r | sed -e '1,$s/[[^0-9]]//g'`
|
|
if test x$uname = xIRIX64; then
|
|
uname="IRIX"
|
|
fi
|
|
|
|
dnl Checks for programs...
|
|
AC_PROG_CC
|
|
AC_PROG_CXX
|
|
AC_PROG_INSTALL
|
|
if test "$INSTALL" = "$ac_install_sh"; then
|
|
# Use full path to install-sh script...
|
|
INSTALL="`pwd`/install-sh -c"
|
|
fi
|
|
AC_PROG_RANLIB
|
|
AC_PATH_PROGS(AR,ar gar)
|
|
AC_PATH_PROG(CP,cp)
|
|
AC_PATH_PROG(LN,ln)
|
|
AC_PATH_PROG(MKDIR,mkdir)
|
|
AC_PATH_PROG(RM,rm)
|
|
if test -z $AR ; then
|
|
AC_MSG_ERROR('ar' binary is mandatory. Please either install the 'ar' binary or provide the path to configure with --with-ar=/path/to/ar)
|
|
fi
|
|
|
|
dnl Flags for "ar" command...
|
|
case "$uname" in
|
|
Darwin* | *BSD*)
|
|
ARFLAGS="-rcv"
|
|
;;
|
|
*)
|
|
ARFLAGS="crvs"
|
|
;;
|
|
esac
|
|
|
|
AC_SUBST(ARFLAGS)
|
|
|
|
dnl Inline functions...
|
|
AC_C_INLINE
|
|
|
|
dnl Checks for string functions.
|
|
if test "x$use_ansi" != xyes; then
|
|
AC_CHECK_FUNCS(strdup)
|
|
fi
|
|
|
|
if test "x$use_vsnprintf" != xyes; then
|
|
AC_CHECK_FUNCS(snprintf vsnprintf)
|
|
fi
|
|
|
|
dnl Check for "long long" support...
|
|
AC_CACHE_CHECK(for long long int, ac_cv_c_long_long,
|
|
[if test "$GCC" = yes; then
|
|
ac_cv_c_long_long=yes
|
|
else
|
|
AC_TRY_COMPILE(,[long long int i;],
|
|
ac_cv_c_long_long=yes,
|
|
ac_cv_c_long_long=no)
|
|
fi])
|
|
|
|
if test $ac_cv_c_long_long = yes; then
|
|
AC_DEFINE(HAVE_LONG_LONG)
|
|
fi
|
|
|
|
dnl Threading support
|
|
AC_ARG_ENABLE(threads, [ --enable-threads enable multi-threading support])
|
|
|
|
have_pthread=no
|
|
PTHREAD_FLAGS=""
|
|
PTHREAD_LIBS=""
|
|
|
|
if test "x$enable_threads" != xno; then
|
|
AC_CHECK_HEADER(pthread.h, AC_DEFINE(HAVE_PTHREAD_H))
|
|
|
|
if test x$ac_cv_header_pthread_h = xyes; then
|
|
dnl Check various threading options for the platforms we support
|
|
for flag in -lpthreads -lpthread -pthread; do
|
|
AC_MSG_CHECKING([for pthread_create using $flag])
|
|
SAVELIBS="$LIBS"
|
|
LIBS="$flag $LIBS"
|
|
AC_TRY_LINK([#include <pthread.h>],
|
|
[pthread_create(0, 0, 0, 0);],
|
|
have_pthread=yes)
|
|
AC_MSG_RESULT([$have_pthread])
|
|
LIBS="$SAVELIBS"
|
|
|
|
if test $have_pthread = yes; then
|
|
PTHREAD_FLAGS="-D_THREAD_SAFE -D_REENTRANT"
|
|
PTHREAD_LIBS="$flag"
|
|
|
|
# Solaris requires -D_POSIX_PTHREAD_SEMANTICS to
|
|
# be POSIX-compliant... :(
|
|
if test $uname = SunOS; then
|
|
PTHREAD_FLAGS="$PTHREAD_FLAGS -D_POSIX_PTHREAD_SEMANTICS"
|
|
fi
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
fi
|
|
|
|
AC_SUBST(PTHREAD_FLAGS)
|
|
AC_SUBST(PTHREAD_LIBS)
|
|
|
|
dnl Shared library support...
|
|
DSO="${DSO:=:}"
|
|
DSOFLAGS="${DSOFLAGS:=}"
|
|
|
|
AC_ARG_ENABLE(shared, [ --enable-shared turn on shared libraries, default=no])
|
|
|
|
if test x$enable_shared = xyes; then
|
|
AC_MSG_CHECKING(for shared library support)
|
|
PICFLAG=1
|
|
|
|
case "$uname" in
|
|
SunOS* | UNIX_S*)
|
|
AC_MSG_RESULT(yes)
|
|
LIBMXML="libmxml.so.1.4"
|
|
DSO="\$(CC)"
|
|
DSOFLAGS="$DSOFLAGS -Wl,-h,libmxml.so.1 -G -R\$(libdir) \$(OPTIM)"
|
|
LDFLAGS="$LDFLAGS -R\$(libdir)"
|
|
;;
|
|
|
|
HP-UX*)
|
|
AC_MSG_RESULT(yes)
|
|
LIBMXML="libmxml.sl.1"
|
|
DSO="ld"
|
|
DSOFLAGS="$DSOFLAGS -b -z +h libmxml.sl.1 +s +b \$(libdir)"
|
|
LDFLAGS="$LDFLAGS -Wl,+s,+b,\$(libdir)"
|
|
;;
|
|
|
|
IRIX)
|
|
AC_MSG_RESULT(yes)
|
|
LIBMXML="libmxml.so.1.4"
|
|
DSO="\$(CC)"
|
|
DSOFLAGS="$DSOFLAGS -Wl,-rpath,\$(libdir),-set_version,sgi1.0,-soname,libmxml.so.1 -shared \$(OPTIM)"
|
|
;;
|
|
|
|
OSF1* | Linux | GNU)
|
|
AC_MSG_RESULT(yes)
|
|
LIBMXML="libmxml.so.1.4"
|
|
DSO="\$(CC)"
|
|
DSOFLAGS="$DSOFLAGS -Wl,-soname,libmxml.so.1,-rpath,\$(libdir) -shared \$(OPTIM)"
|
|
LDFLAGS="$LDFLAGS -Wl,-rpath,\$(libdir)"
|
|
;;
|
|
|
|
*BSD*)
|
|
AC_MSG_RESULT(yes)
|
|
LIBMXML="libmxml.so.1.4"
|
|
DSO="\$(CC)"
|
|
DSOFLAGS="$DSOFLAGS -Wl,-soname,libmxml.so.1,-R\$(libdir) -shared \$(OPTIM)"
|
|
LDFLAGS="$LDFLAGS -Wl,-R\$(libdir)"
|
|
;;
|
|
|
|
Darwin*)
|
|
AC_MSG_RESULT(yes)
|
|
LIBMXML="libmxml.1.dylib"
|
|
DSO="\$(CC)"
|
|
DSOFLAGS="$DSOFLAGS \$(RC_CFLAGS) -dynamiclib -lc"
|
|
;;
|
|
|
|
*)
|
|
AC_MSG_RESULT(no)
|
|
AC_MSG_WARN(shared libraries not supported on this platform.)
|
|
PICFLAG=0
|
|
LIBMXML="libmxml.a"
|
|
;;
|
|
esac
|
|
else
|
|
PICFLAG=0
|
|
LIBMXML="libmxml.a"
|
|
fi
|
|
|
|
AC_SUBST(DSO)
|
|
AC_SUBST(DSOFLAGS)
|
|
AC_SUBST(LIBMXML)
|
|
AC_SUBST(PICFLAG)
|
|
|
|
dnl Add -Wall for GCC...
|
|
if test -n "$GCC"; then
|
|
CFLAGS="-Wall $CFLAGS"
|
|
|
|
if test "x$OPTIM" = x; then
|
|
OPTIM="-Os -g"
|
|
fi
|
|
|
|
if test "x$use_ansi" = xyes; then
|
|
CFLAGS="-ansi -pedantic $CFLAGS"
|
|
fi
|
|
|
|
if test $PICFLAG = 1 -a $uname != AIX; then
|
|
OPTIM="-fPIC $OPTIM"
|
|
fi
|
|
else
|
|
case $uname in
|
|
HP-UX*)
|
|
CFLAGS="-Ae $CFLAGS"
|
|
|
|
if test "x$OPTIM" = x; then
|
|
OPTIM="-O"
|
|
fi
|
|
|
|
OPTIM="+DAportable $OPTIM"
|
|
|
|
if test $PICFLAG = 1; then
|
|
OPTIM="+z $OPTIM"
|
|
fi
|
|
;;
|
|
|
|
UNIX_SVR* | SunOS*)
|
|
if test "x$OPTIM" = x; then
|
|
OPTIM="-O"
|
|
fi
|
|
|
|
if test $PICFLAG = 1; then
|
|
OPTIM="-KPIC $OPTIM"
|
|
fi
|
|
;;
|
|
|
|
*)
|
|
if test "x$OPTIM" = x; then
|
|
OPTIM="-O"
|
|
fi
|
|
;;
|
|
esac
|
|
fi
|
|
|
|
dnl Fix "prefix" variable if it hasn't been specified...
|
|
if test "$prefix" = "NONE"; then
|
|
prefix="/usr/local"
|
|
fi
|
|
|
|
dnl Fix "exec_prefix" variable if it hasn't been specified...
|
|
if test "$exec_prefix" = "NONE"; then
|
|
exec_prefix="$prefix"
|
|
fi
|
|
|
|
dnl Fix "docdir" variable if it hasn't been specified...
|
|
if test "$docdir" = "NONE"; then
|
|
docdir="$datadir/doc/mxml"
|
|
fi
|
|
|
|
dnl Fix "mandir" variable if it hasn't been specified...
|
|
if test "$mandir" = "\${prefix}/man" -a "$prefix" = "/usr"; then
|
|
case "$uname" in
|
|
*BSD* | Darwin* | Linux*)
|
|
# BSD, Darwin (MacOS X), and Linux
|
|
mandir="/usr/share/man"
|
|
;;
|
|
IRIX*)
|
|
# SGI IRIX
|
|
mandir="/usr/share/catman/u_man"
|
|
;;
|
|
*)
|
|
# All others
|
|
mandir="/usr/man"
|
|
;;
|
|
esac
|
|
fi
|
|
|
|
dnl pkg-config stuff...
|
|
if test "$includedir" != /usr/include; then
|
|
PC_CFLAGS="-I$includedir"
|
|
else
|
|
PC_CFLAGS=""
|
|
fi
|
|
|
|
if test "$libdir" != /usr/lib; then
|
|
PC_LIBS="-L$libdir -lmxml"
|
|
else
|
|
PC_LIBS="-lmxml"
|
|
fi
|
|
|
|
AC_SUBST(PC_CFLAGS)
|
|
AC_SUBST(PC_LIBS)
|
|
|
|
dnl Output the makefile, etc...
|
|
AC_OUTPUT(Makefile mxml.list mxml.pc)
|
|
|
|
dnl
|
|
dnl End of "$Id: configure.in 260 2010-04-27 19:11:06Z qwell $".
|
|
dnl
|