view auto/endianness @ 6231:5def760fe95e

Updated OpenSSL used for win32 builds. Note that as of OpenSSL 1.0.0, the "ms\do_ms" script (previously documented to be used if one doesn't want to use the assembly language files) tries to use MASM. Additionally, OpenSSL 1.0.2 finally broke MASM support. To fix this, we now explicitly use "no-asm" in OpenSSL options.
author Maxim Dounin <mdounin@mdounin.ru>
date Mon, 17 Aug 2015 18:09:20 +0300
parents 434548349838
children 7ec809b579d7
line wrap: on
line source


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


echo $ngx_n "checking for system byte ordering ...$ngx_c"
echo >> $NGX_ERR
echo "checking for system byte ordering" >> $NGX_ERR


cat << END > $NGX_AUTOTEST.c

int main() {
    int i = 0x11223344;
    char *p;

    p = (char *) &i;
    if (*p == 0x44) return 0;
    return 1;
}

END

ngx_test="$CC $CC_TEST_FLAGS $CC_AUX_FLAGS \
          -o $NGX_AUTOTEST $NGX_AUTOTEST.c $NGX_LD_OPT $ngx_feature_libs"

eval "$ngx_test >> $NGX_AUTOCONF_ERR 2>&1"

if [ -x $NGX_AUTOTEST ]; then
    if $NGX_AUTOTEST >/dev/null 2>&1; then
        echo " little endian"
        have=NGX_HAVE_LITTLE_ENDIAN . auto/have
    else
        echo " big endian"
    fi

    rm -rf $NGX_AUTOTEST*

else
    rm -rf $NGX_AUTOTEST*

    echo
    echo "$0: error: cannot detect system byte ordering"
    exit 1
fi