You are viewing a plain text version of this content. The canonical link for it is here.
Posted to test-cvs@httpd.apache.org by je...@apache.org on 2002/02/27 05:44:51 UTC
cvs commit: httpd-test/flood/build find_apr.m4 find_apu.m4
jerenkrantz 02/02/26 20:44:51
Modified: flood configure.in
flood/build find_apr.m4 find_apu.m4
Log:
Update to latest find_apr.m4 and find_apu.m4
(note libtool usage is a bit wonky since we'd like to use APR's copy.)
Revision Changes Path
1.18 +8 -31 httpd-test/flood/configure.in
Index: configure.in
===================================================================
RCS file: /home/cvs/httpd-test/flood/configure.in,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- configure.in 17 Jan 2002 01:06:26 -0000 1.17
+++ configure.in 27 Feb 2002 04:44:50 -0000 1.18
@@ -101,37 +101,21 @@
if test "$apr_found" = "reconfig"; then
dnl Comment out for now!
- dnl AC_NO_NO_NO_CONFIG_SUBDIRS([apr])
+ AC_CONFIG_SUBDIRS([apr])
FLOOD_SUBDIRS="$FLOOD_SUBDIRS apr"
fi
CFLAGS="$CFLAGS `$apr_config --cflags`"
-
-if test -n "$apr_includes"; then
- CPPFLAGS="$CPPFLAGS $apr_includes"
-fi
-CPPFLAGS="$CPPFLAGS `$apr_config --cppflags`"
-
-if test -n "$apr_libdir"; then
- LDFLAGS="$LDFLAGS -L$apr_libdir"
- LIBTOOL_LDFLAGS="$LIBTOOL_LDFLAGS -R$apr_libdir"
-fi
+CPPFLAGS="$CPPFLAGS `$apr_config --cppflags --includes`"
LDFLAGS="$LDFLAGS `$apr_config --ldflags`"
+LIBTOOL_LIBS="$LIBTOOL_LIBS `$apr_config --link-libtool --libs`"
-if test -n "$apr_la_file"; then
- LIBTOOL_LIBS="$LIBTOOL_LIBS $apr_la_file"
-else
- LIBS="$LIBS -lapr"
-fi
-LIBS="$LIBS `$apr_config --libs`"
-
-if test -n "$apr_libtool"; then
- LIBTOOL_PATH="$apr_libtool"
+if test -x "`$apr_config --prefix`/build/libtool"; then
+ LIBTOOL_PATH="`$apr_config --prefix`/build/libtool"
else
AC_ERROR([flood requires a libtool-enabled APR.])
fi
-dnl Hack until find_apu.m4 is added
APR_FIND_APU(./apr-util)
if test "$apu_found" = "no"; then
@@ -139,19 +123,12 @@
fi
if test "$apu_found" = "reconfig"; then
dnl Comment out for now!
- dnl AC_NO_NO_NO_CONFIG_SUBDIRS([apr-util])
+ AC_CONFIG_SUBDIRS([apr-util])
FLOOD_SUBDIRS="$FLOOD_SUBDIRS apr-util"
fi
-if test -n "$apu_la_file"; then
- LIBTOOL_LIBS="$LIBTOOL_LIBS $apu_la_file"
-else
- LIBS="$LIBS -laprutil"
-fi
-
-dnl FIXME: Hack until the split occurs in apr-util to put expat somewhere
-dnl else!
-LIBTOOL_LIBS="$LIBTOOL_LIBS `$apu_config --libs`"
+LIBTOOL_LDFLAGS="$LIBTOOL_LDFLAGS `$apr_config --ldflags`"
+LIBTOOL_LIBS="$LIBTOOL_LIBS `$apu_config --link-libtool --libs`"
AC_CHECK_FUNC(strtoll, hasstrtoll="1", hasstrtoll="0")
AC_CHECK_FUNC(strtoq, hasstrtoq="1", hasstrtoq="0")
1.2 +63 -145 httpd-test/flood/build/find_apr.m4
Index: find_apr.m4
===================================================================
RCS file: /home/cvs/httpd-test/flood/build/find_apr.m4,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- find_apr.m4 17 Jan 2002 01:06:27 -0000 1.1
+++ find_apr.m4 27 Feb 2002 04:44:50 -0000 1.2
@@ -6,187 +6,105 @@
dnl embedding APR into the application source, or locating an installed
dnl copy of APR.
dnl
-dnl APR_FIND_APR([srcdir])
+dnl APR_FIND_APR([srcdir [, builddir]])
dnl
dnl where srcdir is the location of the bundled APR source directory, or
dnl empty if source is not bundled.
dnl
+dnl where blddir is the location where the bundled APR will will be built,
+dnl or empty if the build will occur in the srcdir.
dnl
-dnl Sets the following variables on exit:
-dnl
-dnl apr_libdir : A custom directory to use for linking (the -L switch).
-dnl If APR exists in a standard location, this variable
-dnl will be empty
-dnl
-dnl apr_la_file : If a libtool .la file exists, this will refer to it. If
-dnl there is no .la file, then this variable will be empty.
-dnl
-dnl apr_includes : Where the APR includes are located, if a non-standard
-dnl location. This variable has the format "-Idir -Idir".
-dnl It may specify more than one directory.
-dnl
-dnl apr_libtool : If APR used libtool, this is the path to libtool.
-dnl
-dnl apr_srcdir : If an APR source tree is available and needs to be
-dnl (re)configured, this refers to it.
-dnl
-dnl apr_config : If the apr-config tool exists, this refers to it.
dnl
-dnl apr_vars : If the APR config file (APRVARS) exists, this refers to it.
+dnl Sets the following variables on exit:
dnl
dnl apr_found : "yes", "no", "reconfig"
dnl
-dnl Note: At this time, we cannot find *both* a source dir and a build dir.
-dnl If both are available, the build directory should be passed to
-dnl the --with-apr switch (apr_srcdir will be empty).
-dnl
-dnl Note: the installation layout is presumed to follow the standard
-dnl PREFIX/lib and PREFIX/include pattern. If the APR config file
-dnl is available (and can be found), then non-standard layouts are
-dnl possible, since it will be described in the config file.
-dnl
-dnl If apr_found is "yes" or "reconfig", then the caller should link using
-dnl apr_la_file, if available; otherwise, -lapr should be used (and if
-dnl apr_libdir is not null, then -L$apr_libdir). If apr_includes is not null,
-dnl then it should be used during compilation.
+dnl apr_config : If the apr-config tool exists, this refers to it. If
+dnl apr_found is "reconfig", then the bundled directory
+dnl should be reconfigured *before* using apr_config.
+dnl
+dnl Note: this macro file assumes that apr-config has been installed; it
+dnl is normally considered a required part of an APR installation.
+dnl
+dnl If a bundled source directory is available and needs to be (re)configured,
+dnl then apr_found is set to "reconfig". The caller should reconfigure the
+dnl (passed-in) source directory, placing the result in the build directory,
+dnl as appropriate.
dnl
-dnl If a source directory is available and needs to be (re)configured, then
-dnl apr_srcdir specifies the directory and apr_found is "reconfig".
+dnl If apr_found is "yes" or "reconfig", then the caller should use the
+dnl value of apr_config to fetch any necessary build/link information.
dnl
AC_DEFUN(APR_FIND_APR, [
apr_found="no"
- preserve_LIBS="$LIBS"
- preserve_LDFLAGS="$LDFLAGS"
- preserve_CFLAGS="$CFLAGS"
+ if test "$ac_cv_emxos2" = "yes"; then
+ # Scripts don't pass test -x on OS/2
+ TEST_X="test -f"
+ else
+ TEST_X="test -x"
+ fi
AC_MSG_CHECKING(for APR)
AC_ARG_WITH(apr,
- [ --with-apr=DIR prefix for installed APR, or path to APR build tree],
+ [ --with-apr=DIR|FILE prefix for installed APR, path to APR build tree,
+ or the full path to apr-config],
[
if test "$withval" = "no" || test "$withval" = "yes"; then
AC_MSG_ERROR([--with-apr requires a directory to be provided])
fi
- if test -x "$withval/bin/apr-config"; then
- apr_config="$withval/bin/apr-config"
- CFLAGS="$CFLAGS `$withval/bin/apr-config --cflags`"
- LIBS="$LIBS `$withval/bin/apr-config --libs`"
- LDFLAGS="$LDFLAGS `$withval/bin/apr-config --ldflags`"
- else
- apr_config=""
+ if $TEST_X "$withval/bin/apr-config"; then
+ apr_found="yes"
+ apr_config="$withval/bin/apr-config"
+ elif $TEST_X "$withval/apr-config"; then
+ apr_found="yes"
+ apr_config="$withval/apr-config"
+ elif $TEST_X "$withval" && $withval --help > /dev/null 2>&1 ; then
+ apr_found="yes"
+ apr_config="$withval"
fi
- LIBS="$LIBS -lapr"
- LDFLAGS="$preserve_LDFLAGS -L$withval/lib"
- AC_TRY_LINK_FUNC(apr_initialize, [
- if test -f "$withval/include/apr.h"; then
- dnl found an installed version of APR
- apr_found="yes"
- apr_libdir="$withval/lib"
- apr_includes="-I$withval/include"
- if test -x "$withval/build/libtool"; then
- apr_libtool="$withval/build/libtool"
- fi
- fi
- ], [
- dnl look for a build tree (note: already configured/built)
- if test -f "$withval/libapr.la"; then
- apr_found="yes"
- apr_libdir=""
- apr_la_file="$withval/libapr.la"
- apr_vars="$withval/APRVARS"
- if test -x $withval/apr-config; then
- apr_config="$withval/apr-config"
- else
- apr_config=""
- fi
- apr_includes="-I$withval/include"
- if test -x "$withval/libtool"; then
- apr_libtool="$withval/libtool"
- fi
- if test ! -f "$withval/APRVARS.in"; then
- dnl extract the APR source directory without polluting our
- dnl shell variable space
- apr_srcdir="`sed -n '/APR_SOURCE_DIR/s/.*"\(.*\)"/\1/p' $apr_vars`"
- apr_includes="$apr_includes -I$apr_srcdir/include"
- fi
- fi
- ])
-
dnl if --with-apr is used, then the target prefix/directory must be valid
if test "$apr_found" != "yes"; then
- AC_MSG_ERROR([
-The directory given to --with-apr does not specify a prefix for an installed
-APR, nor an APR build directory.])
+ AC_MSG_ERROR([the --with-apr parameter is incorrect. It must specify an install prefix, a
+build directory, or an apr-config file.])
fi
],[
dnl always look in the builtin/default places
- LIBS="$LIBS -lapr"
- AC_TRY_LINK_FUNC(apr_initialize, [
- dnl We don't have to do anything.
- apr_found="yes"
- apr_srcdir=""
- apr_libdir=""
- apr_includes=""
- apr_libtool=""
- apr_la_file=""
- apr_config=""
- apr_vars=""
- ], [
- dnl look in the some standard places (apparently not in builtin/default)
+ if apr-config --help > /dev/null 2>&1 ; then
+ apr_found="yes"
+ apr_config="apr-config"
+ else
+ dnl look in some standard places (apparently not in builtin/default)
for lookdir in /usr /usr/local /opt/apr ; do
- if test "$apr_found" != "yes"; then
- LDFLAGS="$preserve_LDFLAGS -L$lookdir/lib"
- AC_TRY_LINK_FUNC(apr_initialize, [
- apr_found="yes"
- apr_libdir="$lookdir/lib"
- apr_includes="-I$lookdir/include"
- if test -x "$withval/bin/apr-config"; then
- apr_config="$withval/bin/apr-config"
- else
- apr_config=""
- fi
- if test -x "$withval/build/libtool"; then
- apr_libtool="$withval/build/libtool"
- else
- apr_libtool=""
- fi
- ])
+ if $TEST_X "$lookdir/bin/apr-config"; then
+ apr_found="yes"
+ apr_config="$lookdir/bin/apr-config"
+ break
fi
done
- ])
- dnl We attempt to guess what the data will be *after* configure is run.
- dnl Note, if we don't see configure, but do have configure.in, it'd be
- dnl nice to run buildconf, but that's for another day.
- if test "$apr_found" = "no" && test -n "$1" && test -x "$1/configure"; then
- apr_found="reconfig"
- apr_srcdir="$1"
- apr_libdir=""
- apr_la_file="$apr_srcdir/libapr.la"
- apr_vars="$apr_srcdir/APRVARS"
- if test -f "$apr_srcdir/apr-config.in"; then
- apr_config="$apr_srcdir/apr-config"
- else
- apr_config=""
+ fi
+ dnl if we have a bundled source directory, then we may have more work
+ if test -d "$1"; then
+ apr_temp_abs_srcdir="`cd $1 && pwd`"
+ if test "$apr_found" = "yes" \
+ && test "`$apr_config --srcdir`" = "$apr_temp_abs_srcdir"; then
+ dnl the installed apr-config represents our source directory, so
+ dnl pretend we didn't see it and just use our bundled source
+ apr_found="no"
+ fi
+ dnl We could not find an apr-config; use the bundled one
+ if test "$apr_found" = "no"; then
+ apr_found="reconfig"
+ if test -n "$2"; then
+ apr_config="$2/apr-config"
+ else
+ apr_config="$1/apr-config"
+ fi
fi
- apr_includes="-I$apr_srcdir/include"
- apr_libtool="$apr_srcdir/libtool"
fi
])
- if test "$apr_found" != "no" && test "$apr_libdir" != ""; then
- if test "$apr_vars" = "" && test -f "$apr_libdir/APRVARS"; then
- apr_vars="$apr_libdir/APRVARS"
- fi
- if test "$apr_la_file" = "" && test -f "$apr_libdir/libapr.la"; then
- apr_la_file="$apr_libdir/libapr.la"
- fi
- fi
-
AC_MSG_RESULT($apr_found)
- CFLAGS="$preserve_CFLAGS"
- LIBS="$preserve_LIBS"
- LDFLAGS="$preserve_LDFLAGS"
])
1.2 +50 -119 httpd-test/flood/build/find_apu.m4
Index: find_apu.m4
===================================================================
RCS file: /home/cvs/httpd-test/flood/build/find_apu.m4,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- find_apu.m4 17 Jan 2002 01:06:27 -0000 1.1
+++ find_apu.m4 27 Feb 2002 04:44:50 -0000 1.2
@@ -6,68 +6,42 @@
dnl embedding APU into the application source, or locating an installed
dnl copy of APU.
dnl
-dnl APR_FIND_APU([srcdir])
+dnl APR_FIND_APU([srcdir, path])
dnl
dnl where srcdir is the location of the bundled APU source directory, or
dnl empty if source is not bundled.
-dnl
+dnl where path is the prefix to the location where the bundled APU will
+dnl will be built.
dnl
dnl Sets the following variables on exit:
dnl
-dnl apu_libdir : A custom directory to use for linking (the -L switch).
-dnl If APU exists in a standard location, this variable
-dnl will be empty
-dnl
-dnl apu_la_file : If a libtool .la file exists, this will refer to it. If
-dnl there is no .la file, then this variable will be empty.
-dnl
-dnl apu_includes : Where the APU includes are located, if a non-standard
-dnl location. This variable has the format "-Idir -Idir".
-dnl It may specify more than one directory.
-dnl
-dnl apu_srcdir : If an APU source tree is available and needs to be
-dnl (re)configured, this refers to it.
-dnl
-dnl apu_config : If the apr-config tool exists, this refers to it.
-dnl
dnl apu_found : "yes", "no", "reconfig"
dnl
+dnl apu_config : If the apu-config tool exists, this refers to it. If
+dnl apu_found is "reconfig", then the bundled directory
+dnl should be reconfigured *before* using apu_config.
+dnl
dnl Note: At this time, we cannot find *both* a source dir and a build dir.
dnl If both are available, the build directory should be passed to
-dnl the --with-apr switch (apu_srcdir will be empty).
+dnl the --with-apr-util switch.
dnl
dnl Note: the installation layout is presumed to follow the standard
dnl PREFIX/lib and PREFIX/include pattern. If the APU config file
dnl is available (and can be found), then non-standard layouts are
dnl possible, since it will be described in the config file.
dnl
-dnl If apu_found is "yes" or "reconfig", then the caller should link using
-dnl apu_la_file, if available; otherwise, -lapr should be used (and if
-dnl apu_libdir is not null, then -L$apr_libdir). If apr_includes is not null,
-dnl then it should be used during compilation.
-dnl
-dnl If a source directory is available and needs to be (re)configured, then
-dnl apu_srcdir specifies the directory and apr_found is "reconfig".
+dnl If a bundled source directory is available and needs to be (re)configured,
+dnl then apu_found is set to "reconfig". The caller should reconfigure the
+dnl (passed-in) source directory, placing the result in the build directory,
+dnl as appropriate.
dnl
-dnl Note: This m4 macro set makes the assumption that APR has already
-dnl been found and properly configured.
+dnl If apu_found is "yes" or "reconfig", then the caller should use the
+dnl value of apu_config to fetch any necessary build/link information.
dnl
AC_DEFUN(APR_FIND_APU, [
apu_found="no"
- preserve_LIBS="$LIBS"
- preserve_LDFLAGS="$LDFLAGS"
- preserve_CFLAGS="$CFLAGS"
-
- dnl We're going to be running our tests with gcc not libtool. So,
- dnl attempt to setup APR correctly for the interim period. We just
- dnl need to link not run, so -lapr should be fine if everything else
- dnl has been setup.
- if test -n "$apr_la_file"; then
- LIBS="$LIBS -lapr"
- fi
-
AC_MSG_CHECKING(for APR-util)
AC_ARG_WITH(apr-util,
[ --with-apr-util=DIR prefix for installed APU, or path to APU build tree],
@@ -77,101 +51,58 @@
fi
if test -x "$withval/bin/apu-config"; then
+ apu_found="yes"
apu_config="$withval/bin/apu-config"
- dnl FIXME: Convert libexpat.la to -lexpat
- APU_LIBS=`$withval/bin/apu-config --libs`
- TMP_WITHVAL=`echo "$withval/lib/libexpat.la" | sed 's/\\//\\\\\\//g'`
- APU_LIBS=`echo $APU_LIBS | sed "s/$TMP_WITHVAL/-lexpat/g"`
- LIBS="$LIBS $APU_LIBS"
- else
- apu_config=""
+ elif test -x "$withval/apu-config"; then
+ dnl Already configured build dir
+ apu_found="yes"
+ apu_config="$withval/apu-config"
+ elif test -x "$withval" && $withval --help > /dev/null 2>&1 ; then
+ apu_found="yes"
+ apu_config="$withval"
fi
- LIBS="$LIBS -laprutil"
- LDFLAGS="$preserve_LDFLAGS -L$withval/lib"
- AC_TRY_LINK_FUNC(apr_uri_parse, [
- if test -f "$withval/include/apu.h"; then
- dnl found an installed version of APU
- apu_found="yes"
- apu_libdir="$withval/lib"
- apu_includes="-I$withval/include"
- fi
- ], [
- dnl look for a build tree (note: already configured/built)
- if test -f "$withval/libaprutil.la"; then
- apu_found="yes"
- apu_libdir=""
- apu_la_file="$withval/libaprutil.la"
- if test -x $withval/apu-config; then
- apu_config="$withval/apu-config"
- else
- apu_config=""
- fi
- apu_includes="-I$withval/include"
- fi
- ])
-
- dnl if --with-apr is used, then the target prefix/directory must be valid
+ dnl if --with-apr-util is used, then the target prefix/directory must
+ dnl be valid
if test "$apu_found" != "yes"; then
AC_MSG_ERROR([
The directory given to --with-apr-util does not specify a prefix for an
installed APU, nor an APR-util build directory.])
fi
],[
- dnl always look in the builtin/default places
- LIBS="$LIBS -laprutil"
- AC_TRY_LINK_FUNC(apr_uri_parse, [
- dnl We don't have to do anything.
- apu_found="yes"
- apu_srcdir=""
- apu_libdir=""
- apu_includes=""
- apu_libtool=""
- apu_la_file=""
- apu_config=""
- ], [
+ if apu-config --help > /dev/null 2>&1 ; then
+ apu_found="yes"
+ apu_config="apu-config"
+ else
dnl look in the some standard places (apparently not in builtin/default)
for lookdir in /usr /usr/local /opt/apr ; do
- if test "$apu_found" != "yes"; then
- LDFLAGS="$preserve_LDFLAGS -L$lookdir/lib"
- AC_TRY_LINK_FUNC(apr_uri_parse, [
- apu_found="yes"
- apu_libdir="$lookdir/lib"
- apu_includes="-I$lookdir/include"
- if test -x "$withval/bin/apu-config"; then
- apu_config="$withval/bin/apu-config"
- else
- apu_config=""
- fi
- ])
+ if test -x "$lookdir/bin/apu-config"; then
+ apu_found="yes"
+ apu_config="$lookdir/bin/apu-config"
+ break
fi
done
- ])
- dnl We attempt to guess what the data will be *after* configure is run.
- dnl Note, if we don't see configure, but do have configure.in, it'd be
- dnl nice to run buildconf, but that's for another day.
- if test "$apu_found" = "no" && test -n "$1" && test -x "$1/configure"; then
- apu_found="reconfig"
- apu_srcdir="$1"
- apu_libdir=""
- apu_la_file="$apu_srcdir/libaprutil.la"
- if test -f "$apu_srcdir/apu-config.in"; then
- apu_config="$apu_srcdir/apu-config"
- else
- apu_config=""
+ fi
+ dnl if we have a bundled source directory, then we may have more work
+ if test -d "$1"; then
+ apu_temp_abs_srcdir="`cd $1 && pwd`"
+ if test "$apu_found" = "yes" \
+ && test "`$apu_config --srcdir`" = "$apu_temp_abs_srcdir"; then
+ dnl the installed apu-config represents our source directory, so
+ dnl pretend we didn't see it and just use our bundled source
+ apu_found="no"
+ fi
+ dnl We could not find an apu-config; use the bundled one
+ if test "$apu_found" = "no"; then
+ apu_found="reconfig"
+ if test -n "$2"; then
+ apu_config="$2/apu-config"
+ else
+ apu_config="$1/apu-config"
+ fi
fi
- apu_includes="-I$apu_srcdir/include"
fi
])
- if test "$apu_found" != "no" && test "$apr_libdir" != ""; then
- if test "$apu_la_file" = "" && test -f "$apr_libdir/libapr.la"; then
- apu_la_file="$apr_libdir/libaprutil.la"
- fi
- fi
-
AC_MSG_RESULT($apu_found)
- CFLAGS="$preserve_CFLAGS"
- LIBS="$preserve_LIBS"
- LDFLAGS="$preserve_LDFLAGS"
])