Re: [PATCH] Update gnulib to current trunk

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] Update gnulib to current trunk

Sourceware - gdb-patches mailing list
It looks like the original message is in the moderation queue because
it's a little too big, so re-sending this as a gzipped attachment.

This fixes two issues on Windows: Update.
https://sourceware.org/pipermail/gdb-patches/2020-June/169978.html

gnulib/ChangeLog:

2020-06-30  Christian Biesinger  <[hidden email]>

        * Makefile.in: Regenerate.
        * aclocal.m4: Regenerate.
        * config.in: Regenerate.
        * configure: Regenerate.
        * import/Makefile.am: Update.
        * import/Makefile.in: Regenerate.
        * import/alloca.in.h (if): Update.
        * import/assure.h (affirm): Update.
        * import/at-func.c: Update.
        * import/attribute.h: New file.
        * import/btowc.c: New file.
        * import/canonicalize-lgpl.c: Update.
        * import/count-one-bits.h (COUNT_ONE_BITS_GENERIC): Update.
        (COUNT_ONE_BITS): Update.
        (intrinsic): Update.
        (__popcnt64): Update.
        (popcount_supported): Update.
        * import/ctype.in.h: New file.
        * import/dirent-private.h (WIN32_FIND_DATA): Update.
        * import/dirent.in.h (_GL_ATTRIBUTE_PURE): Update.
        * import/dirname.h: Update.
        * import/dosname.h: Remove.
        * import/error.h (_GL_ATTRIBUTE_FORMAT): Update.
        * import/extra/update-copyright: Update.
        * import/fchdir.c: Update.
        * import/fcntl.in.h (GNULIB_defined_rpl_fcntl): Update.
        (GNULIB_defined_fcntl): Update.
        * import/filename.h (HAS_DEVICE): Update.
        (IS_ABSOLUTE_PATH): Update.
        (IS_PATH_WITH_DIR): Update.
        (FILE_SYSTEM_PREFIX_LEN): Update.
        (_IS_DRIVE_LETTER): Update.
        (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): Update.
        (IS_ABSOLUTE_FILE_NAME): Update.
        (IS_RELATIVE_FILE_NAME): Update.
        (IS_FILE_NAME_WITH_DIR): Update.
        * import/filenamecat-lgpl.c (mfile_name_concat): Update.
        * import/fnmatch.c (WIDE_CHAR_SUPPORT): Update.
        (btowc): Update.
        (iswctype): Update.
        (mempcpy): Update.
        (strnlen): Update.
        (towlower): Update.
        (wcscat): Update.
        (wcslen): Update.
        (wctype): Update.
        (wmemchr): Update.
        (wmempcpy): Update.
        (SIZE_MAX): Update.
        (isblank): Update.
        (__libc_use_alloca): Update.
        (alloca): Update.
        (alloca_account): Update.
        (STREQ): Update.
        (CHAR_CLASS_MAX_LENGTH): Update.
        (IS_CHAR_CLASS): Update.
        (ISWCTYPE): Update.
        (if): Update.
        (HANDLE_MULTIBYTE): Update.
        (internal_function): Update.
        (FOLD): Update.
        (CHAR): Update.
        (UCHAR): Update.
        (INT): Update.
        (FCT): Update.
        (EXT): Update.
        (END): Update.
        (L_): Update.
        (BTOWC): Update.
        (STRLEN): Update.
        (STRCAT): Update.
        (MEMPCPY): Update.
        (MEMCHR): Update.
        (WIDE_CHAR_VERSION): Update.
        (STRUCT): Update.
        (FINDIDX): Update.
        (findidx): Update.
        (ALLOCA_LIMIT): Update.
        (SHLIB_COMPAT): Update.
        * import/fnmatch_loop.c (struct STRUCT): Update.
        (FCT): Update.
        (EXT): Update.
        (END): Update.
        (str): Update.
        (NEW_PATTERN): Update.
        * import/getcwd.c: Update.
        * import/getlogin_r.c (GetUserName): Update.
        * import/getprogname.c (getprogname): Update.
        * import/getrandom.c: New file.
        * import/gettimeofday.c: Remove.
        * import/glob.in.h (_Restrict_): Update.
        * import/inttypes.in.h (_GL_FUNCDECL_RPL): Update.
        (_GL_CXXALIAS_RPL): Update.
        (_GL_FUNCDECL_SYS): Update.
        (_GL_CXXALIAS_SYS): Update.
        * import/isblank.c: New file.
        * import/isnanl-nolibm.h (__has_builtin): Update.
        * import/libc-config.h (versioned_symbol): Update.
        (compat_symbol): Update.
        * import/limits.in.h (_GL_ALREADY_INCLUDING_LIMITS_H): Update.
        * import/localtime-buffer.c: Remove.
        * import/localtime-buffer.h: Remove.
        * import/m4/btowc.m4: New file.
        * import/m4/ctype.m4: New file.
        * import/m4/exponentl.m4: Update.
        * import/m4/fnmatch.m4: Update.
        * import/m4/getrandom.m4: New file.
        * import/m4/gettimeofday.m4: Remove.
        * import/m4/glob.m4: Update.
        * import/m4/gnulib-common.m4: Update.
        * import/m4/gnulib-comp.m4: Update.
        * import/m4/inttypes.m4: Update.
        * import/m4/isblank.m4: New file.
        * import/m4/isnanl.m4: Update.
        * import/m4/largefile.m4: Update.
        * import/m4/localtime-buffer.m4: Remove.
        * import/m4/mbtowc.m4: New file.
        * import/m4/memmem.m4: Update.
        * import/m4/minmax.m4: New file.
        * import/m4/signal_h.m4: Update.
        * import/m4/stdio_h.m4: Update.
        * import/m4/stdlib_h.m4: Update.
        * import/m4/string_h.m4: Update.
        * import/m4/strnlen.m4: New file.
        * import/m4/sys_random_h.m4: New file.
        * import/m4/sys_socket_h.m4: Update.
        * import/m4/sys_stat_h.m4: Update.
        * import/m4/sys_time_h.m4: Remove.
        * import/m4/time_h.m4: Update.
        * import/m4/unistd_h.m4: Update.
        * import/m4/wchar_h.m4: Update.
        * import/m4/wint_t.m4: Update.
        * import/m4/wmemchr.m4: New file.
        * import/m4/wmempcpy.m4: New file.
        * import/math.in.h (__has_builtin): Update.
        * import/mbrtowc.c (FALLTHROUGH): Update.
        * import/mbtowc-impl.h: New file.
        * import/mbtowc.c: New file.
        * import/minmax.h: New file.
        * import/open.c (open): Update.
        * import/openat-proc.c (openat_proc_name): Update.
        * import/openat.c (rpl_openat): Update.
        (openat_needs_fchdir): Update.
        * import/openat.h (FCHOWNAT_INLINE): Update.
        (CHOWNAT_INLINE): Update.
        (FCHMODAT_INLINE): Update.
        (CHMODAT_INLINE): Update.
        * import/opendir.c (WIN32_FIND_DATA): Update.
        (GetFullPathName): Update.
        (FindFirstFile): Update.
        * import/readdir.c (FindNextFile): Update.
        * import/rename.c (MoveFileEx): Update.
        * import/rewinddir.c (FindFirstFile): Update.
        * import/rmdir.c: Update.
        * import/signal.in.h (_GL_FUNCDECL_RPL): Update.
        (_GL_CXXALIAS_RPL): Update.
        (_GL_FUNCDECL_SYS): Update.
        (_GL_CXXALIAS_SYS): Update.
        * import/stat-w32.c (_WIN32_WINNT): Update.
        (LoadLibrary): Update.
        (GetFinalPathNameByHandle): Update.
        (GetProcAddress): Update.
        (DWORD): Update.
        (GetFileInformationByHandleExFunc): Update.
        (GetFinalPathNameByHandleFunc): Update.
        * import/stat.c (WIN32_FIND_DATA): Update.
        (CreateFile): Update.
        (FindFirstFile): Update.
        * import/stdio.in.h (_GL_ATTRIBUTE_FORMAT): Update.
        (_GL_FUNCDECL_RPL): Update.
        (_GL_CXXALIAS_RPL): Update.
        (_GL_FUNCDECL_SYS): Update.
        (_GL_CXXALIAS_SYS): Update.
        (_GL_FUNCDECL_RPL_1): Update.
        (_GL_CXXALIAS_RPL_1): Update.
        (_GL_CXXALIAS_SYS_CAST): Update.
        * import/stdlib.in.h (_GL_ATTRIBUTE_PURE): Update.
        (_GL_FUNCDECL_RPL): Update.
        (_GL_CXXALIAS_RPL): Update.
        (_GL_FUNCDECL_SYS): Update.
        (_GL_CXXALIAS_SYS): Update.
        * import/string.in.h (_GL_ATTRIBUTE_PURE): Update.
        (_GL_WARN_ON_USE): Update.
        (_GL_WARN_ON_USE_CXX): Update.
        (_GL_FUNCDECL_RPL): Update.
        (_GL_CXXALIAS_RPL): Update.
        (_GL_CXXALIAS_SYS): Update.
        (mbstok_r): Update.
        * import/strnlen.c: New file.
        * import/sys_random.in.h: New file.
        * import/sys_socket.in.h (GNULIB_defined_socklen_t): Update.
        (_GL_FUNCDECL_RPL): Update.
        (_GL_CXXALIAS_RPL): Update.
        (_GL_CXXALIAS_SYS_CAST): Update.
        * import/sys_stat.in.h (_GL_FUNCDECL_RPL): Update.
        (_GL_CXXALIAS_RPL): Update.
        (_GL_FUNCDECL_SYS): Update.
        (_GL_CXXALIAS_SYS): Update.
        (lchmod): Update.
        (_GL_CXXALIAS_RPL_1): Update.
        (stat): Update.
        * import/sys_time.in.h: Remove.
        * import/tempname.c (__set_errno): Update.
        (__secure_getenv): Update.
        (__try_tempname): Update.
        (__getpid): Update.
        (__gettimeofday): Update.
        (RANDOM_BITS): Update.
        (uint64_t): Update.
        (RANDOM_VALUE_MAX): Update.
        (BASE_62_DIGITS): Update.
        (BASE_62_POWER): Update.
        (try_tempname_len): Update.
        (try_file): Update.
        (try_dir): Update.
        (try_nocreate): Update.
        (gen_tempname_len): Update.
        (__gen_tempname): Update.
        (try_tempname): Update.
        * import/tempname.h (gen_tempname_len): Update.
        (try_tempname_len): Update.
        * import/time.in.h (_GL_FUNCDECL_RPL): Update.
        (_GL_CXXALIAS_RPL): Update.
        (_GL_CXXALIAS_SYS): Update.
        * import/unistd.in.h (if): Update.
        (_GL_FUNCDECL_SYS): Update.
        (_GL_CXXALIAS_SYS): Update.
        (_GL_CXXALIASWARN): Update.
        (_GL_WARN_ON_USE): Update.
        (_GL_FUNCDECL_RPL): Update.
        (_GL_CXXALIAS_RPL): Update.
        * import/verify.h: Update.
        * import/warn-on-use.h (_GL_WARN_ON_USE_CXX): Update.
        * import/wchar.in.h (_GL_ATTRIBUTE_PURE): Update.
        (_GL_FUNCDECL_RPL): Update.
        (_GL_CXXALIAS_RPL): Update.
        (_GL_FUNCDECL_SYS): Update.
        (_GL_CXXALIAS_SYS): Update.
        (_GL_CXXALIASWARN): Update.
        (_GL_WARN_ON_USE): Update.
        (_GL_CXXALIAS_SYS_CAST2): Update.
        (_GL_CXXALIASWARN1): Update.
        * import/windows-rwlock.c (CreateEvent): Update.
        * import/wmemchr-impl.h: New file.
        * import/wmemchr.c: New file.
        * import/wmempcpy.c: New file.
        * update-gnulib.sh: Update gnulib revision.
