
# Copyright (C) Igor Sysoev


if test -n "$OPENSSL_OPT"; then
    NGX_OPENSSL_CONFIG="./Configure \"$OPENSSL_OPT\""
else
    NGX_OPENSSL_CONFIG="./config"
fi

case $USE_THREADS in
    NO) NGX_OPENSSL_CONFIG="$NGX_OPENSSL_CONFIG no-threads" ;;
    *)  NGX_OPENSSL_CONFIG="$NGX_OPENSSL_CONFIG threads" ;;
esac

case "$CC" in
    cl)
        cat << END                                            >> $NGX_MAKEFILE

$OPENSSL/out32/ssleay32.lib:
	cd $OPENSSL
	perl Configure VC-WIN32 no-shared
	ms\\do_ms
	\$(MAKE) -f ms\\nt.mak
	cd ..\\..\\..

END

    ;;

    bcc32)
        cat << END                                            >> $NGX_MAKEFILE

`echo "$OPENSSL\\out32\\libeay32.lib:	$OPENSSL\\out32\\ssleay32.lib" \
	| sed -e "s/\//$ngx_regex_dirsep/g"`

`echo "$OPENSSL\\out32\\ssleay32.lib:" | sed -e "s/\//$ngx_regex_dirsep/g"`
	cd `echo "$OPENSSL" | sed -e "s/\//$ngx_regex_dirsep/g"`
	perl Configure BC-32 no-shared
	ms\\do_nasm
	\$(MAKE) -f ms\\bcb.mak
	cd ..\\..\\..

END

    ;;

    *)
        cat << END                                            >> $NGX_MAKEFILE

$OPENSSL/libssl.a:
	cd $OPENSSL \\
	&& \$(MAKE) clean \\
	&& $NGX_OPENSSL_CONFIG no-shared \\
	&& \$(MAKE)

END

    ;;

esac
