annotate auto/lib/openssl/conf @ 5360:3d2d3e1cf427

Win32: MinGW GCC compatibility. Several warnings silenced, notably (ngx_socket_t) -1 is now checked on socket operations instead of -1, as ngx_socket_t is unsigned on win32 and gcc complains on comparison. With this patch, it's now possible to compile nginx using mingw gcc, with options we normally compile on win32.
author Maxim Dounin <mdounin@mdounin.ru>
date Wed, 04 Sep 2013 20:48:28 +0400
parents d620f497c50f
children 4d25ec8f0adb
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
444
42d11f017717 nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents: 399
diff changeset
1
42d11f017717 nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents: 399
diff changeset
2 # Copyright (C) Igor Sysoev
4412
d620f497c50f Copyright updated.
Maxim Konovalov <maxim@nginx.com>
parents: 3684
diff changeset
3 # Copyright (C) Nginx, Inc.
444
42d11f017717 nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents: 399
diff changeset
4
399
4e21d1291a14 nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
5
4e21d1291a14 nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
6 if [ $OPENSSL != NONE ]; then
4e21d1291a14 nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
7
4e21d1291a14 nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
8 case "$CC" in
2712
41f993457021 OpenSSL building by MSVC and BCC from sources
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
9
2846
dfec0e090265 fix building OpenSSL on Win32
Igor Sysoev <igor@sysoev.ru>
parents: 2817
diff changeset
10 cl | bcc32)
2712
41f993457021 OpenSSL building by MSVC and BCC from sources
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
11 have=NGX_OPENSSL . auto/have
41f993457021 OpenSSL building by MSVC and BCC from sources
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
12 have=NGX_SSL . auto/have
41f993457021 OpenSSL building by MSVC and BCC from sources
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
13
2846
dfec0e090265 fix building OpenSSL on Win32
Igor Sysoev <igor@sysoev.ru>
parents: 2817
diff changeset
14 CFLAGS="$CFLAGS -DNO_SYS_TYPES_H"
2712
41f993457021 OpenSSL building by MSVC and BCC from sources
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
15
2846
dfec0e090265 fix building OpenSSL on Win32
Igor Sysoev <igor@sysoev.ru>
parents: 2817
diff changeset
16 CORE_INCS="$CORE_INCS $OPENSSL/openssl/include"
dfec0e090265 fix building OpenSSL on Win32
Igor Sysoev <igor@sysoev.ru>
parents: 2817
diff changeset
17 CORE_DEPS="$CORE_DEPS $OPENSSL/openssl/include/openssl/ssl.h"
dfec0e090265 fix building OpenSSL on Win32
Igor Sysoev <igor@sysoev.ru>
parents: 2817
diff changeset
18 CORE_LIBS="$CORE_LIBS $OPENSSL/openssl/lib/ssleay32.lib"
dfec0e090265 fix building OpenSSL on Win32
Igor Sysoev <igor@sysoev.ru>
parents: 2817
diff changeset
19 CORE_LIBS="$CORE_LIBS $OPENSSL/openssl/lib/libeay32.lib"
2712
41f993457021 OpenSSL building by MSVC and BCC from sources
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
20
2731
06d53ecd70c8 *) move advapi32.lib to core libs since it's required for Registry and Event Log
Igor Sysoev <igor@sysoev.ru>
parents: 2712
diff changeset
21 # libeay32.lib requires gdi32.lib
06d53ecd70c8 *) move advapi32.lib to core libs since it's required for Registry and Event Log
Igor Sysoev <igor@sysoev.ru>
parents: 2712
diff changeset
22 CORE_LIBS="$CORE_LIBS gdi32.lib"
3488
92378c49456d MSVC8 compatibility with OpenSSL 1.0.0
Igor Sysoev <igor@sysoev.ru>
parents: 3168
diff changeset
23 # OpenSSL 1.0.0 requires crypt32.lib
92378c49456d MSVC8 compatibility with OpenSSL 1.0.0
Igor Sysoev <igor@sysoev.ru>
parents: 3168
diff changeset
24 CORE_LIBS="$CORE_LIBS crypt32.lib"
2712
41f993457021 OpenSSL building by MSVC and BCC from sources
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
25 ;;
41f993457021 OpenSSL building by MSVC and BCC from sources
Igor Sysoev <igor@sysoev.ru>
parents: 875
diff changeset
26
399
4e21d1291a14 nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
27 *)
4e21d1291a14 nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
28 have=NGX_OPENSSL . auto/have
577
4d9ea73a627a nginx-0.3.10-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 561
diff changeset
29 have=NGX_SSL . auto/have
2846
dfec0e090265 fix building OpenSSL on Win32
Igor Sysoev <igor@sysoev.ru>
parents: 2817
diff changeset
30
3168
83c940b0d18a allow "make clean" for OpenSSL, the bug was introduced in r2874
Igor Sysoev <igor@sysoev.ru>
parents: 2893
diff changeset
31 CORE_INCS="$CORE_INCS $OPENSSL/.openssl/include"
83c940b0d18a allow "make clean" for OpenSSL, the bug was introduced in r2874
Igor Sysoev <igor@sysoev.ru>
parents: 2893
diff changeset
32 CORE_DEPS="$CORE_DEPS $OPENSSL/.openssl/include/openssl/ssl.h"
83c940b0d18a allow "make clean" for OpenSSL, the bug was introduced in r2874
Igor Sysoev <igor@sysoev.ru>
parents: 2893
diff changeset
33 CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libssl.a"
83c940b0d18a allow "make clean" for OpenSSL, the bug was introduced in r2874
Igor Sysoev <igor@sysoev.ru>
parents: 2893
diff changeset
34 CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libcrypto.a"
2817
38e59bcc35f2 test whether libdl is required for dynamic linking:
Igor Sysoev <igor@sysoev.ru>
parents: 2731
diff changeset
35 CORE_LIBS="$CORE_LIBS $NGX_LIBDL"
5360
3d2d3e1cf427 Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
36
3d2d3e1cf427 Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
37 if [ "$NGX_PLATFORM" = win32 ]; then
3d2d3e1cf427 Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
38 CORE_LIBS="$CORE_LIBS -lgdi32 -lcrypt32 -lws2_32"
3d2d3e1cf427 Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
39 fi
479
c52408583801 nginx-0.1.14-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 469
diff changeset
40 ;;
399
4e21d1291a14 nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
41 esac
4e21d1291a14 nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
42
4e21d1291a14 nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
43 else
4e21d1291a14 nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
44
3683
312c2f9b53ac do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents: 3488
diff changeset
45 if [ "$NGX_PLATFORM" != win32 ]; then
561
e48ebafc6939 nginx-0.3.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 541
diff changeset
46
3683
312c2f9b53ac do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents: 3488
diff changeset
47 OPENSSL=NO
583
4e296b7d25bf nginx-0.3.13-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 577
diff changeset
48
3683
312c2f9b53ac do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents: 3488
diff changeset
49 ngx_feature="OpenSSL library"
312c2f9b53ac do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents: 3488
diff changeset
50 ngx_feature_name="NGX_OPENSSL"
312c2f9b53ac do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents: 3488
diff changeset
51 ngx_feature_run=no
312c2f9b53ac do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents: 3488
diff changeset
52 ngx_feature_incs="#include <openssl/ssl.h>"
312c2f9b53ac do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents: 3488
diff changeset
53 ngx_feature_path=
312c2f9b53ac do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents: 3488
diff changeset
54 ngx_feature_libs="-lssl -lcrypto"
312c2f9b53ac do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents: 3488
diff changeset
55 ngx_feature_test="SSL_library_init()"
312c2f9b53ac do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents: 3488
diff changeset
56 . auto/feature
399
4e21d1291a14 nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
57
3683
312c2f9b53ac do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents: 3488
diff changeset
58 if [ $ngx_found = yes ]; then
312c2f9b53ac do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents: 3488
diff changeset
59 have=NGX_SSL . auto/have
312c2f9b53ac do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents: 3488
diff changeset
60 CORE_LIBS="$CORE_LIBS $ngx_feature_libs $NGX_LIBDL"
312c2f9b53ac do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents: 3488
diff changeset
61 OPENSSL=YES
3684
4d47a0658e7d stop ./configure on Win32 if no library sources was specified,
Igor Sysoev <igor@sysoev.ru>
parents: 3683
diff changeset
62 fi
4d47a0658e7d stop ./configure on Win32 if no library sources was specified,
Igor Sysoev <igor@sysoev.ru>
parents: 3683
diff changeset
63 fi
4d47a0658e7d stop ./configure on Win32 if no library sources was specified,
Igor Sysoev <igor@sysoev.ru>
parents: 3683
diff changeset
64
4d47a0658e7d stop ./configure on Win32 if no library sources was specified,
Igor Sysoev <igor@sysoev.ru>
parents: 3683
diff changeset
65 if [ $OPENSSL != YES ]; then
2893
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2876
diff changeset
66
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2876
diff changeset
67 cat << END
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2876
diff changeset
68
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2876
diff changeset
69 $0: error: SSL modules require the OpenSSL library.
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2876
diff changeset
70 You can either do not enable the modules, or install the OpenSSL library
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2876
diff changeset
71 into the system, or build the OpenSSL library statically from the source
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2876
diff changeset
72 with nginx by using --with-openssl=<path> option.
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2876
diff changeset
73
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2876
diff changeset
74 END
3684
4d47a0658e7d stop ./configure on Win32 if no library sources was specified,
Igor Sysoev <igor@sysoev.ru>
parents: 3683
diff changeset
75 exit 1
3683
312c2f9b53ac do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents: 3488
diff changeset
76 fi
399
4e21d1291a14 nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
77
4e21d1291a14 nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
78 fi