mirror of
https://github.com/nginx/nginx.git
synced 2024-12-24 04:07:48 +08:00
4cfd9ba3c1
Now we always set NGX_CC_NAME to "msvc", and additionally test compiler version as reported by "cl" in auto/cc/msvc (the same version is also available via the _MSC_VER define). In particular, this approach allows to properly check for C99 variadic macros support, which previously was not used with MSVC versions not explicitly recognized. Now unneeded wildcards in NGX_CC_NAME tests for msvc removed accordingly, as well as unused wildcards for owc and icc.
104 lines
2.4 KiB
Plaintext
104 lines
2.4 KiB
Plaintext
|
|
# Copyright (C) Igor Sysoev
|
|
# Copyright (C) Nginx, Inc.
|
|
|
|
|
|
if [ $MD5 != NONE ]; then
|
|
|
|
if grep MD5_Init $MD5/md5.h 2>&1 >/dev/null; then
|
|
# OpenSSL md5
|
|
OPENSSL_MD5=YES
|
|
have=NGX_HAVE_OPENSSL_MD5 . auto/have
|
|
have=NGX_OPENSSL_MD5 . auto/have
|
|
else
|
|
# rsaref md5
|
|
OPENSSL_MD5=NO
|
|
fi
|
|
|
|
have=NGX_HAVE_MD5 . auto/have
|
|
CORE_INCS="$CORE_INCS $MD5"
|
|
|
|
case "$NGX_CC_NAME" in
|
|
|
|
msvc | owc | bcc)
|
|
LINK_DEPS="$LINK_DEPS $MD5/md5.lib"
|
|
CORE_LIBS="$CORE_LIBS $MD5/md5.lib"
|
|
;;
|
|
|
|
icc)
|
|
LINK_DEPS="$LINK_DEPS $MD5/libmd5.a"
|
|
|
|
# to allow -ipo optimization we link with the *.o but not library
|
|
CORE_LIBS="$CORE_LIBS $MD5/md5_dgst.o"
|
|
|
|
if [ $MD5_ASM = YES ]; then
|
|
CORE_LIBS="$CORE_LIBS $MD5/asm/mx86-elf.o"
|
|
fi
|
|
;;
|
|
|
|
*)
|
|
LINK_DEPS="$LINK_DEPS $MD5/libmd5.a"
|
|
CORE_LIBS="$CORE_LIBS $MD5/libmd5.a"
|
|
#CORE_LIBS="$CORE_LIBS -L $MD5 -lmd5"
|
|
;;
|
|
|
|
esac
|
|
|
|
else
|
|
|
|
if [ "$NGX_PLATFORM" != win32 ]; then
|
|
|
|
MD5=NO
|
|
|
|
# FreeBSD, Solaris 10
|
|
|
|
ngx_feature="md5 in system md library"
|
|
ngx_feature_name=NGX_HAVE_MD5
|
|
ngx_feature_run=no
|
|
ngx_feature_incs="#include <md5.h>"
|
|
ngx_feature_path=
|
|
ngx_feature_libs="-lmd"
|
|
ngx_feature_test="MD5_CTX md5; MD5Init(&md5)"
|
|
. auto/feature
|
|
|
|
ngx_md5_lib="system md"
|
|
|
|
if [ $ngx_found = no ]; then
|
|
|
|
# Solaris 8/9
|
|
|
|
ngx_feature="md5 in system md5 library"
|
|
ngx_feature_libs="-lmd5"
|
|
. auto/feature
|
|
|
|
ngx_md5_lib="system md5"
|
|
fi
|
|
|
|
if [ $ngx_found = no ]; then
|
|
|
|
# OpenSSL crypto library
|
|
|
|
ngx_feature="md5 in system OpenSSL crypto library"
|
|
ngx_feature_name="NGX_OPENSSL_MD5"
|
|
ngx_feature_incs="#include <openssl/md5.h>"
|
|
ngx_feature_libs="-lcrypto"
|
|
ngx_feature_test="MD5_CTX md5; MD5_Init(&md5)"
|
|
. auto/feature
|
|
|
|
ngx_md5_lib="system crypto"
|
|
|
|
if [ $ngx_found = yes ]; then
|
|
have=NGX_HAVE_OPENSSL_MD5_H . auto/have
|
|
have=NGX_HAVE_MD5 . auto/have
|
|
fi
|
|
fi
|
|
|
|
if [ $ngx_found = yes ]; then
|
|
CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
|
|
MD5=YES
|
|
MD5_LIB=$ngx_md5_lib
|
|
fi
|
|
fi
|
|
|
|
fi
|