---
 gnulib/Makefile.in                            |   37 +-
 gnulib/aclocal.m4                             |   13 +-
 gnulib/config.in                              |  329 +-
 gnulib/configure                              | 2859 ++++++++++-------
 gnulib/import/Makefile.am                     |  196 +-
 gnulib/import/Makefile.in                     |  258 +-
 gnulib/import/alloca.in.h                     |   15 +-
 gnulib/import/assure.h                        |   24 +-
 gnulib/import/at-func.c                       |    2 +-
 gnulib/import/attribute.h                     |  215 ++
 gnulib/import/btowc.c                         |   39 +
 gnulib/import/canonicalize-lgpl.c             |    2 +-
 gnulib/import/count-one-bits.h                |   85 +-
 gnulib/import/ctype.in.h                      |   57 +
 gnulib/import/dirent-private.h                |    4 +
 gnulib/import/dirent.in.h                     |   10 +-
 gnulib/import/dirname.h                       |    2 +-
 gnulib/import/dosname.h                       |   52 -
 gnulib/import/error.h                         |   12 -
 gnulib/import/extra/update-copyright          |    4 +-
 gnulib/import/fchdir.c                        |    9 +-
 gnulib/import/fcntl.in.h                      |    6 +
 gnulib/import/filename.h                      |   88 +-
 gnulib/import/filenamecat-lgpl.c              |   22 +-
 gnulib/import/fnmatch.c                       |  429 ++-
 gnulib/import/fnmatch_loop.c                  |  573 ++--
 gnulib/import/getcwd.c                        |    8 +-
 gnulib/import/getlogin_r.c                    |    3 +
 gnulib/import/getprogname.c                   |    2 +-
 gnulib/import/getrandom.c                     |  187 ++
 gnulib/import/gettimeofday.c                  |  150 -
 gnulib/import/glob.in.h                       |    9 +-
 gnulib/import/inttypes.in.h                   |   24 +-
 gnulib/import/isblank.c                       |   33 +
 gnulib/import/isnanl-nolibm.h                 |    5 +-
 gnulib/import/libc-config.h                   |    3 +-
 gnulib/import/limits.in.h                     |   23 +-
 gnulib/import/localtime-buffer.c              |   60 -
 gnulib/import/m4/btowc.m4                     |  120 +
 gnulib/import/m4/ctype.m4                     |   32 +
 gnulib/import/m4/exponentl.m4                 |   14 +-
 gnulib/import/m4/fnmatch.m4                   |    6 +-
 gnulib/import/m4/getrandom.m4                 |   65 +
 gnulib/import/m4/gettimeofday.m4              |  128 -
 gnulib/import/m4/glob.m4                      |    3 +-
 gnulib/import/m4/gnulib-common.m4             |  229 +-
 gnulib/import/m4/gnulib-comp.m4               |  101 +-
 gnulib/import/m4/inttypes.m4                  |    4 +-
 gnulib/import/m4/isblank.m4                   |   17 +
 gnulib/import/m4/isnanl.m4                    |   17 +-
 gnulib/import/m4/largefile.m4                 |    3 -
 gnulib/import/m4/localtime-buffer.m4          |   21 -
 gnulib/import/m4/mbtowc.m4                    |   24 +
 gnulib/import/m4/memmem.m4                    |    4 +-
 gnulib/import/m4/minmax.m4                    |   44 +
 gnulib/import/m4/signal_h.m4                  |    4 +-
 gnulib/import/m4/stdio_h.m4                   |    4 +-
 gnulib/import/m4/stdlib_h.m4                  |    4 +-
 gnulib/import/m4/string_h.m4                  |    5 +-
 gnulib/import/m4/strnlen.m4                   |   30 +
 gnulib/import/m4/sys_random_h.m4              |   52 +
 gnulib/import/m4/sys_socket_h.m4              |    4 +-
 gnulib/import/m4/sys_stat_h.m4                |    7 +-
 gnulib/import/m4/sys_time_h.m4                |  110 -
 gnulib/import/m4/time_h.m4                    |    6 +-
 gnulib/import/m4/unistd_h.m4                  |    9 +-
 gnulib/import/m4/wchar_h.m4                   |    9 +-
 gnulib/import/m4/wint_t.m4                    |   12 +-
 gnulib/import/m4/wmemchr.m4                   |   32 +
 gnulib/import/m4/wmempcpy.m4                  |   21 +
 gnulib/import/math.in.h                       |   16 +-
 gnulib/import/mbrtowc.c                       |    9 +-
 gnulib/import/mbtowc-impl.h                   |   44 +
 gnulib/import/mbtowc.c                        |   26 +
 gnulib/import/minmax.h                        |   60 +
 gnulib/import/open.c                          |    6 +-
 gnulib/import/openat-proc.c                   |    5 +-
 gnulib/import/openat.c                        |   10 +-
 gnulib/import/openat.h                        |   20 +-
 gnulib/import/opendir.c                       |   10 +
 gnulib/import/readdir.c                       |    4 +
 gnulib/import/rename.c                        |    4 +
 gnulib/import/rewinddir.c                     |    4 +
 gnulib/import/rmdir.c                         |    2 +-
 gnulib/import/signal.in.h                     |   24 +-
 gnulib/import/stat-w32.c                      |   37 +-
 gnulib/import/stat.c                          |    7 +
 gnulib/import/stdio.in.h                      |  280 +-
 gnulib/import/stdlib.in.h                     |   82 +-
 gnulib/import/string.in.h                     |   50 +-
 gnulib/import/strnlen.c                       |   30 +
 gnulib/import/sys_random.in.h                 |   92 +
 gnulib/import/sys_socket.in.h                 |   75 +-
 gnulib/import/sys_stat.in.h                   |   44 +-
 gnulib/import/sys_time.in.h                   |  224 --
 gnulib/import/tempname.c                      |  280 +-
 gnulib/import/tempname.h                      |    7 +
 gnulib/import/time.in.h                       |   17 +-
 gnulib/import/unistd.in.h                     |   51 +-
 gnulib/import/verify.h                        |   20 +-
 gnulib/import/warn-on-use.h                   |   21 +-
 gnulib/import/wchar.in.h                      |  252 +-
 gnulib/import/windows-rwlock.c                |    4 +
 gnulib/import/wmemchr-impl.h                  |   27 +
 gnulib/import/wmemchr.c                       |   23 +
 .../import/{localtime-buffer.h => wmempcpy.c} |   23 +-
 gnulib/update-gnulib.sh                       |    2 +-
 107 files changed, 5448 insertions(+), 3434 deletions(-)
 create mode 100644 gnulib/import/attribute.h
 create mode 100644 gnulib/import/btowc.c
 create mode 100644 gnulib/import/ctype.in.h
 delete mode 100644 gnulib/import/dosname.h
 create mode 100644 gnulib/import/getrandom.c
 delete mode 100644 gnulib/import/gettimeofday.c
 create mode 100644 gnulib/import/isblank.c
 delete mode 100644 gnulib/import/localtime-buffer.c
 create mode 100644 gnulib/import/m4/btowc.m4
 create mode 100644 gnulib/import/m4/ctype.m4
 create mode 100644 gnulib/import/m4/getrandom.m4
 delete mode 100644 gnulib/import/m4/gettimeofday.m4
 create mode 100644 gnulib/import/m4/isblank.m4
 delete mode 100644 gnulib/import/m4/localtime-buffer.m4
 create mode 100644 gnulib/import/m4/mbtowc.m4
 create mode 100644 gnulib/import/m4/minmax.m4
 create mode 100644 gnulib/import/m4/strnlen.m4
 create mode 100644 gnulib/import/m4/sys_random_h.m4
 delete mode 100644 gnulib/import/m4/sys_time_h.m4
 create mode 100644 gnulib/import/m4/wmemchr.m4
 create mode 100644 gnulib/import/m4/wmempcpy.m4
 create mode 100644 gnulib/import/mbtowc-impl.h
 create mode 100644 gnulib/import/mbtowc.c
 create mode 100644 gnulib/import/minmax.h
 create mode 100644 gnulib/import/strnlen.c
 create mode 100644 gnulib/import/sys_random.in.h
 delete mode 100644 gnulib/import/sys_time.in.h
 create mode 100644 gnulib/import/wmemchr-impl.h
 create mode 100644 gnulib/import/wmemchr.c
 rename gnulib/import/{localtime-buffer.h => wmempcpy.c} (60%)

