From 0809f5f9bcf6615b551326e800761862a8370ac9 Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Mon, 3 Sep 2001 07:43:54 +0000 Subject: [PATCH] *** empty log message *** --- lib/ChangeLog | 5 +++++ m4/ChangeLog | 7 +++++++ m4/getcwd.m4 | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 65 insertions(+) create mode 100644 m4/getcwd.m4 diff --git a/lib/ChangeLog b/lib/ChangeLog index b5031729b7..82eb8f041f 100644 --- a/lib/ChangeLog +++ b/lib/ChangeLog @@ -1,3 +1,8 @@ +2001-09-03 Paul Eggert + + * xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined + __GLIBC__ && __GLIBC__ >= 2), to decide whether to use getcwd (NULL, 0). + 2001-09-02 Jim Meyering * error.c: Update from GNU libc. diff --git a/m4/ChangeLog b/m4/ChangeLog index 0cbfa7909d..60be039ed1 100644 --- a/m4/ChangeLog +++ b/m4/ChangeLog @@ -1,3 +1,10 @@ +2001-09-03 Paul Eggert + + * prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD. + (jm_PREREQ_XGETCWD): New macro. + + * getcwd.m4: New file. + 2001-09-01 Jim Meyering * jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name. diff --git a/m4/getcwd.m4 b/m4/getcwd.m4 new file mode 100644 index 0000000000..1e1b80efa4 --- /dev/null +++ b/m4/getcwd.m4 @@ -0,0 +1,53 @@ +# getcwd.m4 - check whether getcwd (NULL, 0) allocates memory for result + +# Copyright 2001 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 2, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +# Written by Paul Eggert. + +AC_DEFUN([AC_FUNC_GETCWD_NULL], + [AC_CHECK_HEADERS(stdlib.h unistd.h) + AC_CACHE_CHECK([whether getcwd (NULL, 0) allocates memory for result], + [ac_cv_func_getcwd_null], + [AC_TRY_RUN( + [ +# ifdef HAVE_STDLIB_H +# include +# endif +# ifdef HAVE_UNISTD_H +# include +# endif +# ifndef getcwd + char *getcwd (); +# endif + int + main () + { + if (chdir ("/") != 0) + exit (1); + else + { + char *f = getcwd (NULL, 0); + exit (! (f && f[0] == '/' && !f[1])); + } + }], + [ac_cv_func_getcwd_null=yes], + [ac_cv_func_getcwd_null=no], + [ac_cv_func_getcwd_null=no])]) + if test $ac_cv_func_getcwd_null = yes; then + AC_DEFINE(HAVE_GETCWD_NULL, 1, + [Define if getcwd (NULL, 0) allocates memory for result.]) + fi]) -- 2.30.2