[exim-cvs] Fix detection of 32b platform at build time. Bug…

Top Page
Delete this message
Reply to this message
Author: Exim Git Commits Mailing List
Date:  
To: exim-cvs
Subject: [exim-cvs] Fix detection of 32b platform at build time. Bug 2405
Gitweb: https://git.exim.org/exim.git/commitdiff/26dd3aa007b3b77969610c031f59388e0953bd00
Commit:     26dd3aa007b3b77969610c031f59388e0953bd00
Parent:     0a5441fcd93ae4145c07b3ed138dfe0e107174e0
Author:     Jeremy Harris <jgh146exb@???>
AuthorDate: Fri Jun 7 11:54:10 2019 +0100
Committer:  Jeremy Harris <jgh146exb@???>
CommitDate: Fri Jun 7 11:54:10 2019 +0100


    Fix detection of 32b platform at build time.  Bug 2405
---
 src/src/buildconfig.c        | 12 +++++---
 test/scripts/0000-Basic/0002 | 72 +++++++++++++++++++++++---------------------
 test/stdout/0002             | 72 +++++++++++++++++++++++---------------------
 3 files changed, 83 insertions(+), 73 deletions(-)


diff --git a/src/src/buildconfig.c b/src/src/buildconfig.c
index 71cf97b..a680b34 100644
--- a/src/src/buildconfig.c
+++ b/src/src/buildconfig.c
@@ -111,6 +111,7 @@ unsigned long test_ulong_t = 0L;
unsigned int test_uint_t = 0;
#endif
long test_long_t = 0;
+long long test_longlong_t = 0;
int test_int_t = 0;
FILE *base;
FILE *new;
@@ -155,15 +156,16 @@ This assumption is known to be OK for the common operating systems. */

fprintf(new, "#ifndef OFF_T_FMT\n");
if (sizeof(test_off_t) > sizeof(test_long_t))
- {
fprintf(new, "# define OFF_T_FMT \"%%lld\"\n");
- fprintf(new, "# define LONGLONG_T long long int\n");
- }
else
- {
fprintf(new, "# define OFF_T_FMT \"%%ld\"\n");
+fprintf(new, "#endif\n\n");
+
+fprintf(new, "#ifndef LONGLONG_T\n");
+if (sizeof(test_longlong_t) > sizeof(test_long_t))
+ fprintf(new, "# define LONGLONG_T long long int\n");
+else
fprintf(new, "# define LONGLONG_T long int\n");
- }
fprintf(new, "#endif\n\n");

