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 2004/08/24 02:45:36 UTC
cvs commit: httpd-test/flood/build find_apr.m4 find_apu.m4
jerenkrantz 2004/08/23 17:45:36
Modified: flood CHANGES configure.in
flood/build find_apr.m4 find_apu.m4
Log:
Sync with latest find_apr.m4 and find_apu.m4 to pick up ap{ru}-<major>-config.
Revision Changes Path
1.55 +3 -0 httpd-test/flood/CHANGES
Index: CHANGES
===================================================================
RCS file: /home/cvs/httpd-test/flood/CHANGES,v
retrieving revision 1.54
retrieving revision 1.55
diff -u -u -r1.54 -r1.55
--- CHANGES 3 Aug 2004 10:22:14 -0000 1.54
+++ CHANGES 24 Aug 2004 00:45:35 -0000 1.55
@@ -1,5 +1,8 @@
Changes since 1.0:
+* Sync with latest find_apr.m4 and find_apu.m4 to detect 1.0 APR and APR-util.
+ [Justin Erenkrantz]
+
* Add <proxyurl> child element to <urllist> to request against a proxy.
[Justin Erenkrantz]
1.30 +2 -2 httpd-test/flood/configure.in
Index: configure.in
===================================================================
RCS file: /home/cvs/httpd-test/flood/configure.in,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -u -r1.29 -r1.30
--- configure.in 2 Aug 2004 23:55:38 -0000 1.29
+++ configure.in 24 Aug 2004 00:45:35 -0000 1.30
@@ -109,7 +109,7 @@
])
fi
-APR_FIND_APR(./apr)
+APR_FIND_APR(./apr,,,[1 0])
if test "$apr_found" = "no"; then
AC_MSG_ERROR([APR not found. Please read the documentation.])
@@ -127,7 +127,7 @@
LIBTOOL_LIBS="$LIBTOOL_LIBS `$apr_config --link-libtool --libs`"
APR_CONFIG="$apr_config"
-APR_FIND_APU(./apr-util)
+APR_FIND_APU(./apr-util,,,[1 0])
if test "$apu_found" = "no"; then
AC_MSG_ERROR([APR-util not found. Please read the documentation.])
1.3 +82 -42 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.2
retrieving revision 1.3
diff -u -u -r1.2 -r1.3
--- find_apr.m4 27 Feb 2002 04:44:50 -0000 1.2
+++ find_apr.m4 24 Aug 2004 00:45:35 -0000 1.3
@@ -6,14 +6,22 @@
dnl embedding APR into the application source, or locating an installed
dnl copy of APR.
dnl
-dnl APR_FIND_APR([srcdir [, builddir]])
+dnl APR_FIND_APR(srcdir, builddir, implicit-install-check, acceptable-majors)
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 where builddir is the location where the bundled APR will will be built,
dnl or empty if the build will occur in the srcdir.
dnl
+dnl where implicit-install-check set to 1 indicates if there is no
+dnl --with-apr option specified, we will look for installed copies.
+dnl
+dnl where acceptable-majors is a space separated list of acceptable major
+dnl version numbers. Often only a single major version will be acceptable.
+dnl If multiple versions are specified, and --with-apr=PREFIX or the
+dnl implicit installed search are used, then the first (leftmost) version
+dnl in the list that is found will be used. Currently defaults to [0 1].
dnl
dnl Sets the following variables on exit:
dnl
@@ -35,7 +43,7 @@
dnl value of apr_config to fetch any necessary build/link information.
dnl
-AC_DEFUN(APR_FIND_APR, [
+AC_DEFUN([APR_FIND_APR], [
apr_found="no"
if test "$ac_cv_emxos2" = "yes"; then
@@ -45,64 +53,96 @@
TEST_X="test -x"
fi
+ ifelse([$4], [], [
+ ifdef(AC_WARNING,AC_WARNING([$0: missing argument 4 (acceptable-majors): Defaulting to APR 0.x then APR 1.x]))
+ acceptable_majors="0 1"],
+ [acceptable_majors="$4"])
+
+ apr_temp_acceptable_apr_config=""
+ for apr_temp_major in $acceptable_majors
+ do
+ case $apr_temp_major in
+ 0)
+ apr_temp_acceptable_apr_config="$apr_temp_acceptable_apr_config apr-config"
+ ;;
+ *)
+ apr_temp_acceptable_apr_config="$apr_temp_acceptable_apr_config apr-$apr_temp_major-config"
+ ;;
+ esac
+ done
+
AC_MSG_CHECKING(for APR)
AC_ARG_WITH(apr,
- [ --with-apr=DIR|FILE prefix for installed APR, path to APR build tree,
+ [ --with-apr=PATH 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])
+ AC_MSG_ERROR([--with-apr requires a directory or file to be provided])
fi
- 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
+ for apr_temp_apr_config_file in $apr_temp_acceptable_apr_config
+ do
+ for lookdir in "$withval/bin" "$withval"
+ do
+ if $TEST_X "$lookdir/$apr_temp_apr_config_file"; then
+ apr_found="yes"
+ apr_config="$lookdir/$apr_temp_apr_config_file"
+ break 2
+ fi
+ done
+ done
+
+ if test "$apr_found" != "yes" && $TEST_X "$withval" && $withval --help > /dev/null 2>&1 ; then
apr_found="yes"
apr_config="$withval"
fi
- dnl if --with-apr is used, then the target prefix/directory must be valid
+ dnl if --with-apr is used, it is a fatal error for its argument
+ dnl to be invalid
if test "$apr_found" != "yes"; then
- AC_MSG_ERROR([the --with-apr parameter is incorrect. It must specify an install prefix, a
-build directory, or an apr-config file.])
+ 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
- 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_X "$lookdir/bin/apr-config"; then
- apr_found="yes"
- apr_config="$lookdir/bin/apr-config"
- break
- fi
- done
- fi
- dnl if we have a bundled source directory, then we may have more work
+ dnl if we have a bundled source directory, use it
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"
+ apr_found="reconfig"
+ apr_bundled_major="`sed -n '/#define.*APR_MAJOR_VERSION/s/^[^0-9]*\([0-9]*\).*$/\1/p' \"$1/include/apr_version.h\"`"
+ case $apr_bundled_major in
+ "")
+ AC_MSG_ERROR([failed to find major version of bundled APR])
+ ;;
+ 0)
+ apr_temp_apr_config_file="apr-config"
+ ;;
+ *)
+ apr_temp_apr_config_file="apr-$apr_bundled_major-config"
+ ;;
+ esac
+ if test -n "$2"; then
+ apr_config="$2/$apr_temp_apr_config_file"
+ else
+ apr_config="$1/$apr_temp_apr_config_file"
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"
+ fi
+ if test "$apr_found" = "no" && test -n "$3" && test "$3" = "1"; then
+ for apr_temp_apr_config_file in $apr_temp_acceptable_apr_config
+ do
+ if $apr_temp_apr_config_file --help > /dev/null 2>&1 ; then
+ apr_found="yes"
+ apr_config="$apr_temp_apr_config_file"
+ break
else
- apr_config="$1/apr-config"
+ dnl look in some standard places (apparently not in builtin/default)
+ for lookdir in /usr /usr/local /opt/apr /usr/local/apache2 ; do
+ if $TEST_X "$lookdir/bin/$apr_temp_apr_config_file"; then
+ apr_found="yes"
+ apr_config="$lookdir/bin/$apr_temp_apr_config_file"
+ break 2
+ fi
+ done
fi
- fi
+ done
fi
])
1.3 +99 -47 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.2
retrieving revision 1.3
diff -u -u -r1.2 -r1.3
--- find_apu.m4 27 Feb 2002 04:44:50 -0000 1.2
+++ find_apu.m4 24 Aug 2004 00:45:35 -0000 1.3
@@ -6,12 +6,22 @@
dnl embedding APU into the application source, or locating an installed
dnl copy of APU.
dnl
-dnl APR_FIND_APU([srcdir, path])
+dnl APR_FIND_APU(srcdir, builddir, implicit-install-check, acceptable-majors)
dnl
dnl where srcdir is the location of the bundled APU source directory, or
dnl empty if source is not bundled.
-dnl where path is the prefix to the location where the bundled APU will
-dnl will be built.
+dnl
+dnl where builddir is the location where the bundled APU will be built,
+dnl or empty if the build will occur in the srcdir.
+dnl
+dnl where implicit-install-check set to 1 indicates if there is no
+dnl --with-apr-util option specified, we will look for installed copies.
+dnl
+dnl where acceptable-majors is a space separated list of acceptable major
+dnl version numbers. Often only a single major version will be acceptable.
+dnl If multiple versions are specified, and --with-apr-util=PREFIX or the
+dnl implicit installed search are used, then the first (leftmost) version
+dnl in the list that is found will be used. Currently defaults to [0 1].
dnl
dnl Sets the following variables on exit:
dnl
@@ -21,6 +31,9 @@
dnl apu_found is "reconfig", then the bundled directory
dnl should be reconfigured *before* using apu_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 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-util switch.
@@ -39,68 +52,107 @@
dnl value of apu_config to fetch any necessary build/link information.
dnl
-AC_DEFUN(APR_FIND_APU, [
+AC_DEFUN([APR_FIND_APU], [
apu_found="no"
+ 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
+
+ ifelse([$4], [],
+ [
+ ifdef(AC_WARNING,([$0: missing argument 4 (acceptable-majors): Defaulting to APU 0.x then APU 1.x]))
+ acceptable_majors="0 1"
+ ], [acceptable_majors="$4"])
+
+ apu_temp_acceptable_apu_config=""
+ for apu_temp_major in $acceptable_majors
+ do
+ case $apu_temp_major in
+ 0)
+ apu_temp_acceptable_apu_config="$apu_temp_acceptable_apu_config apu-config"
+ ;;
+ *)
+ apu_temp_acceptable_apu_config="$apu_temp_acceptable_apu_config apu-$apu_temp_major-config"
+ ;;
+ esac
+ done
+
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],
+ [ --with-apr-util=PATH prefix for installed APU, path to APU build tree,
+ or the full path to apu-config],
[
if test "$withval" = "no" || test "$withval" = "yes"; then
- AC_MSG_ERROR([--with-apr-util requires a directory to be provided])
+ AC_MSG_ERROR([--with-apr-util requires a directory or file to be provided])
fi
- if test -x "$withval/bin/apu-config"; then
- apu_found="yes"
- apu_config="$withval/bin/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"
+ for apu_temp_apu_config_file in $apu_temp_acceptable_apu_config
+ do
+ for lookdir in "$withval/bin" "$withval"
+ do
+ if $TEST_X "$lookdir/$apu_temp_apu_config_file"; then
+ apu_found="yes"
+ apu_config="$lookdir/$apu_temp_apu_config_file"
+ break 2
+ fi
+ done
+ done
+
+ if test "$apu_found" != "yes" && $TEST_X "$withval" && $withval --help > /dev/null 2>&1 ; then
+ apu_found="yes"
+ apu_config="$withval"
fi
- dnl if --with-apr-util is used, then the target prefix/directory must
- dnl be valid
+ dnl if --with-apr-util is used, it is a fatal error for its argument
+ dnl to be invalid
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.])
+ AC_MSG_ERROR([the --with-apr-util parameter is incorrect. It must specify an install prefix, a build directory, or an apu-config file.])
fi
],[
- 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 -x "$lookdir/bin/apu-config"; then
- apu_found="yes"
- apu_config="$lookdir/bin/apu-config"
- break
- fi
- done
- fi
- dnl if we have a bundled source directory, then we may have more work
+ dnl if we have a bundled source directory, use it
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"
+ apu_found="reconfig"
+ apu_bundled_major="`sed -n '/#define.*APU_MAJOR_VERSION/s/^[^0-9]*\([0-9]*\).*$/\1/p' \"$1/include/apu_version.h\"`"
+ case $apu_bundled_major in
+ "")
+ AC_MSG_ERROR([failed to find major version of bundled APU])
+ ;;
+ 0)
+ apu_temp_apu_config_file="apu-config"
+ ;;
+ *)
+ apu_temp_apu_config_file="apu-$apu_bundled_major-config"
+ ;;
+ esac
+ if test -n "$2"; then
+ apu_config="$2/$apu_temp_apu_config_file"
+ else
+ apu_config="$1/$apu_temp_apu_config_file"
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"
+ fi
+ if test "$apu_found" = "no" && test -n "$3" && test "$3" = "1"; then
+ for apu_temp_apu_config_file in $apu_temp_acceptable_apu_config
+ do
+ if $apu_temp_apu_config_file --help > /dev/null 2>&1 ; then
+ apu_found="yes"
+ apu_config="$apu_temp_apu_config_file"
+ break
else
- apu_config="$1/apu-config"
+ dnl look in some standard places (apparently not in builtin/default)
+ for lookdir in /usr /usr/local /opt/apr /usr/local/apache2 ; do
+ if $TEST_X "$lookdir/bin/$apu_temp_apu_config_file"; then
+ apu_found="yes"
+ apu_config="$lookdir/bin/$apu_temp_apu_config_file"
+ break 2
+ fi
+ done
fi
- fi
+ done
fi
])