bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: host-cpu-c-abi: fix detection of MIPS ABI


From: Bruno Haible
Subject: Re: host-cpu-c-abi: fix detection of MIPS ABI
Date: Sun, 20 Aug 2017 01:28:14 +0200
User-agent: KMail/5.1.3 (Linux/4.4.0-91-generic; KDE/5.18.0; x86_64; ; )

On 2017-07-18 I wrote:
> +           [# In the n32 ABI, _ABIN32 is defined, _ABIO32 is not defined, and
> +            # _MIPS_SIM == _ABIN32.
> +            # In the 32 ABI, _ABIO32 is defined, _ABIN32 is not defined, and
> +            # _MIPS_SIM == _ABIO32.
>              AC_EGREP_CPP([yes],
> -              [#if __mips >= 3
> +              [#if defined _ABIN32
>                 yes
>                 #endif],
>                [gl_cv_host_cpu_c_abi=mipsn32],

Well, it turns out it is not a good practice to test 'defined _ABIN32' or
'defined _ABIO32' because once <sgidefs.h> gets included, they are both defined!
It's better to test _MIPS_SIM.


2017-08-19  Bruno Haible  <address@hidden>

        host-cpu-c-abi: Improve detection of MIPS ABI.
        * m4/host-cpu-c-abi.m4 (gl_HOST_CPU_C_ABI): For MIPS, test the value of
        _MIPS_SIM.

diff --git a/m4/host-cpu-c-abi.m4 b/m4/host-cpu-c-abi.m4
index 01c5a66..02f7b8a 100644
--- a/m4/host-cpu-c-abi.m4
+++ b/m4/host-cpu-c-abi.m4
@@ -1,4 +1,4 @@
-# host-cpu-c-abi.m4 serial 6
+# host-cpu-c-abi.m4 serial 7
 dnl Copyright (C) 2002-2017 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -157,12 +157,12 @@ changequote([,])dnl
             yes
             #endif],
            [gl_cv_host_cpu_c_abi=mips64],
-           [# In the n32 ABI, _ABIN32 is defined, _ABIO32 is not defined, and
-            # _MIPS_SIM == _ABIN32.
-            # In the 32 ABI, _ABIO32 is defined, _ABIN32 is not defined, and
-            # _MIPS_SIM == _ABIO32.
+           [# In the n32 ABI, _ABIN32 is defined, _ABIO32 is not defined (but
+            # may later get defined by <sgidefs.h>), and _MIPS_SIM == _ABIN32.
+            # In the 32 ABI, _ABIO32 is defined, _ABIN32 is not defined (but
+            # may later get defined by <sgidefs.h>), and _MIPS_SIM == _ABIO32.
             AC_EGREP_CPP([yes],
-              [#if defined _ABIN32
+              [#if (_MIPS_SIM == _ABIN32)
                yes
                #endif],
               [gl_cv_host_cpu_c_abi=mipsn32],




reply via email to

[Prev in Thread] Current Thread [Next in Thread]