/* Now do the same thing for time_t variables. If the length is greater than
diff --git a/test/scripts/0000-Basic/0002 b/test/scripts/0000-Basic/0002
index c738b09..9334e04 100644
--- a/test/scripts/0000-Basic/0002
+++ b/test/scripts/0000-Basic/0002
@@ -45,6 +45,44 @@ x\
+$11111111111111111111111111111111111
+${11111111111111111111111111111111111}

+eval: ${eval:0}
+eval: ${eval:1}
+eval: ${eval:-1}
+eval: ${eval:+1}
+eval: ${eval:1+1}
+eval: ${eval:1+2*3}
+eval: ${eval:(1+2)*3}
+eval: ${eval:3/2*4}
+eval: ${eval:3*4/2}
+eval: ${eval:42}
+eval: ${eval:}
+eval: ${eval:-2}
+eval: ${eval:-2 - -3}
+eval: ${eval:-2 - (-3)}
+eval: ${eval:-2 - (-3}
+eval: ${eval:-2 - -3)}
+eval: ${eval:-2 --3}
+eval: ${eval:-2 -+3}
+eval: ${eval:-2 -+-3}
+eval: ${eval:(2*(1+1))/2 + 40K}
+eval: ${eval:077}
+eval: ${eval:08}
+eval10: ${eval10:077}
+eval10: ${eval10:08}
+eval10: ${eval10:0x1234}
+eval: ${eval:2+42%5}
+eval: ${eval:0xc&5}
+eval: ${eval:0xc & 5 }
+eval: ${eval:0x0c|5}
+eval: ${eval:0xc^5}
+eval: ${eval:0xc>>1}
+eval: ${eval:0xc >> 2}
+eval: ${eval:0xc >> 4 }
+eval: ${eval:0xc<<1}
+eval: ${eval:~255&0x1234}
+eval: ${eval:~ 255&0x1234}
+eval: ${eval: -(~255&0x1234)}
+
# List operations

 filter: "${filter{a:b:c}{eq{1}{1}}}"
@@ -144,40 +182,6 @@ addresses: ${addresses:>}
 escape:     ${escape:B7?F2?}
 excape8bit: ${escape8bit:undisturbed text\ttab\nnewline\ttab\\backslash \176tilde\177DEL\200\x81.}


-eval: ${eval:1+1}
-eval: ${eval:1+2*3}
-eval: ${eval:(1+2)*3}
-eval: ${eval:3/2*4}
-eval: ${eval:3*4/2}
-eval: ${eval:42}
-eval: ${eval:}
-eval: ${eval:-2}
-eval: ${eval:-2 - -3}
-eval: ${eval:-2 - (-3)}
-eval: ${eval:-2 - (-3}
-eval: ${eval:-2 - -3)}
-eval: ${eval:-2 --3}
-eval: ${eval:-2 -+3}
-eval: ${eval:-2 -+-3}
-eval: ${eval:(2*(1+1))/2 + 40K}
-eval: ${eval:077}
-eval: ${eval:08}
-eval10: ${eval10:077}
-eval10: ${eval10:08}
-eval10: ${eval10:0x1234}
-eval: ${eval:2+42%5}
-eval: ${eval:0xc&5}
-eval: ${eval:0xc & 5 }
-eval: ${eval:0x0c|5}
-eval: ${eval:0xc^5}
-eval: ${eval:0xc>>1}
-eval: ${eval:0xc >> 2}
-eval: ${eval:0xc >> 4 }
-eval: ${eval:0xc<<1}
-eval: ${eval:~255&0x1234}
-eval: ${eval:~ 255&0x1234}
-eval: ${eval: -(~255&0x1234)}
-
expand: \$primary_hostname ${expand:\$primary_hostname}
hash: ${hash_3:monty} ${hash_5:monty} ${hash_4_62:monty python}
hash: ${hash_3:abc}X ${hash_3:ab}X ${hash_3:a}X ${hash_3:}X
diff --git a/test/stdout/0002 b/test/stdout/0002
index 3800fd3..c933786 100644
--- a/test/stdout/0002
+++ b/test/stdout/0002
@@ -34,6 +34,44 @@
> +
> +
>

+> eval: 0
+> eval: 1
+> eval: -1
+> eval: 1
+> eval: 2
+> eval: 7
+> eval: 9
+> eval: 4
+> eval: 6
+> eval: 42
+> Failed: error in expression evaluation: expecting number or opening parenthesis (after processing "")
+> eval: -2
+> eval: 1
+> eval: 1
+> Failed: error in expression evaluation: expecting closing parenthesis (after processing "-2 - (-3")
+> Failed: error in expression evaluation: expecting operator (after processing "-2 - -3")
+> eval: 1
+> eval: -5
+> eval: 1
+> eval: 40962
+> eval: 63
+> Failed: error in expression evaluation: expecting operator (after processing "0")
+> eval10: 77
+> eval10: 8
+> Failed: error in expression evaluation: expecting operator (after processing "0")
+> eval: 4
+> eval: 4
+> eval: 4
+> eval: 13
+> eval: 9
+> eval: 6
+> eval: 3
+> eval: 0
+> eval: 24
+> eval: 4608
+> eval: 4608
+> eval: -4608
+>
> # List operations
>
> filter: "a:b:c"

@@ -135,40 +173,6 @@
 > excape8bit: undisturbed text    tab

 newline    tab\134backslash ~tilde\177DEL\200\201.

>

-> eval: 2
-> eval: 7
-> eval: 9
-> eval: 4
-> eval: 6
-> eval: 42
-> Failed: error in expression evaluation: expecting number or opening parenthesis (after processing "")
-> eval: -2
-> eval: 1
-> eval: 1
-> Failed: error in expression evaluation: expecting closing parenthesis (after processing "-2 - (-3")
-> Failed: error in expression evaluation: expecting operator (after processing "-2 - -3")
-> eval: 1
-> eval: -5
-> eval: 1
-> eval: 40962
-> eval: 63
-> Failed: error in expression evaluation: expecting operator (after processing "0")
-> eval10: 77
-> eval10: 8
-> Failed: error in expression evaluation: expecting operator (after processing "0")
-> eval: 4
-> eval: 4
-> eval: 4
-> eval: 13
-> eval: 9
-> eval: 6
-> eval: 3
-> eval: 0
-> eval: 24
-> eval: 4608
-> eval: 4608
-> eval: -4608
->
> expand: $primary_hostname myhost.test.ex
> hash: jmg monty fbWx
> hash: abcX abX aX X