6 AC_DEFUN(jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK,
9 [whether lstat dereferences a symlink specified with a trailing slash],
10 jm_cv_func_lstat_dereferences_slashed_symlink,
12 rm -f conftest.sym conftest.file
14 if ln -s conftest.file conftest.sym; then
16 # include <sys/types.h>
17 # include <sys/stat.h>
23 /* Linux will dereference the symlink and fail.
24 That is better in the sense that it means we will not
25 have to compile and use the lstat wrapper. */
26 exit (lstat ("conftest.sym/", &sbuf) ? 0 : 1);
29 jm_cv_func_lstat_dereferences_slashed_symlink=yes,
30 jm_cv_func_lstat_dereferences_slashed_symlink=no,
31 dnl When crosscompiling, be pessimistic so we will end up using the
32 dnl replacement version of lstat that checkes for trailing slashes
33 dnl and calls lstat a second time when necessary.
34 jm_cv_func_lstat_dereferences_slashed_symlink=no
37 # If the `ln -s' command failed, then we probably don't even
38 # have an lstat function.
39 jm_cv_func_lstat_dereferences_slashed_symlink=no
43 test $jm_cv_func_lstat_dereferences_slashed_symlink = yes \
46 AC_DEFINE_UNQUOTED(LSTAT_FOLLOWS_SLASHED_SYMLINK, $zero_one,
47 [Define if lstat dereferences a symlink specified with a trailing slash])
49 if test $jm_cv_func_lstat_dereferences_slashed_symlink = no; then
51 # Append lstat.o if it's not already in $LIBOBJS.
53 *lstat.$ac_objext*) ;;
54 *) LIBOBJS="$LIBOBJS lstat.$ac_objext" ;;