emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] /srv/bzr/emacs/trunk r107037: Port to older Solaris 10 ver


From: Paul Eggert
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r107037: Port to older Solaris 10 versions (Bug#10677).
Date: Tue, 31 Jan 2012 22:04:34 -0800
User-agent: Bazaar (2.3.1)

------------------------------------------------------------
revno: 107037
committer: Paul Eggert <address@hidden>
branch nick: trunk
timestamp: Tue 2012-01-31 22:04:34 -0800
message:
  Port to older Solaris 10 versions (Bug#10677).
  
  Bug reported by Chong Yidong for SunOS 5.10 Generic_127111-11 sparc.
  I cannot reproduce it on SunOS 5.10 Generic_141444-09 sparc but
  possibly this is because Sun fixed the 'stat' bug in my version.
  * Makefile.in (GNULIB_TOOL_FLAGS): Do not avoid the pathmax module.
  * lib/pathmax.h, m4/pathmax.m4: New files, from gnulib.
  * lib/gnulib.mk, m4/gl-comp.m4: Regenerate.
  These changes are based on gnulib version
  4f11d6bebc3098c64ffde27079ab0d0cecfd0cdc dated 2011-10-07 20:59:10,
  because Emacs is in feature freeze and we do not want to merge any
  more-recent changes from gnulib.
added:
  lib/pathmax.h
  m4/pathmax.m4
modified:
  ChangeLog
  Makefile.in
  lib/gnulib.mk
  m4/gl-comp.m4
=== modified file 'ChangeLog'
--- a/ChangeLog 2012-01-31 03:47:51 +0000
+++ b/ChangeLog 2012-02-01 06:04:34 +0000
@@ -1,3 +1,17 @@
+2012-02-01  Paul Eggert  <address@hidden>
+
+       Port to older Solaris 10 versions (Bug#10677).
+       Bug reported by Chong Yidong for SunOS 5.10 Generic_127111-11 sparc.
+       I cannot reproduce it on SunOS 5.10 Generic_141444-09 sparc but
+       possibly this is because Sun fixed the 'stat' bug in my version.
+       * Makefile.in (GNULIB_TOOL_FLAGS): Do not avoid the pathmax module.
+       * lib/pathmax.h, m4/pathmax.m4: New files, from gnulib.
+       * lib/gnulib.mk, m4/gl-comp.m4: Regenerate.
+       These changes are based on gnulib version
+       4f11d6bebc3098c64ffde27079ab0d0cecfd0cdc dated 2011-10-07 20:59:10,
+       because Emacs is in feature freeze and we do not want to merge any
+       more-recent changes from gnulib.
+
 2012-01-31  Glenn Morris  <address@hidden>
 
        * configure.in: Throw an explicit error if Motif toolkit was

=== modified file 'Makefile.in'
--- a/Makefile.in       2012-01-19 07:21:25 +0000
+++ b/Makefile.in       2012-02-01 06:04:34 +0000
@@ -341,7 +341,7 @@
   mktime pthread_sigmask readlink \
   socklen stdarg stdio strftime strtoimax strtoumax symlink sys_stat
 GNULIB_TOOL_FLAGS = \
- --avoid=msvc-inval --avoid=msvc-nothrow --avoid=pathmax \
+ --avoid=msvc-inval --avoid=msvc-nothrow \
  --avoid=raise --avoid=threadlib \
  --conditional-dependencies --import --no-changelog --no-vc-files \
  --makefile-name=gnulib.mk

=== modified file 'lib/gnulib.mk'
--- a/lib/gnulib.mk     2011-09-26 21:30:18 +0000
+++ b/lib/gnulib.mk     2012-02-01 06:04:34 +0000
@@ -21,7 +21,7 @@
 # the same distribution terms as the rest of that program.
 #
 # 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=build-aux 
--avoid=msvc-inval --avoid=msvc-nothrow --avoid=pathmax --avoid=raise 
--avoid=threadlib --makefile-name=gnulib.mk --conditional-dependencies 
--no-libtool --macro-prefix=gl --no-vc-files alloca-opt careadlinkat crypto/md5 
crypto/sha1 crypto/sha256 crypto/sha512 dtoastr dup2 filemode getloadavg 
getopt-gnu ignore-value intprops lstat mktime pthread_sigmask readlink socklen 
stdarg stdio strftime strtoimax strtoumax symlink sys_stat
+# Reproduce by: gnulib-tool --import --dir=. --lib=libgnu --source-base=lib 
--m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=build-aux 
--avoid=msvc-inval --avoid=msvc-nothrow --avoid=raise --avoid=threadlib 
--makefile-name=gnulib.mk --conditional-dependencies --no-libtool 
--macro-prefix=gl --no-vc-files alloca-opt careadlinkat crypto/md5 crypto/sha1 
crypto/sha256 crypto/sha512 dtoastr dup2 filemode getloadavg getopt-gnu 
ignore-value intprops lstat mktime pthread_sigmask readlink socklen stdarg 
stdio strftime strtoimax strtoumax symlink sys_stat
 
 
 MOSTLYCLEANFILES += core *.stackdump
@@ -258,6 +258,15 @@
 
 ## end   gnulib module mktime
 
+## begin gnulib module pathmax
+
+if gl_GNULIB_ENABLED_pathmax
+
+endif
+EXTRA_DIST += pathmax.h
+
+## end   gnulib module pathmax
+
 ## begin gnulib module pthread_sigmask
 
 

=== added file 'lib/pathmax.h'
--- a/lib/pathmax.h     1970-01-01 00:00:00 +0000
+++ b/lib/pathmax.h     2012-02-01 06:04:34 +0000
@@ -0,0 +1,84 @@
+/* Define PATH_MAX somehow.  Requires sys/types.h.
+   Copyright (C) 1992, 1999, 2001, 2003, 2005, 2009-2011 Free Software
+   Foundation, Inc.
+
+   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, 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, write to the Free Software Foundation,
+   Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
+
+#ifndef _PATHMAX_H
+# define _PATHMAX_H
+
+/* POSIX:2008 defines PATH_MAX to be the maximum number of bytes in a filename,
+   including the terminating NUL byte.
+   <http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/limits.h.html>
+   PATH_MAX is not defined on systems which have no limit on filename length,
+   such as GNU/Hurd.
+
+   This file does *not* define PATH_MAX always.  Programs that use this file
+   can handle the GNU/Hurd case in several ways:
+     - Either with a package-wide handling, or with a per-file handling,
+     - Either through a
+         #ifdef PATH_MAX
+       or through a fallback like
+         #ifndef PATH_MAX
+         # define PATH_MAX 8192
+         #endif
+       or through a fallback like
+         #ifndef PATH_MAX
+         # define PATH_MAX pathconf ("/", _PC_PATH_MAX)
+         #endif
+ */
+
+# include <unistd.h>
+
+# include <limits.h>
+
+# ifndef _POSIX_PATH_MAX
+#  define _POSIX_PATH_MAX 256
+# endif
+
+/* Don't include sys/param.h if it already has been.  */
+# if defined HAVE_SYS_PARAM_H && !defined PATH_MAX && !defined MAXPATHLEN
+#  include <sys/param.h>
+# endif
+
+# if !defined PATH_MAX && defined MAXPATHLEN
+#  define PATH_MAX MAXPATHLEN
+# endif
+
+# ifdef __hpux
+/* On HP-UX, PATH_MAX designates the maximum number of bytes in a filename,
+   *not* including the terminating NUL byte, and is set to 1023.
+   Additionally, when _XOPEN_SOURCE is defined to 500 or more, PATH_MAX is
+   not defined at all any more.  */
+#  undef PATH_MAX
+#  define PATH_MAX 1024
+# endif
+
+# if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
+/* The page "Naming Files, Paths, and Namespaces" on msdn.microsoft.com,
+   section "Maximum Path Length Limitation",
+   <http://msdn.microsoft.com/en-us/library/aa365247(v=vs.85).aspx#maxpath>
+   explains that the maximum size of a filename, including the terminating
+   NUL byte, is 260 = 3 + 256 + 1.
+   This is the same value as
+     - FILENAME_MAX in <stdio.h>,
+     - _MAX_PATH in <stdlib.h>,
+     - MAX_PATH in <windef.h>.
+   Undefine the original value, because mingw's <limits.h> gets it wrong.  */
+#  undef PATH_MAX
+#  define PATH_MAX 260
+# endif
+
+#endif /* _PATHMAX_H */

=== modified file 'm4/gl-comp.m4'
--- a/m4/gl-comp.m4     2011-10-07 21:15:00 +0000
+++ b/m4/gl-comp.m4     2012-02-01 06:04:34 +0000
@@ -65,6 +65,7 @@
   # Code from module mktime:
   # Code from module multiarch:
   # Code from module nocrash:
+  # Code from module pathmax:
   # Code from module pthread_sigmask:
   # Code from module readlink:
   # Code from module signal-h:
@@ -217,6 +218,7 @@
 gl_UNISTD_H
   gl_gnulib_enabled_dosname=false
   gl_gnulib_enabled_be453cec5eecf5731a274f2de7f2db36=false
+  gl_gnulib_enabled_pathmax=false
   gl_gnulib_enabled_sigprocmask=false
   gl_gnulib_enabled_stat=false
   gl_gnulib_enabled_strtoll=false
@@ -236,6 +238,13 @@
       gl_gnulib_enabled_be453cec5eecf5731a274f2de7f2db36=true
     fi
   }
+  func_gl_gnulib_m4code_pathmax ()
+  {
+    if ! $gl_gnulib_enabled_pathmax; then
+gl_PATHMAX
+      gl_gnulib_enabled_pathmax=true
+    fi
+  }
   func_gl_gnulib_m4code_sigprocmask ()
   {
     if ! $gl_gnulib_enabled_sigprocmask; then
@@ -262,6 +271,9 @@
         func_gl_gnulib_m4code_dosname
       fi
       if test $REPLACE_STAT = 1; then
+        func_gl_gnulib_m4code_pathmax
+      fi
+      if test $REPLACE_STAT = 1; then
         func_gl_gnulib_m4code_verify
       fi
     fi
@@ -326,6 +338,7 @@
   m4_pattern_allow([^gl_GNULIB_ENABLED_])
   AM_CONDITIONAL([gl_GNULIB_ENABLED_dosname], [$gl_gnulib_enabled_dosname])
   AM_CONDITIONAL([gl_GNULIB_ENABLED_be453cec5eecf5731a274f2de7f2db36], 
[$gl_gnulib_enabled_be453cec5eecf5731a274f2de7f2db36])
+  AM_CONDITIONAL([gl_GNULIB_ENABLED_pathmax], [$gl_gnulib_enabled_pathmax])
   AM_CONDITIONAL([gl_GNULIB_ENABLED_sigprocmask], 
[$gl_gnulib_enabled_sigprocmask])
   AM_CONDITIONAL([gl_GNULIB_ENABLED_stat], [$gl_gnulib_enabled_stat])
   AM_CONDITIONAL([gl_GNULIB_ENABLED_strtoll], [$gl_gnulib_enabled_strtoll])
@@ -502,6 +515,7 @@
   lib/md5.h
   lib/mktime-internal.h
   lib/mktime.c
+  lib/pathmax.h
   lib/pthread_sigmask.c
   lib/readlink.c
   lib/sha1.c
@@ -552,6 +566,7 @@
   m4/mktime.m4
   m4/multiarch.m4
   m4/nocrash.m4
+  m4/pathmax.m4
   m4/pthread_sigmask.m4
   m4/readlink.m4
   m4/sha1.m4

=== added file 'm4/pathmax.m4'
--- a/m4/pathmax.m4     1970-01-01 00:00:00 +0000
+++ b/m4/pathmax.m4     2012-02-01 06:04:34 +0000
@@ -0,0 +1,42 @@
+# pathmax.m4 serial 10
+dnl Copyright (C) 2002-2003, 2005-2006, 2009-2011 Free Software Foundation,
+dnl 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_PATHMAX],
+[
+  dnl Prerequisites of lib/pathmax.h.
+  AC_CHECK_HEADERS_ONCE([sys/param.h])
+])
+
+# Expands to a piece of C program that defines PATH_MAX in the same way as
+# "pathmax.h" will do.
+AC_DEFUN([gl_PATHMAX_SNIPPET], [[
+/* Arrange to define PATH_MAX, like "pathmax.h" does. */
+#if HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+#include <limits.h>
+#if defined HAVE_SYS_PARAM_H && !defined PATH_MAX && !defined MAXPATHLEN
+# include <sys/param.h>
+#endif
+#if !defined PATH_MAX && defined MAXPATHLEN
+# define PATH_MAX MAXPATHLEN
+#endif
+#ifdef __hpux
+# undef PATH_MAX
+# define PATH_MAX 1024
+#endif
+#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
+# undef PATH_MAX
+# define PATH_MAX 260
+#endif
+]])
+
+# Prerequisites of gl_PATHMAX_SNIPPET.
+AC_DEFUN([gl_PATHMAX_SNIPPET_PREREQ],
+[
+  AC_CHECK_HEADERS_ONCE([unistd.h sys/param.h])
+])


reply via email to

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