mirror of
https://github.com/michaelrsweet/mxml.git
synced 2024-11-13 23:35:30 +00:00
463a190a55
New logo. Documentation updates.
279 lines
6.0 KiB
Plaintext
279 lines
6.0 KiB
Plaintext
dnl
|
|
dnl "$Id$"
|
|
dnl
|
|
dnl Configuration script for Mini-XML, a small XML-like file parsing library.
|
|
dnl
|
|
dnl Copyright 2003-2007 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.3
|
|
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_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_PROG(AR,ar)
|
|
AC_PATH_PROG(CP,cp)
|
|
AC_PATH_PROG(LN,ln)
|
|
AC_PATH_PROG(MKDIR,mkdir)
|
|
AC_PATH_PROG(RM,rm)
|
|
|
|
dnl Flags for "ar" command...
|
|
case "$uname" in
|
|
Darwin* | *BSD*)
|
|
ARFLAGS="-rcv"
|
|
;;
|
|
*)
|
|
ARFLAGS="crvs"
|
|
;;
|
|
esac
|
|
|
|
AC_SUBST(ARFLAGS)
|
|
|
|
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 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.3"
|
|
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.2"
|
|
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.3"
|
|
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.3"
|
|
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.3"
|
|
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$".
|
|
dnl
|