gnulib: import module mkstemps
* lib/mkstemps.c, m4/mkstemps.m4: New files. * lib/Makefile.am, m4/gnulib-cache.m4, m4/gnulib-comp.m4: Update.
This commit is contained in:
parent
16b7206dd9
commit
c0e7f9de58
5 changed files with 93 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=. --lib=libgnu --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=tools --no-conditional-dependencies --libtool --macro-prefix=gl --no-vc-files argmatch argp error gethrxtime isatty mkstemp progname stpcpy sys_wait
|
# Reproduce by: gnulib-tool --import --dir=. --lib=libgnu --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=tools --no-conditional-dependencies --libtool --macro-prefix=gl --no-vc-files argmatch argp error gethrxtime isatty mkstemp mkstemps progname stpcpy sys_wait
|
||||||
|
|
||||||
AUTOMAKE_OPTIONS = 1.9.6 gnits
|
AUTOMAKE_OPTIONS = 1.9.6 gnits
|
||||||
|
|
||||||
|
|
@ -517,6 +517,15 @@ EXTRA_libgnu_la_SOURCES += mkstemp.c
|
||||||
|
|
||||||
## end gnulib module mkstemp
|
## end gnulib module mkstemp
|
||||||
|
|
||||||
|
## begin gnulib module mkstemps
|
||||||
|
|
||||||
|
|
||||||
|
EXTRA_DIST += mkstemps.c
|
||||||
|
|
||||||
|
EXTRA_libgnu_la_SOURCES += mkstemps.c
|
||||||
|
|
||||||
|
## end gnulib module mkstemps
|
||||||
|
|
||||||
## begin gnulib module msvc-inval
|
## begin gnulib module msvc-inval
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
54
lib/mkstemps.c
Normal file
54
lib/mkstemps.c
Normal file
|
|
@ -0,0 +1,54 @@
|
||||||
|
/* Copyright (C) 1998-1999, 2001, 2005-2007, 2009-2013 Free Software
|
||||||
|
Foundation, Inc.
|
||||||
|
This file is derived from the one in the GNU C Library.
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation; either version 3 of the License, 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 General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
#if !_LIBC
|
||||||
|
# include <config.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <stdlib.h>
|
||||||
|
|
||||||
|
#if !_LIBC
|
||||||
|
# include <errno.h>
|
||||||
|
# include "tempname.h"
|
||||||
|
# define __gen_tempname gen_tempname
|
||||||
|
# ifndef __GT_FILE
|
||||||
|
# define __GT_FILE GT_FILE
|
||||||
|
# endif
|
||||||
|
# define __set_errno(x) errno = x;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
#ifndef __GT_FILE
|
||||||
|
# define __GT_FILE 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Generate a unique temporary file name from XTEMPLATE. The last six
|
||||||
|
characters before a suffix of length SUFFIXLEN of XTEMPLATE must be
|
||||||
|
"XXXXXX"; they are replaced with a string that makes the filename
|
||||||
|
unique. Then open the file and return a fd. */
|
||||||
|
int
|
||||||
|
mkstemps (char *xtemplate, int suffixlen)
|
||||||
|
{
|
||||||
|
if (suffixlen < 0)
|
||||||
|
{
|
||||||
|
__set_errno (EINVAL);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return __gen_tempname (xtemplate, suffixlen, 0, __GT_FILE);
|
||||||
|
}
|
||||||
|
|
@ -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=. --lib=libgnu --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=tools --no-conditional-dependencies --libtool --macro-prefix=gl --no-vc-files argmatch argp error gethrxtime isatty mkstemp progname stpcpy sys_wait
|
# gnulib-tool --import --dir=. --lib=libgnu --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=tools --no-conditional-dependencies --libtool --macro-prefix=gl --no-vc-files argmatch argp error gethrxtime isatty mkstemp mkstemps progname stpcpy sys_wait
|
||||||
|
|
||||||
# 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([])
|
gl_LOCAL_DIR([])
|
||||||
|
|
@ -38,6 +38,7 @@ gl_MODULES([
|
||||||
gethrxtime
|
gethrxtime
|
||||||
isatty
|
isatty
|
||||||
mkstemp
|
mkstemp
|
||||||
|
mkstemps
|
||||||
progname
|
progname
|
||||||
stpcpy
|
stpcpy
|
||||||
sys_wait
|
sys_wait
|
||||||
|
|
|
||||||
|
|
@ -78,6 +78,7 @@ AC_DEFUN([gl_EARLY],
|
||||||
# Code from module memchr:
|
# Code from module memchr:
|
||||||
# Code from module mempcpy:
|
# Code from module mempcpy:
|
||||||
# Code from module mkstemp:
|
# Code from module mkstemp:
|
||||||
|
# Code from module mkstemps:
|
||||||
# Code from module msvc-inval:
|
# Code from module msvc-inval:
|
||||||
# Code from module msvc-nothrow:
|
# Code from module msvc-nothrow:
|
||||||
# Code from module multiarch:
|
# Code from module multiarch:
|
||||||
|
|
@ -263,6 +264,12 @@ AC_SUBST([LTALLOCA])
|
||||||
gl_PREREQ_MKSTEMP
|
gl_PREREQ_MKSTEMP
|
||||||
fi
|
fi
|
||||||
gl_STDLIB_MODULE_INDICATOR([mkstemp])
|
gl_STDLIB_MODULE_INDICATOR([mkstemp])
|
||||||
|
gl_FUNC_MKSTEMPS
|
||||||
|
if test $HAVE_MKSTEMPS = 0; then
|
||||||
|
AC_LIBOBJ([mkstemps])
|
||||||
|
fi
|
||||||
|
gl_MODULE_INDICATOR([mkstemps])
|
||||||
|
gl_STDLIB_MODULE_INDICATOR([mkstemps])
|
||||||
gl_MSVC_INVAL
|
gl_MSVC_INVAL
|
||||||
if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then
|
if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then
|
||||||
AC_LIBOBJ([msvc-inval])
|
AC_LIBOBJ([msvc-inval])
|
||||||
|
|
@ -574,6 +581,7 @@ AC_DEFUN([gl_FILE_LIST], [
|
||||||
lib/memchr.valgrind
|
lib/memchr.valgrind
|
||||||
lib/mempcpy.c
|
lib/mempcpy.c
|
||||||
lib/mkstemp.c
|
lib/mkstemp.c
|
||||||
|
lib/mkstemps.c
|
||||||
lib/msvc-inval.c
|
lib/msvc-inval.c
|
||||||
lib/msvc-inval.h
|
lib/msvc-inval.h
|
||||||
lib/msvc-nothrow.c
|
lib/msvc-nothrow.c
|
||||||
|
|
@ -684,6 +692,7 @@ AC_DEFUN([gl_FILE_LIST], [
|
||||||
m4/memchr.m4
|
m4/memchr.m4
|
||||||
m4/mempcpy.m4
|
m4/mempcpy.m4
|
||||||
m4/mkstemp.m4
|
m4/mkstemp.m4
|
||||||
|
m4/mkstemps.m4
|
||||||
m4/mmap-anon.m4
|
m4/mmap-anon.m4
|
||||||
m4/msvc-inval.m4
|
m4/msvc-inval.m4
|
||||||
m4/msvc-nothrow.m4
|
m4/msvc-nothrow.m4
|
||||||
|
|
|
||||||
18
m4/mkstemps.m4
Normal file
18
m4/mkstemps.m4
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
# mkstemps.m4 serial 2
|
||||||
|
dnl Copyright (C) 2009-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_MKSTEMPS],
|
||||||
|
[
|
||||||
|
AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
|
||||||
|
|
||||||
|
dnl Persuade glibc <stdlib.h> to declare mkstemps().
|
||||||
|
AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
|
||||||
|
|
||||||
|
AC_CHECK_FUNCS_ONCE([mkstemps])
|
||||||
|
if test $ac_cv_func_mkstemps != yes; then
|
||||||
|
HAVE_MKSTEMPS=0
|
||||||
|
fi
|
||||||
|
])
|
||||||
Loading…
Add table
Add a link
Reference in a new issue