| dnl |
| dnl find_apr.m4 : locate the APR include files and libraries |
| dnl |
| dnl This macro file can be used by applications to find and use the APR |
| dnl library. It provides a standardized mechanism for using APR. It supports |
| dnl embedding APR into the application source, or locating an installed |
| dnl copy of APR. |
| dnl |
| 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 |
| dnl Sets the following variables on exit: |
| dnl |
| dnl apr_found : "yes", "no", "reconfig" |
| dnl |
| 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 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" |
| |
| 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|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_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 |
| |
| dnl if --with-apr is used, then the target prefix/directory must be valid |
| 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.]) |
| 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 |
| 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 |
| fi |
| ]) |
| |
| AC_MSG_RESULT($apr_found) |
| ]) |