0001-Update-gnulib-to-current-trunk.patch.gz (133K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] Update gnulib to current trunk

Pedro Alves-2
On 6/30/20 8:19 PM, Christian Biesinger via Gdb-patches wrote:
> It looks like the original message is in the moderation queue because
> it's a little too big, so re-sending this as a gzipped attachment.
>
> This fixes two issues on Windows: Update.
> https://sourceware.org/pipermail/gdb-patches/2020-June/169978.html

This seems to be bringing in a good amount of churn.

I'm lazy, so I'll copy&paste my comments from:
 https://sourceware.org/legacy-ml/gdb-patches/2018-08/msg00768.html

"It is standard practice when updating gnulib to discuss the set of
modules that the exercise brings in due to module dependencies.
If we're now including some more modules, that may mean that
we could eliminate some older host compatibility code from gdb
in favor of gnulib's and list the module dependencies
explicitly in IMPORTED_GNULIB_MODULES in update-gnulib.h.

Conversely, there's a chance that we were depending on some
module that wasn't explicitly listed in IMPORTED_GNULIB_MODULES,
and an update could remove the module by mistake.

Another reason for that is that that are some modules that
are problematic for us (e.g., the one that pulls in Windows's
select replacement), so we need to look out for that, in case
it is pulled in by a dependency."

Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] Update gnulib to current trunk

