view auto/lib/openssl/conf @ 3488:92378c49456d

MSVC8 compatibility with OpenSSL 1.0.0
author Igor Sysoev <igor@sysoev.ru>
date Thu, 01 Apr 2010 15:18:29 +0000
parents 83c940b0d18a
children 312c2f9b53ac
line wrap: on
line source


# Copyright (C) Igor Sysoev


if [ $OPENSSL != NONE ]; then

    case "$CC" in

        cl | bcc32)
            have=NGX_OPENSSL . auto/have
            have=NGX_SSL . auto/have

            CFLAGS="$CFLAGS -DNO_SYS_TYPES_H"

            CORE_INCS="$CORE_INCS $OPENSSL/openssl/include"
            CORE_DEPS="$CORE_DEPS $OPENSSL/openssl/include/openssl/ssl.h"
            CORE_LIBS="$CORE_LIBS $OPENSSL/openssl/lib/ssleay32.lib"
            CORE_LIBS="$CORE_LIBS $OPENSSL/openssl/lib/libeay32.lib"

            # libeay32.lib requires gdi32.lib
            CORE_LIBS="$CORE_LIBS gdi32.lib"
            # OpenSSL 1.0.0 requires crypt32.lib
            CORE_LIBS="$CORE_LIBS crypt32.lib"
        ;;

        *)
            have=NGX_OPENSSL . auto/have
            have=NGX_SSL . auto/have

            CORE_INCS="$CORE_INCS $OPENSSL/.openssl/include"
            CORE_DEPS="$CORE_DEPS $OPENSSL/.openssl/include/openssl/ssl.h"
            CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libssl.a"
            CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libcrypto.a"
            CORE_LIBS="$CORE_LIBS $NGX_LIBDL"
        ;;
    esac

else

    case "$NGX_PLATFORM" in

        win32)
            have=NGX_OPENSSL . auto/have
            have=NGX_SSL . auto/have
            OPENSSL=YES

            CORE_INCS="$CORE_INCS c:/openssl/include"
            CORE_LIBS="$CORE_LIBS c:/openssl/ssleay32.lib"
            CORE_LIBS="$CORE_LIBS c:/openssl/libeay32.lib"

            # libeay32.lib requires gdi32.lib
            CORE_LIBS="$CORE_LIBS gdi32.lib"
        ;;

        *)
            OPENSSL=NO

            ngx_feature="OpenSSL library"
            ngx_feature_name="NGX_OPENSSL"
            ngx_feature_run=no
            ngx_feature_incs="#include <openssl/ssl.h>"
            ngx_feature_path=
            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 $NGX_LIBDL"
                OPENSSL=YES
            else

cat << END

$0: error: SSL modules require the OpenSSL library.
You can either do not enable the modules, or install the OpenSSL library
into the system, or build the OpenSSL library statically from the source
with nginx by using --with-openssl=<path> option.

END
                exit 1
            fi
        ;;

    esac

fi