summaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
authorMans Rullgard <mans@mansr.com>2012-10-23 23:33:44 +0100
committerMans Rullgard <mans@mansr.com>2012-10-24 16:26:51 +0100
commitd4c99513f41272b9753e59642724717b834710a0 (patch)
tree075988702572731f5f961a81e97b93a353185159 /configure
parentc44cef978bd5c2692606a7a4ef4a7da393147ab0 (diff)
configure: generalise 64-bit test
Signed-off-by: Mans Rullgard <mans@mansr.com>
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure11
1 files changed, 9 insertions, 2 deletions
diff --git a/configure b/configure
index 37cdf1e096..b1c6d4511c 100755
--- a/configure
+++ b/configure
@@ -2668,13 +2668,20 @@ EOF
check_host_cflags -std=c99
check_host_cflags -Wall
+check_64bit(){
+ arch32=$1
+ arch64=$2
+ expr=$3
+ check_code cc "" "int test[2*($expr) - 1]" &&
+ subarch=$arch64 || subarch=$arch32
+}
+
case "$arch" in
alpha|ia64|mips|parisc|sparc)
spic=$shared
;;
x86)
- subarch="x86_32"
- check_code cc "" "int test[(int)sizeof(char*) - 7]" && subarch="x86_64"
+ check_64bit x86_32 x86_64 'sizeof(void *) > 4'
if test "$subarch" = "x86_64"; then
spic=$shared
fi