view auto/lib/openssl/conf @ 3594:8a5106c2a377 stable-0.7

merge r3489, r3493: *) MSVC8 compatibility with OpenSSL 1.0.0 *) fix building OpenSSL-1.0.0 on 64-bit Linux: make installs the libraries in lib64 directory and build nginx/Windows against OpenSSL-0.9.8n
author Igor Sysoev <igor@sysoev.ru>
date Mon, 07 Jun 2010 11:55:20 +0000
parents 966f9cf9c7da
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