mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 03:40:34 +02:00
Import `pipe-posix' module from gnulib.
* lib/Makefile.am: * lib/pipe.c: * m4/gnulib-cache.m4: * m4/gnulib-comp.m4: * m4/pipe.m4: Add pipe-posix module.
This commit is contained in:
parent
09b204d387
commit
1adba49ab2
5 changed files with 85 additions and 2 deletions
|
@ -21,7 +21,7 @@
|
||||||
# the same distribution terms as the rest of that program.
|
# the same distribution terms as the rest of that program.
|
||||||
#
|
#
|
||||||
# Generated by gnulib-tool.
|
# Generated by gnulib-tool.
|
||||||
# Reproduce by: gnulib-tool --import --dir=. --local-dir=gnulib-local --lib=libgnu --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=build-aux --lgpl=3 --no-conditional-dependencies --libtool --macro-prefix=gl --no-vc-files accept alignof alloca-opt announce-gen autobuild bind byteswap canonicalize-lgpl ceil clock-time close connect dirfd duplocale environ extensions flock floor fpieee frexp full-read full-write func gendocs getaddrinfo getpeername getsockname getsockopt git-version-gen gitlog-to-changelog gnu-web-doc-update gnupload havelib iconv_open-utf inet_ntop inet_pton isinf isnan ldexp lib-symbol-versions lib-symbol-visibility libunistring listen localcharset locale log1p maintainer-makefile malloc-gnu malloca nl_langinfo nproc open pipe2 putenv recv recvfrom regex rename select send sendto setenv setsockopt shutdown socket stat-time stdlib strftime striconveh string sys_stat times trunc verify vsnprintf warnings wchar
|
# Reproduce by: gnulib-tool --import --dir=. --local-dir=gnulib-local --lib=libgnu --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=build-aux --lgpl=3 --no-conditional-dependencies --libtool --macro-prefix=gl --no-vc-files accept alignof alloca-opt announce-gen autobuild bind byteswap canonicalize-lgpl ceil clock-time close connect dirfd duplocale environ extensions flock floor fpieee frexp full-read full-write func gendocs getaddrinfo getpeername getsockname getsockopt git-version-gen gitlog-to-changelog gnu-web-doc-update gnupload havelib iconv_open-utf inet_ntop inet_pton isinf isnan ldexp lib-symbol-versions lib-symbol-visibility libunistring listen localcharset locale log1p maintainer-makefile malloc-gnu malloca nl_langinfo nproc open pipe-posix pipe2 putenv recv recvfrom regex rename select send sendto setenv setsockopt shutdown socket stat-time stdlib strftime striconveh string sys_stat times trunc verify vsnprintf warnings wchar
|
||||||
|
|
||||||
AUTOMAKE_OPTIONS = 1.5 gnits subdir-objects
|
AUTOMAKE_OPTIONS = 1.5 gnits subdir-objects
|
||||||
|
|
||||||
|
@ -1460,6 +1460,15 @@ EXTRA_DIST += pathmax.h
|
||||||
|
|
||||||
## end gnulib module pathmax
|
## end gnulib module pathmax
|
||||||
|
|
||||||
|
## begin gnulib module pipe-posix
|
||||||
|
|
||||||
|
|
||||||
|
EXTRA_DIST += pipe.c
|
||||||
|
|
||||||
|
EXTRA_libgnu_la_SOURCES += pipe.c
|
||||||
|
|
||||||
|
## end gnulib module pipe-posix
|
||||||
|
|
||||||
## begin gnulib module pipe2
|
## begin gnulib module pipe2
|
||||||
|
|
||||||
libgnu_la_SOURCES += pipe2.c
|
libgnu_la_SOURCES += pipe2.c
|
||||||
|
|
50
lib/pipe.c
Normal file
50
lib/pipe.c
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
/* Create a pipe.
|
||||||
|
Copyright (C) 2009-2013 Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
This program 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, or (at your option)
|
||||||
|
any later version.
|
||||||
|
|
||||||
|
This program 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 <http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
#include <config.h>
|
||||||
|
|
||||||
|
/* Specification. */
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
|
#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
|
||||||
|
/* Native Windows API. */
|
||||||
|
|
||||||
|
/* Get _pipe(). */
|
||||||
|
# include <io.h>
|
||||||
|
|
||||||
|
/* Get _O_BINARY. */
|
||||||
|
# include <fcntl.h>
|
||||||
|
|
||||||
|
int
|
||||||
|
pipe (int fd[2])
|
||||||
|
{
|
||||||
|
/* Mingw changes fd to {-1,-1} on failure, but this violates
|
||||||
|
http://austingroupbugs.net/view.php?id=467 */
|
||||||
|
int tmp[2];
|
||||||
|
int result = _pipe (tmp, 4096, _O_BINARY);
|
||||||
|
if (!result)
|
||||||
|
{
|
||||||
|
fd[0] = tmp[0];
|
||||||
|
fd[1] = tmp[1];
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
# error "This platform lacks a pipe function, and Gnulib doesn't provide a replacement. This is a bug in Gnulib."
|
||||||
|
|
||||||
|
#endif
|
|
@ -27,7 +27,7 @@
|
||||||
|
|
||||||
|
|
||||||
# Specification in the form of a command-line invocation:
|
# Specification in the form of a command-line invocation:
|
||||||
# gnulib-tool --import --dir=. --local-dir=gnulib-local --lib=libgnu --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=build-aux --lgpl=3 --no-conditional-dependencies --libtool --macro-prefix=gl --no-vc-files accept alignof alloca-opt announce-gen autobuild bind byteswap canonicalize-lgpl ceil clock-time close connect dirfd duplocale environ extensions flock floor fpieee frexp full-read full-write func gendocs getaddrinfo getpeername getsockname getsockopt git-version-gen gitlog-to-changelog gnu-web-doc-update gnupload havelib iconv_open-utf inet_ntop inet_pton isinf isnan ldexp lib-symbol-versions lib-symbol-visibility libunistring listen localcharset locale log1p maintainer-makefile malloc-gnu malloca nl_langinfo nproc open pipe2 putenv recv recvfrom regex rename select send sendto setenv setsockopt shutdown socket stat-time stdlib strftime striconveh string sys_stat times trunc verify vsnprintf warnings wchar
|
# gnulib-tool --import --dir=. --local-dir=gnulib-local --lib=libgnu --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=build-aux --lgpl=3 --no-conditional-dependencies --libtool --macro-prefix=gl --no-vc-files accept alignof alloca-opt announce-gen autobuild bind byteswap canonicalize-lgpl ceil clock-time close connect dirfd duplocale environ extensions flock floor fpieee frexp full-read full-write func gendocs getaddrinfo getpeername getsockname getsockopt git-version-gen gitlog-to-changelog gnu-web-doc-update gnupload havelib iconv_open-utf inet_ntop inet_pton isinf isnan ldexp lib-symbol-versions lib-symbol-visibility libunistring listen localcharset locale log1p maintainer-makefile malloc-gnu malloca nl_langinfo nproc open pipe-posix pipe2 putenv recv recvfrom regex rename select send sendto setenv setsockopt shutdown socket stat-time stdlib strftime striconveh string sys_stat times trunc verify vsnprintf warnings wchar
|
||||||
|
|
||||||
# Specification in the form of a few gnulib-tool.m4 macro invocations:
|
# Specification in the form of a few gnulib-tool.m4 macro invocations:
|
||||||
gl_LOCAL_DIR([gnulib-local])
|
gl_LOCAL_DIR([gnulib-local])
|
||||||
|
@ -84,6 +84,7 @@ gl_MODULES([
|
||||||
nl_langinfo
|
nl_langinfo
|
||||||
nproc
|
nproc
|
||||||
open
|
open
|
||||||
|
pipe-posix
|
||||||
pipe2
|
pipe2
|
||||||
putenv
|
putenv
|
||||||
recv
|
recv
|
||||||
|
|
|
@ -146,6 +146,7 @@ AC_DEFUN([gl_EARLY],
|
||||||
# Code from module nproc:
|
# Code from module nproc:
|
||||||
# Code from module open:
|
# Code from module open:
|
||||||
# Code from module pathmax:
|
# Code from module pathmax:
|
||||||
|
# Code from module pipe-posix:
|
||||||
# Code from module pipe2:
|
# Code from module pipe2:
|
||||||
# Code from module putenv:
|
# Code from module putenv:
|
||||||
# Code from module raise:
|
# Code from module raise:
|
||||||
|
@ -545,6 +546,11 @@ AC_SUBST([LTALLOCA])
|
||||||
fi
|
fi
|
||||||
gl_FCNTL_MODULE_INDICATOR([open])
|
gl_FCNTL_MODULE_INDICATOR([open])
|
||||||
gl_PATHMAX
|
gl_PATHMAX
|
||||||
|
gl_FUNC_PIPE
|
||||||
|
if test $HAVE_PIPE = 0; then
|
||||||
|
AC_LIBOBJ([pipe])
|
||||||
|
fi
|
||||||
|
gl_UNISTD_MODULE_INDICATOR([pipe])
|
||||||
gl_FUNC_PIPE2
|
gl_FUNC_PIPE2
|
||||||
gl_UNISTD_MODULE_INDICATOR([pipe2])
|
gl_UNISTD_MODULE_INDICATOR([pipe2])
|
||||||
gl_FUNC_PUTENV
|
gl_FUNC_PUTENV
|
||||||
|
@ -994,6 +1000,7 @@ AC_DEFUN([gl_FILE_LIST], [
|
||||||
lib/nproc.h
|
lib/nproc.h
|
||||||
lib/open.c
|
lib/open.c
|
||||||
lib/pathmax.h
|
lib/pathmax.h
|
||||||
|
lib/pipe.c
|
||||||
lib/pipe2.c
|
lib/pipe2.c
|
||||||
lib/printf-args.c
|
lib/printf-args.c
|
||||||
lib/printf-args.h
|
lib/printf-args.h
|
||||||
|
@ -1183,6 +1190,7 @@ AC_DEFUN([gl_FILE_LIST], [
|
||||||
m4/off_t.m4
|
m4/off_t.m4
|
||||||
m4/open.m4
|
m4/open.m4
|
||||||
m4/pathmax.m4
|
m4/pathmax.m4
|
||||||
|
m4/pipe.m4
|
||||||
m4/pipe2.m4
|
m4/pipe2.m4
|
||||||
m4/printf.m4
|
m4/printf.m4
|
||||||
m4/putenv.m4
|
m4/putenv.m4
|
||||||
|
|
15
m4/pipe.m4
Normal file
15
m4/pipe.m4
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
# pipe.m4 serial 2
|
||||||
|
dnl Copyright (C) 2010-2013 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_PIPE],
|
||||||
|
[
|
||||||
|
AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
|
||||||
|
|
||||||
|
AC_CHECK_FUNCS_ONCE([pipe])
|
||||||
|
if test $ac_cv_func_pipe != yes; then
|
||||||
|
HAVE_PIPE=0
|
||||||
|
fi
|
||||||
|
])
|
Loading…
Add table
Add a link
Reference in a new issue