Annotation of embedaddon/libiconv/srcm4/readlink.m4, revision 1.1.1.3
1.1.1.3 ! misho 1: # readlink.m4 serial 14
! 2: dnl Copyright (C) 2003, 2007, 2009-2019 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])
1.1.1.3 ! misho 10: AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
1.1 misho 11: AC_CHECK_FUNCS_ONCE([readlink])
12: if test $ac_cv_func_readlink = no; then
13: HAVE_READLINK=0
1.1.1.2 misho 14: else
15: AC_CACHE_CHECK([whether readlink signature is correct],
16: [gl_cv_decl_readlink_works],
17: [AC_COMPILE_IFELSE(
18: [AC_LANG_PROGRAM(
19: [[#include <unistd.h>
20: /* Cause compilation failure if original declaration has wrong type. */
21: ssize_t readlink (const char *, char *, size_t);]])],
22: [gl_cv_decl_readlink_works=yes], [gl_cv_decl_readlink_works=no])])
23: dnl Solaris 9 ignores trailing slash.
24: dnl FreeBSD 7.2 dereferences only one level of links with trailing slash.
25: AC_CACHE_CHECK([whether readlink handles trailing slash correctly],
26: [gl_cv_func_readlink_works],
27: [# We have readlink, so assume ln -s works.
28: ln -s conftest.no-such conftest.link
29: ln -s conftest.link conftest.lnk2
30: AC_RUN_IFELSE(
31: [AC_LANG_PROGRAM(
32: [[#include <unistd.h>
33: ]], [[char buf[20];
34: return readlink ("conftest.lnk2/", buf, sizeof buf) != -1;]])],
35: [gl_cv_func_readlink_works=yes], [gl_cv_func_readlink_works=no],
1.1.1.3 ! misho 36: [case "$host_os" in
! 37: # Guess yes on Linux systems.
! 38: linux-* | linux) gl_cv_func_readlink_works="guessing yes" ;;
! 39: # Guess yes on glibc systems.
! 40: *-gnu* | gnu*) gl_cv_func_readlink_works="guessing yes" ;;
! 41: # If we don't know, assume the worst.
! 42: *) gl_cv_func_readlink_works="guessing no" ;;
! 43: esac
! 44: ])
1.1.1.2 misho 45: rm -f conftest.link conftest.lnk2])
1.1.1.3 ! misho 46: case "$gl_cv_func_readlink_works" in
! 47: *yes)
! 48: if test "$gl_cv_decl_readlink_works" != yes; then
! 49: REPLACE_READLINK=1
! 50: fi
! 51: ;;
! 52: *)
! 53: AC_DEFINE([READLINK_TRAILING_SLASH_BUG], [1], [Define to 1 if readlink
! 54: fails to recognize a trailing slash.])
! 55: REPLACE_READLINK=1
! 56: ;;
! 57: esac
1.1 misho 58: fi
59: ])
60:
1.1.1.2 misho 61: # Like gl_FUNC_READLINK, except prepare for separate compilation
62: # (no REPLACE_READLINK, no AC_LIBOBJ).
1.1 misho 63: AC_DEFUN([gl_FUNC_READLINK_SEPARATE],
64: [
65: AC_CHECK_FUNCS_ONCE([readlink])
66: gl_PREREQ_READLINK
67: ])
68:
69: # Prerequisites of lib/readlink.c.
70: AC_DEFUN([gl_PREREQ_READLINK],
71: [
72: :
73: ])
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>