summaryrefslogtreecommitdiff
path: root/srclib
diff options
context:
space:
mode:
authorPhilip M. Gollucci <pgollucci@apache.org>2011-11-10 18:25:14 +0000
committerPhilip M. Gollucci <pgollucci@apache.org>2011-11-10 18:25:14 +0000
commit9493bf62e41bbfaea506943dad75a112f9d9eba6 (patch)
tree1a3a1a75d544083ed9466ecfccaf0681d4611a54 /srclib
parent972764a586c40d3b27e5de332f2a9cb1331eb1b4 (diff)
downloadhttpd-9493bf62e41bbfaea506943dad75a112f9d9eba6.tar.gz
move build system files over from apr-build-system branch in apreq
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1200464 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'srclib')
-rw-r--r--srclib/libapreq/apreq2-config.in218
-rw-r--r--srclib/libapreq/build.conf19
-rw-r--r--srclib/libapreq/build/apreq-conf.m472
-rw-r--r--srclib/libapreq/build/apreq-hints.m461
-rw-r--r--srclib/libapreq/build/find_apreq.m4176
-rwxr-xr-xsrclib/libapreq/build/get-version.sh39
-rwxr-xr-xsrclib/libapreq/buildconf106
-rw-r--r--srclib/libapreq/config.layout232
-rw-r--r--srclib/libapreq/configure.in173
-rw-r--r--srclib/libapreq/export_vars.sh.in13
10 files changed, 1109 insertions, 0 deletions
diff --git a/srclib/libapreq/apreq2-config.in b/srclib/libapreq/apreq2-config.in
new file mode 100644
index 0000000000..bfc8e7d22c
--- /dev/null
+++ b/srclib/libapreq/apreq2-config.in
@@ -0,0 +1,218 @@
+#!/bin/sh
+
+##
+## Copyright 2003-2006 The Apache Software Foundation
+##
+## Licensed under the Apache License, Version 2.0 (the "License");
+## you may not use this file except in compliance with the License.
+## You may obtain a copy of the License at
+##
+## http://www.apache.org/licenses/LICENSE-2.0
+##
+## Unless required by applicable law or agreed to in writing, software
+## distributed under the License is distributed on an "AS IS" BASIS,
+## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+## See the License for the specific language governing permissions and
+## limitations under the License.
+##
+
+# apreq2-config- based on apu-config:
+# APR-util script designed to allow easy command line access to APR-util
+# configuration parameters.
+
+prefix="@prefix@"
+exec_prefix="@exec_prefix@"
+bindir="@bindir@"
+libdir="@libdir@"
+includedir="@includedir@"
+
+LIBS="@APREQ_LIBS@"
+LDFLAGS="@APREQ_LDFLAGS@"
+INCLUDES="@APREQ_INCLUDES@"
+
+APREQ_LIBNAME="@APREQ_LIBNAME@"
+
+APREQ_SOURCE_DIR="@abs_srcdir@"
+APREQ_BUILD_DIR="@abs_builddir@"
+
+show_usage()
+{
+ cat << EOF
+Usage: apreq2-config [OPTION]
+
+Known values for OPTION are:
+ --prefix[=DIR] change prefix to DIR
+ --bindir print location where binaries are installed
+ --includes print include information
+ --includedir print location where headers are installed
+ --ldflags print linker flags
+ --libs print library information
+ --srcdir print apreq2 source directory
+ --link-ld print link switch(es) for linking to libapreq2
+ --link-libtool print the libtool inputs for linking to libapreq2
+ --la-file print the path to the library's .la file, if available
+ --library-version print the API version as a dotted triple
+ --libtool-version print the ABI version in a libtool-compatible format
+ --package-version print the version number of the distribution
+ --help print this help
+
+When linking with libtool, an application should do something like:
+ APREQ_LIBS="\`apreq2-config --link-libtool --libs\`"
+or when linking directly:
+ APREQ_LIBS="\`apreq2-config --link-ld --ldflags --libs\`"
+
+An application should use the results of --includes, and --ldflags in
+their build process.
+EOF
+}
+
+if test $# -eq 0; then
+ show_usage
+ exit 1
+fi
+
+thisdir="`dirname $0`"
+thisdir="`cd $thisdir && pwd`"
+if test -d $bindir; then
+ tmpbindir="`cd $bindir && pwd`"
+else
+ tmpbindir=""
+fi
+# If we have the realpath program, use it to resolve symlinks.
+# Otherwise, being in a symlinked dir may result in incorrect output.
+if test -x "`which realpath 2>/dev/null`"; then
+ thisdir="`realpath $thisdir`"
+ if test -d "$APREQ_SOURCE_DIR"; then
+ APREQ_SOURCE_DIR="`realpath $APREQ_SOURCE_DIR`"
+ fi
+ if test -n "$tmpbindir"; then
+ tmpbindir="`realpath $tmpbindir`"
+ fi
+fi
+if test "$tmpbindir" = "$thisdir"; then
+ location=installed
+elif test "$APREQ_SOURCE_DIR" = "$thisdir"; then
+ location=source
+else
+ location=build
+fi
+
+
+if test "$location" = "installed"; then
+ LA_FILE="$libdir/lib${APREQ_LIBNAME}.la"
+else
+ LA_FILE="$thisdir/lib${APREQ_LIBNAME}.la"
+fi
+
+flags=""
+
+while test $# -gt 0; do
+ # Normalize the prefix.
+ case "$1" in
+ -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
+ *) optarg= ;;
+ esac
+
+ case "$1" in
+ # It is possible for the user to override our prefix.
+ --prefix=*)
+ prefix=$optarg
+ ;;
+ --prefix)
+ echo $prefix
+ exit 0
+ ;;
+ --bindir)
+ echo $bindir
+ exit 0
+ ;;
+ --libs)
+ flags="$flags $LIBS"
+ ;;
+ --includedir)
+ if test "$location" = "installed"; then
+ flags="$includedir"
+ elif test "$location" = "source"; then
+ flags="$APREQ_SOURCE_DIR/include"
+ else
+ # this is for VPATH builds
+ flags="$thisdir/include $APREQ_SOURCE_DIR/include"
+ fi
+ echo $flags
+ exit 0
+ ;;
+ --includes)
+ if test "$location" = "installed"; then
+ flags="$flags -I$includedir $INCLUDES"
+ elif test "$location" = "source"; then
+ flags="$flags -I$APREQ_SOURCE_DIR/include $INCLUDES"
+ else
+ # this is for VPATH builds
+ flags="$flags -I$thisdir/include -I$APREQ_SOURCE_DIR/include $INCLUDES"
+ fi
+ ;;
+ --ldflags)
+ flags="$flags $LDFLAGS"
+ ;;
+ --srcdir)
+ echo $APREQ_SOURCE_DIR
+ exit 0
+ ;;
+ --library-version)
+ echo @APREQ_DOTTED_VERSION@
+ exit 0
+ ;;
+ --libtool-version)
+ echo @APREQ_LIBTOOL_VERSION@
+ exit 0
+ ;;
+ --package-version)
+ echo "@VERSION@"
+ exit 0
+ ;;
+ --link-ld)
+ if test "$location" = "installed"; then
+ ### avoid using -L if libdir is a "standard" location like /usr/lib
+ flags="$flags -L$libdir -l$APREQ_LIBNAME"
+ else
+ flags="$flags -L$thisdir/library/.libs -l$APREQ_LIBNAME"
+ fi
+ ;;
+ --link-libtool)
+ # If the LA_FILE exists where we think it should be, use it. If we're
+ # installed and the LA_FILE does not exist, assume to use -L/-l
+ # (the LA_FILE may not have been installed). If we're building ourselves,
+ # we'll assume that at some point the .la file be created.
+ if test -f "$LA_FILE"; then
+ flags="$flags $LA_FILE"
+ elif test "$location" = "installed"; then
+ ### avoid using -L if libdir is a "standard" location like /usr/lib
+ flags="$flags -L$libdir -l$APREQ_LIBNAME $apreq_libs"
+ else
+ flags="$flags $LA_FILE"
+ fi
+ ;;
+ --la-file)
+ if test -f "$LA_FILE"; then
+ flags="$flags $LA_FILE"
+ fi
+ ;;
+ --help)
+ show_usage
+ exit 0
+ ;;
+ *)
+ show_usage
+ exit 1
+ ;;
+ esac
+
+ # Next please.
+ shift
+done
+
+if test -n "$flags"; then
+ echo "$flags"
+fi
+
+exit 0
diff --git a/srclib/libapreq/build.conf b/srclib/libapreq/build.conf
new file mode 100644
index 0000000000..5f0603cfe8
--- /dev/null
+++ b/srclib/libapreq/build.conf
@@ -0,0 +1,19 @@
+#
+# Configuration file for APREQ. Used by APR/build/gen-build.py
+#
+
+[options]
+
+# the platform-independent .c files
+paths =
+ library/*.c
+# we have no platform-specific subdirs
+platform_dirs =
+
+# the public headers
+headers = include/*.h
+
+# gen_uri_delim.c
+
+# we have a recursive makefile for the test files (for now)
+# test/*.c
diff --git a/srclib/libapreq/build/apreq-conf.m4 b/srclib/libapreq/build/apreq-conf.m4
new file mode 100644
index 0000000000..a2ec6758a2
--- /dev/null
+++ b/srclib/libapreq/build/apreq-conf.m4
@@ -0,0 +1,72 @@
+dnl -------------------------------------------------------- -*- autoconf -*-
+dnl Copyright 2000-2005 The Apache Software Foundation or its licensors, as
+dnl applicable.
+dnl
+dnl Licensed under the Apache License, Version 2.0 (the "License");
+dnl you may not use this file except in compliance with the License.
+dnl You may obtain a copy of the License at
+dnl
+dnl http://www.apache.org/licenses/LICENSE-2.0
+dnl
+dnl Unless required by applicable law or agreed to in writing, software
+dnl distributed under the License is distributed on an "AS IS" BASIS,
+dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+dnl See the License for the specific language governing permissions and
+dnl limitations under the License.
+
+
+dnl
+dnl custom autoconf rules for APRUTIL
+dnl
+
+dnl
+dnl APU_FIND_APR: figure out where APR is located
+dnl
+AC_DEFUN([APREQ_FIND_APR], [
+
+ dnl use the find_apr.m4 script to locate APR. sets apr_found and apr_config
+ APR_FIND_APR(,,,[1])
+ if test "$apr_found" = "no"; then
+ AC_MSG_ERROR(APR could not be located. Please use the --with-apr option.)
+ fi
+
+ APR_BUILD_DIR="`$apr_config --installbuilddir`"
+
+ dnl make APR_BUILD_DIR an absolute directory (we'll need it in the
+ dnl sub-projects in some cases)
+ APR_BUILD_DIR="`cd $APR_BUILD_DIR && pwd`"
+
+ APR_INCLUDES="`$apr_config --includes`"
+ APR_LIBS="`$apr_config --link-libtool --libs`"
+ APR_SO_EXT="`$apr_config --apr-so-ext`"
+ APR_LIB_TARGET="`$apr_config --apr-lib-target`"
+
+ AC_SUBST(APR_INCLUDES)
+ AC_SUBST(APR_LIBS)
+ AC_SUBST(APR_BUILD_DIR)
+])
+
+
+AC_DEFUN([APREQ_FIND_APU], [
+
+ dnl use the find_apr.m4 script to locate APR. sets apr_found and apu_config
+ APR_FIND_APU(,,,[1])
+ if test "$apu_found" = "no"; then
+ AC_MSG_ERROR(APR could not be located. Please use the --with-apr-util option.)
+ fi
+
+ APU_BUILD_DIR="`$apu_config --installbuilddir`"
+
+ dnl make APR_BUILD_DIR an absolute directory (we'll need it in the
+ dnl sub-projects in some cases)
+ APU_BUILD_DIR="`cd $APR_BUILD_DIR && pwd`"
+
+ APU_INCLUDES="`$apu_config --includes`"
+ APU_LIBS="`$apu_config --link-libtool --libs`"
+
+ AC_SUBST(APU_INCLUDES)
+ AC_SUBST(APU_LIBS)
+ AC_SUBST(APU_BUILD_DIR)
+])
+
+
diff --git a/srclib/libapreq/build/apreq-hints.m4 b/srclib/libapreq/build/apreq-hints.m4
new file mode 100644
index 0000000000..33a5d22d3b
--- /dev/null
+++ b/srclib/libapreq/build/apreq-hints.m4
@@ -0,0 +1,61 @@
+dnl -------------------------------------------------------- -*- autoconf -*-
+dnl Copyright 2003-2005 The Apache Software Foundation or its licensors, as
+dnl applicable.
+dnl
+dnl Licensed under the Apache License, Version 2.0 (the "License");
+dnl you may not use this file except in compliance with the License.
+dnl You may obtain a copy of the License at
+dnl
+dnl http://www.apache.org/licenses/LICENSE-2.0
+dnl
+dnl Unless required by applicable law or agreed to in writing, software
+dnl distributed under the License is distributed on an "AS IS" BASIS,
+dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+dnl See the License for the specific language governing permissions and
+dnl limitations under the License.
+
+dnl -----------------------------------------------------------------
+dnl apu-hints.m4: apr-util's autoconf macros for platform-specific hints
+dnl
+dnl We preload various configure settings depending
+dnl on previously obtained platform knowledge.
+dnl We allow all settings to be overridden from
+dnl the command-line.
+
+dnl
+dnl APU_PRELOAD
+dnl
+dnl Preload various build parameters based on outside knowledge.
+dnl
+AC_DEFUN([APREQ_PRELOAD], [
+if test "x$apreq_preload_done" != "xyes" ; then
+ apreq_preload_done="yes"
+
+ echo "Applying apr-util hints file rules for $host"
+
+ case "$host" in
+ *-dec-osf*)
+ APR_SETIFNULL(apreq_crypt_threadsafe, [1])
+ ;;
+ *-hp-hpux11.*)
+ APR_SETIFNULL(apreq_crypt_threadsafe, [1])
+ ;;
+ *-ibm-aix4*|*-ibm-aix5.1*)
+ APR_SETIFNULL(apreq_iconv_inbuf_const, [1])
+ ;;
+ *-ibm-os390)
+ APR_SETIFNULL(apreq_crypt_threadsafe, [1])
+ ;;
+ *-solaris2*)
+ APR_SETIFNULL(apreq_iconv_inbuf_const, [1])
+ APR_SETIFNULL(apreq_crypt_threadsafe, [1])
+ ;;
+ *-sco3.2v5*)
+ APR_SETIFNULL(apreq_db_xtra_libs, [-lsocket])
+ ;;
+ esac
+
+fi
+])
+
+
diff --git a/srclib/libapreq/build/find_apreq.m4 b/srclib/libapreq/build/find_apreq.m4
new file mode 100644
index 0000000000..ed69397ece
--- /dev/null
+++ b/srclib/libapreq/build/find_apreq.m4
@@ -0,0 +1,176 @@
+dnl -------------------------------------------------------- -*- autoconf -*-
+dnl Copyright 2002-2006 The Apache Software Foundation or its licensors, as
+dnl applicable.
+dnl
+dnl Licensed under the Apache License, Version 2.0 (the "License");
+dnl you may not use this file except in compliance with the License.
+dnl You may obtain a copy of the License at
+dnl
+dnl http://www.apache.org/licenses/LICENSE-2.0
+dnl
+dnl Unless required by applicable law or agreed to in writing, software
+dnl distributed under the License is distributed on an "AS IS" BASIS,
+dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+dnl See the License for the specific language governing permissions and
+dnl limitations under the License.
+
+dnl
+dnl find_apu.m4 : locate the APR-util (APU) include files and libraries
+dnl
+dnl This macro file can be used by applications to find and use the APU
+dnl library. It provides a standardized mechanism for using APU. It supports
+dnl embedding APU into the application source, or locating an installed
+dnl copy of APU.
+dnl
+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
+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
+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: 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.
+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 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 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_APREQ], [
+ apreq_found="no"
+
+ if test "$target_os" = "os2-emx"; 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 APREQ 0.x then APREQ 1.x]))
+ acceptable_majors="0 1"
+ ], [acceptable_majors="$4"])
+
+ apreq_temp_acceptable_apreq_config=""
+ for apreq_temp_major in $acceptable_majors
+ do
+ case $apreq_temp_major in
+ 0)
+ apreq_temp_acceptable_apreq_config="$apreq_temp_acceptable_apreq_config apreq-config"
+ ;;
+ *)
+ apreq_temp_acceptable_apreq_config="$apreq_temp_acceptable_apreq_config apreq$apreq_temp_major-config"
+ ;;
+ esac
+ done
+
+ AC_MSG_CHECKING(for APREQ)
+ AC_ARG_WITH(apreq,
+ [ --with-apreq=PATH prefix for installed APREQ, path to APREQ build tree,
+ or the full path to apreq-config],
+ [
+ if test "$withval" = "no" || test "$withval" = "yes"; then
+ AC_MSG_ERROR([--with-apreq requires a directory or file to be provided])
+ fi
+
+ for apreq_temp_apreq_config_file in $apreq_temp_acceptable_apreq_config
+ do
+ for lookdir in "$withval/bin" "$withval"
+ do
+ if $TEST_X "$lookdir/$apreq_temp_apreq_config_file"; then
+ apreq_found="yes"
+ apreq_config="$lookdir/$apreq_temp_apreq_config_file"
+ break 2
+ fi
+ done
+ done
+
+ if test "$apreq_found" != "yes" && $TEST_X "$withval" && $withval --help > /dev/null 2>&1 ; then
+ apreq_found="yes"
+ apreq_config="$withval"
+ fi
+
+ dnl if --with-apreq is used, it is a fatal error for its argument
+ dnl to be invalid
+ if test "$apreq_found" != "yes"; then
+ AC_MSG_ERROR([the --with-apreq parameter is incorrect. It must specify an install prefix, a build directory, or an apreq-config file.])
+ fi
+ ],[
+ if test -n "$3" && test "$3" = "1"; then
+ for apreq_temp_apreq_config_file in $apreq_temp_acceptable_apreq_config
+ do
+ if $apreq_temp_apreq_config_file --help > /dev/null 2>&1 ; then
+ apreq_found="yes"
+ apreq_config="$apreq_temp_apreq_config_file"
+ break
+ else
+ dnl look in some standard places (apparently not in builtin/default)
+ for lookdir in /usr /usr/local /usr/local/apr /opt/apr /usr/local/apache2 ; do
+ if $TEST_X "$lookdir/bin/$apreq_temp_apreq_config_file"; then
+ apreq_found="yes"
+ apreq_config="$lookdir/bin/$apreq_temp_apreq_config_file"
+ break 2
+ fi
+ done
+ fi
+ done
+ fi
+ dnl if we have not found anything yet and have bundled source, use that
+ if test "$apreq_found" = "no" && test -d "$1"; then
+ apreq_temp_abs_srcdir="`cd $1 && pwd`"
+ apreq_found="reconfig"
+ apreq_bundled_major="`sed -n '/#define.*APREQ_MAJOR_VERSION/s/^[^0-9]*\([0-9]*\).*$/\1/p' \"$1/include/apreq_version.h\"`"
+ case $apreq_bundled_major in
+ "")
+ AC_MSG_ERROR([failed to find major version of bundled APREQ])
+ ;;
+ 0)
+ apreq_temp_apreq_config_file="apreq-config"
+ ;;
+ *)
+ apreq_temp_apreq_config_file="apreq$apreq_bundled_major-config"
+ ;;
+ esac
+ if test -n "$2"; then
+ apreq_config="$2/$apreq_temp_apreq_config_file"
+ else
+ apreq_config="$1/$apreq_temp_apreq_config_file"
+ fi
+ fi
+ ])
+
+ AC_MSG_RESULT($apreq_found)
+])
diff --git a/srclib/libapreq/build/get-version.sh b/srclib/libapreq/build/get-version.sh
new file mode 100755
index 0000000000..d0d9d5bff8
--- /dev/null
+++ b/srclib/libapreq/build/get-version.sh
@@ -0,0 +1,39 @@
+#!/bin/sh
+#
+# extract version numbers from a header file
+#
+# USAGE: get-version.sh CMD VERSION_HEADER PREFIX
+# where CMD is one of: all, major, libtool
+# where PREFIX is the prefix to {MAJOR|MINOR|PATCH}_VERSION defines
+#
+# get-version.sh all returns a dotted version number
+# get-version.sh major returns just the major version number
+# get-version.sh minor returns just the minor version number
+# get-version.sh patch returns just the match version number
+#
+
+if test $# != 3; then
+ echo "USAGE: $0 CMD INCLUDEDIR PREFIX"
+ echo " where CMD is one of: all, major, minor, patch"
+ exit 1
+fi
+
+major_sed="/#define.*$3_MAJOR_VERSION/s/^[^0-9]*\([0-9]*\).*$/\1/p"
+minor_sed="/#define.*$3_MINOR_VERSION/s/^[^0-9]*\([0-9]*\).*$/\1/p"
+patch_sed="/#define.*$3_PATCH_VERSION/s/^[^0-9]*\([0-9]*\).*$/\1/p"
+major="`sed -n $major_sed $2`"
+minor="`sed -n $minor_sed $2`"
+patch="`sed -n $patch_sed $2`"
+
+if test "$1" = "all"; then
+ echo ${major}.${minor}.${patch}
+elif test "$1" = "major"; then
+ echo ${major}
+elif test "$1" = "minor"; then
+ echo ${minor}
+elif test "$1" = "patch"; then
+ echo ${patch}
+else
+ echo "ERROR: unknown version CMD ($1)"
+ exit 1
+fi
diff --git a/srclib/libapreq/buildconf b/srclib/libapreq/buildconf
new file mode 100755
index 0000000000..0c2f5df1ad
--- /dev/null
+++ b/srclib/libapreq/buildconf
@@ -0,0 +1,106 @@
+#!/bin/sh
+#
+# Copyright 1999-2005 The Apache Software Foundation or its licensors, as
+# applicable.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+
+# Default place to look for apr source. Can be overridden with
+# --with-apr=[directory]
+apr_src_dir=../apr
+apu_src_dir=../apr-util
+
+while test $# -gt 0
+do
+ # Normalize
+ case "$1" in
+ -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
+ *) optarg= ;;
+ esac
+
+ case "$1" in
+ --with-apr=*)
+ apr_src_dir=$optarg
+ ;;
+ --with-apr-util=*)
+ apu_src_dir=$optarg
+ ;;
+ esac
+
+ shift
+done
+
+if [ -f "$apr_src_dir/build/apr_common.m4" ]; then
+ echo ""
+ echo "Looking for apr source in $apr_src_dir"
+else
+ echo ""
+ echo "Problem finding apr source in $apr_src_dir."
+ echo "Use:"
+ echo " --with-apr=[directory]"
+ exit 1
+fi
+
+if [ -f "$apu_src_dir/build/find_apu.m4" ]; then
+ echo ""
+ echo "Looking for apr-util source in $apu_src_dir"
+else
+ echo ""
+ echo "Problem finding apr-util source in $apu_src_dir."
+ echo "Use:"
+ echo " --with-apr-util=[directory]"
+ exit 1
+fi
+
+set -e
+
+# Remove some files, then copy them from apr source tree
+rm -f build/apr_common.m4 build/find_apr.m4 build/install.sh \
+ build/config.guess build/config.sub
+cp $apr_src_dir/build/apr_common.m4 $apr_src_dir/build/find_apr.m4 \
+ $apr_src_dir/build/install.sh $apr_src_dir/build/config.guess \
+ $apr_src_dir/build/config.sub build
+
+rm -f build/find_apu.m4
+cp $apu_src_dir/build/find_apu.m4 build
+
+
+# Remove aclocal.m4 as it'll break some builds...
+rm -rf aclocal.m4 autom4te*.cache
+
+#
+# Generate the autoconf header (include/apreq_config.h) and ./configure
+#
+echo "Creating include/apreq_config.h ..."
+${AUTOHEADER:-autoheader}
+
+echo "Creating configure ..."
+### do some work to toss config.cache?
+if ${AUTOCONF:-autoconf}; then
+ :
+else
+ echo "autoconf failed"
+ exit 1
+fi
+
+#
+# Generate build-outputs.mk for the build systme
+#
+echo "Generating 'make' outputs ..."
+$apr_src_dir/build/gen-build.py make
+
+# Remove autoconf cache again
+rm -rf autom4te*.cache
+
diff --git a/srclib/libapreq/config.layout b/srclib/libapreq/config.layout
new file mode 100644
index 0000000000..80a4c8b5f3
--- /dev/null
+++ b/srclib/libapreq/config.layout
@@ -0,0 +1,232 @@
+##
+## config.layout -- Pre-defined Installation Path Layouts
+##
+## Hints:
+## - layouts can be loaded with configure's --enable-layout=ID option
+## - when no --enable-layout option is given, the default layout is `apr'
+## - a trailing plus character (`+') on paths is replaced with a
+## `/<target>' suffix where <target> is currently hardcoded to 'apr'.
+## (This may become a configurable parameter at some point.)
+##
+
+# Classical APREQ path layout designed for parallel installs.
+<Layout apreq>
+ prefix: /usr/local/apr
+ exec_prefix: ${prefix}
+ bindir: ${exec_prefix}/bin
+ sbindir: ${exec_prefix}/bin
+ libdir: ${exec_prefix}/lib
+ libexecdir: ${exec_prefix}/modules
+ mandir: ${prefix}/man
+ sysconfdir: ${prefix}/conf
+ datadir: ${prefix}
+ installbuilddir: ${datadir}/build
+ includedir: ${prefix}/include/apreq2
+ localstatedir: ${prefix}
+ libsuffix: -${APREQ_MAJOR_VERSION}
+</Layout>
+
+# Classical single-installation APR path layout.
+<Layout classic>
+ prefix: /usr/local/apr
+ exec_prefix: ${prefix}
+ bindir: ${exec_prefix}/bin
+ sbindir: ${exec_prefix}/bin
+ libdir: ${exec_prefix}/lib
+ libexecdir: ${exec_prefix}/modules
+ mandir: ${prefix}/man
+ sysconfdir: ${prefix}/conf
+ datadir: ${prefix}
+ installbuilddir: ${datadir}/build
+ includedir: ${prefix}/include
+ localstatedir: ${prefix}
+</Layout>
+
+# GNU standards conforming path layout.
+# See FSF's GNU project `make-stds' document for details.
+<Layout GNU>
+ prefix: /usr/local
+ exec_prefix: ${prefix}
+ bindir: ${exec_prefix}/bin
+ sbindir: ${exec_prefix}/sbin
+ libdir: ${exec_prefix}/lib
+ libexecdir: ${exec_prefix}/libexec
+ mandir: ${prefix}/man
+ sysconfdir: ${prefix}/etc+
+ datadir: ${prefix}/share+
+ installbuilddir: ${datadir}/build
+ includedir: ${prefix}/include+
+ localstatedir: ${prefix}/var+
+ runtimedir: ${localstatedir}/run
+</Layout>
+
+# Mac OS X Server (Rhapsody)
+<Layout Mac OS X Server>
+ prefix: /Local/Library/WebServer
+ exec_prefix: /usr
+ bindir: ${exec_prefix}/bin
+ sbindir: ${exec_prefix}/sbin
+ libdir: ${exec_prefix}/lib
+ libexecdir: /System/Library/apr/Modules
+ mandir: ${exec_prefix}/share/man
+ sysconfdir: ${prefix}/Configuration
+ datadir: ${prefix}
+ installbuilddir: /System/Library/apr/Build
+ includedir: /System/Library/Frameworks/apr.framework/Versions/2.0/Headers
+ localstatedir: /var
+ runtimedir: ${prefix}/Logs
+</Layout>
+
+# Darwin/Mac OS Layout
+<Layout Darwin>
+ prefix: /usr
+ exec_prefix: ${prefix}
+ bindir: ${exec_prefix}/bin
+ sbindir: ${exec_prefix}/sbin
+ libdir: ${exec_prefix}/lib
+ libexecdir: ${exec_prefix}/libexec+
+ mandir: ${prefix}/share/man
+ datadir: /Library/WebServer
+ sysconfdir: /etc+
+ installbuilddir: ${prefix}/share/httpd/build
+ includedir: ${prefix}/include+
+ localstatedir: /var
+ runtimedir: ${localstatedir}/run
+</Layout>
+
+# Red Hat Linux 7.x layout
+<Layout RedHat>
+ prefix: /usr
+ exec_prefix: ${prefix}
+ bindir: ${prefix}/bin
+ sbindir: ${prefix}/sbin
+ libdir: ${prefix}/lib
+ libexecdir: ${prefix}/lib/apr
+ mandir: ${prefix}/man
+ sysconfdir: /etc/httpd/conf
+ datadir: /var/www
+ installbuilddir: ${datadir}/build
+ includedir: ${prefix}/include/apr
+ localstatedir: /var
+ runtimedir: ${localstatedir}/run
+</Layout>
+
+# According to the /opt filesystem conventions
+<Layout opt>
+ prefix: /opt/apr
+ exec_prefix: ${prefix}
+ bindir: ${exec_prefix}/bin
+ sbindir: ${exec_prefix}/sbin
+ libdir: ${exec_prefix}/lib
+ libexecdir: ${exec_prefix}/libexec
+ mandir: ${prefix}/man
+ sysconfdir: /etc${prefix}
+ datadir: ${prefix}/share
+ installbuilddir: ${datadir}/build
+ includedir: ${prefix}/include
+ localstatedir: /var${prefix}
+ runtimedir: ${localstatedir}/run
+</Layout>
+
+# BeOS layout...
+<Layout beos>
+ prefix: /boot/home/apr
+ exec_prefix: ${prefix}
+ bindir: ${exec_prefix}/bin
+ sbindir: ${exec_prefix}/bin
+ libdir: ${exec_prefix}/lib
+ libexecdir: ${exec_prefix}/libexec
+ mandir: ${prefix}/man
+ sysconfdir: ${prefix}/conf
+ datadir: ${prefix}
+ installbuilddir: ${datadir}/build
+ includedir: ${prefix}/include
+ localstatedir: ${prefix}
+ runtimedir: ${localstatedir}/logs
+</Layout>
+
+# SuSE 6.x layout
+<Layout SuSE>
+ prefix: /usr
+ exec_prefix: ${prefix}
+ bindir: ${prefix}/bin
+ sbindir: ${prefix}/sbin
+ libdir: ${prefix}/lib
+ libexecdir: ${prefix}/lib/apr
+ mandir: ${prefix}/share/man
+ sysconfdir: /etc/httpd
+ datadir: /usr/local/httpd
+ installbuilddir: ${datadir}/build
+ includedir: ${prefix}/include/apr
+ localstatedir: /var/lib/httpd
+ runtimedir: /var/run
+</Layout>
+
+# BSD/OS layout
+<Layout BSDI>
+ prefix: /var/www
+ exec_prefix: /usr/contrib
+ bindir: ${exec_prefix}/bin
+ sbindir: ${exec_prefix}/bin
+ libdir: ${exec_prefix}/lib
+ libexecdir: ${exec_prefix}/libexec/apr
+ mandir: ${exec_prefix}/man
+ sysconfdir: ${prefix}/conf
+ datadir: ${prefix}
+ installbuilddir: ${datadir}/build
+ includedir: ${exec_prefix}/include/apr
+ localstatedir: /var
+ runtimedir: ${localstatedir}/run
+</Layout>
+
+# Solaris 8 Layout
+<Layout Solaris>
+ prefix: /usr/apr
+ exec_prefix: ${prefix}
+ bindir: ${exec_prefix}/bin
+ sbindir: ${exec_prefix}/bin
+ libdir: ${exec_prefix}/lib
+ libexecdir: ${exec_prefix}/libexec
+ mandir: ${exec_prefix}/man
+ sysconfdir: /etc/apr
+ datadir: /var/apr
+ installbuilddir: ${datadir}/build
+ includedir: ${exec_prefix}/include
+ localstatedir: ${prefix}
+ runtimedir: /var/run
+</Layout>
+
+# OpenBSD Layout
+<Layout OpenBSD>
+ prefix: /var/www
+ exec_prefix: /usr
+ bindir: ${exec_prefix}/bin
+ sbindir: ${exec_prefix}/sbin
+ libdir: ${exec_prefix}/lib
+ libexecdir: ${exec_prefix}/lib/apr/modules
+ mandir: ${exec_prefix}/share/man
+ sysconfdir: ${prefix}/conf
+ datadir: ${prefix}
+ installbuilddir: ${prefix}/build
+ includedir: ${exec_prefix}/lib/apr/include
+ localstatedir: ${prefix}
+ runtimedir: ${prefix}/logs
+</Layout>
+
+# Debian layout
+<Layout Debian>
+ prefix:
+ exec_prefix: ${prefix}/usr
+ bindir: ${exec_prefix}/bin
+ sbindir: ${exec_prefix}/sbin
+ libdir: ${exec_prefix}/lib
+ libexecdir: ${exec_prefix}/lib/apr/modules
+ mandir: ${exec_prefix}/share/man
+ datadir: ${exec_prefix}/share/apr
+ includedir: ${exec_prefix}/include/apr-${APRUTIL_MAJOR_VERSION}
+ localstatedir: ${prefix}/var/run
+ runtimedir: ${prefix}/var/run
+ infodir: ${exec_prefix}/share/info
+ libsuffix: -${APRUTIL_MAJOR_VERSION}
+ installbuilddir: ${prefix}/usr/share/apache2/build
+</Layout>
diff --git a/srclib/libapreq/configure.in b/srclib/libapreq/configure.in
new file mode 100644
index 0000000000..7d31878520
--- /dev/null
+++ b/srclib/libapreq/configure.in
@@ -0,0 +1,173 @@
+dnl
+dnl Process this file with autoconf to produce a configure script
+dnl
+
+AC_PREREQ(2.50)
+AC_INIT(export_vars.sh.in)
+
+VERSION=2.08
+AC_SUBST(VERSION)
+
+AC_CONFIG_HEADER(include/apreq_config.h)
+AC_CONFIG_AUX_DIR(build)
+
+sinclude(build/apreq-conf.m4)
+sinclude(build/apreq-hints.m4)
+sinclude(build/apr_common.m4)
+sinclude(build/find_apr.m4)
+sinclude(build/find_apu.m4)
+
+dnl Generate ./config.nice for reproducing runs of configure
+dnl
+APR_CONFIG_NICE(config.nice)
+
+dnl # Some initial steps for configuration. We setup the default directory
+dnl # and which files are to be configured.
+
+dnl Absolute source/build directory
+abs_srcdir=`(cd $srcdir && pwd)`
+abs_builddir=`pwd`
+
+if test "$abs_builddir" != "$abs_srcdir"; then
+ USE_VPATH=1
+ APREQ_CONFIG_LOCATION=build
+else
+ APREQ_CONFIG_LOCATION=source
+fi
+
+AC_SUBST(APREQ_CONFIG_LOCATION)
+
+AC_CANONICAL_SYSTEM
+
+AC_PROG_INSTALL
+
+dnl
+dnl compute the top directory of the build
+dnl note: this is needed for LIBTOOL and exporting the bundled Expat
+dnl
+top_builddir="$abs_builddir"
+AC_SUBST(top_builddir)
+AC_SUBST(abs_srcdir)
+AC_SUBST(abs_builddir)
+
+dnl Initialize mkdir -p functionality.
+APR_MKDIR_P_CHECK($abs_srcdir/build/mkdir.sh)
+
+
+dnl Enable the layout handling code, then reparse the prefix-style
+dnl arguments due to autoconf being a PITA.
+APR_ENABLE_LAYOUT(apreq)
+APR_PARSE_ARGUMENTS
+
+dnl load os-specific hints for apr-util
+APREQ_PRELOAD
+
+dnl
+dnl set up the compilation flags and stuff
+dnl
+
+APREQ_INCLUDES=""
+APREQ_PRIV_INCLUDES="-I$top_builddir/include -I$top_builddir/include/private"
+if test -n "$USE_VPATH"; then
+ APREQ_PRIV_INCLUDES="$APRUTIL_PRIV_INCLUDES -I$abs_srcdir/include/private -I$abs_srcdir/include"
+fi
+
+dnl
+dnl Find the APR includes directory and (possibly) the source (base) dir.
+dnl
+APREQ_FIND_APR
+
+dnl
+dnl even though we use apr_rules.mk for building apr-util, we need
+dnl to grab CC and CPP ahead of time so that apr-util config tests
+dnl use the same compiler as APR; we need the same compiler options
+dnl and feature test macros as well
+dnl
+APR_SETIFNULL(CC, `$apr_config --cc`)
+APR_SETIFNULL(CPP, `$apr_config --cpp`)
+APR_ADDTO(CFLAGS, `$apr_config --cflags`)
+APR_ADDTO(CPPFLAGS, `$apr_config --cppflags`)
+
+AC_SUBST(CPP)
+
+APREQ_FIND_APU
+
+dnl get our version information
+get_version="$abs_srcdir/build/get-version.sh"
+version_hdr="$abs_srcdir/include/apreq_version.h"
+APREQ_MAJOR_VERSION="`$get_version major $version_hdr APREQ`"
+APREQ_MINOR_VERSION="`$get_version minor $version_hdr APREQ`"
+APREQ_PATCH_VERSION="`$get_version patch $version_hdr APREQ`"
+APREQ_DOTTED_VERSION="`$get_version all $version_hdr APREQ`"
+
+APR_MAJOR_VERSION="`$apr_config --version | cut -f1 -d.`"
+APREQ_LIBTOOL_VERSION="`expr $APREQ_MAJOR_VERSION + $APREQ_MINOR_VERSION + $APR_MAJOR_VERSION`:$APREQ_PATCH_VERSION:$APREQ_MINOR_VERSION"
+
+AC_SUBST(APREQ_DOTTED_VERSION)
+AC_SUBST(APREQ_LIBTOOL_VERSION)
+AC_SUBST(APREQ_MAJOR_VERSION)
+AC_SUBST(APREQ_MINOR_VERSION)
+AC_SUBST(APREQ_PATCH_VERSION)
+
+echo "APREQ Version: ${APREQ_DOTTED_VERSION}"
+
+
+
+so_ext=$APR_SO_EXT
+lib_target=$APR_LIB_TARGET
+AC_SUBST(so_ext)
+AC_SUBST(lib_target)
+
+APREQ_LIBNAME="apreq2"
+AC_SUBST(APREQ_LIBNAME)
+
+dnl
+dnl Prep all the flags and stuff for compilation and export to other builds
+dnl
+APR_ADDTO(APREQ_LIBS, [$APR_LIBS])
+APR_ADDTO(APREQ_LIBS, [$APU_LIBS])
+
+AC_SUBST(APREQ_EXPORT_LIBS)
+AC_SUBST(APREQ_PRIV_INCLUDES)
+AC_SUBST(APREQ_INCLUDES)
+AC_SUBST(APREQ_LDFLAGS)
+AC_SUBST(APREQ_LIBS)
+AC_SUBST(LDFLAGS)
+
+dnl copy apr's rules.mk into our build directory.
+if test ! -d ./build; then
+ $mkdir_p build
+fi
+cp $APR_BUILD_DIR/apr_rules.mk $abs_builddir/build/rules.mk
+
+dnl
+dnl BSD/OS (BSDi) needs to use a different include syntax in the Makefiles
+dnl
+case "$host_alias" in
+*bsdi* | BSD/OS)
+ # Check whether they've installed GNU make
+ if make --version > /dev/null 2>&1; then
+ INCLUDE_RULES="include $abs_builddir/build/rules.mk"
+ INCLUDE_OUTPUTS="include $abs_srcdir/build-outputs.mk"
+ else
+ INCLUDE_RULES=".include \"$abs_builddir/build/rules.mk\""
+ INCLUDE_OUTPUTS=".include \"$abs_srcdir/build-outputs.mk\""
+ fi
+ ;;
+*)
+ INCLUDE_RULES="include $abs_builddir/build/rules.mk"
+ INCLUDE_OUTPUTS="include $abs_srcdir/build-outputs.mk"
+ ;;
+esac
+AC_SUBST(INCLUDE_RULES)
+AC_SUBST(INCLUDE_OUTPUTS)
+
+for d in include include/private; do
+ test -d $top_builddir/$d || mkdir $top_builddir/$d
+done
+
+AC_CONFIG_FILES([Makefile export_vars.sh apreq2-config])
+
+AC_CONFIG_COMMANDS([default], [chmod +x apreq2-config])
+
+AC_OUTPUT
diff --git a/srclib/libapreq/export_vars.sh.in b/srclib/libapreq/export_vars.sh.in
new file mode 100644
index 0000000000..08a6296334
--- /dev/null
+++ b/srclib/libapreq/export_vars.sh.in
@@ -0,0 +1,13 @@
+#
+# export_vars.sh
+#
+# This shell script is used to export vars to the application using the
+# APRUTIL library. This script should be "sourced" to ensure the variable
+# values are set within the calling script's context. For example:
+#
+# $ . path/to/apr-util/export_vars.sh
+#
+
+APREQ_EXPORT_INCLUDES="@APREQ_INCLUDES@"
+APREQ_EXPORT_LIBS="@APREQ_EXPORT_LIBS@"
+APREQ_LDFLAGS="@APREQ_LDFLAGS@"