annotate auto/lib/sha1/conf @ 6397:78f8ac479735

Win32: simplified and improved handling of MSVC versions. 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.
author Maxim Dounin <mdounin@mdounin.ru>
date Sat, 13 Feb 2016 06:47:34 +0300
parents b0a616778038
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
653
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
1
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
2 # Copyright (C) Igor Sysoev
4412
d620f497c50f Copyright updated.
Maxim Konovalov <maxim@nginx.com>
parents: 3922
diff changeset
3 # Copyright (C) Nginx, Inc.
653
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
4
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
5
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
6 if [ $SHA1 != NONE ]; then
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
7
3922
9c057d5e1c27 "$apr1", "{PLAIN}", and "{SSHA}" password methods in auth basic module
Igor Sysoev <igor@sysoev.ru>
parents: 2010
diff changeset
8 have=NGX_HAVE_SHA1 . auto/have
653
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
9 CORE_INCS="$CORE_INCS $SHA1"
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
10
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
11 case "$NGX_CC_NAME" in
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
12
6397
78f8ac479735 Win32: simplified and improved handling of MSVC versions.
Maxim Dounin <mdounin@mdounin.ru>
parents: 5179
diff changeset
13 msvc | owc | bcc)
653
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
14 LINK_DEPS="$LINK_DEPS $SHA1/sha1.lib"
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
15 CORE_LIBS="$CORE_LIBS $SHA1/sha1.lib"
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
16 ;;
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
17
6397
78f8ac479735 Win32: simplified and improved handling of MSVC versions.
Maxim Dounin <mdounin@mdounin.ru>
parents: 5179
diff changeset
18 icc)
653
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
19 LINK_DEPS="$LINK_DEPS $SHA1/libsha.a"
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
20
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
21 # to allow -ipo optimization we link with the *.o but not library
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
22 CORE_LIBS="$CORE_LIBS $SHA1/sha1_dgst.o"
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
23
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
24 if [ $SHA1_ASM = YES ]; then
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
25 CORE_LIBS="$CORE_LIBS $SHA1/asm/sx86-elf.o"
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
26 fi
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
27 ;;
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
28
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
29 *)
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
30 LINK_DEPS="$LINK_DEPS $SHA1/libsha.a"
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
31 CORE_LIBS="$CORE_LIBS $SHA1/libsha.a"
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
32 #CORE_LIBS="$CORE_LIBS -L $SHA1 -lsha"
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
33 ;;
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
34
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
35 esac
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
36
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
37 else
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
38
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
39 if [ "$NGX_PLATFORM" != win32 ]; then
2010
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
40
653
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
41 SHA1=NO
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
42
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
43 # FreeBSD
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
44
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
45 ngx_feature="sha1 in system md library"
3922
9c057d5e1c27 "$apr1", "{PLAIN}", and "{SSHA}" password methods in auth basic module
Igor Sysoev <igor@sysoev.ru>
parents: 2010
diff changeset
46 ngx_feature_name=NGX_HAVE_SHA1
653
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
47 ngx_feature_run=no
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
48 ngx_feature_incs="#include <sha.h>"
875
7af8276b1c2f test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents: 653
diff changeset
49 ngx_feature_path=
653
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
50 ngx_feature_libs="-lmd"
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
51 ngx_feature_test="SHA_CTX sha1; SHA1_Init(&sha1)"
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
52 . auto/feature
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
53
2010
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
54 ngx_sha1_lib="system md"
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
55
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
56 if [ $ngx_found = no ]; then
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
57
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
58 # OpenSSL crypto library
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
59
5179
b0a616778038 Configure: uniformly refer to libs when searching for md5 and sha1.
Ruslan Ermilov <ru@nginx.com>
parents: 4412
diff changeset
60 ngx_feature="sha1 in system OpenSSL crypto library"
2010
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
61 ngx_feature_incs="#include <openssl/sha.h>"
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
62 ngx_feature_libs="-lcrypto"
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
63 . auto/feature
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
64
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
65 ngx_sha1_lib="system crypto"
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
66
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
67 if [ $ngx_found = yes ]; then
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
68 have=NGX_HAVE_OPENSSL_SHA1_H . auto/have
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
69 fi
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
70 fi
653
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
71
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
72 if [ $ngx_found = yes ]; then
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
73 CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
74 SHA1=YES
2010
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
75 SHA1_LIB=$ngx_sha1_lib
653
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
76 fi
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
77 fi
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
78
7cbef16c71a1 nginx-0.3.48-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
79 fi