Eli Zaretskii
> From: Pedro Alves <[hidden email]>
> Date: Thu, 2 Jul 2020 19:49:53 +0100
>
> > This fixes two issues on Windows: Update.
> > https://sourceware.org/pipermail/gdb-patches/2020-June/169978.html
>
> This seems to be bringing in a good amount of churn.

Maybe we should just update the two modules which were changed due to
my reports?  Would that be safer?
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] Update gnulib to current trunk

Pedro Alves-2
On 7/2/20 8:02 PM, Eli Zaretskii wrote:

>> From: Pedro Alves <[hidden email]>
>> Date: Thu, 2 Jul 2020 19:49:53 +0100
>>
>>> This fixes two issues on Windows: Update.
>>> https://sourceware.org/pipermail/gdb-patches/2020-June/169978.html
>>
>> This seems to be bringing in a good amount of churn.
>
> Maybe we should just update the two modules which were changed due to
> my reports?  Would that be safer?
>

I don't know.  I'd be happy with just seeing the list of the
dependencies being pulled in and dropped before making such
a decision.  It's just a precautionary measure, the update is
probably fine.

Pedro Alves
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] Update gnulib to current trunk

Sourceware - gdb-patches mailing list
Fair enough. This is the module diff:

--- /tmp/old 2020-07-06 13:04:17.837482577 -0500
+++ /tmp/new 2020-07-06 13:02:48.636984706 -0500
@@ -1,9 +1,12 @@
+Module list with included dependencies (indented):
     absolute-header
   alloca
     alloca-opt
     arpa_inet
     assure
     at-internal
