diff options
author | Erik de Castro Lopo <erikd@mega-nerd.com> | 2015-03-11 20:51:42 +1100 |
---|---|---|
committer | Erik de Castro Lopo <erikd@mega-nerd.com> | 2015-03-12 08:28:01 +1100 |
commit | 7566d3d4c11c16801e1c98093c4db33589451c17 (patch) | |
tree | a7832e669f12bc6467d2717b36d8495abdc19483 /configure.ac | |
parent | 336f6a54293b6304a66018eec398af6ef76322ef (diff) | |
download | flac-7566d3d4c11c16801e1c98093c4db33589451c17.tar.gz |
configure.ac : Tweak for x32 architecture.
The x32 architecture uses and ILP32 (32 bit ints, longs and pointers)
on an x86_64 CPU. Since the CPU is x86_64 we need to set FLAC__CPU_X86_64
even though the pointer size is 32 bits.
Patch-from: Stuart Shelton
Closes: https://sourceforge.net/p/flac/bugs/427/
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 37 |
1 files changed, 24 insertions, 13 deletions
diff --git a/configure.ac b/configure.ac index 3b1c037e..2dcc6987 100644 --- a/configure.ac +++ b/configure.ac @@ -105,19 +105,30 @@ AC_CHECK_SIZEOF(void*,1) asm_optimisation=no case "$host_cpu" in amd64|x86_64) - if test $ac_cv_sizeof_voidp = 4 ; then - # This must be a 32 bit user space running on 64 bit kernel so treat - # this as ia32. - cpu_ia32=true - AC_DEFINE(FLAC__CPU_IA32) - AH_TEMPLATE(FLAC__CPU_IA32, [define if building for ia32/i386]) - else - # x86_64 user space and kernel. - cpu_x86_64=true - AC_DEFINE(FLAC__CPU_X86_64) - AH_TEMPLATE(FLAC__CPU_X86_64, [define if building for x86_64]) - fi - asm_optimisation=$asm_opt + case "$host" in + *gnux32) + # x32 user space and 64 bit kernel. + cpu_x86_64=true + AC_DEFINE(FLAC__CPU_X86_64) + AH_TEMPLATE(FLAC__CPU_X86_64, [define if building for x86_64]) + asm_optimisation=$asm_opt + ;; + *) + if test $ac_cv_sizeof_voidp = 4 ; then + # This must be a 32 bit user space running on 64 bit kernel so treat + # this as ia32. + cpu_ia32=true + AC_DEFINE(FLAC__CPU_IA32) + AH_TEMPLATE(FLAC__CPU_IA32, [define if building for ia32/i386]) + else + # x86_64 user space and kernel. + cpu_x86_64=true + AC_DEFINE(FLAC__CPU_X86_64) + AH_TEMPLATE(FLAC__CPU_X86_64, [define if building for x86_64]) + fi + asm_optimisation=$asm_opt + ;; + esac ;; i*86) cpu_ia32=true |