summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwrowe <wrowe@13f79535-47bb-0310-9956-ffa450edef68>2007-11-02 21:25:16 +0000
committerwrowe <wrowe@13f79535-47bb-0310-9956-ffa450edef68>2007-11-02 21:25:16 +0000
commita70e76a7d5093abaa8977319ec5683345f78eecc (patch)
tree715e3233a6fcc2c6e55bbd50c96220f0dc06277c
parent48d0b4627b79c24e64a950f44e60b5e22f3ac7d1 (diff)
downloadlibapr-a70e76a7d5093abaa8977319ec5683345f78eecc.tar.gz
On Darwin 9.0 the NSLoad... dyld API is deprecated; use dlopen.
On HPUX 64bit PA-RISC or IA64... shl_ API is deprecated; use dlopen. (Unless we can't in which case we'll jump on shl at the end.) Heck, we can even shortcircuit os2's detection phase, it's custom. Backport: 591191 git-svn-id: http://svn.apache.org/repos/asf/apr/apr/branches/1.2.x@591472 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--configure.in31
1 files changed, 26 insertions, 5 deletions
diff --git a/configure.in b/configure.in
index c5c40b7be..ada0fa28e 100644
--- a/configure.in
+++ b/configure.in
@@ -1447,11 +1447,26 @@ AC_ARG_ENABLE(dso,
], [dsotype=any])
if test "$dsotype" = "any"; then
- # Darwin:
- AC_CHECK_FUNC(NSLinkModule, [dsotype=dyld])
if test "$dsotype" = "any"; then
- # Original HP-UX:
- AC_CHECK_LIB(dld, shl_load, [dsotype=shl; APR_ADDTO(LIBS,-ldld)])
+ case $host in
+ *darwin[0-8]\.*)
+ # Original Darwin, not for 9.0!:
+ AC_CHECK_FUNC(NSLinkModule, [dsotype=dyld]);;
+ *-hpux[1-9]\.*|*-hpux1[01]*)
+ # shl is specific to hpux(?), and is suboptimal for 64 bit builds,
+ # and most unlikely to be the choice of 12.x developers.
+ AC_CHECK_LIB(dld, shl_load, [have_shl=1])
+ if test "$ac_cv_sizeof_voidp$have_shl" = "41"; then
+ dsotype=shl; APR_ADDTO(LIBS,-ldld)
+ fi;;
+ *-os2*)
+ # several 'other's below probably belong up here. If they always
+ # use a platform implementation and shouldn't test the dlopen/dlfcn
+ # features, then bring them up here.
+ # But if they -should- optionally use dlfcn, and/or need the config
+ # detection of dlopen/dlsym, do not move them up.
+ dsotype=other ;;
+ esac
fi
# Normal POSIX:
if test "$dsotype" = "any"; then
@@ -1475,7 +1490,13 @@ if test "$dsotype" = "any"; then
# Everything else:
if test "$dsotype" = "any"; then
case $host in
- *os390|*-os2*|*os400|*-aix*) dsotype=other ;;
+ *os390|*os400|*-aix*)
+ # Some -aix5 will use dl, no hassles. Keep that pattern here.
+ dsotype=other ;;
+ *-hpux*)
+ if test "$have_shl" = "1"; then
+ dsotype=shl; APR_ADDTO(LIBS,-ldld)
+ fi;;
esac
fi
fi