+    attribute
+    btowc
     builtin-expect
     c99
   canonicalize-lgpl
@@ -13,12 +16,12 @@
     close
     closedir
   count-one-bits
+    ctype
     d-ino
     d-type
   dirent
   dirfd
     dirname-lgpl
-    dosname
     double-slash-root
     dup
     dup2
@@ -52,8 +55,8 @@
     getdtablesize
     getlogin_r
     getprogname
+    getrandom
     gettext-h
-    gettimeofday
   glob
     glob-h
     hard-locale
@@ -62,6 +65,7 @@
     intprops
   inttypes
     inttypes-incomplete
+    isblank
     isnand-nolibm
     isnanl-nolibm
     largefile
@@ -69,7 +73,6 @@
   limits-h
     localcharset
     locale
-    localtime-buffer
     lock
   lstat
     malloc-posix
@@ -78,11 +81,13 @@
     mbrtowc
     mbsinit
     mbsrtowcs
+    mbtowc
   memchr
   memmem
     memmem-simple
     mempcpy
     memrchr
+    minmax
   mkdir
   mkdtemp
   mkostemp
@@ -132,13 +137,14 @@
     strerror-override
   strerror_r-posix
     string
+    strnlen
     strnlen1
   strstr
     strstr-simple
   strtok_r
