Fix hurd bootstrap after 4c6f92daea

Hurd bootstrap with build-many-glibc.py fails for i686-gnu since
4c6f92daea:

In file included from zic.c:16:
private.h:849:1: error: static declaration of ‘mempcpy’ follows non-static declaration
  849 | mempcpy(void *restrict s1, void const *restrict s2, size_t n)
      | ^~~~~~~
In file included from ../include/string.h:60,
                 from private.h:222:
../string/string.h:432:14: note: previous declaration of ‘mempcpy’ with type [...]
  432 | extern void *mempcpy (void *__restrict __dest,
      |              ^~~~~~~

The libc-symbols.h already defined some HAVE_*, but timezone files are
built with -D_ISOMAC.  Remove its usage and only define _ and N_
macros if not already defined.

Checked on x86_64-linux-gnu and with a build-many-glibcs.py build for
i686-gnu.
Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
Reviewed-by: Paul Eggert <eggert@cs.ucla.edu>
This commit is contained in:
Adhemerval Zanella
2026-05-20 14:55:00 -03:00
parent 999fa30b36
commit 209ad6ff9d
3 changed files with 12 additions and 7 deletions
+1
View File
@@ -113,6 +113,7 @@
#define HAVE_LIBINTL_H 1
#define HAVE_WCTYPE_H 1
#define HAVE_ISWCTYPE 1
#define HAVE_MEMPCPY 1
#define ENABLE_NLS 1
/* The symbols in all the user (non-_) macros are C symbols. */
+1 -1
View File
@@ -67,7 +67,7 @@ tz-cflags = -DTZDIR='"$(zonedir)"' \
-DTZDEFAULT='"$(localtime-file)"' \
-DTZDEFRULES='"$(posixrules-file)"' \
-DTM_GMTOFF=tm_gmtoff -DTM_ZONE=tm_zone \
-DHAVE_GETTEXT -DUSE_LTZ=0 -D_ISOMAC -DTZ_DOMAIN='"libc"' \
-DHAVE_GETTEXT -DUSE_LTZ=0 -DTZ_DOMAIN='"libc"' \
-include $(common-objpfx)config.h $(config-cflags-wno-maybe-uninitialized)
CFLAGS-zdump.c += $(tz-cflags)
+10 -6
View File
@@ -1071,12 +1071,16 @@ time_t timeoff(struct tm *, long);
** The default is to use gettext if available, and use MSGID otherwise.
*/
#if HAVE_GETTEXT
# define _(msgid) gettext(msgid)
#else /* !HAVE_GETTEXT */
# define _(msgid) (msgid)
#endif /* !HAVE_GETTEXT */
#define N_(msgid) (msgid)
#ifndef _
# if HAVE_GETTEXT
# define _(msgid) gettext(msgid)
# else
# define _(msgid) (msgid)
# endif
#endif
#ifndef N_
# define N_(msgid) (msgid)
#endif
#if !defined TZ_DOMAIN && defined HAVE_GETTEXT
# define TZ_DOMAIN "tz"