diff options
author | John Paul Adrian Glaubitz <[email protected]> | 2017-03-23 01:55:00 +0100 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2017-03-22 17:55:00 -0700 |
commit | d48be524ce96a1a6011bb658985c5b7087d576d2 (patch) | |
tree | 9abeb8c6ee75b9047a464c0a40d61def84219c93 /lib | |
parent | 64fc776208ad14b0078b89317b0f3b24338e10c1 (diff) |
libspl: Fix incorrect use of platform defines on sparc64
libspl tries to detect sparc64 by checking whether __sparc64__
is defined. Unfortunately, this assumption is not correct as
sparc64 does not define __sparc64__ but it defines __sparc__
and __arch64__ instead. This leads to sparc64 being detected
as 32-Bit sparc and the build fails because both _ILP32 and
_LP64 are defined in this case.
To fix the problem, remove the checks for __sparc64__ and
just check __arch64__ if a sparc host was previously
detected with __sparc__.
Reviewed-by: Brian Behlendorf <[email protected]>
Signed-off-by: John Paul Adrian Glaubitz <[email protected]>
Closes #5913
Diffstat (limited to 'lib')
-rw-r--r-- | lib/libspl/include/sys/isa_defs.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/libspl/include/sys/isa_defs.h b/lib/libspl/include/sys/isa_defs.h index 90d7a4971..a5bea0396 100644 --- a/lib/libspl/include/sys/isa_defs.h +++ b/lib/libspl/include/sys/isa_defs.h @@ -130,7 +130,7 @@ extern "C" { #define _SUNOS_VTOC_16 /* sparc arch specific defines */ -#elif defined(__sparc) || defined(__sparc__) || defined(__sparc64__) +#elif defined(__sparc) || defined(__sparc__) #if !defined(__sparc) #define __sparc @@ -143,7 +143,7 @@ extern "C" { #define _BIG_ENDIAN #define _SUNOS_VTOC_16 -#if defined(__sparc64__) +#if defined(__arch64__) #if !defined(_LP64) #define _LP64 #endif |