Edit

thodg/libiconv/m4/ln.m4

Branch :

  • Show log

    Commit

  • Author : Bruno Haible
    Date : 2002-04-29 13:10:06
    Hash : 70b9eb6d
    Message : Make autoconfiguration independent of clisp.

  • m4/ln.m4
  • dnl Copyright (C) 1993-2002 Free Software Foundation, Inc.
    dnl This file is free software, distributed under the terms of the GNU
    dnl General Public License.  As a special exception to the GNU General
    dnl Public License, this file may be distributed as part of a program
    dnl that contains a configuration script generated by Autoconf, under
    dnl the same distribution terms as the rest of that program.
    
    dnl From Bruno Haible, Marcus Daniels.
    
    AC_PREREQ(2.13)
    
    AC_DEFUN([CL_PROG_LN],
    [AC_REQUIRE([CL_PROG_CP])dnl
    AC_CACHE_CHECK(how to make hard links, cl_cv_prog_LN, [
    rm -f conftestdata conftestfile
    echo data > conftestfile
    if ln conftestfile conftestdata 2>/dev/null; then
      cl_cv_prog_LN=ln
    else
      cl_cv_prog_LN="$cl_cv_prog_cp"
    fi
    rm -f conftestdata conftestfile
    ])
    LN="$cl_cv_prog_LN"
    AC_SUBST(LN)dnl
    ])
    
    AC_DEFUN([CL_PROG_LN_S],
    [AC_REQUIRE([CL_PROG_LN])dnl
    dnl Make a symlink if possible; otherwise try a hard link. On filesystems
    dnl which support neither symlink nor hard link, use a plain copy.
    AC_MSG_CHECKING(whether ln -s works)
    AC_CACHE_VAL(cl_cv_prog_LN_S, [
    rm -f conftestdata
    if ln -s X conftestdata 2>/dev/null; then
      cl_cv_prog_LN_S="ln -s"
    else
      cl_cv_prog_LN_S="$cl_cv_prog_LN"
    fi
    rm -f conftestdata
    ])dnl
    if test "$cl_cv_prog_LN_S" = "ln -s"; then
      AC_MSG_RESULT(yes)
    else
      AC_MSG_RESULT(no)
    fi
    LN_S="$cl_cv_prog_LN_S"
    AC_SUBST(LN_S)dnl
    ])
    
    AC_DEFUN([CL_PROG_HLN],
    [AC_REQUIRE([CL_PROG_LN_S])dnl
    dnl SVR4 "ln" makes hard links to symbolic links, instead of resolving the
    dnl symbolic link. To avoid this, use the "hln" program.
    AC_CACHE_CHECK(how to make hard links to symlinks, cl_cv_prog_hln, [
    cl_cv_prog_hln="ln"
    if test "$cl_cv_prog_LN_S" = "ln -s"; then
    echo "blabla" > conftest.x
    ln -s conftest.x conftest.y
    ln conftest.y conftest.z 2>&AC_FD_CC
    rm -f conftest.x
    if cat conftest.z > /dev/null 2>&1 ; then
      # ln is usable.
      cl_cv_prog_hln="ln"
    else
      # conftest.z is a symbolic link to the non-existent conftest.x
      cl_cv_prog_hln="hln"
    fi
    else
    # If there are no symbolic links, the problem cannot occur.
    cl_cv_prog_hln="ln"
    fi
    rm -f conftest*
    ])
    HLN="$cl_cv_prog_hln"
    AC_SUBST(HLN)dnl
    ])