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