mirror of https://gitee.com/openkylin/libvirt.git
build: fix mingw build of gnulib openpty
Commit f7bd00c12
pulled in a gnulib module that fails to compile
on mingw. Work around it while waiting for an upstream gnulib fix.
* gnulib/local/lib/pty.in.h (openpty): Provide forward
declarations of opaque structs not present on mingw.
* gnulib/local/lib/openpty.c (openpty): Provide stub for mingw.
This commit is contained in:
parent
676fdf8cb5
commit
85cf8d3899
|
@ -0,0 +1,26 @@
|
|||
diff --git c/lib/openpty.c i/lib/openpty.c
|
||||
index c398db5..d61d5ba 100644
|
||||
--- c/lib/openpty.c
|
||||
+++ i/lib/openpty.c
|
||||
@@ -32,6 +32,21 @@ rpl_openpty (int *amaster, int *aslave, char *name,
|
||||
(struct winsize *) winp);
|
||||
}
|
||||
|
||||
+#elif (defined _WIN32 || defined __WIN32__) && !defined __CYGWIN__ /* mingw */
|
||||
+
|
||||
+# include <errno.h>
|
||||
+
|
||||
+int
|
||||
+openpty (int *amaster _GL_UNUSED, int *aslave _GL_UNUSED,
|
||||
+ char *name _GL_UNUSED,
|
||||
+ struct termios const *termp _GL_UNUSED,
|
||||
+ struct winsize const *winp _GL_UNUSED)
|
||||
+{
|
||||
+ /* Mingw lacks pseudo-terminals altogether. */
|
||||
+ errno = ENOSYS;
|
||||
+ return -1;
|
||||
+}
|
||||
+
|
||||
#else /* AIX 5.1, HP-UX 11, IRIX 6.5, Solaris 10, mingw */
|
||||
|
||||
# include <fcntl.h>
|
|
@ -0,0 +1,13 @@
|
|||
diff --git c/lib/pty.in.h i/lib/pty.in.h
|
||||
index aff989c..00eecc6 100644
|
||||
--- c/lib/pty.in.h
|
||||
+++ i/lib/pty.in.h
|
||||
@@ -92,6 +92,8 @@ _GL_WARN_ON_USE (forkpty, "forkpty is not declared consistently - "
|
||||
/* Create pseudo tty master slave pair and set terminal attributes
|
||||
according to TERMP and WINP. Return handles for both ends in
|
||||
*AMASTER and *ASLAVE, and return the name of the slave end in NAME. */
|
||||
+struct termios;
|
||||
+struct winsize;
|
||||
# if @REPLACE_OPENPTY@
|
||||
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
|
||||
# undef openpty
|
Loading…
Reference in New Issue