mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-29 07:24:55 +00:00 
			
		
		
		
	
		
			
	
	
		
			84 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			84 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|   | # AST_PROG_LD | ||
|  | # ---------- | ||
|  | # find the pathname to the GNU or non-GNU linker | ||
|  | AC_DEFUN([AST_PROG_LD], | ||
|  | [AC_ARG_WITH([gnu-ld], | ||
|  |     [AC_HELP_STRING([--with-gnu-ld], | ||
|  | 	[assume the C compiler uses GNU ld @<:@default=no@:>@])], | ||
|  |     [test "$withval" = no || with_gnu_ld=yes], | ||
|  |     [with_gnu_ld=no]) | ||
|  | AC_REQUIRE([AST_PROG_SED])dnl | ||
|  | AC_REQUIRE([AC_PROG_CC])dnl | ||
|  | AC_REQUIRE([AC_CANONICAL_HOST])dnl | ||
|  | AC_REQUIRE([AC_CANONICAL_BUILD])dnl | ||
|  | ac_prog=ld | ||
|  | if test "$GCC" = yes; then | ||
|  |   # Check if gcc -print-prog-name=ld gives a path. | ||
|  |   AC_MSG_CHECKING([for ld used by $CC]) | ||
|  |   case $host in | ||
|  |   *-*-mingw*) | ||
|  |     # gcc leaves a trailing carriage return which upsets mingw | ||
|  |     ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; | ||
|  |   *) | ||
|  |     ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; | ||
|  |   esac | ||
|  |   case $ac_prog in | ||
|  |     # Accept absolute paths. | ||
|  |     [[\\/]]* | ?:[[\\/]]*) | ||
|  |       re_direlt='/[[^/]][[^/]]*/\.\./' | ||
|  |       # Canonicalize the pathname of ld | ||
|  |       ac_prog=`echo $ac_prog| $SED 's%\\\\%/%g'` | ||
|  |       while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do | ||
|  | 	ac_prog=`echo $ac_prog| $SED "s%$re_direlt%/%"` | ||
|  |       done | ||
|  |       test -z "$LD" && LD="$ac_prog" | ||
|  |       ;; | ||
|  |   "") | ||
|  |     # If it fails, then pretend we aren't using GCC. | ||
|  |     ac_prog=ld | ||
|  |     ;; | ||
|  |   *) | ||
|  |     # If it is relative, then search for the first ld in PATH. | ||
|  |     with_gnu_ld=unknown | ||
|  |     ;; | ||
|  |   esac | ||
|  | elif test "$with_gnu_ld" = yes; then | ||
|  |   AC_MSG_CHECKING([for GNU ld]) | ||
|  | else | ||
|  |   AC_MSG_CHECKING([for non-GNU ld]) | ||
|  | fi | ||
|  | AC_CACHE_VAL(lt_cv_path_LD, | ||
|  | [if test -z "$LD"; then | ||
|  |   lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR | ||
|  |   for ac_dir in $PATH; do | ||
|  |     IFS="$lt_save_ifs" | ||
|  |     test -z "$ac_dir" && ac_dir=. | ||
|  |     if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then | ||
|  |       lt_cv_path_LD="$ac_dir/$ac_prog" | ||
|  |       # Check to see if the program is GNU ld.  I'd rather use --version, | ||
|  |       # but apparently some variants of GNU ld only accept -v. | ||
|  |       # Break only if it was the GNU/non-GNU ld that we prefer. | ||
|  |       case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in | ||
|  |       *GNU* | *'with BFD'*) | ||
|  | 	test "$with_gnu_ld" != no && break | ||
|  | 	;; | ||
|  |       *) | ||
|  | 	test "$with_gnu_ld" != yes && break | ||
|  | 	;; | ||
|  |       esac | ||
|  |     fi | ||
|  |   done | ||
|  |   IFS="$lt_save_ifs" | ||
|  | else | ||
|  |   lt_cv_path_LD="$LD" # Let the user override the test with a path. | ||
|  | fi]) | ||
|  | LD="$lt_cv_path_LD" | ||
|  | if test -n "$LD"; then | ||
|  |   AC_MSG_RESULT($LD) | ||
|  | else | ||
|  |   AC_MSG_RESULT(no) | ||
|  | fi | ||
|  | test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) | ||
|  | AST_PROG_LD_GNU | ||
|  | ])# AST_PROG_LD |