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>