2013-02-19 Paul Eggert <eggert@cs.ucla.edu>
+ getcwd: support coreutils better
+ Like strtod, getcwd incorrectly referred to HAVE_RAW_DECL_GETCWD,
+ but this might not be correct in coreutils, which disables
+ the raw decl checks. Problem reported by Nagendra in
+ <http://bugs.gnu.org/10305#192>.
+ * lib/getcwd.c (__getcwd): Do not depend on HAVE_RAW_DECL_GETCWD.
+ * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
+ Test the getcwd function, not any macro, since getcwd.c wants the
+ function.
+ * m4/getcwd.m4 (gl_FUNC_GETCWD):
+ Don't define HAVE_MINIMALLY_WORKING_GETCWD if the code doesn't
+ compile, as might happen if there's a macro but no function.
+
strtod: support coreutils better
* lib/strtod.c (underlying_strtod): Just invoke the underlying strtod.
HAVE_RAW_DECL_STRTOD might not be correct in coreutils, which
size_t allocated = size;
size_t used;
-#if HAVE_RAW_DECL_GETCWD && HAVE_MINIMALLY_WORKING_GETCWD
+#if HAVE_MINIMALLY_WORKING_GETCWD
/* If AT_FDCWD is not defined, the algorithm below is O(N**2) and
this is much slower than the system getcwd (at least on
GNU/Linux). So trust the system getcwd's results unless they
# define is_ENAMETOOLONG(x) 0
#endif
+/* Use the getcwd function, not any macro. */
+#undef getcwd
+
/* Don't get link errors because mkdir is redefined to rpl_mkdir. */
#undef mkdir
dnl Define HAVE_MINIMALLY_WORKING_GETCWD and HAVE_PARTLY_WORKING_GETCWD
dnl if appropriate.
case "$gl_cv_func_getcwd_path_max" in
- "no, it has the AIX bug") ;;
+ "no"|"no, it has the AIX bug") ;;
*)
AC_DEFINE([HAVE_MINIMALLY_WORKING_GETCWD], [1],
[Define to 1 if getcwd minimally works, that is, its result can be