]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Fix math_private.h multiple include guards.
authorJoseph Myers <joseph@codesourcery.com>
Fri, 20 Nov 2015 23:46:23 +0000 (23:46 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Fri, 20 Nov 2015 23:46:23 +0000 (23:46 +0000)
Various math_private.h headers are guarded by "#ifndef
_MATH_PRIVATE_H", but never define the macro.  Nothing else defines
the macro either (the generic math_private.h that they include defines
a different macro, _MATH_PRIVATE_H_), so those guards are ineffective.

With the recent inclusion of s_sin.c in s_sincos.c, this breaks the
build for MIPS, since the build of s_sincos.c ends up including
<math_private.h> twice and the MIPS version defines inline functions
such as libc_feholdexcept_mips, without a separate fenv_private.h
header with its own guards such as some architectures have.

This patch fixes all the problem headers to use architecture-specific
guard macro names, and to define those macros in the headers they
guard, just as some architectures already do.

Tested for x86 (testsuite, and that installed shared libraries are
unchanged by the patch), and for mips64 (that it fixes the build).

* sysdeps/arm/math_private.h [!_MATH_PRIVATE_H]: Change guard to
[!ARM_MATH_PRIVATE_H].
[!ARM_MATH_PRIVATE_H] (ARM_MATH_PRIVATE_H): Define macro.
* sysdeps/hppa/math_private.h [!_MATH_PRIVATE_H]: Change guard to
[!HPPA_MATH_PRIVATE_H].
[!HPPA_MATH_PRIVATE_H] (HPPA_MATH_PRIVATE_H): Define macro.
* sysdeps/i386/fpu/math_private.h [!_MATH_PRIVATE_H]: Change guard
to [!I386_MATH_PRIVATE_H].
[!I386_MATH_PRIVATE_H] (I386_MATH_PRIVATE_H): Define macro.
* sysdeps/m68k/m680x0/fpu/math_private.h [!_MATH_PRIVATE_H]:
Change guard to [!M68K_MATH_PRIVATE_H].
[!M68K_MATH_PRIVATE_H] (M68K_MATH_PRIVATE_H): Define macro.
* sysdeps/microblaze/math_private.h [!_MATH_PRIVATE_H]: Change
guard to [!MICROBLAZE_MATH_PRIVATE_H].
[!MICROBLAZE_MATH_PRIVATE_H] (MICROBLAZE_MATH_PRIVATE_H): Define
macro.
* sysdeps/mips/math_private.h [!_MATH_PRIVATE_H]: Change guard to
[!MIPS_MATH_PRIVATE_H].
[!MIPS_MATH_PRIVATE_H] (MIPS_MATH_PRIVATE_H): Define macro.
* sysdeps/nios2/math_private.h [!_MATH_PRIVATE_H]: Change guard to
[!NIO2_MATH_PRIVATE_H].
[!NIO2_MATH_PRIVATE_H] (NIO2_MATH_PRIVATE_H): Define macro.
* sysdeps/tile/math_private.h [!_MATH_PRIVATE_H]: Change guard to
[!TILE_MATH_PRIVATE_H].
[!TILE_MATH_PRIVATE_H] (TILE_MATH_PRIVATE_H): Define macro.

ChangeLog
sysdeps/arm/math_private.h
sysdeps/hppa/math_private.h
sysdeps/i386/fpu/math_private.h
sysdeps/m68k/m680x0/fpu/math_private.h
sysdeps/microblaze/math_private.h
sysdeps/mips/math_private.h
sysdeps/nios2/math_private.h
sysdeps/tile/math_private.h

index 51818799ead8096ab07353787ec43de842f20fe5..c0235f3cdefdbaeb1b5000690f13b63aa8e93dce 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,31 @@
 2015-11-20  Joseph Myers  <joseph@codesourcery.com>
 
+       * sysdeps/arm/math_private.h [!_MATH_PRIVATE_H]: Change guard to
+       [!ARM_MATH_PRIVATE_H].
+       [!ARM_MATH_PRIVATE_H] (ARM_MATH_PRIVATE_H): Define macro.
+       * sysdeps/hppa/math_private.h [!_MATH_PRIVATE_H]: Change guard to
+       [!HPPA_MATH_PRIVATE_H].
+       [!HPPA_MATH_PRIVATE_H] (HPPA_MATH_PRIVATE_H): Define macro.
+       * sysdeps/i386/fpu/math_private.h [!_MATH_PRIVATE_H]: Change guard
+       to [!I386_MATH_PRIVATE_H].
+       [!I386_MATH_PRIVATE_H] (I386_MATH_PRIVATE_H): Define macro.
+       * sysdeps/m68k/m680x0/fpu/math_private.h [!_MATH_PRIVATE_H]:
+       Change guard to [!M68K_MATH_PRIVATE_H].
+       [!M68K_MATH_PRIVATE_H] (M68K_MATH_PRIVATE_H): Define macro.
+       * sysdeps/microblaze/math_private.h [!_MATH_PRIVATE_H]: Change
+       guard to [!MICROBLAZE_MATH_PRIVATE_H].
+       [!MICROBLAZE_MATH_PRIVATE_H] (MICROBLAZE_MATH_PRIVATE_H): Define
+       macro.
+       * sysdeps/mips/math_private.h [!_MATH_PRIVATE_H]: Change guard to
+       [!MIPS_MATH_PRIVATE_H].
+       [!MIPS_MATH_PRIVATE_H] (MIPS_MATH_PRIVATE_H): Define macro.
+       * sysdeps/nios2/math_private.h [!_MATH_PRIVATE_H]: Change guard to
+       [!NIO2_MATH_PRIVATE_H].
+       [!NIO2_MATH_PRIVATE_H] (NIO2_MATH_PRIVATE_H): Define macro.
+       * sysdeps/tile/math_private.h [!_MATH_PRIVATE_H]: Change guard to
+       [!TILE_MATH_PRIVATE_H].
+       [!TILE_MATH_PRIVATE_H] (TILE_MATH_PRIVATE_H): Define macro.
+
        [BZ #15421]
        * sysdeps/ieee754/s_signgam.c (signgam): Rename to __signgam,
        initialize with 0 and define as weak alias of __signgam.
index 541a7f8d93b466610544d006d4ef976f83dca9aa..c175b15601f88f712620839250b79bd1fbd6c877 100644 (file)
@@ -1,4 +1,5 @@
-#ifndef _MATH_PRIVATE_H
+#ifndef ARM_MATH_PRIVATE_H
+#define ARM_MATH_PRIVATE_H 1
 
 #include "fenv_private.h"
 #include_next <math_private.h>
index fbcc8841b4a632b50a333dfd7eeeffdc1ad54ba3..457495e7867a6fb75ce82d765661703f2265b0e8 100644 (file)
@@ -16,7 +16,8 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
-#ifndef _MATH_PRIVATE_H
+#ifndef HPPA_MATH_PRIVATE_H
+#define HPPA_MATH_PRIVATE_H 1
 
 /* One of the few architectures where the meaning of the quiet/signaling bit is
    inverse to IEEE 754-2008 (as well as common practice for IEEE 754-1985).  */
index 541a7f8d93b466610544d006d4ef976f83dca9aa..485214391f83dd43354019a48f247422cdc715dc 100644 (file)
@@ -1,4 +1,5 @@
-#ifndef _MATH_PRIVATE_H
+#ifndef I386_MATH_PRIVATE_H
+#define I386_MATH_PRIVATE_H 1
 
 #include "fenv_private.h"
 #include_next <math_private.h>
index 217de2ecc288389ed8bdc272f4aa2cee65e2b981..2b7909535e5f821d8404e6d48ba65b6be16fd86b 100644 (file)
@@ -1,4 +1,5 @@
-#ifndef _MATH_PRIVATE_H
+#ifndef M68K_MATH_PRIVATE_H
+#define M68K_MATH_PRIVATE_H 1
 
 #define math_opt_barrier(x) \
 ({ __typeof (x) __x;                                   \
index 2cfaacad1be3009ca9a73ed469c57e5ff3ca2918..73e59df5b9daba809d562d1a9b56765bbb98bd99 100644 (file)
@@ -1,4 +1,5 @@
-#ifndef _MATH_PRIVATE_H
+#ifndef MICROBLAZE_MATH_PRIVATE_H
+#define MICROBLAZE_MATH_PRIVATE_H 1
 
 /* Suppress use of exceptions here to avoid build errors if the FE_*
    macros aren't definied. Only allow rounding modes implemented for
index 3db02734207e7912609cc16e01cb7b35bd6f4c31..2f544245b7bdefe758d2a5e02f5e1817d9fff693 100644 (file)
@@ -16,7 +16,8 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
-#ifndef _MATH_PRIVATE_H
+#ifndef MIPS_MATH_PRIVATE_H
+#define MIPS_MATH_PRIVATE_H 1
 
 #ifdef __mips_nan2008
 /* MIPS aligned to IEEE 754-2008.  */
index a89db448dd059beab764f4fbd5901fe44320fa74..a32579ff4771aedc0f9d680eb030ebec5ee43ed3 100644 (file)
@@ -1,4 +1,5 @@
-#ifndef _MATH_PRIVATE_H
+#ifndef NIO2_MATH_PRIVATE_H
+#define NIO2_MATH_PRIVATE_H 1
 
 /* Suppress use of exceptions here to avoid build errors if the FE_*
    macros aren't defined. Only allow rounding modes implemented for Nios II.
index 9b6b68b324123e35c1211fe580f3fb78db1360a7..99daec4093d15fb092f86fe8fa7a1c75c3c465a3 100644 (file)
@@ -1,4 +1,5 @@
-#ifndef _MATH_PRIVATE_H
+#ifndef TILE_MATH_PRIVATE_H
+#define TILE_MATH_PRIVATE_H 1
 
 /* Internally, we suppress any use of exception or rounding other
    than what is supported by the hardware.  This does mean that some