
# Copyright (C) Igor Sysoev


if [ $OPENSSL != NONE ]; then
    CORE_INCS="$CORE_INCS $OPENSSL/include"

    case "$CC" in
        *)
            have=NGX_OPENSSL . auto/have
            have=NGX_SSL . auto/have
            LINK_DEPS="$LINK_DEPS $OPENSSL/libssl.a $OPENSSL/libcrypto.a"
            CORE_LIBS="$CORE_LIBS $OPENSSL/libssl.a $OPENSSL/libcrypto.a"
        ;;
    esac

    case "$NGX_SYSTEM" in
        SunOS|Linux)
            CORE_LIBS="$CORE_LIBS -ldl"
        ;;
    esac


else

    if [ "$NGX_PLATFORM" != win32 ]; then
        OPENSSL=NO

        ngx_feature="OpenSSL library"
        ngx_feature_name="NGX_OPENSSL"
        ngx_feature_run=no
        ngx_feature_incs="#include <openssl/ssl.h>"
        ngx_feature_libs="-lssl -lcrypto"
        ngx_feature_test="SSL_library_init()"
        . auto/feature

        if [ $ngx_found = yes ]; then
            have=NGX_SSL . auto/have
            CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
            OPENSSL=YES

            case "$NGX_SYSTEM" in
                SunOS)
                    CORE_LIBS="$CORE_LIBS -ldl"
                ;;
            esac
        fi

    fi

fi
