]> git.kaiwu.me - nginx.git/commitdiff
test whether libdl is required for dynamic linking:
authorIgor Sysoev <igor@sysoev.ru>
Fri, 8 May 2009 09:39:53 +0000 (09:39 +0000)
committerIgor Sysoev <igor@sysoev.ru>
Fri, 8 May 2009 09:39:53 +0000 (09:39 +0000)
Solaris 10 has dlopen()/etc. in libc

auto/lib/openssl/conf
auto/unix

index 8e88bd497311ab6cc45b467bf4096d461a72e0ef..ba016481df425b215dd179218ea765568362424f 100644 (file)
@@ -31,7 +31,7 @@ if [ $OPENSSL != NONE ]; then
 
     case "$NGX_SYSTEM" in
         SunOS|Linux)
-            CORE_LIBS="$CORE_LIBS -ldl"
+            CORE_LIBS="$CORE_LIBS $NGX_LIBDL"
         ;;
     esac
 
@@ -72,7 +72,7 @@ else
 
                 case "$NGX_SYSTEM" in
                     SunOS)
-                        CORE_LIBS="$CORE_LIBS -ldl"
+                        CORE_LIBS="$CORE_LIBS $NGX_LIBDL"
                     ;;
                 esac
             fi
index 399e54c2a0eca05f7574f04081dddc4268eccbcc..bf6fc7fe74e248787e046fe17ce735672f744f89 100755 (executable)
--- a/auto/unix
+++ b/auto/unix
@@ -185,6 +185,28 @@ if [ $ngx_found != yes ]; then
 fi
 
 
+ngx_feature="dlopen()"
+ngx_feature_name=
+ngx_feature_run=no
+ngx_feature_incs="#include <dlfcn.h>"
+ngx_feature_path=
+ngx_feature_libs=
+ngx_feature_test="dlopen(NULL, 0)"
+. auto/feature
+
+
+if [ $ngx_found != yes ]; then
+
+    ngx_feature="dlopen() in libdl"
+    ngx_feature_libs="-ldl"
+    . auto/feature
+
+    if [ $ngx_found = yes ]; then
+        NGX_LIBDL="-ldl"
+    fi
+fi
+
+
 ngx_feature="mmap(MAP_ANON|MAP_SHARED)"
 ngx_feature_name="NGX_HAVE_MAP_ANON"
 ngx_feature_run=yes