1*4882a593SmuzhiyunFrom be9970aa16c5142ef814531d74a07990a8e9eb14 Mon Sep 17 00:00:00 2001 2*4882a593SmuzhiyunFrom: Derek Straka <derek@asterius.io> 3*4882a593SmuzhiyunDate: Fri, 1 Dec 2017 10:32:29 -0500 4*4882a593SmuzhiyunSubject: [PATCH] Allow the overriding of the endianness via the configure flag 5*4882a593Smuzhiyun --with-endian 6*4882a593Smuzhiyun 7*4882a593SmuzhiyunThe existing configure options contain the --with-endian; however, the command 8*4882a593Smuzhiyunline flag does not actually function. It does not set the endianness and it 9*4882a593Smuzhiyunappears to do nothing. 10*4882a593Smuzhiyun 11*4882a593SmuzhiyunUpstream-Status: Pending 12*4882a593Smuzhiyun 13*4882a593SmuzhiyunSigned-off-by: Derek Straka <derek@asterius.io> 14*4882a593Smuzhiyun 15*4882a593Smuzhiyundiff --git a/auto/endianness b/auto/endianness 16*4882a593Smuzhiyunindex 1b552b6..be84487 100644 17*4882a593Smuzhiyun--- a/auto/endianness 18*4882a593Smuzhiyun+++ b/auto/endianness 19*4882a593Smuzhiyun@@ -13,7 +13,13 @@ checking for system byte ordering 20*4882a593Smuzhiyun END 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun-cat << END > $NGX_AUTOTEST.c 24*4882a593Smuzhiyun+if [ ".$NGX_WITH_ENDIAN" = ".little" ]; then 25*4882a593Smuzhiyun+ echo " little endian" 26*4882a593Smuzhiyun+ have=NGX_HAVE_LITTLE_ENDIAN . auto/have 27*4882a593Smuzhiyun+elif [ ".$NGX_WITH_ENDIAN" = ".big" ]; then 28*4882a593Smuzhiyun+ echo " big endian" 29*4882a593Smuzhiyun+else 30*4882a593Smuzhiyun+ cat << END > $NGX_AUTOTEST.c 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun int main(void) { 33*4882a593Smuzhiyun int i = 0x11223344; 34*4882a593Smuzhiyun@@ -26,25 +32,26 @@ int main(void) { 35*4882a593Smuzhiyun 36*4882a593Smuzhiyun END 37*4882a593Smuzhiyun 38*4882a593Smuzhiyun-ngx_test="$CC $CC_TEST_FLAGS $CC_AUX_FLAGS \ 39*4882a593Smuzhiyun- -o $NGX_AUTOTEST $NGX_AUTOTEST.c $NGX_LD_OPT $ngx_feature_libs" 40*4882a593Smuzhiyun+ ngx_test="$CC $CC_TEST_FLAGS $CC_AUX_FLAGS \ 41*4882a593Smuzhiyun+ -o $NGX_AUTOTEST $NGX_AUTOTEST.c $NGX_LD_OPT $ngx_feature_libs" 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun-eval "$ngx_test >> $NGX_AUTOCONF_ERR 2>&1" 44*4882a593Smuzhiyun+ eval "$ngx_test >> $NGX_AUTOCONF_ERR 2>&1" 45*4882a593Smuzhiyun 46*4882a593Smuzhiyun-if [ -x $NGX_AUTOTEST ]; then 47*4882a593Smuzhiyun- if $NGX_AUTOTEST >/dev/null 2>&1; then 48*4882a593Smuzhiyun- echo " little endian" 49*4882a593Smuzhiyun- have=NGX_HAVE_LITTLE_ENDIAN . auto/have 50*4882a593Smuzhiyun- else 51*4882a593Smuzhiyun- echo " big endian" 52*4882a593Smuzhiyun- fi 53*4882a593Smuzhiyun+ if [ -x $NGX_AUTOTEST ]; then 54*4882a593Smuzhiyun+ if $NGX_AUTOTEST >/dev/null 2>&1; then 55*4882a593Smuzhiyun+ echo " little endian" 56*4882a593Smuzhiyun+ have=NGX_HAVE_LITTLE_ENDIAN . auto/have 57*4882a593Smuzhiyun+ else 58*4882a593Smuzhiyun+ echo " big endian" 59*4882a593Smuzhiyun+ fi 60*4882a593Smuzhiyun 61*4882a593Smuzhiyun- rm -rf $NGX_AUTOTEST* 62*4882a593Smuzhiyun+ rm -rf $NGX_AUTOTEST* 63*4882a593Smuzhiyun 64*4882a593Smuzhiyun-else 65*4882a593Smuzhiyun- rm -rf $NGX_AUTOTEST* 66*4882a593Smuzhiyun+ else 67*4882a593Smuzhiyun+ rm -rf $NGX_AUTOTEST* 68*4882a593Smuzhiyun 69*4882a593Smuzhiyun- echo 70*4882a593Smuzhiyun- echo "$0: error: cannot detect system byte ordering" 71*4882a593Smuzhiyun- exit 1 72*4882a593Smuzhiyun+ echo 73*4882a593Smuzhiyun+ echo "$0: error: cannot detect system byte ordering" 74*4882a593Smuzhiyun+ exit 1 75*4882a593Smuzhiyun+ fi 76*4882a593Smuzhiyun fi 77*4882a593Smuzhiyun-- 78*4882a593Smuzhiyun2.7.4 79*4882a593Smuzhiyun 80*4882a593Smuzhiyun 81