]> Savannah Git Hosting - gnulib.git/commitdiff
sys_socket: Support several gnulib-tool invocations better.
authorBruno Haible <bruno@clisp.org>
Tue, 24 Dec 2024 10:21:51 +0000 (11:21 +0100)
committerBruno Haible <bruno@clisp.org>
Wed, 25 Dec 2024 14:27:21 +0000 (15:27 +0100)
* lib/sys_socket.in.h (_GL_ALREADY_INCLUDING_SYS_SOCKET_H): Rename to a
macro that depends on GUARD_PREFIX.
(struct msghdr): Avoid duplicate definition.

ChangeLog
lib/sys_socket.in.h

index 2ed219d17e5096b8428b69e6352e589093d1dbc1..fcf94b367c8791c48f9493b6df02cd7050774a6b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2024-12-24  Bruno Haible  <bruno@clisp.org>
+
+       sys_socket: Support several gnulib-tool invocations better.
+       * lib/sys_socket.in.h (_GL_ALREADY_INCLUDING_SYS_SOCKET_H): Rename to a
+       macro that depends on GUARD_PREFIX.
+       (struct msghdr): Avoid duplicate definition.
+
 2024-12-24  Bruno Haible  <bruno@clisp.org>
 
        string: Support several gnulib-tool invocations better.
index ac28bab1b80613991f71431d5fe2ad0ef2dd1f7f..cac65247b1fb8b5f4173df88a129903d89264ae4 100644 (file)
@@ -27,7 +27,7 @@
 #endif
 @PRAGMA_COLUMNS@
 
-#if defined _GL_ALREADY_INCLUDING_SYS_SOCKET_H
+#if defined _@GUARD_PREFIX@_ALREADY_INCLUDING_SYS_SOCKET_H
 /* Special invocation convention:
    - On Cygwin 1.5.x we have a sequence of nested includes
      <sys/socket.h> -> <cygwin/socket.h> -> <asm/socket.h> -> <cygwin/if.h>,
@@ -43,7 +43,7 @@
 
 #if @HAVE_SYS_SOCKET_H@
 
-# define _GL_ALREADY_INCLUDING_SYS_SOCKET_H
+# define _@GUARD_PREFIX@_ALREADY_INCLUDING_SYS_SOCKET_H
 
 /* On many platforms, <sys/socket.h> assumes prior inclusion of
    <sys/types.h>.  */
@@ -56,7 +56,7 @@
 /* The include_next requires a split double-inclusion guard.  */
 # @INCLUDE_NEXT@ @NEXT_SYS_SOCKET_H@
 
-# undef _GL_ALREADY_INCLUDING_SYS_SOCKET_H
+# undef _@GUARD_PREFIX@_ALREADY_INCLUDING_SYS_SOCKET_H
 
 #endif
 
@@ -202,6 +202,7 @@ struct sockaddr_storage
 
 /* Rudimentary 'struct msghdr'; this works as long as you don't try to
    access msg_control or msg_controllen.  */
+# if !defined GNULIB_defined_struct_msghdr
 struct msghdr {
   void *msg_name;
   socklen_t msg_namelen;
@@ -209,6 +210,8 @@ struct msghdr {
   int msg_iovlen;
   int msg_flags;
 };
+#  define GNULIB_defined_struct_msghdr 1
+# endif
 
 #endif