Hey all,
I spent most of yesterday getting subversion to work with a system installed
neon and apr. After using David Kimdon's patch (with some mods), gstein
mentioned on irc that neon packages some macros for using it, so I started
looking at using them instead of the hand written ones.
I decided in the end to just use the one David Kimdon provided for the
following reasons.
1) Our setup is a little different than what neon expects. We want to use
a bundled neon if present, and fall back to a system if there isn't a bundled
version, whereas the neon macros expect the opposite.
2) When neon is bundled, it expects the parent configure.in to do all of the
necessary checks for neon, and substitute its output into neon's makefile. The
problem with this is that it means we need to include three of neon's .m4 file
(neon.m4, neon-xml-paser.m4, and neon-socks.m4) in our distribution, causing
possible version skew, when neon changes those files.
What I would really love neon to do is to provide two small, simple m4 macros.
The first would check for a bundled neon (which we could then run configure on,
so that we don't have to include our own version of their .m4 files). The
second would just check for an system neon install. (In fact, the second one
is there). Just writing this, I thought of a different way to do this, which
might be simpler.
I might decide to use the provided macro for a system neon, and go with
something like this:
if test -d "neon" ;
NEON_VERSION=`ac-helpers/get-neon-ver.sh neon`
if test "$NEON_WANTED" != $NEON_VERSION"; then
# tell user wrong version of neon
else
# run configure in neon
fi
NEON_SUBDIR="neon"
NEON_LIBS=`$SHELL $abs_builddir/neon/neon-config --libs | sed -e "s/-lneon//g"`"$abs_builddir/neon/src/libneon.la"
else
NEON_LIBRARY
NEON_REQUIRE(0,17)
fi
AC_SUBST(NEON_SUBDIR)
AC_SUBST(NEON_LIBS)
With this approach we should only need to include the neon.m4 from neon, not
anything else (although there is still the possibility of version skew in that
file.
FWIW here's the not completely working version I was working on using NEON's
macros for configuring:
AC_MSG_CHECKING(for bundled neon)
echo ""
neon_bundled_srcdir="$abs_srcdir/neon/src"
neon_bundled_builddir="$abs_builddir/neon/src"
neon_force_included="yes"
NEON_COMMON
if test -n "$NEON_LIBS" ; then
NEON_SUBDIR="neon/src"
neon_expat_dir=expat-lite/libexpat.la
NEON_XML_EXTERNAL_EXPAT
NEON_LIBTOOL_BUILD
else
AC_MSG_CHECKING(for system neon)
echo ""
neon_force_included="no"
NEON_COMMON
NEON_REQUIRE(0,17)
fi
if test -z "$NEON_LIBS" ; then
AC_MSG_ERROR(Couldn't find neon in either $abs_srcdir/neon or system)
fi
AC_SUBST(NEON_LIBS)
AC_SUBST(NEON_SUBDIR)
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Kevin Pilch-Bisson http://www.pilch-bisson.net
"Historically speaking, the presences of wheels in Unix
has never precluded their reinvention." - Larry Wall
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- application/pgp-signature attachment: stored
Received on Sat Oct 21 14:36:45 2006