view auto/lib/sha1/make @ 6261:97f102a13f33

SSL: preserve default server context in connection (ticket #235). This context is needed for shared sessions cache to work in configurations with multiple virtual servers sharing the same port. Unfortunately, OpenSSL does not provide an API to access the session context, thus storing it separately. In collaboration with Vladimir Homutov.
author Maxim Dounin <mdounin@mdounin.ru>
date Mon, 19 Oct 2015 21:22:38 +0300
parents d620f497c50f
children 78f8ac479735
line wrap: on
line source


# Copyright (C) Igor Sysoev
# Copyright (C) Nginx, Inc.


case "$NGX_CC_NAME" in

    msvc*)
        ngx_makefile=makefile.msvc
        ngx_opt="CPU_OPT=\"$CPU_OPT\" LIBC=$LIBC SHA1_ASM=$SHA1_ASM"
        ngx_sha1="SHA1=\"$SHA1\""
    ;;

    owc*)
        ngx_makefile=makefile.owc
        ngx_opt="CPU_OPT=\"$CPU_OPT\""
        ngx_sha1=`echo SHA1=\"$SHA1\" | sed -e "s/\//$ngx_regex_dirsep/g"`
    ;;

    bcc)
        ngx_makefile=makefile.bcc
        ngx_opt="-DCPU_OPT=\"$CPU_OPT\" -DSHA1_ASM=$SHA1_ASM"
        ngx_sha1=`echo \-DSHA1=\"$SHA1\" | sed -e "s/\//$ngx_regex_dirsep/g"`
    ;;

esac


done=NO


case "$NGX_PLATFORM" in

    win32)
        cat << END                                        >> $NGX_MAKEFILE

`echo "$SHA1/sha1.lib:	$NGX_MAKEFILE" | sed -e "s/\//$ngx_regex_dirsep/g"`
	\$(MAKE) -f auto/lib/sha1/$ngx_makefile $ngx_opt $ngx_sha1

END

        done=YES
    ;;

    SunOS:*:i86pc)
        if [ $SHA1_ASM = YES ]; then

            cat << END                                        >> $NGX_MAKEFILE

$SHA1/libsha.a:	$NGX_MAKEFILE
	cd $SHA1 \\
	&& \$(MAKE) CFLAGS="$SHA1_OPT -DSOL -DSHA1_ASM -DL_ENDIAN" \\
		CC="\$(CC)" CPP="\$(CPP)" \\
		SHA_ASM_OBJ=asm/sx86-sol.o clean libsha.a

END

            done=YES
        fi
    ;;

    # FreeBSD: i386
    # Linux: i686

    *:i386 | *:i686)
        if [ $SHA1_ASM = YES ]; then

            cat << END                                        >> $NGX_MAKEFILE

$SHA1/libsha.a:	$NGX_MAKEFILE
	cd $SHA1 \\
	&& \$(MAKE) CFLAGS="$SHA1_OPT -DELF -DSHA1_ASM -DL_ENDIAN" \\
		CC="\$(CC)" CPP="\$(CPP)" \\
		SHA_ASM_OBJ=asm/sx86-elf.o clean libsha.a

END

            done=YES
        fi
    ;;

esac


if [ $done = NO ]; then

    cat << END                                                >> $NGX_MAKEFILE

$SHA1/libsha.a:	$NGX_MAKEFILE
	cd $SHA1 \\
	&& \$(MAKE) CFLAGS="$SHA1_OPT" \\
		CC="\$(CC)" SHA_ASM_OBJ= clean libsha.a

END

fi