From a70e76a7d5093abaa8977319ec5683345f78eecc Mon Sep 17 00:00:00 2001 From: wrowe Date: Fri, 2 Nov 2007 21:25:16 +0000 Subject: 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 --- configure.in | 31 ++++++++++++++++++++++++++----- 1 file 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 -- cgit v1.2.1