summaryrefslogtreecommitdiff
path: root/apr-config.in
diff options
context:
space:
mode:
authorGraham Leggett <minfrin@apache.org>2019-12-31 21:24:55 +0000
committerGraham Leggett <minfrin@apache.org>2019-12-31 21:24:55 +0000
commitc2c9f2b41bf0606246aed7dbe0df095812ccf96f (patch)
tree9ee75e4ef79c0eb841e97dc22b7026eb9a1d83dd /apr-config.in
parent1e5b471a04b2305af2762fd02741a70d79e5dacf (diff)
downloadapr-c2c9f2b41bf0606246aed7dbe0df095812ccf96f.tar.gz
Add the ability to cross compile APR.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1872146 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'apr-config.in')
-rw-r--r--apr-config.in22
1 files changed, 22 insertions, 0 deletions
diff --git a/apr-config.in b/apr-config.in
index 84b407356..4873fc00e 100644
--- a/apr-config.in
+++ b/apr-config.in
@@ -48,6 +48,14 @@ APR_LIBNAME="@APR_LIBNAME@"
# NOTE: the following line is modified during 'make install': alter with care!
location=@APR_CONFIG_LOCATION@
+# absolute path, but not installed path - we're cross compiling
+case "$0" in
+ "${bindir}/"*) ;;
+ "/"*) location=crosscompile;
+ APR_TARGET_DIR=${0%${bindir}/apr-${APR_MAJOR_VERSION}-config} ;;
+ *) ;;
+esac
+
show_usage()
{
cat << EOF
@@ -93,6 +101,8 @@ fi
if test "$location" = "installed"; then
LA_FILE="$libdir/lib${APR_LIBNAME}.la"
+elif test "$location" = "crosscompile"; then
+ LA_FILE="$APR_TARGET_DIR/$libdir/lib${APR_LIBNAME}.la"
else
LA_FILE="$APR_BUILD_DIR/lib${APR_LIBNAME}.la"
fi
@@ -122,6 +132,8 @@ while test $# -gt 0; do
--includedir)
if test "$location" = "installed"; then
flags="$includedir"
+ elif test "$location" = "crosscompile"; then
+ flags="$APR_TARGET_DIR/$includedir"
elif test "$location" = "source"; then
flags="$APR_SOURCE_DIR/include"
else
@@ -154,6 +166,8 @@ while test $# -gt 0; do
--includes)
if test "$location" = "installed"; then
flags="$flags -I$includedir $EXTRA_INCLUDES"
+ elif test "$location" = "crosscompile"; then
+ flags="$flags -I$APR_TARGET_DIR/$includedir $EXTRA_INCLUDES"
elif test "$location" = "source"; then
flags="$flags -I$APR_SOURCE_DIR/include $EXTRA_INCLUDES"
else
@@ -168,6 +182,8 @@ while test $# -gt 0; do
--installbuilddir)
if test "$location" = "installed"; then
echo "${installbuilddir}"
+ elif test "$location" = "crosscompile"; then
+ echo "$APR_TARGET_DIR/${installbuilddir}"
elif test "$location" = "source"; then
echo "$APR_SOURCE_DIR/build"
else
@@ -184,6 +200,8 @@ while test $# -gt 0; do
if test "$location" = "installed"; then
### avoid using -L if libdir is a "standard" location like /usr/lib
flags="$flags -L$libdir -l${APR_LIBNAME}"
+ elif test "$location" = "crosscompile"; then
+ flags="$flags -L$APR_TARGET_DIR/$libdir -l${APR_LIBNAME}"
else
### this surely can't work since the library is in .libs?
flags="$flags -L$APR_BUILD_DIR -l${APR_LIBNAME}"
@@ -201,6 +219,8 @@ while test $# -gt 0; do
# Since the user is specifying they are linking with libtool, we
# *know* that -R will be recognized by libtool.
flags="$flags -L$libdir -R$libdir -l${APR_LIBNAME}"
+ elif test "$location" = "crosscompile"; then
+ flags="$flags -L${APR_TARGET_DIR}/$libdir -l${APR_LIBNAME}"
else
flags="$flags $LA_FILE"
fi
@@ -225,6 +245,8 @@ while test $# -gt 0; do
--apr-libtool)
if test "$location" = "installed"; then
echo "${installbuilddir}/libtool"
+ elif test "$location" = "crosscompile"; then
+ echo "$APR_TARGET_DIR/${installbuilddir}/build"
else
echo "$APR_BUILD_DIR/libtool"
fi