[COMMITTED] Set default __TIMESIZE default to 64
Joseph Myers
joseph@codesourcery.com
Thu Dec 30 21:58:58 GMT 2021
On Thu, 23 Dec 2021, Adhemerval Zanella via Libc-alpha wrote:
> .../linux/powerpc/powerpc32/bits/timesize.h | 20 ++++++++++++++++
> .../sysv/linux/s390/s390-32/bits/timesize.h | 20 ++++++++++++++++
> .../sysv/linux/sparc/sparc32/bits/timesize.h | 20 ++++++++++++++++
There should be no installed headers in such sub-architecture sysdeps
directories (unless the header is identical for all sub-architecture
variants of an architecture but required to be in the sub-architecture
directory to get the right header found in the sysdeps directory
ordering), because installed headers should be suitable to share between
all ABIs for an architecture. Instead, there need to be bits/timesize.h
headers for powerpc, s390 and sparc that contain conditionals to determine
the correct value of __TIMESIZE for a given compilation.
> diff --git a/sysdeps/unix/sysv/linux/mips/bits/timesize.h b/sysdeps/unix/sysv/linux/mips/bits/timesize.h
> new file mode 100644
> index 0000000000..95a27ad5b6
> --- /dev/null
> +++ b/sysdeps/unix/sysv/linux/mips/bits/timesize.h
> @@ -0,0 +1,24 @@
> +/* Bit size of the time_t type at glibc build time, Linux/MIPS.
> + Copyright (C) 2021 Free Software Foundation, Inc.
> + This file is part of the GNU C Library.
> +
> + The GNU C Library is free software; you can redistribute it and/or
> + modify it under the terms of the GNU Lesser General Public
> + License as published by the Free Software Foundation; either
> + version 2.1 of the License, or (at your option) any later version.
> +
> + The GNU C Library is distributed in the hope that it will be useful,
> + but WITHOUT ANY WARRANTY; without even the implied warranty of
> + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> + Lesser General Public License for more details.
> +
> + You should have received a copy of the GNU Lesser General Public
> + License along with the GNU C Library; if not, see
> + <https://www.gnu.org/licenses/>. */
> +
> +/* Size in bits of the 'time_t' type of the default ABI. */
> +#if _MIPS_SIM == _ABI64
Headers checking _MIPS_SIM like this should include <sgidefs.h> to ensure
all the _ABI* macros are defined (GCC only predefines the one for the
current ABI, so while the code would work correctly for other ABIs,
there's the potential for -Wundef warnings if <sgidefs.h> hasn't already
been included).
--
Joseph S. Myers
joseph@codesourcery.com
More information about the Libc-alpha
mailing list