]> code.delx.au - gnu-emacs/blobdiff - nt/inc/ms-w32.h
Adapt 'struct timespec' to next release of MinGW runtime
[gnu-emacs] / nt / inc / ms-w32.h
index adac2e3b4a1563eea83541df6bd92f773f20affb..bfa5bb5e14916a0d865446c5e970d064b77dda5f 100644 (file)
@@ -58,10 +58,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
    Look in <sys/time.h> for a timeval structure.  */
 #define HAVE_TIMEVAL 1
 
-/* But our select implementation doesn't allow us to make non-blocking
-   connects.  So until that is fixed, this is necessary:  */
-#define BROKEN_NON_BLOCKING_CONNECT 1
-
 /* And the select implementation does 1-byte read-ahead waiting
    for received packets, so datagrams are broken too.  */
 #define BROKEN_DATAGRAM_SOCKETS 1
@@ -314,7 +310,10 @@ int _getpid (void);
    elsewhere, but we don't use lib/time.h where the structure is
    defined.  */
 /* MinGW64 defines 'struct timespec' and _TIMESPEC_DEFINED in sys/types.h.  */
-#ifndef _TIMESPEC_DEFINED
+/* Mingw.org's MinGW runtime versions 3.22 and upward define 'struct
+   timespec' and __struct_timespec_defined in parts/time.h, which is
+   included by time.h.  */
+#if !defined (_TIMESPEC_DEFINED) && !defined (__struct_timespec_defined)
 struct timespec
 {
   time_t       tv_sec;         /* seconds */
@@ -597,5 +596,7 @@ extern void _DebPrint (const char *fmt, ...);
 #endif
 #endif
 
+/* Event name for when emacsclient starts the Emacs daemon on Windows.  */
+#define W32_DAEMON_EVENT "EmacsServerEvent"
 
 /* ============================================================ */