+    sys_random
     sys_socket
   sys_stat
-    sys_time
     sys_types
     sys_uio
     tempname
@@ -156,5 +162,7 @@
     windows-once
     windows-recmutex
     windows-rwlock
+    wmemchr
+    wmempcpy
     xalloc-oversized

It seems what is getting removed is:
-    dosname  (deprecated module and we don't use dosname.h)
-    gettimeofday (it looks like we use this in remote-fileio.c)
-    localtime-buffer (looks like basically an implementation detail)
-    sys_time (looks like GDB specifically did *not* want this per
comments in gdbsupport/gdb_sys_time.h)

So:
- For gettimeofday, the fixes in
https://www.gnu.org/software/gnulib/manual/html_node/gettimeofday.html#gettimeofday
don't look that important for gdb, but we could include the module.
Let me know if you want me to.

- For sys_time, we could perhaps replace the #undef in gdb_sys_time.h
with an #error. Let me know.

Christian

On Thu, Jul 2, 2020 at 2:07 PM Pedro Alves <[hidden email]> wrote:

>
> On 7/2/20 8:02 PM, Eli Zaretskii wrote:
> >> From: Pedro Alves <[hidden email]>
> >> Date: Thu, 2 Jul 2020 19:49:53 +0100
> >>
> >>> This fixes two issues on Windows: Update.
> >>> https://sourceware.org/pipermail/gdb-patches/2020-June/169978.html
> >>
> >> This seems to be bringing in a good amount of churn.
> >
> > Maybe we should just update the two modules which were changed due to
> > my reports?  Would that be safer?
> >
>
> I don't know.  I'd be happy with just seeing the list of the
> dependencies being pulled in and dropped before making such
> a decision.  It's just a precautionary measure, the update is
> probably fine.
>
> Pedro Alves
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] Update gnulib to current trunk

