blob: 1b552b6b37b87835d7c1f1a764548735f40480f8 [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"
Piotr Sikora338c0262015-10-23 18:21:33 -07007
8cat << END >> $NGX_AUTOCONF_ERR
9
10----------------------------------------
11checking for system byte ordering
12
13END
Igor Sysoevc0247302004-06-27 18:01:57 +000014
15
16cat << END > $NGX_AUTOTEST.c
17
Piotr Sikora805cd1e2016-06-27 15:00:05 -070018int main(void) {
Igor Sysoevc0247302004-06-27 18:01:57 +000019 int i = 0x11223344;
20 char *p;
21
22 p = (char *) &i;
23 if (*p == 0x44) return 0;
24 return 1;
25}
26
27END
28
Igor Sysoevd3283ff2005-12-05 13:18:09 +000029ngx_test="$CC $CC_TEST_FLAGS $CC_AUX_FLAGS \
Igor Sysoev0e5dc5c2005-11-15 13:30:52 +000030 -o $NGX_AUTOTEST $NGX_AUTOTEST.c $NGX_LD_OPT $ngx_feature_libs"
31
32eval "$ngx_test >> $NGX_AUTOCONF_ERR 2>&1"
Igor Sysoevc0247302004-06-27 18:01:57 +000033
34if [ -x $NGX_AUTOTEST ]; then
Igor Sysoev14fcd472006-09-18 12:35:01 +000035 if $NGX_AUTOTEST >/dev/null 2>&1; then
Ruslan Ermilovd4353c62012-06-08 09:41:55 +000036 echo " little endian"
Igor Sysoevf6906042004-11-25 16:17:31 +000037 have=NGX_HAVE_LITTLE_ENDIAN . auto/have
Igor Sysoevc0247302004-06-27 18:01:57 +000038 else
Ruslan Ermilovd4353c62012-06-08 09:41:55 +000039 echo " big endian"
Igor Sysoevc0247302004-06-27 18:01:57 +000040 fi
41
Sergey Kandaurovce36edf2013-07-31 18:16:40 +040042 rm -rf $NGX_AUTOTEST*
Igor Sysoevc0247302004-06-27 18:01:57 +000043
44else
Sergey Kandaurovce36edf2013-07-31 18:16:40 +040045 rm -rf $NGX_AUTOTEST*
Igor Sysoevc0247302004-06-27 18:01:57 +000046
47 echo
Ruslan Ermilovd4353c62012-06-08 09:41:55 +000048 echo "$0: error: cannot detect system byte ordering"
Igor Sysoevc0247302004-06-27 18:01:57 +000049 exit 1
50fi