blob: 93da2f80d996c8a20c83d72d34aa09a0daac84ae [file] [log] [blame]
Igor Sysoevc0247302004-06-27 18:01:57 +00001
Igor Sysoevff8da912004-09-29 16:00:49 +00002# Copyright (C) Igor Sysoev
Maxim Konovalovf8d59e32012-01-18 15:07:43 +00003# Copyright (C) Nginx, Inc.
Igor Sysoevff8da912004-09-29 16:00:49 +00004
5
Ruslan Ermilovd4353c62012-06-08 09:41:55 +00006echo $ngx_n "checking for system byte ordering ...$ngx_c"
Igor Sysoevc0247302004-06-27 18:01:57 +00007echo >> $NGX_ERR
Ruslan Ermilovd4353c62012-06-08 09:41:55 +00008echo "checking for system byte ordering" >> $NGX_ERR
Igor Sysoevc0247302004-06-27 18:01:57 +00009
10
11cat << END > $NGX_AUTOTEST.c
12
13int main() {
14 int i = 0x11223344;
15 char *p;
16
17 p = (char *) &i;
18 if (*p == 0x44) return 0;
19 return 1;
20}
21
22END
23
Igor Sysoevd3283ff2005-12-05 13:18:09 +000024ngx_test="$CC $CC_TEST_FLAGS $CC_AUX_FLAGS \
Igor Sysoev0e5dc5c2005-11-15 13:30:52 +000025 -o $NGX_AUTOTEST $NGX_AUTOTEST.c $NGX_LD_OPT $ngx_feature_libs"
26
27eval "$ngx_test >> $NGX_AUTOCONF_ERR 2>&1"
Igor Sysoevc0247302004-06-27 18:01:57 +000028
29if [ -x $NGX_AUTOTEST ]; then
Igor Sysoev14fcd472006-09-18 12:35:01 +000030 if $NGX_AUTOTEST >/dev/null 2>&1; then
Ruslan Ermilovd4353c62012-06-08 09:41:55 +000031 echo " little endian"
Igor Sysoevf6906042004-11-25 16:17:31 +000032 have=NGX_HAVE_LITTLE_ENDIAN . auto/have
Igor Sysoevc0247302004-06-27 18:01:57 +000033 else
Ruslan Ermilovd4353c62012-06-08 09:41:55 +000034 echo " big endian"
Igor Sysoevc0247302004-06-27 18:01:57 +000035 fi
36
Sergey Kandaurovce36edf2013-07-31 18:16:40 +040037 rm -rf $NGX_AUTOTEST*
Igor Sysoevc0247302004-06-27 18:01:57 +000038
39else
Sergey Kandaurovce36edf2013-07-31 18:16:40 +040040 rm -rf $NGX_AUTOTEST*
Igor Sysoevc0247302004-06-27 18:01:57 +000041
42 echo
Ruslan Ermilovd4353c62012-06-08 09:41:55 +000043 echo "$0: error: cannot detect system byte ordering"
Igor Sysoevc0247302004-06-27 18:01:57 +000044 exit 1
45fi