Sourceware - gdb-patches mailing list
Ping

On Mon, Jul 6, 2020, 13:19 Christian Biesinger <[hidden email]>
wrote:

> Fair enough. This is the module diff:
>
> --- /tmp/old 2020-07-06 13:04:17.837482577 -0500
> +++ /tmp/new 2020-07-06 13:02:48.636984706 -0500
> @@ -1,9 +1,12 @@
> +Module list with included dependencies (indented):
>      absolute-header
>    alloca
>      alloca-opt
>      arpa_inet
>      assure
>      at-internal
> +    attribute
> +    btowc
>      builtin-expect
>      c99
>    canonicalize-lgpl
> @@ -13,12 +16,12 @@
>      close
>      closedir
>    count-one-bits
> +    ctype
>      d-ino
>      d-type
>    dirent
>    dirfd
>      dirname-lgpl
> -    dosname
>      double-slash-root
>      dup
>      dup2
> @@ -52,8 +55,8 @@
>      getdtablesize
>      getlogin_r
>      getprogname
> +    getrandom
>      gettext-h
> -    gettimeofday
>    glob
>      glob-h
>      hard-locale
> @@ -62,6 +65,7 @@
>      intprops
>    inttypes
>      inttypes-incomplete
> +    isblank
>      isnand-nolibm
>      isnanl-nolibm
>      largefile
> @@ -69,7 +73,6 @@
>    limits-h
>      localcharset
>      locale
> -    localtime-buffer
>      lock
>    lstat
>      malloc-posix
> @@ -78,11 +81,13 @@
>      mbrtowc
>      mbsinit
>      mbsrtowcs
> +    mbtowc
>    memchr
>    memmem
>      memmem-simple
>      mempcpy
>      memrchr
> +    minmax
>    mkdir
>    mkdtemp
>    mkostemp
> @@ -132,13 +137,14 @@
>      strerror-override
>    strerror_r-posix
>      string
> +    strnlen
>      strnlen1
>    strstr
>      strstr-simple
>    strtok_r
> +    sys_random
>      sys_socket
>    sys_stat
> -    sys_time
>      sys_types
>      sys_uio
>      tempname
> @@ -156,5 +162,7 @@
>      windows-once
>      windows-recmutex
>      windows-rwlock
> +    wmemchr
> +    wmempcpy
>      xalloc-oversized
>
> It seems what is getting removed is:
> -    dosname  (deprecated module and we don't use dosname.h)
> -    gettimeofday (it looks like we use this in remote-fileio.c)
> -    localtime-buffer (looks like basically an implementation detail)
> -    sys_time (looks like GDB specifically did *not* want this per
> comments in gdbsupport/gdb_sys_time.h)
>
> So:
> - For gettimeofday, the fixes in
>
> https://www.gnu.org/software/gnulib/manual/html_node/gettimeofday.html#gettimeofday
> don't look that important for gdb, but we could include the module.
> Let me know if you want me to.
>
> - For sys_time, we could perhaps replace the #undef in gdb_sys_time.h
> with an #error. Let me know.
>
> Christian
>
> On Thu, Jul 2, 2020 at 2:07 PM Pedro Alves <[hidden email]> wrote:
> >
> > On 7/2/20 8:02 PM, Eli Zaretskii wrote:
> > >> From: Pedro Alves <[hidden email]>
> > >> Date: Thu, 2 Jul 2020 19:49:53 +0100
> > >>
> > >>> This fixes two issues on Windows: Update.
> > >>> https://sourceware.org/pipermail/gdb-patches/2020-June/169978.html
> > >>
> > >> This seems to be bringing in a good amount of churn.
> > >
> > > Maybe we should just update the two modules which were changed due to
> > > my reports?  Would that be safer?
> > >
> >
> > I don't know.  I'd be happy with just seeing the list of the
> > dependencies being pulled in and dropped before making such
> > a decision.  It's just a precautionary measure, the update is
> > probably fine.
> >
> > Pedro Alves
>
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] Update gnulib to current trunk

