Initial Commit
This commit is contained in:
135
auto/lib/openssl/conf
Normal file
135
auto/lib/openssl/conf
Normal file
@@ -0,0 +1,135 @@
|
||||
|
||||
# Copyright (C) Igor Sysoev
|
||||
# Copyright (C) Nginx, Inc.
|
||||
|
||||
|
||||
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"
|
||||
|
||||
if [ -f $OPENSSL/ms/do_ms.bat ]; then
|
||||
# before OpenSSL 1.1.0
|
||||
CORE_LIBS="$CORE_LIBS $OPENSSL/openssl/lib/ssleay32.lib"
|
||||
CORE_LIBS="$CORE_LIBS $OPENSSL/openssl/lib/libeay32.lib"
|
||||
else
|
||||
# OpenSSL 1.1.0+
|
||||
CORE_LIBS="$CORE_LIBS $OPENSSL/openssl/lib/libssl.lib"
|
||||
CORE_LIBS="$CORE_LIBS $OPENSSL/openssl/lib/libcrypto.lib"
|
||||
fi
|
||||
|
||||
# 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"
|
||||
|
||||
if [ "$NGX_PLATFORM" = win32 ]; then
|
||||
CORE_LIBS="$CORE_LIBS -lgdi32 -lcrypt32 -lws2_32"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
else
|
||||
|
||||
if [ "$NGX_PLATFORM" != win32 ]; then
|
||||
|
||||
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_LIBDL"
|
||||
ngx_feature_test="SSL_CTX_set_options(NULL, 0)"
|
||||
. auto/feature
|
||||
|
||||
if [ $ngx_found = no ]; then
|
||||
|
||||
# FreeBSD port
|
||||
|
||||
ngx_feature="OpenSSL library in /usr/local/"
|
||||
ngx_feature_path="/usr/local/include"
|
||||
|
||||
if [ $NGX_RPATH = YES ]; then
|
||||
ngx_feature_libs="-R/usr/local/lib -L/usr/local/lib -lssl -lcrypto $NGX_LIBDL"
|
||||
else
|
||||
ngx_feature_libs="-L/usr/local/lib -lssl -lcrypto $NGX_LIBDL"
|
||||
fi
|
||||
|
||||
. auto/feature
|
||||
fi
|
||||
|
||||
if [ $ngx_found = no ]; then
|
||||
|
||||
# NetBSD port
|
||||
|
||||
ngx_feature="OpenSSL library in /usr/pkg/"
|
||||
ngx_feature_path="/usr/pkg/include"
|
||||
|
||||
if [ $NGX_RPATH = YES ]; then
|
||||
ngx_feature_libs="-R/usr/pkg/lib -L/usr/pkg/lib -lssl -lcrypto $NGX_LIBDL"
|
||||
else
|
||||
ngx_feature_libs="-L/usr/pkg/lib -lssl -lcrypto $NGX_LIBDL"
|
||||
fi
|
||||
|
||||
. auto/feature
|
||||
fi
|
||||
|
||||
if [ $ngx_found = no ]; then
|
||||
|
||||
# MacPorts
|
||||
|
||||
ngx_feature="OpenSSL library in /opt/local/"
|
||||
ngx_feature_path="/opt/local/include"
|
||||
|
||||
if [ $NGX_RPATH = YES ]; then
|
||||
ngx_feature_libs="-R/opt/local/lib -L/opt/local/lib -lssl -lcrypto $NGX_LIBDL"
|
||||
else
|
||||
ngx_feature_libs="-L/opt/local/lib -lssl -lcrypto $NGX_LIBDL"
|
||||
fi
|
||||
|
||||
. auto/feature
|
||||
fi
|
||||
|
||||
if [ $ngx_found = yes ]; then
|
||||
have=NGX_SSL . auto/have
|
||||
CORE_INCS="$CORE_INCS $ngx_feature_path"
|
||||
CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
|
||||
OPENSSL=YES
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ $OPENSSL != YES ]; then
|
||||
|
||||
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
|
||||
|
||||
fi
|
||||
62
auto/lib/openssl/make
Normal file
62
auto/lib/openssl/make
Normal file
@@ -0,0 +1,62 @@
|
||||
|
||||
# Copyright (C) Igor Sysoev
|
||||
# Copyright (C) Nginx, Inc.
|
||||
|
||||
|
||||
case "$CC" in
|
||||
|
||||
cl)
|
||||
|
||||
cat << END >> $NGX_MAKEFILE
|
||||
|
||||
$OPENSSL/openssl/include/openssl/ssl.h: $NGX_MAKEFILE
|
||||
\$(MAKE) -f auto/lib/openssl/makefile.msvc \
|
||||
OPENSSL="$OPENSSL" OPENSSL_OPT="$OPENSSL_OPT"
|
||||
|
||||
END
|
||||
|
||||
;;
|
||||
|
||||
bcc32)
|
||||
|
||||
ngx_opt=`echo "-DOPENSSL=\"$OPENSSL\" -DOPENSSL_OPT=\"$OPENSSL_OPT\"" \
|
||||
| sed -e "s/\//$ngx_regex_dirsep/g"`
|
||||
|
||||
cat << END >> $NGX_MAKEFILE
|
||||
|
||||
`echo "$OPENSSL\\openssl\\lib\\libeay32.lib: \
|
||||
$OPENSSL\\openssl\\include\\openssl\\ssl.h" \
|
||||
| sed -e "s/\//$ngx_regex_dirsep/g"`
|
||||
|
||||
`echo "$OPENSSL\\openssl\\lib\\ssleay32.lib: \
|
||||
$OPENSSL\\openssl\\include\\openssl\\ssl.h" \
|
||||
| sed -e "s/\//$ngx_regex_dirsep/g"`
|
||||
|
||||
`echo "$OPENSSL\\openssl\\include\\openssl\\ssl.h: $NGX_MAKEFILE" \
|
||||
| sed -e "s/\//$ngx_regex_dirsep/g"`
|
||||
\$(MAKE) -f auto/lib/openssl/makefile.bcc $ngx_opt
|
||||
|
||||
END
|
||||
|
||||
;;
|
||||
|
||||
*)
|
||||
case $OPENSSL in
|
||||
/*) ngx_prefix="$OPENSSL/.openssl" ;;
|
||||
*) ngx_prefix="$PWD/$OPENSSL/.openssl" ;;
|
||||
esac
|
||||
|
||||
cat << END >> $NGX_MAKEFILE
|
||||
|
||||
$OPENSSL/.openssl/include/openssl/ssl.h: $NGX_MAKEFILE
|
||||
cd $OPENSSL \\
|
||||
&& if [ -f Makefile ]; then \$(MAKE) clean; fi \\
|
||||
&& ./config --prefix=$ngx_prefix no-shared $OPENSSL_OPT \\
|
||||
&& \$(MAKE) \\
|
||||
&& \$(MAKE) install_sw LIBDIR=lib
|
||||
|
||||
END
|
||||
|
||||
;;
|
||||
|
||||
esac
|
||||
18
auto/lib/openssl/makefile.bcc
Normal file
18
auto/lib/openssl/makefile.bcc
Normal file
@@ -0,0 +1,18 @@
|
||||
|
||||
# Copyright (C) Igor Sysoev
|
||||
# Copyright (C) Nginx, Inc.
|
||||
|
||||
|
||||
all:
|
||||
cd $(OPENSSL)
|
||||
|
||||
perl Configure BC-32 no-shared --prefix=openssl $(OPENSSL_OPT)
|
||||
|
||||
ms\do_nasm
|
||||
|
||||
$(MAKE) -f ms\bcb.mak
|
||||
$(MAKE) -f ms\bcb.mak install
|
||||
|
||||
# Borland's make does not expand "[ch]" in
|
||||
# copy "inc32\openssl\*.[ch]" "openssl\include\openssl"
|
||||
copy inc32\openssl\*.h openssl\include\openssl
|
||||
21
auto/lib/openssl/makefile.msvc
Normal file
21
auto/lib/openssl/makefile.msvc
Normal file
@@ -0,0 +1,21 @@
|
||||
|
||||
# Copyright (C) Igor Sysoev
|
||||
# Copyright (C) Nginx, Inc.
|
||||
|
||||
|
||||
all:
|
||||
cd $(OPENSSL)
|
||||
|
||||
perl Configure VC-WIN32 no-shared \
|
||||
--prefix="%cd%/openssl" \
|
||||
--openssldir="%cd%/openssl/ssl" \
|
||||
$(OPENSSL_OPT)
|
||||
|
||||
if exist ms\do_ms.bat ( \
|
||||
ms\do_ms \
|
||||
&& $(MAKE) -f ms\nt.mak \
|
||||
&& $(MAKE) -f ms\nt.mak install \
|
||||
) else ( \
|
||||
$(MAKE) \
|
||||
&& $(MAKE) install_sw \
|
||||
)
|
||||
Reference in New Issue
Block a user