aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2021-06-08 17:52:28 -0400
committerMike Frysinger <vapier@gentoo.org>2024-01-01 18:23:28 -0500
commite11ccde12b191297c53c6e7a3ec250143c3c7c1f (patch)
treecdbe7dbc69ba00d13416ed4b00539a5b937c08fb
parent1b89e2b72052e60fc7a6c0301a67070accc714e1 (diff)
downloadgdb-e11ccde12b191297c53c6e7a3ec250143c3c7c1f.zip
gdb-e11ccde12b191297c53c6e7a3ec250143c3c7c1f.tar.gz
gdb-e11ccde12b191297c53c6e7a3ec250143c3c7c1f.tar.bz2
gnulib: import nonblocking module
This provides a portable API for managing O_NONBLOCK settings. The sim will use this to replace its own incomplete shims.
-rw-r--r--gnulib/Makefile.in12
-rw-r--r--gnulib/aclocal.m44
-rw-r--r--gnulib/config.in20
-rwxr-xr-xgnulib/configure435
-rw-r--r--gnulib/import/Makefile.am51
-rw-r--r--gnulib/import/Makefile.in404
-rw-r--r--gnulib/import/ioctl.c92
-rw-r--r--gnulib/import/m4/asm-underscore.m483
-rw-r--r--gnulib/import/m4/gnulib-cache.m42
-rw-r--r--gnulib/import/m4/gnulib-comp.m429
-rw-r--r--gnulib/import/m4/ioctl.m444
-rw-r--r--gnulib/import/m4/nonblocking.m429
-rw-r--r--gnulib/import/m4/sys_ioctl_h.m479
-rw-r--r--gnulib/import/nonblocking.c163
-rw-r--r--gnulib/import/nonblocking.h62
-rw-r--r--gnulib/import/sys_ioctl.in.h79
-rwxr-xr-xgnulib/update-gnulib.sh1
17 files changed, 1409 insertions, 180 deletions
diff --git a/gnulib/Makefile.in b/gnulib/Makefile.in
index 02886fe..b1946cb 100644
--- a/gnulib/Makefile.in
+++ b/gnulib/Makefile.in
@@ -112,6 +112,7 @@ am__aclocal_m4_deps = $(top_srcdir)/import/m4/00gnulib.m4 \
$(top_srcdir)/import/m4/absolute-header.m4 \
$(top_srcdir)/import/m4/alloca.m4 \
$(top_srcdir)/import/m4/arpa_inet_h.m4 \
+ $(top_srcdir)/import/m4/asm-underscore.m4 \
$(top_srcdir)/import/m4/btowc.m4 \
$(top_srcdir)/import/m4/builtin-expect.m4 \
$(top_srcdir)/import/m4/canonicalize.m4 \
@@ -171,6 +172,7 @@ am__aclocal_m4_deps = $(top_srcdir)/import/m4/00gnulib.m4 \
$(top_srcdir)/import/m4/include_next.m4 \
$(top_srcdir)/import/m4/inet_ntop.m4 \
$(top_srcdir)/import/m4/inttypes.m4 \
+ $(top_srcdir)/import/m4/ioctl.m4 \
$(top_srcdir)/import/m4/isblank.m4 \
$(top_srcdir)/import/m4/isnand.m4 \
$(top_srcdir)/import/m4/isnanl.m4 \
@@ -207,6 +209,7 @@ am__aclocal_m4_deps = $(top_srcdir)/import/m4/00gnulib.m4 \
$(top_srcdir)/import/m4/netdb_h.m4 \
$(top_srcdir)/import/m4/netinet_in_h.m4 \
$(top_srcdir)/import/m4/nocrash.m4 \
+ $(top_srcdir)/import/m4/nonblocking.m4 \
$(top_srcdir)/import/m4/off_t.m4 \
$(top_srcdir)/import/m4/open-cloexec.m4 \
$(top_srcdir)/import/m4/open-slash.m4 \
@@ -252,6 +255,7 @@ am__aclocal_m4_deps = $(top_srcdir)/import/m4/00gnulib.m4 \
$(top_srcdir)/import/m4/strnlen.m4 \
$(top_srcdir)/import/m4/strstr.m4 \
$(top_srcdir)/import/m4/strtok_r.m4 \
+ $(top_srcdir)/import/m4/sys_ioctl_h.m4 \
$(top_srcdir)/import/m4/sys_random_h.m4 \
$(top_srcdir)/import/m4/sys_select_h.m4 \
$(top_srcdir)/import/m4/sys_socket_h.m4 \
@@ -357,6 +361,7 @@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@
AR = @AR@
ARFLAGS = @ARFLAGS@
+ASM_SYMBOL_PREFIX = @ASM_SYMBOL_PREFIX@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
@@ -546,6 +551,7 @@ GL_GNULIB_IMAXABS = @GL_GNULIB_IMAXABS@
GL_GNULIB_IMAXDIV = @GL_GNULIB_IMAXDIV@
GL_GNULIB_INET_NTOP = @GL_GNULIB_INET_NTOP@
GL_GNULIB_INET_PTON = @GL_GNULIB_INET_PTON@
+GL_GNULIB_IOCTL = @GL_GNULIB_IOCTL@
GL_GNULIB_ISATTY = @GL_GNULIB_ISATTY@
GL_GNULIB_ISBLANK = @GL_GNULIB_ISBLANK@
GL_GNULIB_ISFINITE = @GL_GNULIB_ISFINITE@
@@ -1183,6 +1189,7 @@ HAVE_SYMLINK = @HAVE_SYMLINK@
HAVE_SYMLINKAT = @HAVE_SYMLINKAT@
HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@
HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
+HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
@@ -1320,6 +1327,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
NEXT_AS_FIRST_DIRECTIVE_STRINGS_H = @NEXT_AS_FIRST_DIRECTIVE_STRINGS_H@
NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
@@ -1352,6 +1360,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
NEXT_STDLIB_H = @NEXT_STDLIB_H@
NEXT_STRINGS_H = @NEXT_STRINGS_H@
NEXT_STRING_H = @NEXT_STRING_H@
+NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
@@ -1486,6 +1495,7 @@ REPLACE_ILOGBL = @REPLACE_ILOGBL@
REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
REPLACE_INET_PTON = @REPLACE_INET_PTON@
REPLACE_INITSTATE = @REPLACE_INITSTATE@
+REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISFINITE = @REPLACE_ISFINITE@
REPLACE_ISINF = @REPLACE_ISINF@
@@ -1664,6 +1674,8 @@ STDBOOL_H = @STDBOOL_H@
STDDEF_H = @STDDEF_H@
STDINT_H = @STDINT_H@
STRIP = @STRIP@
+SYS_IOCTL_H_HAVE_WINSOCK2_H = @SYS_IOCTL_H_HAVE_WINSOCK2_H@
+SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@
TIME_H_DEFINES_STRUCT_TIMESPEC = @TIME_H_DEFINES_STRUCT_TIMESPEC@
TIME_H_DEFINES_TIME_UTC = @TIME_H_DEFINES_TIME_UTC@
diff --git a/gnulib/aclocal.m4 b/gnulib/aclocal.m4
index c7f866e..7ba3475 100644
--- a/gnulib/aclocal.m4
+++ b/gnulib/aclocal.m4
@@ -1174,6 +1174,7 @@ m4_include([import/m4/__inline.m4])
m4_include([import/m4/absolute-header.m4])
m4_include([import/m4/alloca.m4])
m4_include([import/m4/arpa_inet_h.m4])
+m4_include([import/m4/asm-underscore.m4])
m4_include([import/m4/btowc.m4])
m4_include([import/m4/builtin-expect.m4])
m4_include([import/m4/canonicalize.m4])
@@ -1234,6 +1235,7 @@ m4_include([import/m4/gnulib-comp.m4])
m4_include([import/m4/include_next.m4])
m4_include([import/m4/inet_ntop.m4])
m4_include([import/m4/inttypes.m4])
+m4_include([import/m4/ioctl.m4])
m4_include([import/m4/isblank.m4])
m4_include([import/m4/isnand.m4])
m4_include([import/m4/isnanl.m4])
@@ -1270,6 +1272,7 @@ m4_include([import/m4/multiarch.m4])
m4_include([import/m4/netdb_h.m4])
m4_include([import/m4/netinet_in_h.m4])
m4_include([import/m4/nocrash.m4])
+m4_include([import/m4/nonblocking.m4])
m4_include([import/m4/off_t.m4])
m4_include([import/m4/open-cloexec.m4])
m4_include([import/m4/open-slash.m4])
@@ -1315,6 +1318,7 @@ m4_include([import/m4/strings_h.m4])
m4_include([import/m4/strnlen.m4])
m4_include([import/m4/strstr.m4])
m4_include([import/m4/strtok_r.m4])
+m4_include([import/m4/sys_ioctl_h.m4])
m4_include([import/m4/sys_random_h.m4])
m4_include([import/m4/sys_select_h.m4])
m4_include([import/m4/sys_socket_h.m4])
diff --git a/gnulib/config.in b/gnulib/config.in
index f70c6a5..37ad898 100644
--- a/gnulib/config.in
+++ b/gnulib/config.in
@@ -124,6 +124,10 @@
#undef GNULIB_MSVC_NOTHROW
/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
+ whether the gnulib module nonblocking shall be considered present. */
+#undef GNULIB_NONBLOCKING
+
+/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
whether the gnulib module openat shall be considered present. */
#undef GNULIB_OPENAT
@@ -271,6 +275,9 @@
/* Define to 1 when the gnulib module glob should be tested. */
#undef GNULIB_TEST_GLOB
+/* Define to 1 when the gnulib module ioctl should be tested. */
+#undef GNULIB_TEST_IOCTL
+
/* Define to 1 when the gnulib module listen should be tested. */
#undef GNULIB_TEST_LISTEN
@@ -313,6 +320,9 @@
/* Define to 1 when the gnulib module mkostemp should be tested. */
#undef GNULIB_TEST_MKOSTEMP
+/* Define to 1 when the gnulib module nonblocking should be tested. */
+#undef GNULIB_TEST_NONBLOCKING
+
/* Define to 1 when the gnulib module open should be tested. */
#undef GNULIB_TEST_OPEN
@@ -707,6 +717,9 @@
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
+/* Define to 1 if you have the `ioctl' function. */
+#undef HAVE_IOCTL
+
/* Define to 1 if <sys/socket.h> defines AF_INET. */
#undef HAVE_IPV4
@@ -953,6 +966,9 @@
/* Define to 1 if you have the <sys/inttypes.h> header file. */
#undef HAVE_SYS_INTTYPES_H
+/* Define to 1 if you have the <sys/ioctl.h> header file. */
+#undef HAVE_SYS_IOCTL_H
+
/* Define to 1 if you have the <sys/mman.h> header file. */
#undef HAVE_SYS_MMAN_H
@@ -1336,6 +1352,10 @@
timespec. */
#undef TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC
+/* Define to the prefix of C symbols at the assembler and linker level, either
+ an underscore or empty. */
+#undef USER_LABEL_PREFIX
+
/* Define if the combination of the ISO C and POSIX multithreading APIs can be
used. */
#undef USE_ISOC_AND_POSIX_THREADS
diff --git a/gnulib/configure b/gnulib/configure
index cb2a113..9626c42 100755
--- a/gnulib/configure
+++ b/gnulib/configure
@@ -769,6 +769,9 @@ NEXT_SYS_TYPES_H
HAVE_SYS_RANDOM_H
NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H
NEXT_SYS_RANDOM_H
+NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H
+NEXT_SYS_IOCTL_H
+HAVE_SYS_IOCTL_H
GL_COND_OBJ_STRTOK_R_FALSE
GL_COND_OBJ_STRTOK_R_TRUE
GL_COND_OBJ_STRNLEN_FALSE
@@ -867,6 +870,7 @@ GL_COND_OBJ_OPENAT_FALSE
GL_COND_OBJ_OPENAT_TRUE
GL_COND_OBJ_OPEN_FALSE
GL_COND_OBJ_OPEN_TRUE
+ASM_SYMBOL_PREFIX
GL_GENERATE_NETINET_IN_H_FALSE
GL_GENERATE_NETINET_IN_H_TRUE
NETINET_IN_H
@@ -1038,6 +1042,9 @@ GL_GENERATE_LIMITS_H_TRUE
LIMITS_H
GL_COND_OBJ_ISBLANK_FALSE
GL_COND_OBJ_ISBLANK_TRUE
+GL_GNULIB_IOCTL
+GL_COND_OBJ_IOCTL_FALSE
+GL_COND_OBJ_IOCTL_TRUE
GL_GNULIB_STRTOUMAX
GL_GNULIB_STRTOIMAX
GL_GNULIB_IMAXDIV
@@ -2032,6 +2039,9 @@ GL_GNULIB_SOCKET
GL_COND_OBJ_ACCEPT_FALSE
GL_COND_OBJ_ACCEPT_TRUE
HAVE_WINSOCK2_H
+REPLACE_IOCTL
+SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS
+SYS_IOCTL_H_HAVE_WINSOCK2_H
UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS
UNISTD_H_HAVE_WINSOCK2_H
UNISTD_H_HAVE_SYS_RANDOM_H
@@ -3997,6 +4007,7 @@ as_fn_append ac_func_list " __xpg_strerror_r"
as_fn_append ac_func_list " catgets"
as_fn_append ac_func_list " snprintf"
as_fn_append ac_header_list " strings.h"
+as_fn_append ac_header_list " sys/ioctl.h"
as_fn_append ac_header_list " sys/random.h"
as_fn_append ac_header_list " sys/uio.h"
as_fn_append ac_header_list " sys/wait.h"
@@ -7103,6 +7114,7 @@ fi
# Code from module intprops:
# Code from module inttypes:
# Code from module inttypes-incomplete:
+ # Code from module ioctl:
# Code from module isblank:
# Code from module isnand-nolibm:
# Code from module isnanl-nolibm:
@@ -7138,6 +7150,7 @@ fi
# Code from module netdb:
# Code from module netinet_in:
# Code from module nocrash:
+ # Code from module nonblocking:
# Code from module open:
# Code from module openat:
# Code from module openat-die:
@@ -7191,6 +7204,7 @@ fi
# Code from module strstr:
# Code from module strstr-simple:
# Code from module strtok_r:
+ # Code from module sys_ioctl:
# Code from module sys_random:
# Code from module sys_select:
# Code from module sys_socket:
@@ -7527,6 +7541,12 @@ $as_echo "$gl_cv_source_line_length_unlimited" >&6; }
UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=0;
+
+ SYS_IOCTL_H_HAVE_WINSOCK2_H=0;
+ SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=0;
+
+ REPLACE_IOCTL=0;
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C/C++ restrict keyword" >&5
$as_echo_n "checking for C/C++ restrict keyword... " >&6; }
if ${ac_cv_c_restrict+:} false; then :
@@ -13813,8 +13833,8 @@ rm -f core conftest.err conftest.$ac_objext \
LIBS=$save_LIBS
test $gl_pthread_api = yes && break
done
- echo "$as_me:13816: gl_pthread_api=$gl_pthread_api" >&5
- echo "$as_me:13817: LIBPTHREAD=$LIBPTHREAD" >&5
+ echo "$as_me:13836: gl_pthread_api=$gl_pthread_api" >&5
+ echo "$as_me:13837: LIBPTHREAD=$LIBPTHREAD" >&5
gl_pthread_in_glibc=no
# On Linux with glibc >= 2.34, libc contains the fully functional
@@ -13839,7 +13859,7 @@ rm -f conftest*
;;
esac
- echo "$as_me:13842: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5
+ echo "$as_me:13862: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5
# Test for libpthread by looking for pthread_kill. (Not pthread_self,
# since it is defined as a macro on OSF/1.)
@@ -13993,7 +14013,7 @@ fi
fi
fi
- echo "$as_me:13996: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5
+ echo "$as_me:14016: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether POSIX threads API is available" >&5
$as_echo_n "checking whether POSIX threads API is available... " >&6; }
@@ -15854,6 +15874,12 @@ $as_echo "$gl_cv_test_UINT64_MAX_EQ_ULONG_MAX" >&6; }
+ GL_GNULIB_IOCTL=0
+
+
+
+
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the exponent in a 'double'" >&5
$as_echo_n "checking where to find the exponent in a 'double'... " >&6; }
@@ -17070,8 +17096,8 @@ rm -f core conftest.err conftest.$ac_objext \
LIBS=$save_LIBS
test $gl_pthread_api = yes && break
done
- echo "$as_me:17073: gl_pthread_api=$gl_pthread_api" >&5
- echo "$as_me:17074: LIBPTHREAD=$LIBPTHREAD" >&5
+ echo "$as_me:17099: gl_pthread_api=$gl_pthread_api" >&5
+ echo "$as_me:17100: LIBPTHREAD=$LIBPTHREAD" >&5
gl_pthread_in_glibc=no
# On Linux with glibc >= 2.34, libc contains the fully functional
@@ -17096,7 +17122,7 @@ rm -f conftest*
;;
esac
- echo "$as_me:17099: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5
+ echo "$as_me:17125: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5
# Test for libpthread by looking for pthread_kill. (Not pthread_self,
# since it is defined as a macro on OSF/1.)
@@ -17250,7 +17276,7 @@ fi
fi
fi
- echo "$as_me:17253: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5
+ echo "$as_me:17279: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether POSIX threads API is available" >&5
$as_echo_n "checking whether POSIX threads API is available... " >&6; }
@@ -17476,8 +17502,8 @@ rm -f core conftest.err conftest.$ac_objext \
LIBS=$save_LIBS
test $gl_pthread_api = yes && break
done
- echo "$as_me:17479: gl_pthread_api=$gl_pthread_api" >&5
- echo "$as_me:17480: LIBPTHREAD=$LIBPTHREAD" >&5
+ echo "$as_me:17505: gl_pthread_api=$gl_pthread_api" >&5
+ echo "$as_me:17506: LIBPTHREAD=$LIBPTHREAD" >&5
gl_pthread_in_glibc=no
# On Linux with glibc >= 2.34, libc contains the fully functional
@@ -17502,7 +17528,7 @@ rm -f conftest*
;;
esac
- echo "$as_me:17505: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5
+ echo "$as_me:17531: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5
# Test for libpthread by looking for pthread_kill. (Not pthread_self,
# since it is defined as a macro on OSF/1.)
@@ -17656,7 +17682,7 @@ fi
fi
fi
- echo "$as_me:17659: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5
+ echo "$as_me:17685: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether POSIX threads API is available" >&5
$as_echo_n "checking whether POSIX threads API is available... " >&6; }
@@ -19377,6 +19403,97 @@ $as_echo "$gl_cv_next_netdb_h" >&6; }
+
+ case "$host_os" in
+ mingw*) gl_cv_have_nonblocking=no ;;
+ *) gl_cv_have_nonblocking=yes ;;
+ esac
+ case "$host_os" in
+ mingw*) gl_cv_have_open_O_NONBLOCK=no ;;
+ *) gl_cv_have_open_O_NONBLOCK=yes ;;
+ esac
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#ifdef _MSC_VER
+MicrosoftCompiler
+#endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "MicrosoftCompiler" >/dev/null 2>&1; then :
+ rm -f conftest*
+ echo 'int dummy;' > conftest.c
+ { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -c conftest.c'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; } >/dev/null 2>&1
+ if test -f conftest.o; then
+ gl_asmext='s'
+ gl_c_asm_opt='-S'
+ else
+ gl_asmext='asm'
+ gl_c_asm_opt='-c -Fa'
+ fi
+ rm -f conftest*
+
+else
+ gl_asmext='s'
+ gl_c_asm_opt='-S'
+
+fi
+rm -f conftest*
+
+
+
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C symbols are prefixed with underscore at the linker level" >&5
+$as_echo_n "checking whether C symbols are prefixed with underscore at the linker level... " >&6; }
+if ${gl_cv_prog_as_underscore+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat > conftest.c <<EOF
+#ifdef __cplusplus
+extern "C" int foo (void);
+#endif
+int foo(void) { return 0; }
+EOF
+ # Look for the assembly language name in the .s file.
+ { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $gl_c_asm_opt conftest.c'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; } >/dev/null 2>&1
+ if LC_ALL=C $EGREP '(^|[^a-zA-Z0-9_])_foo([^a-zA-Z0-9_]|$)' conftest.$gl_asmext >/dev/null; then
+ gl_cv_prog_as_underscore=yes
+ else
+ gl_cv_prog_as_underscore=no
+ fi
+ rm -f conftest*
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_prog_as_underscore" >&5
+$as_echo "$gl_cv_prog_as_underscore" >&6; }
+ if test $gl_cv_prog_as_underscore = yes; then
+ USER_LABEL_PREFIX=_
+ else
+ USER_LABEL_PREFIX=
+ fi
+
+cat >>confdefs.h <<_ACEOF
+#define USER_LABEL_PREFIX $USER_LABEL_PREFIX
+_ACEOF
+
+ ASM_SYMBOL_PREFIX='"'${USER_LABEL_PREFIX}'"'
+
+
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for O_CLOEXEC" >&5
$as_echo_n "checking for O_CLOEXEC... " >&6; }
if ${gl_cv_macro_O_CLOEXEC+:} false; then :
@@ -20310,6 +20427,20 @@ $as_echo "#define GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU 1" >>confdefs.h
+ if test $gl_cv_have_nonblocking != yes; then
+ REPLACE_STDIO_READ_FUNCS=1
+ fi
+
+
+
+
+
+
+
+ if test $gl_cv_have_nonblocking != yes; then
+ REPLACE_STDIO_WRITE_FUNCS=1
+ fi
+
@@ -20998,6 +21129,127 @@ _ACEOF
+ if test $ac_cv_header_sys_ioctl_h = yes; then
+ HAVE_SYS_IOCTL_H=1
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether <sys/ioctl.h> declares ioctl" >&5
+$as_echo_n "checking whether <sys/ioctl.h> declares ioctl... " >&6; }
+if ${gl_cv_decl_ioctl_in_sys_ioctl_h+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/ioctl.h>
+int
+main ()
+{
+(void) ioctl;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ gl_cv_decl_ioctl_in_sys_ioctl_h=yes
+else
+ gl_cv_decl_ioctl_in_sys_ioctl_h=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_decl_ioctl_in_sys_ioctl_h" >&5
+$as_echo "$gl_cv_decl_ioctl_in_sys_ioctl_h" >&6; }
+ else
+ HAVE_SYS_IOCTL_H=0
+ fi
+
+
+
+
+
+
+
+
+
+
+ if test $gl_cv_have_include_next = yes; then
+ gl_cv_next_sys_ioctl_h='<'sys/ioctl.h'>'
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of <sys/ioctl.h>" >&5
+$as_echo_n "checking absolute name of <sys/ioctl.h>... " >&6; }
+if ${gl_cv_next_sys_ioctl_h+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+
+ if test $ac_cv_header_sys_ioctl_h = yes; then
+
+
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/ioctl.h>
+_ACEOF
+ case "$host_os" in
+ aix*) gl_absname_cpp="$ac_cpp -C" ;;
+ *) gl_absname_cpp="$ac_cpp" ;;
+ esac
+
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'sys/ioctl.h' \
+ | sed -e "$gl_make_literal_regex_sed"`
+ gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{
+ s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/
+ s|^/[^/]|//&|
+ p
+ q
+ }'
+
+ gl_cv_absolute_sys_ioctl_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_sys_ioctl_h
+ gl_cv_next_sys_ioctl_h='"'$gl_header'"'
+ else
+ gl_cv_next_sys_ioctl_h='<'sys/ioctl.h'>'
+ fi
+
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_ioctl_h" >&5
+$as_echo "$gl_cv_next_sys_ioctl_h" >&6; }
+ fi
+ NEXT_SYS_IOCTL_H=$gl_cv_next_sys_ioctl_h
+
+ if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then
+ # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next'
+ gl_next_as_first_directive='<'sys/ioctl.h'>'
+ else
+ # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include'
+ gl_next_as_first_directive=$gl_cv_next_sys_ioctl_h
+ fi
+ NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H=$gl_next_as_first_directive
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -27471,6 +27723,97 @@ fi
+ HAVE_IOCTL=1
+ if test "$ac_cv_header_winsock2_h" = yes; then
+ HAVE_IOCTL=0
+ else
+ for ac_func in ioctl
+do :
+ ac_fn_c_check_func "$LINENO" "ioctl" "ac_cv_func_ioctl"
+if test "x$ac_cv_func_ioctl" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_IOCTL 1
+_ACEOF
+
+fi
+done
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ioctl with POSIX signature" >&5
+$as_echo_n "checking for ioctl with POSIX signature... " >&6; }
+if ${gl_cv_func_ioctl_posix_signature+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/ioctl.h>
+ /* On some platforms, ioctl() is declared in <unistd.h>. */
+ #include <unistd.h>
+
+int
+main ()
+{
+extern
+ #ifdef __cplusplus
+ "C"
+ #endif
+ int ioctl (int, int, ...);
+
+ ;
+ return 0;
+}
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ gl_cv_func_ioctl_posix_signature=yes
+else
+ gl_cv_func_ioctl_posix_signature=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_ioctl_posix_signature" >&5
+$as_echo "$gl_cv_func_ioctl_posix_signature" >&6; }
+ if test $gl_cv_func_ioctl_posix_signature != yes; then
+ REPLACE_IOCTL=1
+ fi
+ fi
+
+
+ if test $HAVE_IOCTL = 0 || test $REPLACE_IOCTL = 1; then
+ GL_COND_OBJ_IOCTL_TRUE=
+ GL_COND_OBJ_IOCTL_FALSE='#'
+else
+ GL_COND_OBJ_IOCTL_TRUE='#'
+ GL_COND_OBJ_IOCTL_FALSE=
+fi
+:
+ if test -z "${GL_COND_OBJ_IOCTL_TRUE}" && test -z "${GL_COND_OBJ_IOCTL_FALSE}"; then
+ GL_COND_OBJ_IOCTL_TRUE='#'
+ GL_COND_OBJ_IOCTL_FALSE='#'
+ fi
+
+
+
+
+
+
+
+
+
+
+ GL_GNULIB_IOCTL=1
+
+
+
+
+
+$as_echo "#define GNULIB_TEST_IOCTL 1" >>confdefs.h
+
+
+
+
+
+
if test $ac_cv_func_isblank = no; then
@@ -31104,6 +31447,54 @@ fi
+
+
+
+
+
+
+
+
+
+ GL_GNULIB_NONBLOCKING=1
+
+
+
+
+
+$as_echo "#define GNULIB_TEST_NONBLOCKING 1" >>confdefs.h
+
+
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define GNULIB_NONBLOCKING 1
+_ACEOF
+
+
+
+
+
+
+
+
+
+ GL_GNULIB_STDIO_H_NONBLOCKING=1
+
+
+
+
+
+
+
+
+ GL_GNULIB_UNISTD_H_NONBLOCKING=1
+
+
+
+
+
case "$host_os" in
mingw* | pw*)
REPLACE_OPEN=1
@@ -31202,6 +31593,15 @@ $as_echo "#define OPEN_TRAILING_SLASH_BUG 1" >>confdefs.h
fi
+ if test $REPLACE_OPEN = 0; then
+
+
+
+ if test $gl_cv_have_open_O_NONBLOCK != yes; then
+ REPLACE_OPEN=1
+ fi
+ fi
+
if test $REPLACE_OPEN = 1; then
@@ -32963,6 +33363,10 @@ fi
+
+
+
+
if test "$ac_cv_header_winsock2_h" = yes; then
UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=1
SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=1
@@ -34962,6 +35366,13 @@ $as_echo "#define GNULIB_TEST_STRTOK_R 1" >>confdefs.h
+
+
+
+
+
+
+
:
diff --git a/gnulib/import/Makefile.am b/gnulib/import/Makefile.am
index 80b2bb4..07ef985 100644
--- a/gnulib/import/Makefile.am
+++ b/gnulib/import/Makefile.am
@@ -63,6 +63,7 @@
# mkdtemp \
# mkostemp \
# netdb \
+# nonblocking \
# pathmax \
# rawmemchr \
# readlink \
@@ -968,6 +969,16 @@ EXTRA_DIST += inttypes.in.h
## end gnulib module inttypes-incomplete
+## begin gnulib module ioctl
+
+if GL_COND_OBJ_IOCTL
+libgnu_a_SOURCES += ioctl.c
+endif
+
+EXTRA_DIST += w32sock.h
+
+## end gnulib module ioctl
+
## begin gnulib module isblank
if GL_COND_OBJ_ISBLANK
@@ -1619,6 +1630,16 @@ EXTRA_DIST += netinet_in.in.h
## end gnulib module netinet_in
+## begin gnulib module nonblocking
+
+libgnu_a_SOURCES += nonblocking.c
+
+EXTRA_DIST += nonblocking.h stdio-read.c stdio-write.c
+
+EXTRA_libgnu_a_SOURCES += stdio-read.c stdio-write.c
+
+## end gnulib module nonblocking
+
## begin gnulib module open
if GL_COND_OBJ_OPEN
@@ -2578,6 +2599,36 @@ endif
## end gnulib module strtok_r
+## begin gnulib module sys_ioctl
+
+BUILT_SOURCES += sys/ioctl.h
+
+# We need the following in order to create <sys/ioctl.h> when the system
+# does not have a complete one.
+sys/ioctl.h: sys_ioctl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H)
+ $(AM_V_GEN)$(MKDIR_P) '%reldir%/sys'
+ $(AM_V_at)$(SED_HEADER_STDOUT) \
+ -e 's|@''GUARD_PREFIX''@|GL|g' \
+ -e 's|@''HAVE_SYS_IOCTL_H''@|$(HAVE_SYS_IOCTL_H)|g' \
+ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
+ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ -e 's|@''NEXT_SYS_IOCTL_H''@|$(NEXT_SYS_IOCTL_H)|g' \
+ -e 's/@''GNULIB_IOCTL''@/$(GL_GNULIB_IOCTL)/g' \
+ -e 's|@''SYS_IOCTL_H_HAVE_WINSOCK2_H''@|$(SYS_IOCTL_H_HAVE_WINSOCK2_H)|g' \
+ -e 's|@''SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS''@|$(SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS)|g' \
+ -e 's|@''REPLACE_IOCTL''@|$(REPLACE_IOCTL)|g' \
+ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
+ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
+ $(srcdir)/sys_ioctl.in.h > $@-t
+ $(AM_V_at)mv $@-t $@
+MOSTLYCLEANFILES += sys/ioctl.h sys/ioctl.h-t
+MOSTLYCLEANDIRS += sys
+
+EXTRA_DIST += sys_ioctl.in.h
+
+## end gnulib module sys_ioctl
+
## begin gnulib module sys_random
BUILT_SOURCES += sys/random.h
diff --git a/gnulib/import/Makefile.in b/gnulib/import/Makefile.in
index 1899beb..db5a195 100644
--- a/gnulib/import/Makefile.in
+++ b/gnulib/import/Makefile.in
@@ -77,6 +77,7 @@
# mkdtemp \
# mkostemp \
# netdb \
+# nonblocking \
# pathmax \
# rawmemchr \
# readlink \
@@ -210,53 +211,54 @@ target_triplet = @target@
@GL_COND_OBJ_GLOB_TRUE@am__append_32 = glob.c globfree.c
@GL_COND_OBJ_GLOB_PATTERN_P_TRUE@am__append_33 = glob_pattern_p.c
@GL_COND_OBJ_INET_NTOP_TRUE@am__append_34 = inet_ntop.c
-@GL_COND_OBJ_ISBLANK_TRUE@am__append_35 = isblank.c
-@GL_COND_OBJ_LISTEN_TRUE@am__append_36 = listen.c
-@GL_COND_OBJ_LSTAT_TRUE@am__append_37 = lstat.c
-@GL_COND_OBJ_MBRTOWC_TRUE@am__append_38 = mbrtowc.c
-@GL_COND_OBJ_MBSINIT_TRUE@am__append_39 = mbsinit.c
-@GL_COND_OBJ_MBSRTOWCS_TRUE@am__append_40 = mbsrtowcs.c
-@GL_COND_OBJ_MBTOWC_TRUE@am__append_41 = mbtowc.c
-@GL_COND_OBJ_MEMCHR_TRUE@am__append_42 = memchr.c
-@GL_COND_OBJ_MEMPCPY_TRUE@am__append_43 = mempcpy.c
-@GL_COND_OBJ_MEMRCHR_TRUE@am__append_44 = memrchr.c
-@GL_COND_OBJ_MKDIR_TRUE@am__append_45 = mkdir.c
-@GL_COND_OBJ_MKDTEMP_TRUE@am__append_46 = mkdtemp.c
-@GL_COND_OBJ_MKOSTEMP_TRUE@am__append_47 = mkostemp.c
-@GL_COND_OBJ_MSVC_INVAL_TRUE@am__append_48 = msvc-inval.c
-@GL_COND_OBJ_MSVC_NOTHROW_TRUE@am__append_49 = msvc-nothrow.c
-@GL_COND_OBJ_OPEN_TRUE@am__append_50 = open.c
-@GL_COND_OBJ_OPENAT_TRUE@am__append_51 = openat.c
-@GL_COND_OBJ_OPENDIR_TRUE@am__append_52 = opendir.c
-@GL_COND_OBJ_PIPE_TRUE@am__append_53 = pipe.c
-@GL_COND_OBJ_RAWMEMCHR_TRUE@am__append_54 = rawmemchr.c
-@GL_COND_OBJ_READDIR_TRUE@am__append_55 = readdir.c
-@GL_COND_OBJ_READLINK_TRUE@am__append_56 = readlink.c
-@GL_COND_OBJ_RENAME_TRUE@am__append_57 = rename.c
-@GL_COND_OBJ_REWINDDIR_TRUE@am__append_58 = rewinddir.c
-@GL_COND_OBJ_RMDIR_TRUE@am__append_59 = rmdir.c
-@GL_COND_OBJ_SELECT_TRUE@am__append_60 = select.c
-@GL_COND_OBJ_SETENV_TRUE@am__append_61 = setenv.c
-@GL_COND_OBJ_SETLOCALE_LOCK_TRUE@am__append_62 = setlocale-lock.c
-@GL_COND_OBJ_SETSOCKOPT_TRUE@am__append_63 = setsockopt.c
-@GL_COND_OBJ_SOCKET_TRUE@am__append_64 = socket.c
-@GL_COND_OBJ_STAT_TRUE@am__append_65 = stat.c
-@GL_COND_OBJ_STDIO_READ_TRUE@am__append_66 = stdio-read.c
-@GL_COND_OBJ_STDIO_WRITE_TRUE@am__append_67 = stdio-write.c
-@GL_COND_OBJ_STRCHRNUL_TRUE@am__append_68 = strchrnul.c
-@GL_COND_OBJ_STRDUP_TRUE@am__append_69 = strdup.c
-@GL_COND_OBJ_STRERROR_TRUE@am__append_70 = strerror.c
-@GL_COND_OBJ_STRERROR_OVERRIDE_TRUE@am__append_71 = strerror-override.c
-@GL_COND_OBJ_STRNLEN_TRUE@am__append_72 = strnlen.c
-@GL_COND_OBJ_STRTOK_R_TRUE@am__append_73 = strtok_r.c
-@GL_COND_OBJ_TIME_R_TRUE@am__append_74 = time_r.c
-@GL_COND_OBJ_UNSETENV_TRUE@am__append_75 = unsetenv.c
-@GL_COND_OBJ_WINDOWS_MUTEX_TRUE@am__append_76 = windows-mutex.c
-@GL_COND_OBJ_WINDOWS_ONCE_TRUE@am__append_77 = windows-once.c
-@GL_COND_OBJ_WINDOWS_RECMUTEX_TRUE@am__append_78 = windows-recmutex.c
-@GL_COND_OBJ_WINDOWS_RWLOCK_TRUE@am__append_79 = windows-rwlock.c
-@GL_COND_OBJ_WMEMCHR_TRUE@am__append_80 = wmemchr.c
-@GL_COND_OBJ_WMEMPCPY_TRUE@am__append_81 = wmempcpy.c
+@GL_COND_OBJ_IOCTL_TRUE@am__append_35 = ioctl.c
+@GL_COND_OBJ_ISBLANK_TRUE@am__append_36 = isblank.c
+@GL_COND_OBJ_LISTEN_TRUE@am__append_37 = listen.c
+@GL_COND_OBJ_LSTAT_TRUE@am__append_38 = lstat.c
+@GL_COND_OBJ_MBRTOWC_TRUE@am__append_39 = mbrtowc.c
+@GL_COND_OBJ_MBSINIT_TRUE@am__append_40 = mbsinit.c
+@GL_COND_OBJ_MBSRTOWCS_TRUE@am__append_41 = mbsrtowcs.c
+@GL_COND_OBJ_MBTOWC_TRUE@am__append_42 = mbtowc.c
+@GL_COND_OBJ_MEMCHR_TRUE@am__append_43 = memchr.c
+@GL_COND_OBJ_MEMPCPY_TRUE@am__append_44 = mempcpy.c
+@GL_COND_OBJ_MEMRCHR_TRUE@am__append_45 = memrchr.c
+@GL_COND_OBJ_MKDIR_TRUE@am__append_46 = mkdir.c
+@GL_COND_OBJ_MKDTEMP_TRUE@am__append_47 = mkdtemp.c
+@GL_COND_OBJ_MKOSTEMP_TRUE@am__append_48 = mkostemp.c
+@GL_COND_OBJ_MSVC_INVAL_TRUE@am__append_49 = msvc-inval.c
+@GL_COND_OBJ_MSVC_NOTHROW_TRUE@am__append_50 = msvc-nothrow.c
+@GL_COND_OBJ_OPEN_TRUE@am__append_51 = open.c
+@GL_COND_OBJ_OPENAT_TRUE@am__append_52 = openat.c
+@GL_COND_OBJ_OPENDIR_TRUE@am__append_53 = opendir.c
+@GL_COND_OBJ_PIPE_TRUE@am__append_54 = pipe.c
+@GL_COND_OBJ_RAWMEMCHR_TRUE@am__append_55 = rawmemchr.c
+@GL_COND_OBJ_READDIR_TRUE@am__append_56 = readdir.c
+@GL_COND_OBJ_READLINK_TRUE@am__append_57 = readlink.c
+@GL_COND_OBJ_RENAME_TRUE@am__append_58 = rename.c
+@GL_COND_OBJ_REWINDDIR_TRUE@am__append_59 = rewinddir.c
+@GL_COND_OBJ_RMDIR_TRUE@am__append_60 = rmdir.c
+@GL_COND_OBJ_SELECT_TRUE@am__append_61 = select.c
+@GL_COND_OBJ_SETENV_TRUE@am__append_62 = setenv.c
+@GL_COND_OBJ_SETLOCALE_LOCK_TRUE@am__append_63 = setlocale-lock.c
+@GL_COND_OBJ_SETSOCKOPT_TRUE@am__append_64 = setsockopt.c
+@GL_COND_OBJ_SOCKET_TRUE@am__append_65 = socket.c
+@GL_COND_OBJ_STAT_TRUE@am__append_66 = stat.c
+@GL_COND_OBJ_STDIO_READ_TRUE@am__append_67 = stdio-read.c
+@GL_COND_OBJ_STDIO_WRITE_TRUE@am__append_68 = stdio-write.c
+@GL_COND_OBJ_STRCHRNUL_TRUE@am__append_69 = strchrnul.c
+@GL_COND_OBJ_STRDUP_TRUE@am__append_70 = strdup.c
+@GL_COND_OBJ_STRERROR_TRUE@am__append_71 = strerror.c
+@GL_COND_OBJ_STRERROR_OVERRIDE_TRUE@am__append_72 = strerror-override.c
+@GL_COND_OBJ_STRNLEN_TRUE@am__append_73 = strnlen.c
+@GL_COND_OBJ_STRTOK_R_TRUE@am__append_74 = strtok_r.c
+@GL_COND_OBJ_TIME_R_TRUE@am__append_75 = time_r.c
+@GL_COND_OBJ_UNSETENV_TRUE@am__append_76 = unsetenv.c
+@GL_COND_OBJ_WINDOWS_MUTEX_TRUE@am__append_77 = windows-mutex.c
+@GL_COND_OBJ_WINDOWS_ONCE_TRUE@am__append_78 = windows-once.c
+@GL_COND_OBJ_WINDOWS_RECMUTEX_TRUE@am__append_79 = windows-recmutex.c
+@GL_COND_OBJ_WINDOWS_RWLOCK_TRUE@am__append_80 = windows-rwlock.c
+@GL_COND_OBJ_WMEMCHR_TRUE@am__append_81 = wmemchr.c
+@GL_COND_OBJ_WMEMPCPY_TRUE@am__append_82 = wmempcpy.c
subdir = import
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/import/m4/00gnulib.m4 \
@@ -264,6 +266,7 @@ am__aclocal_m4_deps = $(top_srcdir)/import/m4/00gnulib.m4 \
$(top_srcdir)/import/m4/absolute-header.m4 \
$(top_srcdir)/import/m4/alloca.m4 \
$(top_srcdir)/import/m4/arpa_inet_h.m4 \
+ $(top_srcdir)/import/m4/asm-underscore.m4 \
$(top_srcdir)/import/m4/btowc.m4 \
$(top_srcdir)/import/m4/builtin-expect.m4 \
$(top_srcdir)/import/m4/canonicalize.m4 \
@@ -323,6 +326,7 @@ am__aclocal_m4_deps = $(top_srcdir)/import/m4/00gnulib.m4 \
$(top_srcdir)/import/m4/include_next.m4 \
$(top_srcdir)/import/m4/inet_ntop.m4 \
$(top_srcdir)/import/m4/inttypes.m4 \
+ $(top_srcdir)/import/m4/ioctl.m4 \
$(top_srcdir)/import/m4/isblank.m4 \
$(top_srcdir)/import/m4/isnand.m4 \
$(top_srcdir)/import/m4/isnanl.m4 \
@@ -359,6 +363,7 @@ am__aclocal_m4_deps = $(top_srcdir)/import/m4/00gnulib.m4 \
$(top_srcdir)/import/m4/netdb_h.m4 \
$(top_srcdir)/import/m4/netinet_in_h.m4 \
$(top_srcdir)/import/m4/nocrash.m4 \
+ $(top_srcdir)/import/m4/nonblocking.m4 \
$(top_srcdir)/import/m4/off_t.m4 \
$(top_srcdir)/import/m4/open-cloexec.m4 \
$(top_srcdir)/import/m4/open-slash.m4 \
@@ -404,6 +409,7 @@ am__aclocal_m4_deps = $(top_srcdir)/import/m4/00gnulib.m4 \
$(top_srcdir)/import/m4/strnlen.m4 \
$(top_srcdir)/import/m4/strstr.m4 \
$(top_srcdir)/import/m4/strtok_r.m4 \
+ $(top_srcdir)/import/m4/sys_ioctl_h.m4 \
$(top_srcdir)/import/m4/sys_random_h.m4 \
$(top_srcdir)/import/m4/sys_select_h.m4 \
$(top_srcdir)/import/m4/sys_socket_h.m4 \
@@ -493,67 +499,68 @@ am__DEPENDENCIES_1 =
@GL_COND_OBJ_GLOB_PATTERN_P_TRUE@am__objects_33 = libgnu_a-glob_pattern_p.$(OBJEXT)
@GL_COND_OBJ_INET_NTOP_TRUE@am__objects_34 = \
@GL_COND_OBJ_INET_NTOP_TRUE@ libgnu_a-inet_ntop.$(OBJEXT)
-@GL_COND_OBJ_ISBLANK_TRUE@am__objects_35 = libgnu_a-isblank.$(OBJEXT)
-@GL_COND_OBJ_LISTEN_TRUE@am__objects_36 = libgnu_a-listen.$(OBJEXT)
+@GL_COND_OBJ_IOCTL_TRUE@am__objects_35 = libgnu_a-ioctl.$(OBJEXT)
+@GL_COND_OBJ_ISBLANK_TRUE@am__objects_36 = libgnu_a-isblank.$(OBJEXT)
+@GL_COND_OBJ_LISTEN_TRUE@am__objects_37 = libgnu_a-listen.$(OBJEXT)
am__dirstamp = $(am__leading_dot)dirstamp
-@GL_COND_OBJ_LSTAT_TRUE@am__objects_37 = libgnu_a-lstat.$(OBJEXT)
-@GL_COND_OBJ_MBRTOWC_TRUE@am__objects_38 = libgnu_a-mbrtowc.$(OBJEXT)
-@GL_COND_OBJ_MBSINIT_TRUE@am__objects_39 = libgnu_a-mbsinit.$(OBJEXT)
-@GL_COND_OBJ_MBSRTOWCS_TRUE@am__objects_40 = \
+@GL_COND_OBJ_LSTAT_TRUE@am__objects_38 = libgnu_a-lstat.$(OBJEXT)
+@GL_COND_OBJ_MBRTOWC_TRUE@am__objects_39 = libgnu_a-mbrtowc.$(OBJEXT)
+@GL_COND_OBJ_MBSINIT_TRUE@am__objects_40 = libgnu_a-mbsinit.$(OBJEXT)
+@GL_COND_OBJ_MBSRTOWCS_TRUE@am__objects_41 = \
@GL_COND_OBJ_MBSRTOWCS_TRUE@ libgnu_a-mbsrtowcs.$(OBJEXT)
-@GL_COND_OBJ_MBTOWC_TRUE@am__objects_41 = libgnu_a-mbtowc.$(OBJEXT)
-@GL_COND_OBJ_MEMCHR_TRUE@am__objects_42 = libgnu_a-memchr.$(OBJEXT)
-@GL_COND_OBJ_MEMPCPY_TRUE@am__objects_43 = libgnu_a-mempcpy.$(OBJEXT)
-@GL_COND_OBJ_MEMRCHR_TRUE@am__objects_44 = libgnu_a-memrchr.$(OBJEXT)
-@GL_COND_OBJ_MKDIR_TRUE@am__objects_45 = libgnu_a-mkdir.$(OBJEXT)
-@GL_COND_OBJ_MKDTEMP_TRUE@am__objects_46 = libgnu_a-mkdtemp.$(OBJEXT)
-@GL_COND_OBJ_MKOSTEMP_TRUE@am__objects_47 = \
+@GL_COND_OBJ_MBTOWC_TRUE@am__objects_42 = libgnu_a-mbtowc.$(OBJEXT)
+@GL_COND_OBJ_MEMCHR_TRUE@am__objects_43 = libgnu_a-memchr.$(OBJEXT)
+@GL_COND_OBJ_MEMPCPY_TRUE@am__objects_44 = libgnu_a-mempcpy.$(OBJEXT)
+@GL_COND_OBJ_MEMRCHR_TRUE@am__objects_45 = libgnu_a-memrchr.$(OBJEXT)
+@GL_COND_OBJ_MKDIR_TRUE@am__objects_46 = libgnu_a-mkdir.$(OBJEXT)
+@GL_COND_OBJ_MKDTEMP_TRUE@am__objects_47 = libgnu_a-mkdtemp.$(OBJEXT)
+@GL_COND_OBJ_MKOSTEMP_TRUE@am__objects_48 = \
@GL_COND_OBJ_MKOSTEMP_TRUE@ libgnu_a-mkostemp.$(OBJEXT)
-@GL_COND_OBJ_MSVC_INVAL_TRUE@am__objects_48 = \
+@GL_COND_OBJ_MSVC_INVAL_TRUE@am__objects_49 = \
@GL_COND_OBJ_MSVC_INVAL_TRUE@ libgnu_a-msvc-inval.$(OBJEXT)
-@GL_COND_OBJ_MSVC_NOTHROW_TRUE@am__objects_49 = libgnu_a-msvc-nothrow.$(OBJEXT)
-@GL_COND_OBJ_OPEN_TRUE@am__objects_50 = libgnu_a-open.$(OBJEXT)
-@GL_COND_OBJ_OPENAT_TRUE@am__objects_51 = libgnu_a-openat.$(OBJEXT)
-@GL_COND_OBJ_OPENDIR_TRUE@am__objects_52 = libgnu_a-opendir.$(OBJEXT)
-@GL_COND_OBJ_PIPE_TRUE@am__objects_53 = libgnu_a-pipe.$(OBJEXT)
-@GL_COND_OBJ_RAWMEMCHR_TRUE@am__objects_54 = \
+@GL_COND_OBJ_MSVC_NOTHROW_TRUE@am__objects_50 = libgnu_a-msvc-nothrow.$(OBJEXT)
+@GL_COND_OBJ_OPEN_TRUE@am__objects_51 = libgnu_a-open.$(OBJEXT)
+@GL_COND_OBJ_OPENAT_TRUE@am__objects_52 = libgnu_a-openat.$(OBJEXT)
+@GL_COND_OBJ_OPENDIR_TRUE@am__objects_53 = libgnu_a-opendir.$(OBJEXT)
+@GL_COND_OBJ_PIPE_TRUE@am__objects_54 = libgnu_a-pipe.$(OBJEXT)
+@GL_COND_OBJ_RAWMEMCHR_TRUE@am__objects_55 = \
@GL_COND_OBJ_RAWMEMCHR_TRUE@ libgnu_a-rawmemchr.$(OBJEXT)
-@GL_COND_OBJ_READDIR_TRUE@am__objects_55 = libgnu_a-readdir.$(OBJEXT)
-@GL_COND_OBJ_READLINK_TRUE@am__objects_56 = \
+@GL_COND_OBJ_READDIR_TRUE@am__objects_56 = libgnu_a-readdir.$(OBJEXT)
+@GL_COND_OBJ_READLINK_TRUE@am__objects_57 = \
@GL_COND_OBJ_READLINK_TRUE@ libgnu_a-readlink.$(OBJEXT)
-@GL_COND_OBJ_RENAME_TRUE@am__objects_57 = libgnu_a-rename.$(OBJEXT)
-@GL_COND_OBJ_REWINDDIR_TRUE@am__objects_58 = \
+@GL_COND_OBJ_RENAME_TRUE@am__objects_58 = libgnu_a-rename.$(OBJEXT)
+@GL_COND_OBJ_REWINDDIR_TRUE@am__objects_59 = \
@GL_COND_OBJ_REWINDDIR_TRUE@ libgnu_a-rewinddir.$(OBJEXT)
-@GL_COND_OBJ_RMDIR_TRUE@am__objects_59 = libgnu_a-rmdir.$(OBJEXT)
-@GL_COND_OBJ_SELECT_TRUE@am__objects_60 = libgnu_a-select.$(OBJEXT)
-@GL_COND_OBJ_SETENV_TRUE@am__objects_61 = libgnu_a-setenv.$(OBJEXT)
-@GL_COND_OBJ_SETLOCALE_LOCK_TRUE@am__objects_62 = libgnu_a-setlocale-lock.$(OBJEXT)
-@GL_COND_OBJ_SETSOCKOPT_TRUE@am__objects_63 = \
+@GL_COND_OBJ_RMDIR_TRUE@am__objects_60 = libgnu_a-rmdir.$(OBJEXT)
+@GL_COND_OBJ_SELECT_TRUE@am__objects_61 = libgnu_a-select.$(OBJEXT)
+@GL_COND_OBJ_SETENV_TRUE@am__objects_62 = libgnu_a-setenv.$(OBJEXT)
+@GL_COND_OBJ_SETLOCALE_LOCK_TRUE@am__objects_63 = libgnu_a-setlocale-lock.$(OBJEXT)
+@GL_COND_OBJ_SETSOCKOPT_TRUE@am__objects_64 = \
@GL_COND_OBJ_SETSOCKOPT_TRUE@ libgnu_a-setsockopt.$(OBJEXT)
-@GL_COND_OBJ_SOCKET_TRUE@am__objects_64 = libgnu_a-socket.$(OBJEXT)
-@GL_COND_OBJ_STAT_TRUE@am__objects_65 = libgnu_a-stat.$(OBJEXT)
-@GL_COND_OBJ_STDIO_READ_TRUE@am__objects_66 = \
+@GL_COND_OBJ_SOCKET_TRUE@am__objects_65 = libgnu_a-socket.$(OBJEXT)
+@GL_COND_OBJ_STAT_TRUE@am__objects_66 = libgnu_a-stat.$(OBJEXT)
+@GL_COND_OBJ_STDIO_READ_TRUE@am__objects_67 = \
@GL_COND_OBJ_STDIO_READ_TRUE@ libgnu_a-stdio-read.$(OBJEXT)
-@GL_COND_OBJ_STDIO_WRITE_TRUE@am__objects_67 = \
+@GL_COND_OBJ_STDIO_WRITE_TRUE@am__objects_68 = \
@GL_COND_OBJ_STDIO_WRITE_TRUE@ libgnu_a-stdio-write.$(OBJEXT)
-@GL_COND_OBJ_STRCHRNUL_TRUE@am__objects_68 = \
+@GL_COND_OBJ_STRCHRNUL_TRUE@am__objects_69 = \
@GL_COND_OBJ_STRCHRNUL_TRUE@ libgnu_a-strchrnul.$(OBJEXT)
-@GL_COND_OBJ_STRDUP_TRUE@am__objects_69 = libgnu_a-strdup.$(OBJEXT)
-@GL_COND_OBJ_STRERROR_TRUE@am__objects_70 = \
+@GL_COND_OBJ_STRDUP_TRUE@am__objects_70 = libgnu_a-strdup.$(OBJEXT)
+@GL_COND_OBJ_STRERROR_TRUE@am__objects_71 = \
@GL_COND_OBJ_STRERROR_TRUE@ libgnu_a-strerror.$(OBJEXT)
-@GL_COND_OBJ_STRERROR_OVERRIDE_TRUE@am__objects_71 = libgnu_a-strerror-override.$(OBJEXT)
-@GL_COND_OBJ_STRNLEN_TRUE@am__objects_72 = libgnu_a-strnlen.$(OBJEXT)
-@GL_COND_OBJ_STRTOK_R_TRUE@am__objects_73 = \
+@GL_COND_OBJ_STRERROR_OVERRIDE_TRUE@am__objects_72 = libgnu_a-strerror-override.$(OBJEXT)
+@GL_COND_OBJ_STRNLEN_TRUE@am__objects_73 = libgnu_a-strnlen.$(OBJEXT)
+@GL_COND_OBJ_STRTOK_R_TRUE@am__objects_74 = \
@GL_COND_OBJ_STRTOK_R_TRUE@ libgnu_a-strtok_r.$(OBJEXT)
-@GL_COND_OBJ_TIME_R_TRUE@am__objects_74 = libgnu_a-time_r.$(OBJEXT)
-@GL_COND_OBJ_UNSETENV_TRUE@am__objects_75 = \
+@GL_COND_OBJ_TIME_R_TRUE@am__objects_75 = libgnu_a-time_r.$(OBJEXT)
+@GL_COND_OBJ_UNSETENV_TRUE@am__objects_76 = \
@GL_COND_OBJ_UNSETENV_TRUE@ libgnu_a-unsetenv.$(OBJEXT)
-@GL_COND_OBJ_WINDOWS_MUTEX_TRUE@am__objects_76 = libgnu_a-windows-mutex.$(OBJEXT)
-@GL_COND_OBJ_WINDOWS_ONCE_TRUE@am__objects_77 = libgnu_a-windows-once.$(OBJEXT)
-@GL_COND_OBJ_WINDOWS_RECMUTEX_TRUE@am__objects_78 = libgnu_a-windows-recmutex.$(OBJEXT)
-@GL_COND_OBJ_WINDOWS_RWLOCK_TRUE@am__objects_79 = libgnu_a-windows-rwlock.$(OBJEXT)
-@GL_COND_OBJ_WMEMCHR_TRUE@am__objects_80 = libgnu_a-wmemchr.$(OBJEXT)
-@GL_COND_OBJ_WMEMPCPY_TRUE@am__objects_81 = \
+@GL_COND_OBJ_WINDOWS_MUTEX_TRUE@am__objects_77 = libgnu_a-windows-mutex.$(OBJEXT)
+@GL_COND_OBJ_WINDOWS_ONCE_TRUE@am__objects_78 = libgnu_a-windows-once.$(OBJEXT)
+@GL_COND_OBJ_WINDOWS_RECMUTEX_TRUE@am__objects_79 = libgnu_a-windows-recmutex.$(OBJEXT)
+@GL_COND_OBJ_WINDOWS_RWLOCK_TRUE@am__objects_80 = libgnu_a-windows-rwlock.$(OBJEXT)
+@GL_COND_OBJ_WMEMCHR_TRUE@am__objects_81 = libgnu_a-wmemchr.$(OBJEXT)
+@GL_COND_OBJ_WMEMPCPY_TRUE@am__objects_82 = \
@GL_COND_OBJ_WMEMPCPY_TRUE@ libgnu_a-wmempcpy.$(OBJEXT)
am_libgnu_a_OBJECTS = $(am__objects_1) libgnu_a-openat-proc.$(OBJEXT) \
libgnu_a-basename-lgpl.$(OBJEXT) $(am__objects_2) \
@@ -575,38 +582,39 @@ am_libgnu_a_OBJECTS = $(am__objects_1) libgnu_a-openat-proc.$(OBJEXT) \
libgnu_a-getprogname.$(OBJEXT) $(am__objects_30) \
$(am__objects_31) $(am__objects_32) $(am__objects_33) \
libgnu_a-hard-locale.$(OBJEXT) $(am__objects_34) \
- $(am__objects_35) $(am__objects_36) \
+ $(am__objects_35) $(am__objects_36) $(am__objects_37) \
libgnu_a-localcharset.$(OBJEXT) \
- glthread/libgnu_a-lock.$(OBJEXT) $(am__objects_37) \
+ glthread/libgnu_a-lock.$(OBJEXT) $(am__objects_38) \
libgnu_a-malloca.$(OBJEXT) libgnu_a-math.$(OBJEXT) \
- $(am__objects_38) $(am__objects_39) $(am__objects_40) \
- $(am__objects_41) $(am__objects_42) $(am__objects_43) \
- $(am__objects_44) $(am__objects_45) $(am__objects_46) \
- $(am__objects_47) $(am__objects_48) $(am__objects_49) \
- $(am__objects_50) $(am__objects_51) \
- libgnu_a-openat-die.$(OBJEXT) $(am__objects_52) \
+ $(am__objects_39) $(am__objects_40) $(am__objects_41) \
+ $(am__objects_42) $(am__objects_43) $(am__objects_44) \
+ $(am__objects_45) $(am__objects_46) $(am__objects_47) \
+ $(am__objects_48) $(am__objects_49) $(am__objects_50) \
+ libgnu_a-nonblocking.$(OBJEXT) $(am__objects_51) \
+ $(am__objects_52) libgnu_a-openat-die.$(OBJEXT) \
$(am__objects_53) $(am__objects_54) $(am__objects_55) \
$(am__objects_56) $(am__objects_57) $(am__objects_58) \
- $(am__objects_59) libgnu_a-save-cwd.$(OBJEXT) \
+ $(am__objects_59) $(am__objects_60) \
+ libgnu_a-save-cwd.$(OBJEXT) \
malloc/libgnu_a-scratch_buffer_dupfree.$(OBJEXT) \
malloc/libgnu_a-scratch_buffer_grow.$(OBJEXT) \
malloc/libgnu_a-scratch_buffer_grow_preserve.$(OBJEXT) \
malloc/libgnu_a-scratch_buffer_set_array_size.$(OBJEXT) \
- $(am__objects_60) $(am__objects_61) \
- libgnu_a-setlocale_null.$(OBJEXT) $(am__objects_62) \
- $(am__objects_63) $(am__objects_64) libgnu_a-sockets.$(OBJEXT) \
- $(am__objects_65) libgnu_a-stat-time.$(OBJEXT) \
- $(am__objects_66) $(am__objects_67) $(am__objects_68) \
- $(am__objects_69) $(am__objects_70) $(am__objects_71) \
- $(am__objects_72) libgnu_a-strnlen1.$(OBJEXT) \
- $(am__objects_73) libgnu_a-sys_socket.$(OBJEXT) \
+ $(am__objects_61) $(am__objects_62) \
+ libgnu_a-setlocale_null.$(OBJEXT) $(am__objects_63) \
+ $(am__objects_64) $(am__objects_65) libgnu_a-sockets.$(OBJEXT) \
+ $(am__objects_66) libgnu_a-stat-time.$(OBJEXT) \
+ $(am__objects_67) $(am__objects_68) $(am__objects_69) \
+ $(am__objects_70) $(am__objects_71) $(am__objects_72) \
+ $(am__objects_73) libgnu_a-strnlen1.$(OBJEXT) \
+ $(am__objects_74) libgnu_a-sys_socket.$(OBJEXT) \
libgnu_a-tempname.$(OBJEXT) \
- glthread/libgnu_a-threadlib.$(OBJEXT) $(am__objects_74) \
+ glthread/libgnu_a-threadlib.$(OBJEXT) $(am__objects_75) \
libgnu_a-unistd.$(OBJEXT) libgnu_a-dup-safer.$(OBJEXT) \
libgnu_a-fd-safer.$(OBJEXT) libgnu_a-pipe-safer.$(OBJEXT) \
- $(am__objects_75) libgnu_a-wctype-h.$(OBJEXT) \
- $(am__objects_76) $(am__objects_77) $(am__objects_78) \
- $(am__objects_79) $(am__objects_80) $(am__objects_81)
+ $(am__objects_76) libgnu_a-wctype-h.$(OBJEXT) \
+ $(am__objects_77) $(am__objects_78) $(am__objects_79) \
+ $(am__objects_80) $(am__objects_81) $(am__objects_82)
libgnu_a_OBJECTS = $(am_libgnu_a_OBJECTS)
LTLIBRARIES = $(noinst_LTLIBRARIES)
AM_V_P = $(am__v_P_@AM_V@)
@@ -691,6 +699,7 @@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@
AR = @AR@
ARFLAGS = @ARFLAGS@
+ASM_SYMBOL_PREFIX = @ASM_SYMBOL_PREFIX@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
@@ -880,6 +889,7 @@ GL_GNULIB_IMAXABS = @GL_GNULIB_IMAXABS@
GL_GNULIB_IMAXDIV = @GL_GNULIB_IMAXDIV@
GL_GNULIB_INET_NTOP = @GL_GNULIB_INET_NTOP@
GL_GNULIB_INET_PTON = @GL_GNULIB_INET_PTON@
+GL_GNULIB_IOCTL = @GL_GNULIB_IOCTL@
GL_GNULIB_ISATTY = @GL_GNULIB_ISATTY@
GL_GNULIB_ISBLANK = @GL_GNULIB_ISBLANK@
GL_GNULIB_ISFINITE = @GL_GNULIB_ISFINITE@
@@ -1517,6 +1527,7 @@ HAVE_SYMLINK = @HAVE_SYMLINK@
HAVE_SYMLINKAT = @HAVE_SYMLINKAT@
HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@
HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
+HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
@@ -1654,6 +1665,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
NEXT_AS_FIRST_DIRECTIVE_STRINGS_H = @NEXT_AS_FIRST_DIRECTIVE_STRINGS_H@
NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
@@ -1686,6 +1698,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
NEXT_STDLIB_H = @NEXT_STDLIB_H@
NEXT_STRINGS_H = @NEXT_STRINGS_H@
NEXT_STRING_H = @NEXT_STRING_H@
+NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
@@ -1820,6 +1833,7 @@ REPLACE_ILOGBL = @REPLACE_ILOGBL@
REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
REPLACE_INET_PTON = @REPLACE_INET_PTON@
REPLACE_INITSTATE = @REPLACE_INITSTATE@
+REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISFINITE = @REPLACE_ISFINITE@
REPLACE_ISINF = @REPLACE_ISINF@
@@ -1998,6 +2012,8 @@ STDBOOL_H = @STDBOOL_H@
STDDEF_H = @STDDEF_H@
STDINT_H = @STDINT_H@
STRIP = @STRIP@
+SYS_IOCTL_H_HAVE_WINSOCK2_H = @SYS_IOCTL_H_HAVE_WINSOCK2_H@
+SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@
TIME_H_DEFINES_STRUCT_TIMESPEC = @TIME_H_DEFINES_STRUCT_TIMESPEC@
TIME_H_DEFINES_TIME_UTC = @TIME_H_DEFINES_TIME_UTC@
@@ -2093,26 +2109,28 @@ EXTRA_DIST = m4/gnulib-cache.m4 w32sock.h alloca.c alloca.in.h \
$(top_srcdir)/import/extra/gendocs.sh \
$(top_srcdir)/import/extra/gitlog-to-changelog glob_internal.h \
glob-libc.h glob.in.h hard-locale.h intprops.h inttypes.in.h \
- float+.h isnan.c isnand-nolibm.h isnand.c float+.h isnan.c \
- isnanl-nolibm.h isnanl.c cdefs.h libc-config.h limits.in.h \
- w32sock.h localcharset.h locale.in.h malloc.c malloca.h \
- math.in.h lc-charset-dispatch.c lc-charset-dispatch.h \
- mbrtowc-impl-utf8.h mbrtowc-impl.h mbtowc-lock.c mbtowc-lock.h \
- windows-initguard.h mbsrtowcs-impl.h mbsrtowcs-state.c \
- mbtowc-impl.h memchr.valgrind memmem.c memmem.c str-two-way.h \
- msvc-inval.h msvc-nothrow.h netdb.in.h netinet_in.in.h \
- openat.h dirent-private.h pathmax.h rawmemchr.valgrind \
- dirent-private.h realloc.c dirent-private.h same-inode.h \
- save-cwd.h malloc/scratch_buffer.h scratch_buffer.h \
- setlocale_null.h windows-initguard.h w32sock.h signal.in.h \
- _Noreturn.h arg-nonnull.h c++defs.h warn-on-use.h w32sock.h \
- w32sock.h stat-w32.c stat-w32.h stat-time.h stdalign.in.h \
- stdbool.in.h stddef.in.h stdint.in.h stdio.in.h stdlib.in.h \
- strchrnul.valgrind streq.h strerror-override.h strerror_r.c \
- string.in.h strings.in.h strstr.c str-two-way.h strstr.c \
- sys_random.in.h sys_select.in.h sys_socket.in.h sys_stat.in.h \
- sys_time.in.h sys_types.in.h sys_uio.in.h sys_wait.in.h \
- tempname.h time.in.h unistd.in.h unistd--.h unistd-safer.h \
+ w32sock.h float+.h isnan.c isnand-nolibm.h isnand.c float+.h \
+ isnan.c isnanl-nolibm.h isnanl.c cdefs.h libc-config.h \
+ limits.in.h w32sock.h localcharset.h locale.in.h malloc.c \
+ malloca.h math.in.h lc-charset-dispatch.c \
+ lc-charset-dispatch.h mbrtowc-impl-utf8.h mbrtowc-impl.h \
+ mbtowc-lock.c mbtowc-lock.h windows-initguard.h \
+ mbsrtowcs-impl.h mbsrtowcs-state.c mbtowc-impl.h \
+ memchr.valgrind memmem.c memmem.c str-two-way.h msvc-inval.h \
+ msvc-nothrow.h netdb.in.h netinet_in.in.h nonblocking.h \
+ stdio-read.c stdio-write.c openat.h dirent-private.h pathmax.h \
+ rawmemchr.valgrind dirent-private.h realloc.c dirent-private.h \
+ same-inode.h save-cwd.h malloc/scratch_buffer.h \
+ scratch_buffer.h setlocale_null.h windows-initguard.h \
+ w32sock.h signal.in.h _Noreturn.h arg-nonnull.h c++defs.h \
+ warn-on-use.h w32sock.h w32sock.h stat-w32.c stat-w32.h \
+ stat-time.h stdalign.in.h stdbool.in.h stddef.in.h stdint.in.h \
+ stdio.in.h stdlib.in.h strchrnul.valgrind streq.h \
+ strerror-override.h strerror_r.c string.in.h strings.in.h \
+ strstr.c str-two-way.h strstr.c sys_ioctl.in.h sys_random.in.h \
+ sys_select.in.h sys_socket.in.h sys_stat.in.h sys_time.in.h \
+ sys_types.in.h sys_uio.in.h sys_wait.in.h tempname.h time.in.h \
+ unistd.in.h unistd--.h unistd-safer.h \
$(top_srcdir)/import/extra/update-copyright verify.h \
wchar.in.h wctype.in.h windows-initguard.h windows-mutex.h \
windows-once.h windows-initguard.h windows-recmutex.h \
@@ -2123,9 +2141,9 @@ BUILT_SOURCES = $(ALLOCA_H) arpa/inet.h ctype.h dirent.h $(ERRNO_H) \
inttypes.h $(LIMITS_H) locale.h math.h netdb.h $(NETINET_IN_H) \
malloc/scratch_buffer.gl.h signal.h $(STDALIGN_H) $(STDBOOL_H) \
$(STDDEF_H) $(STDINT_H) stdio.h stdlib.h string.h strings.h \
- sys/random.h sys/select.h sys/socket.h sys/stat.h sys/time.h \
- sys/types.h sys/uio.h sys/wait.h time.h unistd.h wchar.h \
- wctype.h
+ sys/ioctl.h sys/random.h sys/select.h sys/socket.h sys/stat.h \
+ sys/time.h sys/types.h sys/uio.h sys/wait.h time.h unistd.h \
+ wchar.h wctype.h
SUFFIXES =
MOSTLYCLEANFILES = core *.stackdump alloca.h alloca.h-t arpa/inet.h \
arpa/inet.h-t ctype.h ctype.h-t dirent.h dirent.h-t errno.h \
@@ -2137,13 +2155,13 @@ MOSTLYCLEANFILES = core *.stackdump alloca.h alloca.h-t arpa/inet.h \
malloc/scratch_buffer.gl.h-t signal.h signal.h-t stdalign.h \
stdalign.h-t stdbool.h stdbool.h-t stddef.h stddef.h-t \
stdint.h stdint.h-t stdio.h stdio.h-t stdlib.h stdlib.h-t \
- string.h string.h-t strings.h strings.h-t sys/random.h \
- sys/random.h-t sys/select.h sys/select.h-t sys/socket.h \
- sys/socket.h-t sys/stat.h sys/stat.h-t sys/time.h sys/time.h-t \
- sys/types.h sys/types.h-t sys/uio.h sys/uio.h-t sys/wait.h \
- sys/wait.h-t time.h time.h-t unistd.h unistd.h-t wchar.h \
- wchar.h-t wctype.h wctype.h-t
-MOSTLYCLEANDIRS = arpa netinet sys sys sys sys sys sys
+ string.h string.h-t strings.h strings.h-t sys/ioctl.h \
+ sys/ioctl.h-t sys/random.h sys/random.h-t sys/select.h \
+ sys/select.h-t sys/socket.h sys/socket.h-t sys/stat.h \
+ sys/stat.h-t sys/time.h sys/time.h-t sys/types.h sys/types.h-t \
+ sys/uio.h sys/uio.h-t sys/wait.h sys/wait.h-t time.h time.h-t \
+ unistd.h unistd.h-t wchar.h wchar.h-t wctype.h wctype.h-t
+MOSTLYCLEANDIRS = arpa netinet sys sys sys sys sys sys sys
CLEANFILES =
DISTCLEANFILES =
MAINTAINERCLEANFILES =
@@ -2164,37 +2182,37 @@ libgnu_a_SOURCES = $(am__append_1) openat-priv.h openat-proc.c \
$(am__append_29) getprogname.h getprogname.c $(am__append_30) \
gettext.h $(am__append_31) $(am__append_32) $(am__append_33) \
hard-locale.c idx.h $(am__append_34) $(am__append_35) \
- $(am__append_36) localcharset.c glthread/lock.h \
- glthread/lock.c $(am__append_37) malloca.c math.c \
- $(am__append_38) $(am__append_39) $(am__append_40) \
- $(am__append_41) $(am__append_42) $(am__append_43) \
- $(am__append_44) minmax.h $(am__append_45) $(am__append_46) \
- $(am__append_47) $(am__append_48) $(am__append_49) \
- $(am__append_50) $(am__append_51) openat-die.c \
- $(am__append_52) $(am__append_53) $(am__append_54) \
- $(am__append_55) $(am__append_56) $(am__append_57) \
- $(am__append_58) $(am__append_59) save-cwd.c \
+ $(am__append_36) $(am__append_37) localcharset.c \
+ glthread/lock.h glthread/lock.c $(am__append_38) malloca.c \
+ math.c $(am__append_39) $(am__append_40) $(am__append_41) \
+ $(am__append_42) $(am__append_43) $(am__append_44) \
+ $(am__append_45) minmax.h $(am__append_46) $(am__append_47) \
+ $(am__append_48) $(am__append_49) $(am__append_50) \
+ nonblocking.c $(am__append_51) $(am__append_52) openat-die.c \
+ $(am__append_53) $(am__append_54) $(am__append_55) \
+ $(am__append_56) $(am__append_57) $(am__append_58) \
+ $(am__append_59) $(am__append_60) save-cwd.c \
malloc/scratch_buffer_dupfree.c malloc/scratch_buffer_grow.c \
malloc/scratch_buffer_grow_preserve.c \
- malloc/scratch_buffer_set_array_size.c $(am__append_60) \
- $(am__append_61) setlocale_null.c $(am__append_62) \
- $(am__append_63) $(am__append_64) sockets.h sockets.c \
- $(am__append_65) stat-time.c $(am__append_66) $(am__append_67) \
- $(am__append_68) $(am__append_69) $(am__append_70) \
- $(am__append_71) $(am__append_72) strnlen1.h strnlen1.c \
- $(am__append_73) sys_socket.c tempname.c glthread/threadlib.c \
- $(am__append_74) unistd.c dup-safer.c fd-safer.c pipe-safer.c \
- $(am__append_75) wctype-h.c $(am__append_76) $(am__append_77) \
- $(am__append_78) $(am__append_79) $(am__append_80) \
- $(am__append_81)
+ malloc/scratch_buffer_set_array_size.c $(am__append_61) \
+ $(am__append_62) setlocale_null.c $(am__append_63) \
+ $(am__append_64) $(am__append_65) sockets.h sockets.c \
+ $(am__append_66) stat-time.c $(am__append_67) $(am__append_68) \
+ $(am__append_69) $(am__append_70) $(am__append_71) \
+ $(am__append_72) $(am__append_73) strnlen1.h strnlen1.c \
+ $(am__append_74) sys_socket.c tempname.c glthread/threadlib.c \
+ $(am__append_75) unistd.c dup-safer.c fd-safer.c pipe-safer.c \
+ $(am__append_76) wctype-h.c $(am__append_77) $(am__append_78) \
+ $(am__append_79) $(am__append_80) $(am__append_81) \
+ $(am__append_82)
libgnu_a_CFLAGS = $(AM_CFLAGS) $(GL_CFLAG_GNULIB_WARNINGS)
libgnu_a_LIBADD = $(gl_LIBOBJS) @ALLOCA@
libgnu_a_DEPENDENCIES = $(gl_LIBOBJS) @ALLOCA@
EXTRA_libgnu_a_SOURCES = alloca.c fnmatch.c fnmatch_loop.c fnmatch.c \
frexp.c frexp.c frexpl.c stat-w32.c at-func.c isnan.c isnand.c \
isnan.c isnanl.c malloc.c lc-charset-dispatch.c mbtowc-lock.c \
- mbsrtowcs-state.c memmem.c memmem.c realloc.c stat-w32.c \
- strerror_r.c strstr.c strstr.c
+ mbsrtowcs-state.c memmem.c memmem.c stdio-read.c stdio-write.c \
+ realloc.c stat-w32.c strerror_r.c strstr.c strstr.c
# Use this preprocessor expression to decide whether #include_next works.
# Do not rely on a 'configure'-time test for this, since the expression
@@ -2375,6 +2393,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgnu_a-globfree.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgnu_a-hard-locale.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgnu_a-inet_ntop.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgnu_a-ioctl.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgnu_a-isblank.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgnu_a-isnan.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgnu_a-isnand.Po@am__quote@
@@ -2402,6 +2421,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgnu_a-mkostemp.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgnu_a-msvc-inval.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgnu_a-msvc-nothrow.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgnu_a-nonblocking.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgnu_a-open.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgnu_a-openat-die.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgnu_a-openat-proc.Po@am__quote@
@@ -3146,6 +3166,20 @@ libgnu_a-inet_ntop.obj: inet_ntop.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgnu_a_CFLAGS) $(CFLAGS) -c -o libgnu_a-inet_ntop.obj `if test -f 'inet_ntop.c'; then $(CYGPATH_W) 'inet_ntop.c'; else $(CYGPATH_W) '$(srcdir)/inet_ntop.c'; fi`
+libgnu_a-ioctl.o: ioctl.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgnu_a_CFLAGS) $(CFLAGS) -MT libgnu_a-ioctl.o -MD -MP -MF $(DEPDIR)/libgnu_a-ioctl.Tpo -c -o libgnu_a-ioctl.o `test -f 'ioctl.c' || echo '$(srcdir)/'`ioctl.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgnu_a-ioctl.Tpo $(DEPDIR)/libgnu_a-ioctl.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ioctl.c' object='libgnu_a-ioctl.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgnu_a_CFLAGS) $(CFLAGS) -c -o libgnu_a-ioctl.o `test -f 'ioctl.c' || echo '$(srcdir)/'`ioctl.c
+
+libgnu_a-ioctl.obj: ioctl.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgnu_a_CFLAGS) $(CFLAGS) -MT libgnu_a-ioctl.obj -MD -MP -MF $(DEPDIR)/libgnu_a-ioctl.Tpo -c -o libgnu_a-ioctl.obj `if test -f 'ioctl.c'; then $(CYGPATH_W) 'ioctl.c'; else $(CYGPATH_W) '$(srcdir)/ioctl.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgnu_a-ioctl.Tpo $(DEPDIR)/libgnu_a-ioctl.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ioctl.c' object='libgnu_a-ioctl.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgnu_a_CFLAGS) $(CFLAGS) -c -o libgnu_a-ioctl.obj `if test -f 'ioctl.c'; then $(CYGPATH_W) 'ioctl.c'; else $(CYGPATH_W) '$(srcdir)/ioctl.c'; fi`
+
libgnu_a-isblank.o: isblank.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgnu_a_CFLAGS) $(CFLAGS) -MT libgnu_a-isblank.o -MD -MP -MF $(DEPDIR)/libgnu_a-isblank.Tpo -c -o libgnu_a-isblank.o `test -f 'isblank.c' || echo '$(srcdir)/'`isblank.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgnu_a-isblank.Tpo $(DEPDIR)/libgnu_a-isblank.Po
@@ -3412,6 +3446,20 @@ libgnu_a-msvc-nothrow.obj: msvc-nothrow.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgnu_a_CFLAGS) $(CFLAGS) -c -o libgnu_a-msvc-nothrow.obj `if test -f 'msvc-nothrow.c'; then $(CYGPATH_W) 'msvc-nothrow.c'; else $(CYGPATH_W) '$(srcdir)/msvc-nothrow.c'; fi`
+libgnu_a-nonblocking.o: nonblocking.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgnu_a_CFLAGS) $(CFLAGS) -MT libgnu_a-nonblocking.o -MD -MP -MF $(DEPDIR)/libgnu_a-nonblocking.Tpo -c -o libgnu_a-nonblocking.o `test -f 'nonblocking.c' || echo '$(srcdir)/'`nonblocking.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgnu_a-nonblocking.Tpo $(DEPDIR)/libgnu_a-nonblocking.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='nonblocking.c' object='libgnu_a-nonblocking.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgnu_a_CFLAGS) $(CFLAGS) -c -o libgnu_a-nonblocking.o `test -f 'nonblocking.c' || echo '$(srcdir)/'`nonblocking.c
+
+libgnu_a-nonblocking.obj: nonblocking.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgnu_a_CFLAGS) $(CFLAGS) -MT libgnu_a-nonblocking.obj -MD -MP -MF $(DEPDIR)/libgnu_a-nonblocking.Tpo -c -o libgnu_a-nonblocking.obj `if test -f 'nonblocking.c'; then $(CYGPATH_W) 'nonblocking.c'; else $(CYGPATH_W) '$(srcdir)/nonblocking.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgnu_a-nonblocking.Tpo $(DEPDIR)/libgnu_a-nonblocking.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='nonblocking.c' object='libgnu_a-nonblocking.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgnu_a_CFLAGS) $(CFLAGS) -c -o libgnu_a-nonblocking.obj `if test -f 'nonblocking.c'; then $(CYGPATH_W) 'nonblocking.c'; else $(CYGPATH_W) '$(srcdir)/nonblocking.c'; fi`
+
libgnu_a-open.o: open.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgnu_a_CFLAGS) $(CFLAGS) -MT libgnu_a-open.o -MD -MP -MF $(DEPDIR)/libgnu_a-open.Tpo -c -o libgnu_a-open.o `test -f 'open.c' || echo '$(srcdir)/'`open.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgnu_a-open.Tpo $(DEPDIR)/libgnu_a-open.Po
@@ -5720,6 +5768,26 @@ strings.h: strings.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE
$(srcdir)/strings.in.h > $@-t
$(AM_V_at)mv $@-t $@
+# We need the following in order to create <sys/ioctl.h> when the system
+# does not have a complete one.
+sys/ioctl.h: sys_ioctl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H)
+ $(AM_V_GEN)$(MKDIR_P) 'sys'
+ $(AM_V_at)$(SED_HEADER_STDOUT) \
+ -e 's|@''GUARD_PREFIX''@|GL|g' \
+ -e 's|@''HAVE_SYS_IOCTL_H''@|$(HAVE_SYS_IOCTL_H)|g' \
+ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
+ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ -e 's|@''NEXT_SYS_IOCTL_H''@|$(NEXT_SYS_IOCTL_H)|g' \
+ -e 's/@''GNULIB_IOCTL''@/$(GL_GNULIB_IOCTL)/g' \
+ -e 's|@''SYS_IOCTL_H_HAVE_WINSOCK2_H''@|$(SYS_IOCTL_H_HAVE_WINSOCK2_H)|g' \
+ -e 's|@''SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS''@|$(SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS)|g' \
+ -e 's|@''REPLACE_IOCTL''@|$(REPLACE_IOCTL)|g' \
+ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
+ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
+ $(srcdir)/sys_ioctl.in.h > $@-t
+ $(AM_V_at)mv $@-t $@
+
# We need the following in order to create <sys/random.h> when the system
# doesn't have one.
sys/random.h: sys_random.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H)
diff --git a/gnulib/import/ioctl.c b/gnulib/import/ioctl.c
new file mode 100644
index 0000000..b1c7b2e
--- /dev/null
+++ b/gnulib/import/ioctl.c
@@ -0,0 +1,92 @@
+/* ioctl.c --- wrappers for Windows ioctl function
+
+ Copyright (C) 2008-2022 Free Software Foundation, Inc.
+
+ This file is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of the
+ License, or (at your option) any later version.
+
+ This file is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>. */
+
+/* Written by Paolo Bonzini */
+
+#include <config.h>
+
+#include <sys/ioctl.h>
+
+#include <stdarg.h>
+
+#if HAVE_IOCTL
+
+/* Provide a wrapper with the POSIX prototype. */
+# undef ioctl
+int
+rpl_ioctl (int fd, int request, ... /* {void *,char *} arg */)
+{
+ void *buf;
+ va_list args;
+
+ va_start (args, request);
+ buf = va_arg (args, void *);
+ va_end (args);
+
+ /* Cast 'request' so that when the system's ioctl function takes a 64-bit
+ request argument, the value gets zero-extended, not sign-extended. */
+ return ioctl (fd, (unsigned int) request, buf);
+}
+
+#else /* mingw */
+
+# include <errno.h>
+
+/* Get HANDLE. */
+# define WIN32_LEAN_AND_MEAN
+# include <windows.h>
+
+# include "fd-hook.h"
+/* Get _get_osfhandle. */
+# if GNULIB_MSVC_NOTHROW
+# include "msvc-nothrow.h"
+# else
+# include <io.h>
+# endif
+
+static int
+primary_ioctl (int fd, int request, void *arg)
+{
+ /* We don't support FIONBIO on pipes here. If you want to make pipe
+ fds non-blocking, use the gnulib 'nonblocking' module, until
+ gnulib implements fcntl F_GETFL / F_SETFL with O_NONBLOCK. */
+
+ if ((HANDLE) _get_osfhandle (fd) != INVALID_HANDLE_VALUE)
+ errno = ENOSYS;
+ else
+ errno = EBADF;
+ return -1;
+}
+
+int
+ioctl (int fd, int request, ... /* {void *,char *} arg */)
+{
+ void *arg;
+ va_list args;
+
+ va_start (args, request);
+ arg = va_arg (args, void *);
+ va_end (args);
+
+# if WINDOWS_SOCKETS
+ return execute_all_ioctl_hooks (primary_ioctl, fd, request, arg);
+# else
+ return primary_ioctl (fd, request, arg);
+# endif
+}
+
+#endif
diff --git a/gnulib/import/m4/asm-underscore.m4 b/gnulib/import/m4/asm-underscore.m4
new file mode 100644
index 0000000..950aa8d
--- /dev/null
+++ b/gnulib/import/m4/asm-underscore.m4
@@ -0,0 +1,83 @@
+# asm-underscore.m4 serial 5
+dnl Copyright (C) 2010-2022 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+dnl From Bruno Haible. Based on as-underscore.m4 in GNU clisp.
+
+# gl_ASM_SYMBOL_PREFIX
+# Tests for the prefix of C symbols at the assembly language level and the
+# linker level. This prefix is either an underscore or empty. Defines the
+# C macro USER_LABEL_PREFIX to this prefix, and sets ASM_SYMBOL_PREFIX to
+# a stringified variant of this prefix.
+
+AC_DEFUN([gl_ASM_SYMBOL_PREFIX],
+[
+ AC_REQUIRE([AC_PROG_EGREP])
+ dnl We don't use GCC's __USER_LABEL_PREFIX__ here, because
+ dnl 1. It works only for GCC.
+ dnl 2. It is incorrectly defined on some platforms, in some GCC versions.
+ AC_REQUIRE([gl_C_ASM])
+ AC_CACHE_CHECK(
+ [whether C symbols are prefixed with underscore at the linker level],
+ [gl_cv_prog_as_underscore],
+ [cat > conftest.c <<EOF
+#ifdef __cplusplus
+extern "C" int foo (void);
+#endif
+int foo(void) { return 0; }
+EOF
+ # Look for the assembly language name in the .s file.
+ AC_TRY_COMMAND(${CC-cc} $CFLAGS $CPPFLAGS $gl_c_asm_opt conftest.c) >/dev/null 2>&1
+ if LC_ALL=C $EGREP '(^|[[^a-zA-Z0-9_]])_foo([[^a-zA-Z0-9_]]|$)' conftest.$gl_asmext >/dev/null; then
+ gl_cv_prog_as_underscore=yes
+ else
+ gl_cv_prog_as_underscore=no
+ fi
+ rm -f conftest*
+ ])
+ if test $gl_cv_prog_as_underscore = yes; then
+ USER_LABEL_PREFIX=_
+ else
+ USER_LABEL_PREFIX=
+ fi
+ AC_DEFINE_UNQUOTED([USER_LABEL_PREFIX], [$USER_LABEL_PREFIX],
+ [Define to the prefix of C symbols at the assembler and linker level,
+ either an underscore or empty.])
+ ASM_SYMBOL_PREFIX='"'${USER_LABEL_PREFIX}'"'
+ AC_SUBST([ASM_SYMBOL_PREFIX])
+])
+
+# gl_C_ASM
+# Determines how to produce an assembly language file from C source code.
+# Sets the variables:
+# gl_asmext - the extension of assembly language output,
+# gl_c_asm_opt - the C compiler option that produces assembly language output.
+
+AC_DEFUN([gl_C_ASM],
+[
+ AC_EGREP_CPP([MicrosoftCompiler],
+ [
+#ifdef _MSC_VER
+MicrosoftCompiler
+#endif
+ ],
+ [dnl Microsoft's 'cl' and 'clang-cl' produce an .asm file, whereas 'clang'
+ dnl produces a .s file. Need to distinguish 'clang' and 'clang-cl'.
+ rm -f conftest*
+ echo 'int dummy;' > conftest.c
+ AC_TRY_COMMAND(${CC-cc} $CFLAGS $CPPFLAGS -c conftest.c) >/dev/null 2>&1
+ if test -f conftest.o; then
+ gl_asmext='s'
+ gl_c_asm_opt='-S'
+ else
+ gl_asmext='asm'
+ gl_c_asm_opt='-c -Fa'
+ fi
+ rm -f conftest*
+ ],
+ [gl_asmext='s'
+ gl_c_asm_opt='-S'
+ ])
+])
diff --git a/gnulib/import/m4/gnulib-cache.m4 b/gnulib/import/m4/gnulib-cache.m4
index a5f8e30..6529416 100644
--- a/gnulib/import/m4/gnulib-cache.m4
+++ b/gnulib/import/m4/gnulib-cache.m4
@@ -68,6 +68,7 @@
# mkdtemp \
# mkostemp \
# netdb \
+# nonblocking \
# pathmax \
# rawmemchr \
# readlink \
@@ -123,6 +124,7 @@ gl_MODULES([
mkdtemp
mkostemp
netdb
+ nonblocking
pathmax
rawmemchr
readlink
diff --git a/gnulib/import/m4/gnulib-comp.m4 b/gnulib/import/m4/gnulib-comp.m4
index 94e2cfe..a067331 100644
--- a/gnulib/import/m4/gnulib-comp.m4
+++ b/gnulib/import/m4/gnulib-comp.m4
@@ -125,6 +125,7 @@ AC_DEFUN([gl_EARLY],
# Code from module intprops:
# Code from module inttypes:
# Code from module inttypes-incomplete:
+ # Code from module ioctl:
# Code from module isblank:
# Code from module isnand-nolibm:
# Code from module isnanl-nolibm:
@@ -160,6 +161,7 @@ AC_DEFUN([gl_EARLY],
# Code from module netdb:
# Code from module netinet_in:
# Code from module nocrash:
+ # Code from module nonblocking:
# Code from module open:
# Code from module openat:
# Code from module openat-die:
@@ -213,6 +215,7 @@ AC_DEFUN([gl_EARLY],
# Code from module strstr:
# Code from module strstr-simple:
# Code from module strtok_r:
+ # Code from module sys_ioctl:
# Code from module sys_random:
# Code from module sys_select:
# Code from module sys_socket:
@@ -517,6 +520,10 @@ AC_DEFUN([gl_INIT],
gl_INTTYPES_INCOMPLETE
gl_INTTYPES_H_REQUIRE_DEFAULTS
AC_PROG_MKDIR_P
+ gl_FUNC_IOCTL
+ gl_CONDITIONAL([GL_COND_OBJ_IOCTL],
+ [test $HAVE_IOCTL = 0 || test $REPLACE_IOCTL = 1])
+ gl_SYS_IOCTL_MODULE_INDICATOR([ioctl])
gl_FUNC_ISBLANK
gl_CONDITIONAL([GL_COND_OBJ_ISBLANK], [test $HAVE_ISBLANK = 0])
gl_MODULE_INDICATOR([isblank])
@@ -655,6 +662,17 @@ AC_DEFUN([gl_INIT],
gl_HEADER_NETINET_IN
gl_CONDITIONAL_HEADER([netinet/in.h])
AC_PROG_MKDIR_P
+ gl_NONBLOCKING_IO
+ gl_FCNTL_MODULE_INDICATOR([nonblocking])
+ dnl Define the C macro GNULIB_NONBLOCKING to 1.
+ gl_MODULE_INDICATOR([nonblocking])
+ dnl Define the substituted variable GNULIB_STDIO_H_NONBLOCKING to 1.
+ gl_STDIO_H_REQUIRE_DEFAULTS
+ AC_REQUIRE([gl_ASM_SYMBOL_PREFIX])
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STDIO_H_NONBLOCKING], [1])
+ dnl Define the substituted variable GNULIB_UNISTD_H_NONBLOCKING to 1.
+ gl_UNISTD_H_REQUIRE_DEFAULTS
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_UNISTD_H_NONBLOCKING], [1])
gl_FUNC_OPEN
gl_CONDITIONAL([GL_COND_OBJ_OPEN], [test $REPLACE_OPEN = 1])
AM_COND_IF([GL_COND_OBJ_OPEN], [
@@ -866,6 +884,9 @@ AC_DEFUN([gl_INIT],
gl_PREREQ_STRTOK_R
])
gl_STRING_MODULE_INDICATOR([strtok_r])
+ gl_SYS_IOCTL_H
+ gl_SYS_IOCTL_H_REQUIRE_DEFAULTS
+ AC_PROG_MKDIR_P
gl_SYS_RANDOM_H
gl_SYS_RANDOM_H_REQUIRE_DEFAULTS
AC_PROG_MKDIR_P
@@ -1210,6 +1231,7 @@ AC_DEFUN([gl_FILE_LIST], [
lib/inet_ntop.c
lib/intprops.h
lib/inttypes.in.h
+ lib/ioctl.c
lib/isblank.c
lib/isnan.c
lib/isnand-nolibm.h
@@ -1262,6 +1284,8 @@ AC_DEFUN([gl_FILE_LIST], [
lib/msvc-nothrow.h
lib/netdb.in.h
lib/netinet_in.in.h
+ lib/nonblocking.c
+ lib/nonblocking.h
lib/open.c
lib/openat-die.c
lib/openat-priv.h
@@ -1324,6 +1348,7 @@ AC_DEFUN([gl_FILE_LIST], [
lib/strnlen1.h
lib/strstr.c
lib/strtok_r.c
+ lib/sys_ioctl.in.h
lib/sys_random.in.h
lib/sys_select.in.h
lib/sys_socket.c
@@ -1366,6 +1391,7 @@ AC_DEFUN([gl_FILE_LIST], [
m4/absolute-header.m4
m4/alloca.m4
m4/arpa_inet_h.m4
+ m4/asm-underscore.m4
m4/btowc.m4
m4/builtin-expect.m4
m4/canonicalize.m4
@@ -1426,6 +1452,7 @@ AC_DEFUN([gl_FILE_LIST], [
m4/include_next.m4
m4/inet_ntop.m4
m4/inttypes.m4
+ m4/ioctl.m4
m4/isblank.m4
m4/isnand.m4
m4/isnanl.m4
@@ -1462,6 +1489,7 @@ AC_DEFUN([gl_FILE_LIST], [
m4/netdb_h.m4
m4/netinet_in_h.m4
m4/nocrash.m4
+ m4/nonblocking.m4
m4/off_t.m4
m4/open-cloexec.m4
m4/open-slash.m4
@@ -1507,6 +1535,7 @@ AC_DEFUN([gl_FILE_LIST], [
m4/strnlen.m4
m4/strstr.m4
m4/strtok_r.m4
+ m4/sys_ioctl_h.m4
m4/sys_random_h.m4
m4/sys_select_h.m4
m4/sys_socket_h.m4
diff --git a/gnulib/import/m4/ioctl.m4 b/gnulib/import/m4/ioctl.m4
new file mode 100644
index 0000000..7c72134
--- /dev/null
+++ b/gnulib/import/m4/ioctl.m4
@@ -0,0 +1,44 @@
+# ioctl.m4 serial 6
+dnl Copyright (C) 2008-2022 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+AC_DEFUN([gl_FUNC_IOCTL],
+[
+ AC_REQUIRE([gl_SYS_IOCTL_H_DEFAULTS])
+ AC_REQUIRE([gl_SYS_SOCKET_H])
+ HAVE_IOCTL=1
+ if test "$ac_cv_header_winsock2_h" = yes; then
+ dnl Even if the 'socket' module is not used here, another part of the
+ dnl application may use it and pass file descriptors that refer to
+ dnl sockets to the ioctl() function. So enable the support for sockets.
+ HAVE_IOCTL=0
+ else
+ AC_CHECK_FUNCS([ioctl])
+ dnl On glibc systems, the second parameter is 'unsigned long int request',
+ dnl not 'int request'. We cannot simply cast the function pointer, but
+ dnl instead need a wrapper.
+ AC_CACHE_CHECK([for ioctl with POSIX signature],
+ [gl_cv_func_ioctl_posix_signature],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <sys/ioctl.h>
+ /* On some platforms, ioctl() is declared in <unistd.h>. */
+ #include <unistd.h>
+ ]],
+ [[extern
+ #ifdef __cplusplus
+ "C"
+ #endif
+ int ioctl (int, int, ...);
+ ]])
+ ],
+ [gl_cv_func_ioctl_posix_signature=yes],
+ [gl_cv_func_ioctl_posix_signature=no])
+ ])
+ if test $gl_cv_func_ioctl_posix_signature != yes; then
+ REPLACE_IOCTL=1
+ fi
+ fi
+])
diff --git a/gnulib/import/m4/nonblocking.m4 b/gnulib/import/m4/nonblocking.m4
new file mode 100644
index 0000000..b9d2325
--- /dev/null
+++ b/gnulib/import/m4/nonblocking.m4
@@ -0,0 +1,29 @@
+# nonblocking.m4 serial 3
+dnl Copyright (C) 2011-2022 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+dnl Tests whether non-blocking I/O is natively supported by read(), write().
+dnl Sets gl_cv_have_nonblocking.
+dnl Also tests whether open() supports O_NONBLOCK.
+dnl Sets gl_cv_have_open_O_NONBLOCK.
+AC_DEFUN([gl_NONBLOCKING_IO],
+[
+ dnl Ensure to expand the default settings once only, before all statements
+ dnl that occur in other macros.
+ AC_REQUIRE([gl_NONBLOCKING_IO_BODY])
+])
+
+AC_DEFUN([gl_NONBLOCKING_IO_BODY],
+[
+ AC_REQUIRE([AC_CANONICAL_HOST])
+ case "$host_os" in
+ mingw*) gl_cv_have_nonblocking=no ;;
+ *) gl_cv_have_nonblocking=yes ;;
+ esac
+ case "$host_os" in
+ mingw*) gl_cv_have_open_O_NONBLOCK=no ;;
+ *) gl_cv_have_open_O_NONBLOCK=yes ;;
+ esac
+])
diff --git a/gnulib/import/m4/sys_ioctl_h.m4 b/gnulib/import/m4/sys_ioctl_h.m4
new file mode 100644
index 0000000..be65364
--- /dev/null
+++ b/gnulib/import/m4/sys_ioctl_h.m4
@@ -0,0 +1,79 @@
+# sys_ioctl_h.m4 serial 15
+dnl Copyright (C) 2008-2022 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+dnl Written by Bruno Haible.
+
+AC_DEFUN_ONCE([gl_SYS_IOCTL_H],
+[
+ dnl Ensure to expand the default settings once only, before all statements
+ dnl that occur in other macros.
+ AC_REQUIRE([gl_SYS_IOCTL_H_DEFAULTS])
+
+ AC_CHECK_HEADERS_ONCE([sys/ioctl.h])
+ if test $ac_cv_header_sys_ioctl_h = yes; then
+ HAVE_SYS_IOCTL_H=1
+ dnl Test whether <sys/ioctl.h> declares ioctl(), or whether some other
+ dnl header file, such as <unistd.h> or <stropts.h>, is needed for that.
+ AC_CACHE_CHECK([whether <sys/ioctl.h> declares ioctl],
+ [gl_cv_decl_ioctl_in_sys_ioctl_h],
+ [dnl We cannot use AC_CHECK_DECL because it produces its own messages.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <sys/ioctl.h>]],
+ [[(void) ioctl;]])],
+ [gl_cv_decl_ioctl_in_sys_ioctl_h=yes],
+ [gl_cv_decl_ioctl_in_sys_ioctl_h=no])
+ ])
+ else
+ HAVE_SYS_IOCTL_H=0
+ fi
+ AC_SUBST([HAVE_SYS_IOCTL_H])
+ dnl <sys/ioctl.h> is always overridden, because of GNULIB_POSIXCHECK.
+ gl_CHECK_NEXT_HEADERS([sys/ioctl.h])
+
+ dnl Check for declarations of anything we want to poison if the
+ dnl corresponding gnulib module is not in use.
+ gl_WARN_ON_USE_PREPARE([[#include <sys/ioctl.h>
+/* Some platforms declare ioctl in the wrong header. */
+#if !(defined __GLIBC__ && !defined __UCLIBC__)
+# include <unistd.h>
+#endif
+ ]], [ioctl])
+])
+
+# gl_SYS_IOCTL_MODULE_INDICATOR([modulename])
+# sets the shell variable that indicates the presence of the given module
+# to a C preprocessor expression that will evaluate to 1.
+# This macro invocation must not occur in macros that are AC_REQUIREd.
+AC_DEFUN([gl_SYS_IOCTL_MODULE_INDICATOR],
+[
+ dnl Ensure to expand the default settings once only.
+ gl_SYS_IOCTL_H_REQUIRE_DEFAULTS
+ gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+ dnl Define it also as a C macro, for the benefit of the unit tests.
+ gl_MODULE_INDICATOR_FOR_TESTS([$1])
+])
+
+# Initializes the default values for AC_SUBSTed shell variables.
+# This macro must not be AC_REQUIREd. It must only be invoked, and only
+# outside of macros or in macros that are not AC_REQUIREd.
+AC_DEFUN([gl_SYS_IOCTL_H_REQUIRE_DEFAULTS],
+[
+ m4_defun(GL_MODULE_INDICATOR_PREFIX[_SYS_IOCTL_H_MODULE_INDICATOR_DEFAULTS], [
+ gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_IOCTL])
+ ])
+ m4_require(GL_MODULE_INDICATOR_PREFIX[_SYS_IOCTL_H_MODULE_INDICATOR_DEFAULTS])
+ AC_REQUIRE([gl_SYS_IOCTL_H_DEFAULTS])
+])
+
+AC_DEFUN([gl_SYS_IOCTL_H_DEFAULTS],
+[
+ dnl Assume proper GNU behavior unless another module says otherwise.
+ SYS_IOCTL_H_HAVE_WINSOCK2_H=0; AC_SUBST([SYS_IOCTL_H_HAVE_WINSOCK2_H])
+ SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=0;
+ AC_SUBST([SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS])
+ REPLACE_IOCTL=0; AC_SUBST([REPLACE_IOCTL])
+])
diff --git a/gnulib/import/nonblocking.c b/gnulib/import/nonblocking.c
new file mode 100644
index 0000000..9ea31f7
--- /dev/null
+++ b/gnulib/import/nonblocking.c
@@ -0,0 +1,163 @@
+/* Non-blocking I/O for pipe or socket descriptors.
+ Copyright (C) 2011-2022 Free Software Foundation, Inc.
+
+ This file is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of the
+ License, or (at your option) any later version.
+
+ This file is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>. */
+
+#include <config.h>
+
+/* Specification. */
+#include "nonblocking.h"
+
+#include <errno.h>
+
+#if defined _WIN32 && ! defined __CYGWIN__
+/* Native Windows API. */
+
+# include <sys/ioctl.h>
+# include <sys/socket.h>
+# include <unistd.h>
+
+/* Get declarations of the native Windows API functions. */
+# define WIN32_LEAN_AND_MEAN
+# include <windows.h>
+
+# if GNULIB_MSVC_NOTHROW
+# include "msvc-nothrow.h"
+# else
+# include <io.h>
+# endif
+
+/* Don't assume that UNICODE is not defined. */
+# undef GetNamedPipeHandleState
+# define GetNamedPipeHandleState GetNamedPipeHandleStateA
+
+int
+get_nonblocking_flag (int desc)
+{
+ HANDLE h = (HANDLE) _get_osfhandle (desc);
+ if (h == INVALID_HANDLE_VALUE)
+ {
+ errno = EBADF;
+ return -1;
+ }
+ if (GetFileType (h) == FILE_TYPE_PIPE)
+ {
+ /* h is a pipe or socket. */
+ DWORD state;
+ if (GetNamedPipeHandleState (h, &state, NULL, NULL, NULL, NULL, 0))
+ /* h is a pipe. */
+ return (state & PIPE_NOWAIT) != 0;
+ else
+ /* h is a socket. */
+ errno = ENOSYS;
+ return -1;
+ }
+ else
+ /* The native Windows API does not support non-blocking on regular
+ files. */
+ return 0;
+}
+
+int
+set_nonblocking_flag (int desc, bool value)
+{
+ HANDLE h = (HANDLE) _get_osfhandle (desc);
+ if (h == INVALID_HANDLE_VALUE)
+ {
+ errno = EBADF;
+ return -1;
+ }
+ if (GetFileType (h) == FILE_TYPE_PIPE)
+ {
+ /* h is a pipe or socket. */
+ DWORD state;
+ if (GetNamedPipeHandleState (h, &state, NULL, NULL, NULL, NULL, 0))
+ {
+ /* h is a pipe. */
+ if ((state & PIPE_NOWAIT) != 0)
+ {
+ if (value)
+ return 0;
+ state &= ~PIPE_NOWAIT;
+ }
+ else
+ {
+ if (!value)
+ return 0;
+ state |= PIPE_NOWAIT;
+ }
+ if (SetNamedPipeHandleState (h, &state, NULL, NULL))
+ return 0;
+ errno = EINVAL;
+ return -1;
+ }
+ else
+ {
+ /* h is a socket. */
+ int v = value;
+ return ioctl (desc, FIONBIO, &v);
+ }
+ }
+ else
+ {
+ /* The native Windows API does not support non-blocking on regular
+ files. */
+ if (!value)
+ return 0;
+ errno = ENOTSUP;
+ return -1;
+ }
+}
+
+#else
+/* Unix API. */
+
+# include <fcntl.h>
+
+# if GNULIB_defined_O_NONBLOCK
+# error Please port nonblocking to your platform
+# endif
+
+/* We don't need the gnulib replacement of fcntl() here. */
+# undef fcntl
+
+int
+get_nonblocking_flag (int desc)
+{
+ int fcntl_flags;
+
+ fcntl_flags = fcntl (desc, F_GETFL, 0);
+ if (fcntl_flags < 0)
+ return -1;
+ return (fcntl_flags & O_NONBLOCK) != 0;
+}
+
+int
+set_nonblocking_flag (int desc, bool value)
+{
+ int fcntl_flags;
+
+ fcntl_flags = fcntl (desc, F_GETFL, 0);
+ if (fcntl_flags < 0)
+ return -1;
+ if (((fcntl_flags & O_NONBLOCK) != 0) == value)
+ return 0;
+ if (value)
+ fcntl_flags |= O_NONBLOCK;
+ else
+ fcntl_flags &= ~O_NONBLOCK;
+ return fcntl (desc, F_SETFL, fcntl_flags);
+}
+
+#endif
diff --git a/gnulib/import/nonblocking.h b/gnulib/import/nonblocking.h
new file mode 100644
index 0000000..8e00fd7
--- /dev/null
+++ b/gnulib/import/nonblocking.h
@@ -0,0 +1,62 @@
+/* Non-blocking I/O for pipe or socket descriptors.
+ Copyright (C) 2011-2022 Free Software Foundation, Inc.
+
+ This file is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of the
+ License, or (at your option) any later version.
+
+ This file is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>. */
+
+#ifndef _NONBLOCKING_H
+#define _NONBLOCKING_H
+
+#include <stdbool.h>
+
+/* Non-blocking I/O is an I/O mode by which read(), write() calls avoid
+ blocking the current thread. When non-blocking is enabled:
+ - A read() call returns -1 with errno set to EAGAIN when no data or EOF
+ information is immediately available.
+ - A write() call returns -1 with errno set to EAGAIN when it cannot
+ transport the requested amount of data (but at most one pipe buffer)
+ without blocking.
+ Non-blocking I/O is most useful for character devices, pipes, and sockets.
+ Whether it also works on regular files and block devices is platform
+ dependent.
+
+ There are three modern alternatives to non-blocking I/O:
+ - use select() or poll() followed by read() or write() if the descriptor
+ is ready,
+ - call read() or write() in separate threads,
+ - use <aio.h> interfaces. */
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+/* Return 1 if I/O to the descriptor DESC is currently non-blocking, 0
+ it is blocking, or -1 with errno set if fd is invalid or blocking
+ status cannot be determined (such as with sockets on mingw). */
+extern int get_nonblocking_flag (int desc);
+
+/* Specify the non-blocking flag for the descriptor DESC.
+ Return 0 upon success, or -1 with errno set upon failure.
+ The default depends on the presence of the O_NONBLOCK flag for files
+ or pipes opened with open() or on the presence of the SOCK_NONBLOCK
+ flag for sockets. */
+extern int set_nonblocking_flag (int desc, bool value);
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _NONBLOCKING_H */
diff --git a/gnulib/import/sys_ioctl.in.h b/gnulib/import/sys_ioctl.in.h
new file mode 100644
index 0000000..7f1cdc8
--- /dev/null
+++ b/gnulib/import/sys_ioctl.in.h
@@ -0,0 +1,79 @@
+/* Substitute for and wrapper around <sys/ioctl.h>.
+ Copyright (C) 2008-2022 Free Software Foundation, Inc.
+
+ This file is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of the
+ License, or (at your option) any later version.
+
+ This file is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>. */
+
+#ifndef _@GUARD_PREFIX@_SYS_IOCTL_H
+
+#if __GNUC__ >= 3
+@PRAGMA_SYSTEM_HEADER@
+#endif
+@PRAGMA_COLUMNS@
+
+/* The include_next requires a split double-inclusion guard. */
+#if @HAVE_SYS_IOCTL_H@
+# @INCLUDE_NEXT@ @NEXT_SYS_IOCTL_H@
+#endif
+
+#ifndef _@GUARD_PREFIX@_SYS_IOCTL_H
+#define _@GUARD_PREFIX@_SYS_IOCTL_H
+
+/* AIX 5.1 and Solaris 10 declare ioctl() in <unistd.h> and in <stropts.h>,
+ but not in <sys/ioctl.h>.
+ Haiku declares ioctl() in <unistd.h>, but not in <sys/ioctl.h>.
+ But avoid namespace pollution on glibc systems. */
+#ifndef __GLIBC__
+# include <unistd.h>
+#endif
+
+/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */
+
+/* The definition of _GL_WARN_ON_USE is copied here. */
+
+
+/* Declare overridden functions. */
+
+#if @GNULIB_IOCTL@
+# if @REPLACE_IOCTL@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef ioctl
+# define ioctl rpl_ioctl
+# endif
+_GL_FUNCDECL_RPL (ioctl, int,
+ (int fd, int request, ... /* {void *,char *} arg */));
+_GL_CXXALIAS_RPL (ioctl, int,
+ (int fd, int request, ... /* {void *,char *} arg */));
+# else
+# if @SYS_IOCTL_H_HAVE_WINSOCK2_H@ || 1
+_GL_FUNCDECL_SYS (ioctl, int,
+ (int fd, int request, ... /* {void *,char *} arg */));
+# endif
+_GL_CXXALIAS_SYS (ioctl, int,
+ (int fd, int request, ... /* {void *,char *} arg */));
+# endif
+_GL_CXXALIASWARN (ioctl);
+#elif @SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
+# undef ioctl
+# define ioctl ioctl_used_without_requesting_gnulib_module_ioctl
+#elif defined GNULIB_POSIXCHECK
+# undef ioctl
+# if HAVE_RAW_DECL_IOCTL
+_GL_WARN_ON_USE (ioctl, "ioctl does not portably work on sockets - "
+ "use gnulib module ioctl for portability");
+# endif
+#endif
+
+
+#endif /* _@GUARD_PREFIX@_SYS_IOCTL_H */
+#endif /* _@GUARD_PREFIX@_SYS_IOCTL_H */
diff --git a/gnulib/update-gnulib.sh b/gnulib/update-gnulib.sh
index 9b0a955..a675e87 100755
--- a/gnulib/update-gnulib.sh
+++ b/gnulib/update-gnulib.sh
@@ -60,6 +60,7 @@ IMPORTED_GNULIB_MODULES="\
mkdtemp \
mkostemp \
netdb \
+ nonblocking \
pathmax \
rawmemchr \
readlink \