test whether libdl is required for dynamic linking: Solaris 10 has dlopen()/etc. in libc
diff --git a/auto/lib/openssl/conf b/auto/lib/openssl/conf index 8e88bd4..ba01648 100644 --- a/auto/lib/openssl/conf +++ b/auto/lib/openssl/conf
@@ -31,7 +31,7 @@ case "$NGX_SYSTEM" in SunOS|Linux) - CORE_LIBS="$CORE_LIBS -ldl" + CORE_LIBS="$CORE_LIBS $NGX_LIBDL" ;; esac @@ -72,7 +72,7 @@ case "$NGX_SYSTEM" in SunOS) - CORE_LIBS="$CORE_LIBS -ldl" + CORE_LIBS="$CORE_LIBS $NGX_LIBDL" ;; esac fi
diff --git a/auto/unix b/auto/unix index 399e54c..bf6fc7f 100755 --- a/auto/unix +++ b/auto/unix
@@ -185,6 +185,28 @@ 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