Pedro Alves-2
In reply to this post by Sourceware - gdb-patches mailing list
On 7/6/20 7:19 PM, Christian Biesinger wrote:

> Fair enough. This is the module diff:
>
> --- /tmp/old 2020-07-06 13:04:17.837482577 -0500
> +++ /tmp/new 2020-07-06 13:02:48.636984706 -0500
> @@ -1,9 +1,12 @@
> +Module list with included dependencies (indented):
>      absolute-header
>    alloca
>      alloca-opt
>      arpa_inet
>      assure
>      at-internal
> +    attribute
> +    btowc

I wonder whether "btowc" potentially conflicts with the logic
in gdb/gdb_wchar.h .  We should keep an eye out for that.


>      builtin-expect
>      c99
>    canonicalize-lgpl
> @@ -13,12 +16,12 @@
>      close
>      closedir
>    count-one-bits
> +    ctype
>      d-ino
>      d-type
>    dirent
>    dirfd
>      dirname-lgpl
> -    dosname
>      double-slash-root
>      dup
>      dup2
> @@ -52,8 +55,8 @@
>      getdtablesize
>      getlogin_r
>      getprogname
> +    getrandom
>      gettext-h
> -    gettimeofday
>    glob
>      glob-h
>      hard-locale
> @@ -62,6 +65,7 @@
>      intprops
>    inttypes
>      inttypes-incomplete
> +    isblank
>      isnand-nolibm
>      isnanl-nolibm
>      largefile
> @@ -69,7 +73,6 @@
>    limits-h
>      localcharset
>      locale
> -    localtime-buffer
>      lock
>    lstat
>      malloc-posix
> @@ -78,11 +81,13 @@
>      mbrtowc
>      mbsinit
>      mbsrtowcs
> +    mbtowc
>    memchr
>    memmem
>      memmem-simple
>      mempcpy
>      memrchr
> +    minmax
>    mkdir
>    mkdtemp
>    mkostemp
> @@ -132,13 +137,14 @@
>      strerror-override
>    strerror_r-posix
>      string
> +    strnlen
>      strnlen1
>    strstr
>      strstr-simple
>    strtok_r
> +    sys_random
>      sys_socket
>    sys_stat
> -    sys_time
>      sys_types
>      sys_uio
>      tempname
> @@ -156,5 +162,7 @@
>      windows-once
>      windows-recmutex
>      windows-rwlock
> +    wmemchr
> +    wmempcpy
>      xalloc-oversized
>
> It seems what is getting removed is:
> -    dosname  (deprecated module and we don't use dosname.h)
> -    gettimeofday (it looks like we use this in remote-fileio.c)
> -    localtime-buffer (looks like basically an implementation detail)
> -    sys_time (looks like GDB specifically did *not* want this per
> comments in gdbsupport/gdb_sys_time.h)
>
> So:
> - For gettimeofday, the fixes in
> https://www.gnu.org/software/gnulib/manual/html_node/gettimeofday.html#gettimeofday
> don't look that important for gdb, but we could include the module.
> Let me know if you want me to.

I guess it doesn't hurt to explicitly include it.  Might as well do it,
since we use the function and have been using the module thus far.

>
> - For sys_time, we could perhaps replace the #undef in gdb_sys_time.h
> with an #error. Let me know.

I suspect this gnulib commit is what caused gettimeofday and sys_time to
drop for us:

 commit 78f55d5374d6ff9b8460c48a42e924bf69775cd7
 Author:     Paul Eggert <[hidden email]>
 AuthorDate: Sun May 31 20:15:25 2020 -0700

    tempname: merge from glibc and coreutils
...
    * modules/tempname (Depends-on): Remove gettimeofday, sys_time.
    Add getentropy, libc-config.

As we can see from your diff:

>    sys_stat
> -    sys_time
>      sys_types
>      sys_uio
>      tempname

tempname is a dependency of sys_stat.

Another option would be to just get rid of gdb_sys_time.h,
i.e., revert all or most of:

 commit 438e1e427e8393de73d22617abe4d8eba0270e72
 Author:     Pedro Alves <[hidden email]>
 AuthorDate: Mon Aug 24 18:50:55 2015 +0100

    Prepare for gnulib update

But I'd be fine with just leaving this alone for now, in case
gnulib brings back the dependency.  It's also the easiest thing to
do (i.e., do nothing).

Thanks,
Pedro Alves