guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] 33/47: build: Remove libguile/mkstemp.c, redundant with


From: Andy Wingo
Subject: [Guile-commits] 33/47: build: Remove libguile/mkstemp.c, redundant with Gnulib.
Date: Sun, 22 May 2016 18:23:05 +0000 (UTC)

wingo pushed a commit to branch master
in repository guile.

commit 7c36145075450a78322f41622ebbf99f6be88eb0
Author: Ludovic Court├Ęs <address@hidden>
Date:   Thu Oct 29 23:55:05 2015 +0100

    build: Remove libguile/mkstemp.c, redundant with Gnulib.
    
    Fixes <http://bugs.gnu.org/21425>.
    Reported by Kouhei Sutou <address@hidden>.
    
    * configure.ac: Remove 'AC_REPLACE_FUNCS' for 'mkstemp'.
    * libguile/Makefile.am (address@hidden@_la_SOURCES):
      Remove mkstemp.c.
    * libguile/mkstemp.c: Remove.
---
 configure.ac         |    2 +-
 libguile/Makefile.am |    2 +-
 libguile/mkstemp.c   |  129 --------------------------------------------------
 3 files changed, 2 insertions(+), 131 deletions(-)

diff --git a/configure.ac b/configure.ac
index 3a8f772..b1bd7f1 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1125,7 +1125,7 @@ if test "$enable_regex" = yes; then
    AC_DEFINE([ENABLE_REGEX], 1, [Define when regex support is enabled.])
 fi
 
-AC_REPLACE_FUNCS([strerror memmove mkstemp])
+AC_REPLACE_FUNCS([strerror memmove])
 
 # Reasons for testing:
 #   asinh, acosh, atanh, trunc - C99 standard, generally not available on
diff --git a/libguile/Makefile.am b/libguile/Makefile.am
index f6d7515..bb3dc7e 100644
--- a/libguile/Makefile.am
+++ b/libguile/Makefile.am
@@ -455,7 +455,7 @@ address@hidden@_la_SOURCES = _scm.h         \
     memmove.c strerror.c                       \
     dynl.c regex-posix.c                       \
     posix.c net_db.c socket.c                  \
-    debug-malloc.c mkstemp.c                   \
+    debug-malloc.c                             \
     win32-uname.c                              \
     locale-categories.h
 
diff --git a/libguile/mkstemp.c b/libguile/mkstemp.c
deleted file mode 100644
index d752d07..0000000
--- a/libguile/mkstemp.c
+++ /dev/null
@@ -1,129 +0,0 @@
-/* Copyright (C) 1991, 1992, 1996, 1998, 2001, 2006, 2013,
-     2014 Free Software Foundation, Inc.
-
-   This file is derived from mkstemps.c from the GNU Libiberty Library
-   which in turn is derived from the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public License as
-   published by the Free Software Foundation; either version 2 of the
-   License, or (at your option) any later version.
-
-   The GNU C Library 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
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth 
Floor,
-   Boston, MA 02110-1301, USA. 
-*/
-
-#ifdef HAVE_CONFIG_H
-#  include <config.h>
-#endif
-
-#include "libguile/__scm.h"
-
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-#ifdef HAVE_STRING_H
-#include <string.h>
-#endif
-#include <errno.h>
-#include <stdio.h>
-#include <fcntl.h>
-#include <unistd.h>
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#ifdef __MINGW32__
-#include <process.h>
-#endif
-
-#ifndef TMP_MAX
-#define TMP_MAX 16384
-#endif
-
-/* We provide this prototype to avoid compiler warnings.  If this ever
-   conflicts with a declaration in a system header file, we'll find
-   out, because we should include that header file here.  */
-int mkstemp (char *);
-
-/* Generate a unique temporary file name from TEMPLATE.
-
-   TEMPLATE has the form:
-
-   <path>/ccXXXXXX
-
-   The last six characters of TEMPLATE must be "XXXXXX"; they are
-   replaced with a string that makes the filename unique.
-
-   Returns a file descriptor open on the file for reading and writing.  */
-int
-mkstemp (template)
-     char *template;
-{
-  static const char letters[]
-    = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
-  static scm_t_uint64 value;
-#ifdef HAVE_GETTIMEOFDAY
-  struct timeval tv;
-#endif
-  char *XXXXXX;
-  size_t len;
-  int count;
-
-  len = strlen (template);
-
-  if ((int) len < 6
-      || strncmp (&template[len - 6], "XXXXXX", 6))
-    {
-      return -1;
-    }
-
-  XXXXXX = &template[len - 6];
-
-#ifdef HAVE_GETTIMEOFDAY
-  /* Get some more or less random data.  */
-  gettimeofday (&tv, NULL);
-  value += ((scm_t_uint64) tv.tv_usec << 16) ^ tv.tv_sec ^ getpid ();
-#else
-  value += getpid ();
-#endif
-
-  for (count = 0; count < TMP_MAX; ++count)
-    {
-      scm_t_uint64 v = value;
-      int fd;
-
-      /* Fill in the random bits.  */
-      XXXXXX[0] = letters[v % 62];
-      v /= 62;
-      XXXXXX[1] = letters[v % 62];
-      v /= 62;
-      XXXXXX[2] = letters[v % 62];
-      v /= 62;
-      XXXXXX[3] = letters[v % 62];
-      v /= 62;
-      XXXXXX[4] = letters[v % 62];
-      v /= 62;
-      XXXXXX[5] = letters[v % 62];
-
-      fd = open (template, O_RDWR|O_CREAT|O_EXCL|O_BINARY, 0600);
-      if (fd >= 0)
-       /* The file does not exist.  */
-       return fd;
-
-      /* This is a random value.  It is only necessary that the next
-        TMP_MAX values generated by adding 7777 to VALUE are different
-        with (module 2^32).  */
-      value += 7777;
-    }
-
-  /* We return the null string if we can't find a unique file name.  */
-  template[0] = '\0';
-  return -1;
-}



reply via email to

[Prev in Thread] Current Thread [Next in Thread]