Guard against potential configure bug wrt HAVE_GETWD

* configure.ac (BROKEN_GETWD) [unixware]: New define.

* src/sysdep.c: Respect BROKEN_GETWD.
This commit is contained in:
Glenn Morris 2012-08-06 16:29:45 -04:00
parent 1c6f11f42a
commit 1db4583ad2
4 changed files with 10 additions and 5 deletions

View file

@ -1,5 +1,7 @@
2012-08-06 Glenn Morris <rgm@gnu.org>
* configure.ac (BROKEN_GETWD) [unixware]: New define.
* configure.ac (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Remove.
(PENDING_OUTPUT_COUNT): Absorb GNU_LIBRARY_PENDING_OUTPUT_COUNT.
(DISPNEW_NEEDS_STDIO_EXT): New define.

View file

@ -2724,10 +2724,11 @@ getpwent endpwent getgrent endgrent \
touchlock \
cfmakeraw cfsetspeed copysign __executable_start)
dnl FIXME Fragile: something else may test for getwd as a dependency.
dnl Change to defining BROKEN_xxx ?
dnl getwd appears to be buggy on SVR4.2, so we don't use it.
if test $opsys != unixware; then
if test $opsys = unixware; then
dnl In case some other test ends up checking for getwd.
AC_DEFINE(BROKEN_GETWD, 1, [Define if getwd should not be used.])
else
AC_CHECK_FUNCS(getwd)
fi

View file

@ -1,5 +1,7 @@
2012-08-06 Glenn Morris <rgm@gnu.org>
* sysdep.c: Respect BROKEN_GETWD.
* dispnew.c (GNU_LIBRARY_PENDING_OUTPUT_COUNT, PENDING_OUTPUT_COUNT):
Let configure handle it.
(stdio_ext.h) [DISPNEW_NEEDS_STDIO_EXT]: Include it.

View file

@ -1971,7 +1971,7 @@ emacs_readlink (char const *filename, char initial_buf[READLINK_BUFSIZE])
* under error conditions.
*/
#ifndef HAVE_GETWD
#if !defined (HAVE_GETWD) || defined (BROKEN_GETWD)
#ifndef MAXPATHLEN
/* In 4.1, param.h fails to define this. */
@ -2001,7 +2001,7 @@ getwd (char *pathname)
return pathname;
}
#endif /* HAVE_GETWD */
#endif /* !defined (HAVE_GETWD) || defined (BROKEN_GETWD) */
/*
* This function will go away as soon as all the stubs fixed. (fnf)