source: trunk/third/gcc/libtool.m4 @ 16960

Revision 16960, 28.6 KB checked in by ghudson, 23 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r16959, which included commits to RCS files with non-trunk default branches.
Line 
1## libtool.m4 - Configure libtool for the host system. -*-Shell-script-*-
2## Copyright 1996, 1997, 1998, 1999, 2000, 2001
3## Free Software Foundation, Inc.
4## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
5##
6## This program is free software; you can redistribute it and/or modify
7## it under the terms of the GNU General Public License as published by
8## the Free Software Foundation; either version 2 of the License, or
9## (at your option) any later version.
10##
11## This program is distributed in the hope that it will be useful, but
12## WITHOUT ANY WARRANTY; without even the implied warranty of
13## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14## General Public License for more details.
15##
16## You should have received a copy of the GNU General Public License
17## along with this program; if not, write to the Free Software
18## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19##
20## As a special exception to the GNU General Public License, if you
21## distribute this file as part of a program that contains a
22## configuration script generated by Autoconf, you may include it under
23## the same distribution terms that you use for the rest of that program.
24
25# serial 46 AC_PROG_LIBTOOL
26AC_DEFUN([AC_PROG_LIBTOOL],
27[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl
28dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX
29dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX.
30  AC_PROVIDE_IFELSE([AC_PROG_CXX],
31    [AC_LIBTOOL_CXX],
32    [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX
33])])
34
35dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly.
36dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run
37dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both.
38  AC_PROVIDE_IFELSE([AC_PROG_GCJ],
39    [AC_LIBTOOL_GCJ],
40    [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
41        [AC_LIBTOOL_GCJ],
42        [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],
43          [AC_LIBTOOL_GCJ],
44        [ifdef([AC_PROG_GCJ],
45               [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ
46])])
47         ifdef([A][M_PROG_GCJ],
48               [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ
49])])
50         ifdef([LT_AC_PROG_GCJ],
51               [define([LT_AC_PROG_GCJ], defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ
52])])])])])])
53
54AC_DEFUN([_AC_PROG_LIBTOOL],
55[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
56AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl
57AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl
58
59# Save cache, so that ltconfig can load it
60AC_CACHE_SAVE
61
62# Actually configure libtool.  ac_aux_dir is where install-sh is found.
63AR="$AR" LTCC="$CC" CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
64MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
65LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \
66AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \
67objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \
68deplibs_check_method="$deplibs_check_method" file_magic_cmd="$file_magic_cmd" \
69${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
70$libtool_flags --no-verify --build="$build" $ac_aux_dir/ltmain.sh $host \
71|| AC_MSG_ERROR([libtool configure failed])
72
73# Reload cache, that may have been modified by ltconfig
74AC_CACHE_LOAD
75
76# This can be used to rebuild libtool when needed
77LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh $ac_aux_dir/ltcf-c.sh"
78
79# Always use our own libtool.
80LIBTOOL='$(SHELL) $(top_builddir)/libtool'
81AC_SUBST(LIBTOOL)dnl
82
83# Redirect the config.log output again, so that the ltconfig log is not
84# clobbered by the next message.
85exec 5>>./config.log
86])
87
88AC_DEFUN([AC_LIBTOOL_SETUP],
89[AC_PREREQ(2.13)dnl
90AC_REQUIRE([AC_ENABLE_SHARED])dnl
91AC_REQUIRE([AC_ENABLE_STATIC])dnl
92AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
93AC_REQUIRE([AC_CANONICAL_HOST])dnl
94AC_REQUIRE([AC_CANONICAL_BUILD])dnl
95AC_REQUIRE([AC_PROG_CC])dnl
96AC_REQUIRE([AC_PROG_LD])dnl
97AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
98AC_REQUIRE([AC_PROG_NM])dnl
99AC_REQUIRE([AC_PROG_LN_S])dnl
100AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
101# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers!
102AC_REQUIRE([AC_OBJEXT])dnl
103AC_REQUIRE([AC_EXEEXT])dnl
104dnl
105
106# Only perform the check for file, if the check method requires it
107case $deplibs_check_method in
108file_magic*)
109  if test "$file_magic_cmd" = '$MAGIC_CMD'; then
110    AC_PATH_MAGIC
111  fi
112  ;;
113esac
114
115AC_CHECK_TOOL(RANLIB, ranlib, :)
116AC_CHECK_TOOL(STRIP, strip, :)
117
118# Check for any special flags to pass to ltconfig.
119libtool_flags="--cache-file=$cache_file"
120test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
121test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
122test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
123test "$GCC" = yes && libtool_flags="$libtool_flags --with-gcc"
124test "$lt_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
125ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN],
126[libtool_flags="$libtool_flags --enable-dlopen"])
127ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
128[libtool_flags="$libtool_flags --enable-win32-dll"])
129AC_ARG_ENABLE(libtool-lock,
130  [  --disable-libtool-lock  avoid locking (might break parallel builds)])
131test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
132test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
133
134AC_ARG_WITH(pic,
135  [  --with-pic              try to use only PIC/non-PIC objects [default=use both]],
136     pic_mode="$withval", pic_mode=default)
137test x"$pic_mode" = xyes && libtool_flags="$libtool_flags --prefer-pic"
138test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
139
140# Some flags need to be propagated to the compiler or linker for good
141# libtool support.
142case $host in
143*-*-irix6*)
144  # Find out which ABI we are using.
145  echo '[#]line __oline__ "configure"' > conftest.$ac_ext
146  if AC_TRY_EVAL(ac_compile); then
147    case `/usr/bin/file conftest.$ac_objext` in
148    *32-bit*)
149      LD="${LD-ld} -32"
150      ;;
151    *N32*)
152      LD="${LD-ld} -n32"
153      ;;
154    *64-bit*)
155      LD="${LD-ld} -64"
156      ;;
157    esac
158  fi
159  rm -rf conftest*
160  ;;
161
162*-*-sco3.2v5*)
163  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
164  SAVE_CFLAGS="$CFLAGS"
165  CFLAGS="$CFLAGS -belf"
166  AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
167    [AC_LANG_SAVE
168     AC_LANG_C
169     AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
170     AC_LANG_RESTORE])
171  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
172    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
173    CFLAGS="$SAVE_CFLAGS"
174  fi
175  ;;
176
177ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
178[*-*-cygwin* | *-*-mingw* | *-*-pw32*)
179  AC_CHECK_TOOL(DLLTOOL, dlltool, false)
180  AC_CHECK_TOOL(AS, as, false)
181  AC_CHECK_TOOL(OBJDUMP, objdump, false)
182
183  # recent cygwin and mingw systems supply a stub DllMain which the user
184  # can override, but on older systems we have to supply one
185  AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain,
186    [AC_TRY_LINK([],
187      [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
188      DllMain (0, 0, 0);],
189      [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])])
190
191  case $host/$CC in
192  *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*)
193    # old mingw systems require "-dll" to link a DLL, while more recent ones
194    # require "-mdll"
195    SAVE_CFLAGS="$CFLAGS"
196    CFLAGS="$CFLAGS -mdll"
197    AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch,
198      [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])])
199    CFLAGS="$SAVE_CFLAGS" ;;
200  *-*-cygwin* | *-*-pw32*)
201    # cygwin systems need to pass --dll to the linker, and not link
202    # crt.o which will require a WinMain@16 definition.
203    lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;;
204  esac
205  ;;
206  ])
207esac
208])
209
210# AC_LIBTOOL_DLOPEN - enable checks for dlopen support
211AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
212
213# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
214AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
215
216# AC_ENABLE_SHARED - implement the --enable-shared flag
217# Usage: AC_ENABLE_SHARED[(DEFAULT)]
218#   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
219#   `yes'.
220AC_DEFUN([AC_ENABLE_SHARED],
221[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
222AC_ARG_ENABLE(shared,
223changequote(<<, >>)dnl
224<<  --enable-shared[=PKGS]  build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
225changequote([, ])dnl
226[p=${PACKAGE-default}
227case $enableval in
228yes) enable_shared=yes ;;
229no) enable_shared=no ;;
230*)
231  enable_shared=no
232  # Look at the argument we got.  We use all the common list separators.
233  IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
234  for pkg in $enableval; do
235    if test "X$pkg" = "X$p"; then
236      enable_shared=yes
237    fi
238  done
239  IFS="$ac_save_ifs"
240  ;;
241esac],
242enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
243])
244
245# AC_DISABLE_SHARED - set the default shared flag to --disable-shared
246AC_DEFUN([AC_DISABLE_SHARED], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
247AC_ENABLE_SHARED(no)])
248
249# AC_ENABLE_STATIC - implement the --enable-static flag
250# Usage: AC_ENABLE_STATIC[(DEFAULT)]
251#   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
252#   `yes'.
253AC_DEFUN([AC_ENABLE_STATIC],
254[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
255AC_ARG_ENABLE(static,
256changequote(<<, >>)dnl
257<<  --enable-static[=PKGS]  build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
258changequote([, ])dnl
259[p=${PACKAGE-default}
260case $enableval in
261yes) enable_static=yes ;;
262no) enable_static=no ;;
263*)
264  enable_static=no
265  # Look at the argument we got.  We use all the common list separators.
266  IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
267  for pkg in $enableval; do
268    if test "X$pkg" = "X$p"; then
269      enable_static=yes
270    fi
271  done
272  IFS="$ac_save_ifs"
273  ;;
274esac],
275enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
276])
277
278# AC_DISABLE_STATIC - set the default static flag to --disable-static
279AC_DEFUN([AC_DISABLE_STATIC],
280[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
281AC_ENABLE_STATIC(no)])
282
283
284# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag
285# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
286#   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
287#   `yes'.
288AC_DEFUN([AC_ENABLE_FAST_INSTALL],
289[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
290AC_ARG_ENABLE(fast-install,
291changequote(<<, >>)dnl
292<<  --enable-fast-install[=PKGS]  optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
293changequote([, ])dnl
294[p=${PACKAGE-default}
295case $enableval in
296yes) enable_fast_install=yes ;;
297no) enable_fast_install=no ;;
298*)
299  enable_fast_install=no
300  # Look at the argument we got.  We use all the common list separators.
301  IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
302  for pkg in $enableval; do
303    if test "X$pkg" = "X$p"; then
304      enable_fast_install=yes
305    fi
306  done
307  IFS="$ac_save_ifs"
308  ;;
309esac],
310enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
311])
312
313# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install
314AC_DEFUN([AC_DISABLE_FAST_INSTALL],
315[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
316AC_ENABLE_FAST_INSTALL(no)])
317
318# AC_LIBTOOL_PICMODE - implement the --with-pic flag
319# Usage: AC_LIBTOOL_PICMODE[(MODE)]
320#   Where MODE is either `yes' or `no'.  If omitted, it defaults to
321#   `both'.
322AC_DEFUN([AC_LIBTOOL_PICMODE],
323[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
324pic_mode=ifelse($#,1,$1,default)])
325
326
327# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library
328AC_DEFUN([AC_PATH_TOOL_PREFIX],
329[AC_MSG_CHECKING([for $1])
330AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
331[case $MAGIC_CMD in
332  /*)
333  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
334  ;;
335  ?:/*)
336  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path.
337  ;;
338  *)
339  ac_save_MAGIC_CMD="$MAGIC_CMD"
340  IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS=":"
341dnl $ac_dummy forces splitting on constant user-supplied paths.
342dnl POSIX.2 word splitting is done only on the output of word expansions,
343dnl not every word.  This closes a longstanding sh security hole.
344  ac_dummy="ifelse([$2], , $PATH, [$2])"
345  for ac_dir in $ac_dummy; do
346    test -z "$ac_dir" && ac_dir=.
347    if test -f $ac_dir/$1; then
348      lt_cv_path_MAGIC_CMD="$ac_dir/$1"
349      if test -n "$file_magic_test_file"; then
350        case $deplibs_check_method in
351        "file_magic "*)
352          file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
353          MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
354          if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
355            egrep "$file_magic_regex" > /dev/null; then
356            :
357          else
358            cat <<EOF 1>&2
359
360*** Warning: the command libtool uses to detect shared libraries,
361*** $file_magic_cmd, produces output that libtool cannot recognize.
362*** The result is that libtool may fail to recognize shared libraries
363*** as such.  This will affect the creation of libtool libraries that
364*** depend on shared libraries, but programs linked with such libtool
365*** libraries will work regardless of this problem.  Nevertheless, you
366*** may want to report the problem to your system manager and/or to
367*** bug-libtool@gnu.org
368
369EOF
370          fi ;;
371        esac
372      fi
373      break
374    fi
375  done
376  IFS="$ac_save_ifs"
377  MAGIC_CMD="$ac_save_MAGIC_CMD"
378  ;;
379esac])
380MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
381if test -n "$MAGIC_CMD"; then
382  AC_MSG_RESULT($MAGIC_CMD)
383else
384  AC_MSG_RESULT(no)
385fi
386])
387
388
389# AC_PATH_MAGIC - find a file program which can recognise a shared library
390AC_DEFUN([AC_PATH_MAGIC],
391[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl
392AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH)
393if test -z "$lt_cv_path_MAGIC_CMD"; then
394  if test -n "$ac_tool_prefix"; then
395    AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH)
396  else
397    MAGIC_CMD=:
398  fi
399fi
400])
401
402
403# AC_PROG_LD - find the path to the GNU or non-GNU linker
404AC_DEFUN([AC_PROG_LD],
405[AC_ARG_WITH(gnu-ld,
406[  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]],
407test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
408AC_REQUIRE([AC_PROG_CC])dnl
409AC_REQUIRE([AC_CANONICAL_HOST])dnl
410AC_REQUIRE([AC_CANONICAL_BUILD])dnl
411ac_prog=ld
412if test "$GCC" = yes; then
413  # Check if gcc -print-prog-name=ld gives a path.
414  AC_MSG_CHECKING([for ld used by GCC])
415  case $host in
416  *-*-mingw*)
417    # gcc leaves a trailing carriage return which upsets mingw
418    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
419  *)
420    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
421  esac
422  case $ac_prog in
423    # Accept absolute paths.
424    [[\\/]* | [A-Za-z]:[\\/]*)]
425      re_direlt=['/[^/][^/]*/\.\./']
426      # Canonicalize the path of ld
427      ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
428      while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
429        ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
430      done
431      test -z "$LD" && LD="$ac_prog"
432      ;;
433  "")
434    # If it fails, then pretend we aren't using GCC.
435    ac_prog=ld
436    ;;
437  *)
438    # If it is relative, then search for the first ld in PATH.
439    with_gnu_ld=unknown
440    ;;
441  esac
442elif test "$with_gnu_ld" = yes; then
443  AC_MSG_CHECKING([for GNU ld])
444else
445  AC_MSG_CHECKING([for non-GNU ld])
446fi
447AC_CACHE_VAL(lt_cv_path_LD,
448[if test -z "$LD"; then
449  IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
450  for ac_dir in $PATH; do
451    test -z "$ac_dir" && ac_dir=.
452    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
453      lt_cv_path_LD="$ac_dir/$ac_prog"
454      # Check to see if the program is GNU ld.  I'd rather use --version,
455      # but apparently some GNU ld's only accept -v.
456      # Break only if it was the GNU/non-GNU ld that we prefer.
457      if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
458        test "$with_gnu_ld" != no && break
459      else
460        test "$with_gnu_ld" != yes && break
461      fi
462    fi
463  done
464  IFS="$ac_save_ifs"
465else
466  lt_cv_path_LD="$LD" # Let the user override the test with a path.
467fi])
468LD="$lt_cv_path_LD"
469if test -n "$LD"; then
470  AC_MSG_RESULT($LD)
471else
472  AC_MSG_RESULT(no)
473fi
474test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
475AC_PROG_LD_GNU
476])
477
478AC_DEFUN([AC_PROG_LD_GNU],
479[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
480[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
481if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
482  lt_cv_prog_gnu_ld=yes
483else
484  lt_cv_prog_gnu_ld=no
485fi])
486with_gnu_ld=$lt_cv_prog_gnu_ld
487])
488
489# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker
490#   -- PORTME Some linkers may need a different reload flag.
491AC_DEFUN([AC_PROG_LD_RELOAD_FLAG],
492[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag,
493[lt_cv_ld_reload_flag='-r'])
494reload_flag=$lt_cv_ld_reload_flag
495test -n "$reload_flag" && reload_flag=" $reload_flag"
496])
497
498# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies
499#  -- PORTME fill in with the dynamic library characteristics
500AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
501[AC_CACHE_CHECK([how to recognise dependant libraries],
502lt_cv_deplibs_check_method,
503[lt_cv_file_magic_cmd='$MAGIC_CMD'
504lt_cv_file_magic_test_file=
505lt_cv_deplibs_check_method='unknown'
506# Need to set the preceding variable on all platforms that support
507# interlibrary dependencies.
508# 'none' -- dependencies not supported.
509# `unknown' -- same as none, but documents that we really don't know.
510# 'pass_all' -- all dependencies passed with no checks.
511# 'test_compile' -- check by making test program.
512# 'file_magic [regex]' -- check by looking for files in library path
513# which responds to the $file_magic_cmd with a given egrep regex.
514# If you have `file' or equivalent on your system and you're not sure
515# whether `pass_all' will *always* work, you probably want this one.
516
517case $host_os in
518aix*)
519  lt_cv_deplibs_check_method=pass_all
520  ;;
521
522beos*)
523  lt_cv_deplibs_check_method=pass_all
524  ;;
525
526bsdi4*)
527  lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)']
528  lt_cv_file_magic_cmd='/usr/bin/file -L'
529  lt_cv_file_magic_test_file=/shlib/libc.so
530  ;;
531
532cygwin* | mingw* |pw32*)
533  lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
534  lt_cv_file_magic_cmd='$OBJDUMP -f'
535  ;;
536
537darwin* | rhapsody*)
538  lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
539  lt_cv_file_magic_cmd='/usr/bin/file -L'
540  case "$host_os" in
541  rhapsody* | darwin1.[012])
542    lt_cv_file_magic_test_file='/System/Library/Frameworks/System.framework/System'
543    ;;
544  *) # Darwin 1.3 on
545    lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
546    ;;
547  esac
548  ;;
549
550freebsd* )
551  if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
552    case $host_cpu in
553    i*86 )
554      # Not sure whether the presence of OpenBSD here was a mistake.
555      # Let's accept both of them until this is cleared up.
556      lt_cv_deplibs_check_method=['file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library']
557      lt_cv_file_magic_cmd=/usr/bin/file
558      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
559      ;;
560    esac
561  else
562    lt_cv_deplibs_check_method=pass_all
563  fi
564  ;;
565
566gnu*)
567  lt_cv_deplibs_check_method=pass_all
568  ;;
569
570hpux10.20*|hpux11*)
571  lt_cv_deplibs_check_method=['file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library']
572  lt_cv_file_magic_cmd=/usr/bin/file
573  lt_cv_file_magic_test_file=/usr/lib/libc.sl
574  ;;
575
576irix5* | irix6*)
577  case $host_os in
578  irix5*)
579    # this will be overridden with pass_all, but let us keep it just in case
580    lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
581    ;;
582  *)
583    case $LD in
584    *-32|*"-32 ") libmagic=32-bit;;
585    *-n32|*"-n32 ") libmagic=N32;;
586    *-64|*"-64 ") libmagic=64-bit;;
587    *) libmagic=never-match;;
588    esac
589    # this will be overridden with pass_all, but let us keep it just in case
590    lt_cv_deplibs_check_method=["file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"]
591    ;;
592  esac
593  lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
594  lt_cv_deplibs_check_method=pass_all
595  ;;
596
597# This must be Linux ELF.
598linux-gnu*)
599  case $host_cpu in
600  alpha* | hppa* | i*86 | powerpc* | sparc* | ia64* )
601    lt_cv_deplibs_check_method=pass_all ;;
602  *)
603    # glibc up to 2.1.1 does not perform some relocations on ARM
604    lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'] ;;
605  esac
606  lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
607  ;;
608
609netbsd*)
610  if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
611    [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$']
612  else
613    [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so$']
614  fi
615  ;;
616
617newsos6)
618  [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)']
619  lt_cv_file_magic_cmd=/usr/bin/file
620  lt_cv_file_magic_test_file=/usr/lib/libnls.so
621  ;;
622
623osf3* | osf4* | osf5*)
624  # this will be overridden with pass_all, but let us keep it just in case
625  lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
626  lt_cv_file_magic_test_file=/shlib/libc.so
627  lt_cv_deplibs_check_method=pass_all
628  ;;
629
630sco3.2v5*)
631  lt_cv_deplibs_check_method=pass_all
632  ;;
633
634solaris*)
635  lt_cv_deplibs_check_method=pass_all
636  lt_cv_file_magic_test_file=/lib/libc.so
637  ;;
638
639[sysv5uw[78]* | sysv4*uw2*)]
640  lt_cv_deplibs_check_method=pass_all
641  ;;
642
643sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
644  case $host_vendor in
645  ncr)
646    lt_cv_deplibs_check_method=pass_all
647    ;;
648  motorola)
649    lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]']
650    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
651    ;;
652  esac
653  ;;
654esac
655])
656file_magic_cmd=$lt_cv_file_magic_cmd
657deplibs_check_method=$lt_cv_deplibs_check_method
658])
659
660
661# AC_PROG_NM - find the path to a BSD-compatible name lister
662AC_DEFUN([AC_PROG_NM],
663[AC_MSG_CHECKING([for BSD-compatible nm])
664AC_CACHE_VAL(lt_cv_path_NM,
665[if test -n "$NM"; then
666  # Let the user override the test.
667  lt_cv_path_NM="$NM"
668else
669  IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
670  for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
671    test -z "$ac_dir" && ac_dir=.
672    tmp_nm=$ac_dir/${ac_tool_prefix}nm
673    if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then
674      # Check to see if the nm accepts a BSD-compat flag.
675      # Adding the `sed 1q' prevents false positives on HP-UX, which says:
676      #   nm: unknown option "B" ignored
677      # Tru64's nm complains that /dev/null is an invalid object file
678      if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then
679        lt_cv_path_NM="$tmp_nm -B"
680        break
681      elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
682        lt_cv_path_NM="$tmp_nm -p"
683        break
684      else
685        lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
686        continue # so that we can try to find one that supports BSD flags
687      fi
688    fi
689  done
690  IFS="$ac_save_ifs"
691  test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
692fi])
693NM="$lt_cv_path_NM"
694AC_MSG_RESULT([$NM])
695])
696
697# AC_CHECK_LIBM - check for math library
698AC_DEFUN([AC_CHECK_LIBM],
699[AC_REQUIRE([AC_CANONICAL_HOST])dnl
700LIBM=
701case $host in
702*-*-beos* | *-*-cygwin* | *-*-pw32*)
703  # These system don't have libm
704  ;;
705*-ncr-sysv4.3*)
706  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
707  AC_CHECK_LIB(m, main, LIBM="$LIBM -lm")
708  ;;
709*)
710  AC_CHECK_LIB(m, main, LIBM="-lm")
711  ;;
712esac
713])
714
715# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
716# the libltdl convenience library and INCLTDL to the include flags for
717# the libltdl header and adds --enable-ltdl-convenience to the
718# configure arguments.  Note that LIBLTDL and INCLTDL are not
719# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called.  If DIR is not
720# provided, it is assumed to be `libltdl'.  LIBLTDL will be prefixed
721# with '${top_builddir}/' and INCLTDL will be prefixed with
722# '${top_srcdir}/' (note the single quotes!).  If your package is not
723# flat and you're not using automake, define top_builddir and
724# top_srcdir appropriately in the Makefiles.
725AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
726[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
727  case $enable_ltdl_convenience in
728  no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
729  "") enable_ltdl_convenience=yes
730      ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
731  esac
732  LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
733  INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
734])
735
736# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
737# the libltdl installable library and INCLTDL to the include flags for
738# the libltdl header and adds --enable-ltdl-install to the configure
739# arguments.  Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is
740# AC_CONFIG_SUBDIRS called.  If DIR is not provided and an installed
741# libltdl is not found, it is assumed to be `libltdl'.  LIBLTDL will
742# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed
743# with '${top_srcdir}/' (note the single quotes!).  If your package is
744# not flat and you're not using automake, define top_builddir and
745# top_srcdir appropriately in the Makefiles.
746# In the future, this macro may have to be called after AC_PROG_LIBTOOL.
747AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
748[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
749  AC_CHECK_LIB(ltdl, main,
750  [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
751  [if test x"$enable_ltdl_install" = xno; then
752     AC_MSG_WARN([libltdl not installed, but installation disabled])
753   else
754     enable_ltdl_install=yes
755   fi
756  ])
757  if test x"$enable_ltdl_install" = x"yes"; then
758    ac_configure_args="$ac_configure_args --enable-ltdl-install"
759    LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
760    INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
761  else
762    ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
763    LIBLTDL="-lltdl"
764    INCLTDL=
765  fi
766])
767
768# If this macro is not defined by Autoconf, define it here.
769ifdef([AC_PROVIDE_IFELSE],
770      [],
771      [define([AC_PROVIDE_IFELSE],
772              [ifdef([AC_PROVIDE_$1],
773                     [$2], [$3])])])
774
775# AC_LIBTOOL_CXX - enable support for C++ libraries
776AC_DEFUN([AC_LIBTOOL_CXX], [AC_REQUIRE([_AC_LIBTOOL_CXX])])
777
778AC_DEFUN([_AC_LIBTOOL_CXX],
779[AC_REQUIRE([AC_PROG_CXX])
780AC_REQUIRE([AC_PROG_CXXCPP])
781LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-cxx.sh"
782lt_save_CC="$CC"
783lt_save_CFLAGS="$CFLAGS"
784dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC
785dnl is set to the C++ compiler.
786AR="$AR" LTCC="$CC" CC="$CXX" CXX="$CXX" CFLAGS="$CXXFLAGS" CPPFLAGS="$CPPFLAGS" \
787MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
788LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \
789AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \
790objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \
791deplibs_check_method="$deplibs_check_method" \
792file_magic_cmd="$file_magic_cmd" \
793${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \
794--build="$build" --add-tag=CXX $ac_aux_dir/ltcf-cxx.sh $host \
795|| AC_MSG_ERROR([libtool tag configuration failed])
796CC="$lt_save_CC"
797CFLAGS="$lt_save_CFLAGS"
798
799# Redirect the config.log output again, so that the ltconfig log is not
800# clobbered by the next message.
801exec 5>>./config.log
802])
803
804# AC_LIBTOOL_GCJ - enable support for GCJ libraries
805AC_DEFUN([AC_LIBTOOL_GCJ],[AC_REQUIRE([_AC_LIBTOOL_GCJ])])
806
807AC_DEFUN([_AC_LIBTOOL_GCJ],
808[AC_REQUIRE([AC_PROG_LIBTOOL])
809AC_PROVIDE_IFELSE([AC_PROG_GCJ],[],
810  [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[],
811    [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[],
812      [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])],
813         [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])],
814           [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])])
815LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-gcj.sh"
816lt_save_CC="$CC"
817lt_save_CFLAGS="$CFLAGS"
818dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC
819dnl is set to the C++ compiler.
820AR="$AR" LTCC="$CC" CC="$GCJ" CFLAGS="$GCJFLAGS" CPPFLAGS="$CPPFLAGS" \
821MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
822LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \
823AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \
824objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \
825deplibs_check_method="$deplibs_check_method" \
826file_magic_cmd="$file_magic_cmd" \
827${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \
828--build="$build" --add-tag=GCJ $ac_aux_dir/ltcf-gcj.sh $host \
829|| AC_MSG_ERROR([libtool tag configuration failed])
830CC="$lt_save_CC"
831CFLAGS="$lt_save_CFLAGS"
832
833# Redirect the config.log output again, so that the ltconfig log is not
834# clobbered by the next message.
835exec 5>>./config.log
836])
837
838dnl old names
839AC_DEFUN([AM_PROG_LIBTOOL],   [AC_PROG_LIBTOOL])
840AC_DEFUN([AM_ENABLE_SHARED],  [AC_ENABLE_SHARED($@)])
841AC_DEFUN([AM_ENABLE_STATIC],  [AC_ENABLE_STATIC($@)])
842AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
843AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
844AC_DEFUN([AM_PROG_LD],        [AC_PROG_LD])
845AC_DEFUN([AM_PROG_NM],        [AC_PROG_NM])
846
847dnl This is just to silence aclocal about the macro not being used
848ifelse([AC_DISABLE_FAST_INSTALL])dnl
849
850AC_DEFUN([LT_AC_PROG_GCJ],
851[AC_CHECK_TOOL(GCJ, gcj, no)
852  test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
853  AC_SUBST(GCJFLAGS)
854])
Note: See TracBrowser for help on using the repository browser.