[Top][All Lists]
[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])
+])
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/trunk r107037: Port to older Solaris 10 versions (Bug#10677).,
Paul Eggert <=