Annotation of embedaddon/libiconv/srcm4/readlink.m4, revision 1.1.1.2
1.1.1.2 ! misho 1: # readlink.m4 serial 11
! 2: dnl Copyright (C) 2003, 2007, 2009-2011 Free Software Foundation, Inc.
1.1 misho 3: dnl This file is free software; the Free Software Foundation
4: dnl gives unlimited permission to copy and/or distribute it,
5: dnl with or without modifications, as long as this notice is preserved.
6:
7: AC_DEFUN([gl_FUNC_READLINK],
8: [
9: AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
10: AC_CHECK_FUNCS_ONCE([readlink])
11: if test $ac_cv_func_readlink = no; then
12: HAVE_READLINK=0
1.1.1.2 ! misho 13: else
! 14: AC_CACHE_CHECK([whether readlink signature is correct],
! 15: [gl_cv_decl_readlink_works],
! 16: [AC_COMPILE_IFELSE(
! 17: [AC_LANG_PROGRAM(
! 18: [[#include <unistd.h>
! 19: /* Cause compilation failure if original declaration has wrong type. */
! 20: ssize_t readlink (const char *, char *, size_t);]])],
! 21: [gl_cv_decl_readlink_works=yes], [gl_cv_decl_readlink_works=no])])
! 22: dnl Solaris 9 ignores trailing slash.
! 23: dnl FreeBSD 7.2 dereferences only one level of links with trailing slash.
! 24: AC_CACHE_CHECK([whether readlink handles trailing slash correctly],
! 25: [gl_cv_func_readlink_works],
! 26: [# We have readlink, so assume ln -s works.
! 27: ln -s conftest.no-such conftest.link
! 28: ln -s conftest.link conftest.lnk2
! 29: AC_RUN_IFELSE(
! 30: [AC_LANG_PROGRAM(
! 31: [[#include <unistd.h>
! 32: ]], [[char buf[20];
! 33: return readlink ("conftest.lnk2/", buf, sizeof buf) != -1;]])],
! 34: [gl_cv_func_readlink_works=yes], [gl_cv_func_readlink_works=no],
! 35: [gl_cv_func_readlink_works="guessing no"])
! 36: rm -f conftest.link conftest.lnk2])
! 37: if test "$gl_cv_func_readlink_works" != yes; then
! 38: AC_DEFINE([READLINK_TRAILING_SLASH_BUG], [1], [Define to 1 if readlink
! 39: fails to recognize a trailing slash.])
! 40: REPLACE_READLINK=1
! 41: elif test "$gl_cv_decl_readlink_works" != yes; then
! 42: REPLACE_READLINK=1
! 43: fi
1.1 misho 44: fi
45: ])
46:
1.1.1.2 ! misho 47: # Like gl_FUNC_READLINK, except prepare for separate compilation
! 48: # (no REPLACE_READLINK, no AC_LIBOBJ).
1.1 misho 49: AC_DEFUN([gl_FUNC_READLINK_SEPARATE],
50: [
51: AC_CHECK_FUNCS_ONCE([readlink])
52: gl_PREREQ_READLINK
53: ])
54:
55: # Prerequisites of lib/readlink.c.
56: AC_DEFUN([gl_PREREQ_READLINK],
57: [
58: :
59: ])
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>