source: branches/peter-dev/build_support/find_apr.m4 @ 456

Last change on this file since 456 was 162, checked in by Jari Häkkinen, 15 years ago

Addresses #33. 'configure' now checks for APR libraries.

File size: 3.5 KB
Line 
1dnl
2dnl find_apr.m4 : locate the APR include files and libraries
3dnl
4dnl This macro file can be used by applications to find and use the APR
5dnl library. It provides a standardized mechanism for using APR. It supports
6dnl embedding APR into the application source, or locating an installed
7dnl copy of APR.
8dnl
9dnl APR_FIND_APR([srcdir [, builddir, implicit-install-check]])
10dnl
11dnl   where srcdir is the location of the bundled APR source directory, or
12dnl   empty if source is not bundled.
13dnl
14dnl   where blddir is the location where the bundled APR will will be built,
15dnl   or empty if the build will occur in the srcdir.
16dnl
17dnl   where implicit-install-check set to 1 indicates if there is no
18dnl   --with-apr option specified, we will look for installed copies.
19dnl
20dnl Sets the following variables on exit:
21dnl
22dnl   apr_found : "yes", "no", "reconfig"
23dnl
24dnl   apr_config : If the apr-config tool exists, this refers to it. If
25dnl                apr_found is "reconfig", then the bundled directory
26dnl                should be reconfigured *before* using apr_config.
27dnl
28dnl Note: this macro file assumes that apr-config has been installed; it
29dnl       is normally considered a required part of an APR installation.
30dnl
31dnl If a bundled source directory is available and needs to be (re)configured,
32dnl then apr_found is set to "reconfig". The caller should reconfigure the
33dnl (passed-in) source directory, placing the result in the build directory,
34dnl as appropriate.
35dnl
36dnl If apr_found is "yes" or "reconfig", then the caller should use the
37dnl value of apr_config to fetch any necessary build/link information.
38dnl
39
40AC_DEFUN(APR_FIND_APR, [
41  apr_found="no"
42
43  if test "$ac_cv_emxos2" = "yes"; then
44    # Scripts don't pass test -x on OS/2
45    TEST_X="test -f"
46  else
47    TEST_X="test -x"
48  fi
49
50  AC_MSG_CHECKING(for APR)
51  AC_ARG_WITH(apr,
52  [  --with-apr=DIR|FILE     prefix for installed APR, path to APR build tree,
53                          or the full path to apr-config],
54  [
55    if test "$withval" = "no" || test "$withval" = "yes"; then
56      AC_MSG_ERROR([--with-apr requires a directory to be provided])
57    fi
58
59    if $TEST_X "$withval/bin/apr-config"; then
60      apr_found="yes"
61      apr_config="$withval/bin/apr-config"
62    elif $TEST_X "$withval/apr-config"; then
63      apr_found="yes"
64      apr_config="$withval/apr-config"
65    elif $TEST_X "$withval" && $withval --help > /dev/null 2>&1 ; then
66      apr_found="yes"
67      apr_config="$withval"
68    fi
69
70    dnl if --with-apr is used, then the target prefix/directory must be valid
71    if test "$apr_found" != "yes"; then
72      AC_MSG_ERROR([the --with-apr parameter is incorrect. It must specify an install prefix, a
73build directory, or an apr-config file.])
74    fi
75  ],[
76    dnl if we have a bundled source directory, use it
77    if test -d "$1"; then
78      apr_temp_abs_srcdir="`cd $1 && pwd`"
79      apr_found="reconfig"
80      if test -n "$2"; then
81        apr_config="$2/apr-config"
82      else
83        apr_config="$1/apr-config"
84      fi
85    fi
86    if test "$apr_found" = "no" && test -n "$3" && test "$3" = "1"; then
87      if apr-config --help > /dev/null 2>&1 ; then
88        apr_found="yes"
89        apr_config="apr-config"
90      else
91        dnl look in some standard places (apparently not in builtin/default)
92        for lookdir in /usr /usr/local /opt/apr /usr/local/apache2 ; do
93          if $TEST_X "$lookdir/bin/apr-config"; then
94            apr_found="yes"
95            apr_config="$lookdir/bin/apr-config"
96            break
97          fi
98        done
99      fi
100    fi
101  ])
102
103  AC_MSG_RESULT($apr_found)
104])
Note: See TracBrowser for help on using the repository browser.