source: trunk/third/gettext/autoconf-lib-link/m4/lib-ld.m4 @ 21665

Revision 21665, 3.3 KB checked in by ghudson, 20 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r21664, which included commits to RCS files with non-trunk default branches.
Line 
1# lib-ld.m4 serial 3 (gettext-0.13)
2dnl Copyright (C) 1996-2003 Free Software Foundation, Inc.
3dnl This file is free software; the Free Software Foundation
4dnl gives unlimited permission to copy and/or distribute it,
5dnl with or without modifications, as long as this notice is preserved.
6
7dnl Subroutines of libtool.m4,
8dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision
9dnl with libtool.m4.
10
11dnl From libtool-1.4. Sets the variable with_gnu_ld to yes or no.
12AC_DEFUN([AC_LIB_PROG_LD_GNU],
13[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], acl_cv_prog_gnu_ld,
14[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
15case `$LD -v 2>&1 </dev/null` in
16*GNU* | *'with BFD'*)
17  acl_cv_prog_gnu_ld=yes ;;
18*)
19  acl_cv_prog_gnu_ld=no ;;
20esac])
21with_gnu_ld=$acl_cv_prog_gnu_ld
22])
23
24dnl From libtool-1.4. Sets the variable LD.
25AC_DEFUN([AC_LIB_PROG_LD],
26[AC_ARG_WITH(gnu-ld,
27[  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]],
28test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
29AC_REQUIRE([AC_PROG_CC])dnl
30AC_REQUIRE([AC_CANONICAL_HOST])dnl
31# Prepare PATH_SEPARATOR.
32# The user is always right.
33if test "${PATH_SEPARATOR+set}" != set; then
34  echo "#! /bin/sh" >conf$$.sh
35  echo  "exit 0"   >>conf$$.sh
36  chmod +x conf$$.sh
37  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
38    PATH_SEPARATOR=';'
39  else
40    PATH_SEPARATOR=:
41  fi
42  rm -f conf$$.sh
43fi
44ac_prog=ld
45if test "$GCC" = yes; then
46  # Check if gcc -print-prog-name=ld gives a path.
47  AC_MSG_CHECKING([for ld used by GCC])
48  case $host in
49  *-*-mingw*)
50    # gcc leaves a trailing carriage return which upsets mingw
51    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
52  *)
53    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
54  esac
55  case $ac_prog in
56    # Accept absolute paths.
57    [[\\/]* | [A-Za-z]:[\\/]*)]
58      [re_direlt='/[^/][^/]*/\.\./']
59      # Canonicalize the path of ld
60      ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
61      while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
62        ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
63      done
64      test -z "$LD" && LD="$ac_prog"
65      ;;
66  "")
67    # If it fails, then pretend we aren't using GCC.
68    ac_prog=ld
69    ;;
70  *)
71    # If it is relative, then search for the first ld in PATH.
72    with_gnu_ld=unknown
73    ;;
74  esac
75elif test "$with_gnu_ld" = yes; then
76  AC_MSG_CHECKING([for GNU ld])
77else
78  AC_MSG_CHECKING([for non-GNU ld])
79fi
80AC_CACHE_VAL(acl_cv_path_LD,
81[if test -z "$LD"; then
82  IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
83  for ac_dir in $PATH; do
84    test -z "$ac_dir" && ac_dir=.
85    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
86      acl_cv_path_LD="$ac_dir/$ac_prog"
87      # Check to see if the program is GNU ld.  I'd rather use --version,
88      # but apparently some GNU ld's only accept -v.
89      # Break only if it was the GNU/non-GNU ld that we prefer.
90      case `"$acl_cv_path_LD" -v 2>&1 < /dev/null` in
91      *GNU* | *'with BFD'*)
92        test "$with_gnu_ld" != no && break ;;
93      *)
94        test "$with_gnu_ld" != yes && break ;;
95      esac
96    fi
97  done
98  IFS="$ac_save_ifs"
99else
100  acl_cv_path_LD="$LD" # Let the user override the test with a path.
101fi])
102LD="$acl_cv_path_LD"
103if test -n "$LD"; then
104  AC_MSG_RESULT($LD)
105else
106  AC_MSG_RESULT(no)
107fi
108test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
109AC_LIB_PROG_LD_GNU
110])
Note: See TracBrowser for help on using the repository browser.