New string.
[kdbg.git] / admin / libtool.m4.in
blob5be9fd09a9dc24b22da6b55adaf53f758e2d7fca
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.
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.
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.
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.
25 # serial 46 AC_PROG_LIBTOOL
26 AC_DEFUN([AC_PROG_LIBTOOL],
27 [AC_REQUIRE([_AC_PROG_LIBTOOL])dnl
28 dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX
29 dnl 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 ])])
35 dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly.
36 dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run
37 dnl 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 ])])])])])])
54 AC_DEFUN([_AC_PROG_LIBTOOL],
55 [AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
56 AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl
57 AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl
59 # Save cache, so that ltconfig can load it
60 AC_CACHE_SAVE
62 # Actually configure libtool.  ac_aux_dir is where install-sh is found.
63 AR="$AR" LTCC="$CC" CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
64 MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
65 LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \
66 AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \
67 objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \
68 deplibs_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])
73 # Reload cache, that may have been modified by ltconfig
74 AC_CACHE_LOAD
76 # This can be used to rebuild libtool when needed
77 LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh $ac_aux_dir/ltcf-c.sh"
79 # Always use our own libtool.
80 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
81 AC_SUBST(LIBTOOL)dnl
83 # Redirect the config.log output again, so that the ltconfig log is not
84 # clobbered by the next message.
85 exec 5>>./config.log
88 AC_DEFUN([AC_LIBTOOL_SETUP],
89 [AC_PREREQ(2.13)dnl
90 AC_REQUIRE([AC_ENABLE_SHARED])dnl
91 AC_REQUIRE([AC_ENABLE_STATIC])dnl
92 AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
93 AC_REQUIRE([AC_CANONICAL_HOST])dnl
94 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
95 AC_REQUIRE([AC_PROG_CC])dnl
96 AC_REQUIRE([AC_PROG_LD])dnl
97 AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
98 AC_REQUIRE([AC_PROG_NM])dnl
99 AC_REQUIRE([AC_PROG_LN_S])dnl
100 AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
101 # Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers!
102 AC_REQUIRE([AC_OBJEXT])dnl
103 AC_REQUIRE([AC_EXEEXT])dnl
106 # Only perform the check for file, if the check method requires it
107 case "$deplibs_check_method" in
108 file_magic*)
109   if test "$file_magic_cmd" = '$MAGIC_CMD'; then
110     AC_PATH_MAGIC
111   fi
112   ;;
113 esac
115 AC_CHECK_TOOL(RANLIB, ranlib, :)
116 AC_CHECK_TOOL(STRIP, strip, :)
118 # Check for any special flags to pass to ltconfig.
119 libtool_flags="--cache-file=$cache_file"
120 test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
121 test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
122 test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
123 test "$GCC" = yes && libtool_flags="$libtool_flags --with-gcc"
124 test "$lt_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
125 ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN],
126 [libtool_flags="$libtool_flags --enable-dlopen"])
127 ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
128 [libtool_flags="$libtool_flags --enable-win32-dll"])
129 AC_ARG_ENABLE(libtool-lock,
130   [  --disable-libtool-lock  avoid locking (might break parallel builds)])
131 test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
132 test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
134 AC_ARG_WITH(pic,
135   [  --with-pic              try to use only PIC/non-PIC objects [default=use both]],
136      pic_mode="$withval", pic_mode=default)
137 test x"$pic_mode" = xyes && libtool_flags="$libtool_flags --prefer-pic"
138 test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
140 # Some flags need to be propagated to the compiler or linker for good
141 # libtool support.
142 case "$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   ;;
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   ;;
177 ifdef([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)
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])])
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   ])
207 esac
210 # AC_LIBTOOL_DLOPEN - enable checks for dlopen support
211 AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
213 # AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
214 AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
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'.
220 AC_DEFUN([AC_ENABLE_SHARED],
221 [define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
222 AC_ARG_ENABLE(shared,
223 changequote(<<, >>)dnl
224 <<  --enable-shared[=PKGS]  build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
225 changequote([, ])dnl
226 [p=${PACKAGE-default}
227 case "$enableval" in
228 yes) enable_shared=yes ;;
229 no) enable_shared=no ;;
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   ;;
241 esac],
242 enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
245 # AC_DISABLE_SHARED - set the default shared flag to --disable-shared
246 AC_DEFUN([AC_DISABLE_SHARED], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
247 AC_ENABLE_SHARED(no)])
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'.
253 AC_DEFUN([AC_ENABLE_STATIC],
254 [define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
255 AC_ARG_ENABLE(static,
256 changequote(<<, >>)dnl
257 <<  --enable-static[=PKGS]  build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
258 changequote([, ])dnl
259 [p=${PACKAGE-default}
260 case "$enableval" in
261 yes) enable_static=yes ;;
262 no) enable_static=no ;;
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   ;;
274 esac],
275 enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
278 # AC_DISABLE_STATIC - set the default static flag to --disable-static
279 AC_DEFUN([AC_DISABLE_STATIC],
280 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
281 AC_ENABLE_STATIC(no)])
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'.
288 AC_DEFUN([AC_ENABLE_FAST_INSTALL],
289 [define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
290 AC_ARG_ENABLE(fast-install,
291 changequote(<<, >>)dnl
292 <<  --enable-fast-install[=PKGS]  optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
293 changequote([, ])dnl
294 [p=${PACKAGE-default}
295 case "$enableval" in
296 yes) enable_fast_install=yes ;;
297 no) enable_fast_install=no ;;
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   ;;
309 esac],
310 enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
313 # AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install
314 AC_DEFUN([AC_DISABLE_FAST_INSTALL],
315 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
316 AC_ENABLE_FAST_INSTALL(no)])
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'.
322 AC_DEFUN([AC_LIBTOOL_PICMODE],
323 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
324 pic_mode=ifelse($#,1,$1,default)])
327 # AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library
328 AC_DEFUN([AC_PATH_TOOL_PREFIX],
329 [AC_MSG_CHECKING([for $1])
330 AC_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=":"
341 dnl $ac_dummy forces splitting on constant user-supplied paths.
342 dnl POSIX.2 word splitting is done only on the output of word expansions,
343 dnl 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
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
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   ;;
379 esac])
380 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
381 if test -n "$MAGIC_CMD"; then
382   AC_MSG_RESULT($MAGIC_CMD)
383 else
384   AC_MSG_RESULT(no)
389 # AC_PATH_MAGIC - find a file program which can recognise a shared library
390 AC_DEFUN([AC_PATH_MAGIC],
391 [AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl
392 AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH)
393 if 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
403 # AC_PROG_LD - find the path to the GNU or non-GNU linker
404 AC_DEFUN([AC_PROG_LD],
405 [AC_ARG_WITH(gnu-ld,
406 [  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]],
407 test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
408 AC_REQUIRE([AC_PROG_CC])dnl
409 AC_REQUIRE([AC_CANONICAL_HOST])dnl
410 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
411 ac_prog=ld
412 if 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 changequote(,)dnl
425     [\\/]* | [A-Za-z]:[\\/]*)
426       re_direlt='/[^/][^/]*/\.\./'
427 changequote([,])dnl
428       # Canonicalize the path of ld
429       ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
430       while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
431         ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
432       done
433       test -z "$LD" && LD="$ac_prog"
434       ;;
435   "")
436     # If it fails, then pretend we aren't using GCC.
437     ac_prog=ld
438     ;;
439   *)
440     # If it is relative, then search for the first ld in PATH.
441     with_gnu_ld=unknown
442     ;;
443   esac
444 elif test "$with_gnu_ld" = yes; then
445   AC_MSG_CHECKING([for GNU ld])
446 else
447   AC_MSG_CHECKING([for non-GNU ld])
449 AC_CACHE_VAL(lt_cv_path_LD,
450 [if test -z "$LD"; then
451   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
452   for ac_dir in $PATH; do
453     test -z "$ac_dir" && ac_dir=.
454     if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
455       lt_cv_path_LD="$ac_dir/$ac_prog"
456       # Check to see if the program is GNU ld.  I'd rather use --version,
457       # but apparently some GNU ld's only accept -v.
458       # Break only if it was the GNU/non-GNU ld that we prefer.
459       if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
460         test "$with_gnu_ld" != no && break
461       else
462         test "$with_gnu_ld" != yes && break
463       fi
464     fi
465   done
466   IFS="$ac_save_ifs"
467 else
468   lt_cv_path_LD="$LD" # Let the user override the test with a path.
469 fi])
470 LD="$lt_cv_path_LD"
471 if test -n "$LD"; then
472   AC_MSG_RESULT($LD)
473 else
474   AC_MSG_RESULT(no)
476 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
477 AC_PROG_LD_GNU
480 AC_DEFUN([AC_PROG_LD_GNU],
481 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
482 [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
483 if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
484   lt_cv_prog_gnu_ld=yes
485 else
486   lt_cv_prog_gnu_ld=no
487 fi])
488 with_gnu_ld=$lt_cv_prog_gnu_ld
491 # AC_PROG_LD_RELOAD_FLAG - find reload flag for linker
492 #   -- PORTME Some linkers may need a different reload flag.
493 AC_DEFUN([AC_PROG_LD_RELOAD_FLAG],
494 [AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag,
495 [lt_cv_ld_reload_flag='-r'])
496 reload_flag=$lt_cv_ld_reload_flag
497 test -n "$reload_flag" && reload_flag=" $reload_flag"
500 # AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies
501 #  -- PORTME fill in with the dynamic library characteristics
502 AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
503 [AC_CACHE_CHECK([how to recognise dependant libraries],
504 lt_cv_deplibs_check_method,
505 [lt_cv_file_magic_cmd='$MAGIC_CMD'
506 lt_cv_file_magic_test_file=
507 lt_cv_deplibs_check_method='unknown'
508 # Need to set the preceding variable on all platforms that support
509 # interlibrary dependencies.
510 # 'none' -- dependencies not supported.
511 # `unknown' -- same as none, but documents that we really don't know.
512 # 'pass_all' -- all dependencies passed with no checks.
513 # 'test_compile' -- check by making test program.
514 # 'file_magic [regex]' -- check by looking for files in library path
515 # which responds to the $file_magic_cmd with a given egrep regex.
516 # If you have `file' or equivalent on your system and you're not sure
517 # whether `pass_all' will *always* work, you probably want this one.
519 case "$host_os" in
520 aix4*)
521   lt_cv_deplibs_check_method=pass_all
522   ;;
524 beos*)
525   lt_cv_deplibs_check_method=pass_all
526   ;;
528 bsdi4*)
529   changequote(,)dnl
530   lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
531   changequote([, ])dnl
532   lt_cv_file_magic_cmd='/usr/bin/file -L'
533   lt_cv_file_magic_test_file=/shlib/libc.so
534   ;;
536 cygwin* | mingw* |pw32*)
537   lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
538   lt_cv_file_magic_cmd='$OBJDUMP -f'
539   ;;
541 darwin* | rhapsody*)
542   lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
543   lt_cv_file_magic_cmd=/usr/bin/file
544   lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1`
545   ;;
547 freebsd* )
548   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
549     case "$host_cpu" in
550     i*86 )
551       # Not sure whether the presence of OpenBSD here was a mistake.
552       # Let's accept both of them until this is cleared up.
553       changequote(,)dnl
554       lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library'
555       changequote([, ])dnl
556       lt_cv_file_magic_cmd=/usr/bin/file
557       lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
558       ;;
559     esac
560   else
561     lt_cv_deplibs_check_method=pass_all
562   fi
563   ;;
565 gnu*)
566   lt_cv_deplibs_check_method=pass_all
567   ;;
569 hpux10.20*|hpux11*)
570   # TODO:  Does this work for hpux-11 too?
571   changequote(,)dnl
572   lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'
573   changequote([, ])dnl
574   lt_cv_file_magic_cmd=/usr/bin/file
575   lt_cv_file_magic_test_file=/usr/lib/libc.sl
576   ;;
578 irix5* | irix6*)
579   case "$host_os" in
580   irix5*)
581     # this will be overridden with pass_all, but let us keep it just in case
582     lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
583     ;;
584   *)
585     case "$LD" in
586     *-32|*"-32 ") libmagic=32-bit;;
587     *-n32|*"-n32 ") libmagic=N32;;
588     *-64|*"-64 ") libmagic=64-bit;;
589     *) libmagic=never-match;;
590     esac
591     # this will be overridden with pass_all, but let us keep it just in case
592     changequote(,)dnl
593     lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"
594     changequote([, ])dnl
595     ;;
596   esac
597   lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
598   lt_cv_deplibs_check_method=pass_all
599   ;;
601 # This must be Linux ELF.
602 linux-gnu*)
603   case "$host_cpu" in
604   alpha* | i*86 | powerpc* | sparc* | ia64* | s390* )
605     lt_cv_deplibs_check_method=pass_all ;;
606   *)
607     # glibc up to 2.1.1 does not perform some relocations on ARM
608     changequote(,)dnl
609     lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;;
610     changequote([, ])dnl
611   esac
612   lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
613   ;;
615 netbsd*)
616   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
617     [lt_cv_deplibs_check_method='file_magic NetBSD/[a-z0-9]* demand paged shared library']
618   else
619     [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object']
620   fi
621   lt_cv_file_magic_cmd='/usr/bin/file -L'
622   lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
623   ;;
625 openbsd* )
626   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
627     case "$host_cpu" in
628     i*86 )
629       changequote(,)dnl
630       lt_cv_deplibs_check_method='file_magic OpenBSD/i[3-9]86 demand paged shared library'
631       changequote([, ])dnl
632       lt_cv_file_magic_cmd=/usr/bin/file
633       lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
634       ;;
635     esac
636   else
637     lt_cv_deplibs_check_method=pass_all
638   fi
639   ;;
641 newsos6)
642   [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)']
643   lt_cv_file_magic_cmd=/usr/bin/file
644   lt_cv_file_magic_test_file=/usr/lib/libnls.so
645   ;;
647 osf3* | osf4* | osf5*)
648   # this will be overridden with pass_all, but let us keep it just in case
649   lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
650   lt_cv_file_magic_test_file=/shlib/libc.so
651   lt_cv_deplibs_check_method=pass_all
652   ;;
654 sco3.2v5*)
655   lt_cv_deplibs_check_method=pass_all
656   ;;
658 solaris*)
659   lt_cv_deplibs_check_method=pass_all
660   lt_cv_file_magic_test_file=/lib/libc.so
661   ;;
663 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
664   case "$host_vendor" in
665   ncr)
666     lt_cv_deplibs_check_method=pass_all
667     ;;
668   motorola)
669     changequote(,)dnl
670     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]'
671     changequote([, ])dnl
672     lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
673     ;;
674   esac
675   ;;
676 esac
678 file_magic_cmd=$lt_cv_file_magic_cmd
679 deplibs_check_method=$lt_cv_deplibs_check_method
683 # AC_PROG_NM - find the path to a BSD-compatible name lister
684 AC_DEFUN([AC_PROG_NM],
685 [AC_MSG_CHECKING([for BSD-compatible nm])
686 AC_CACHE_VAL(lt_cv_path_NM,
687 [if test -n "$NM"; then
688   # Let the user override the test.
689   lt_cv_path_NM="$NM"
690 else
691   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
692   for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
693     test -z "$ac_dir" && ac_dir=.
694     tmp_nm=$ac_dir/${ac_tool_prefix}nm
695     if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then
696       # Check to see if the nm accepts a BSD-compat flag.
697       # Adding the `sed 1q' prevents false positives on HP-UX, which says:
698       #   nm: unknown option "B" ignored
699       # Tru64's nm complains that /dev/null is an invalid object file
700       if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then
701         lt_cv_path_NM="$tmp_nm -B"
702         break
703       elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
704         lt_cv_path_NM="$tmp_nm -p"
705         break
706       else
707         lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
708         continue # so that we can try to find one that supports BSD flags
709       fi
710     fi
711   done
712   IFS="$ac_save_ifs"
713   test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
714 fi])
715 NM="$lt_cv_path_NM"
716 AC_MSG_RESULT([$NM])
719 # AC_CHECK_LIBM - check for math library
720 AC_DEFUN([AC_CHECK_LIBM],
721 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
722 LIBM=
723 case "$host" in
724 *-*-beos* | *-*-cygwin* | *-*-pw32*)
725   # These system don't have libm
726   ;;
727 *-ncr-sysv4.3*)
728   AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
729   AC_CHECK_LIB(m, main, LIBM="$LIBM -lm")
730   ;;
732   AC_CHECK_LIB(m, main, LIBM="-lm")
733   ;;
734 esac
737 # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
738 # the libltdl convenience library and INCLTDL to the include flags for
739 # the libltdl header and adds --enable-ltdl-convenience to the
740 # configure arguments.  Note that LIBLTDL and INCLTDL are not
741 # AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called.  If DIR is not
742 # provided, it is assumed to be `libltdl'.  LIBLTDL will be prefixed
743 # with '${top_builddir}/' and INCLTDL will be prefixed with
744 # '${top_srcdir}/' (note the single quotes!).  If your package is not
745 # flat and you're not using automake, define top_builddir and
746 # top_srcdir appropriately in the Makefiles.
747 AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
748 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
749   case "$enable_ltdl_convenience" in
750   no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
751   "") enable_ltdl_convenience=yes
752       ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
753   esac
754   LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
755   INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
758 # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
759 # the libltdl installable library and INCLTDL to the include flags for
760 # the libltdl header and adds --enable-ltdl-install to the configure
761 # arguments.  Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is
762 # AC_CONFIG_SUBDIRS called.  If DIR is not provided and an installed
763 # libltdl is not found, it is assumed to be `libltdl'.  LIBLTDL will
764 # be prefixed with '${top_builddir}/' and INCLTDL will be prefixed
765 # with '${top_srcdir}/' (note the single quotes!).  If your package is
766 # not flat and you're not using automake, define top_builddir and
767 # top_srcdir appropriately in the Makefiles.
768 # In the future, this macro may have to be called after AC_PROG_LIBTOOL.
769 AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
770 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
771   AC_CHECK_LIB(ltdl, main,
772   [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
773   [if test x"$enable_ltdl_install" = xno; then
774      AC_MSG_WARN([libltdl not installed, but installation disabled])
775    else
776      enable_ltdl_install=yes
777    fi
778   ])
779   if test x"$enable_ltdl_install" = x"yes"; then
780     ac_configure_args="$ac_configure_args --enable-ltdl-install"
781     LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
782     INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
783   else
784     ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
785     LIBLTDL="-lltdl"
786     INCLTDL=
787   fi
790 # If this macro is not defined by Autoconf, define it here.
791 ifdef([AC_PROVIDE_IFELSE],
792       [],
793       [define([AC_PROVIDE_IFELSE],
794               [ifdef([AC_PROVIDE_$1],
795                      [$2], [$3])])])
797 # AC_LIBTOOL_CXX - enable support for C++ libraries
798 AC_DEFUN([AC_LIBTOOL_CXX], [AC_REQUIRE([_AC_LIBTOOL_CXX])])
800 AC_DEFUN([_AC_LIBTOOL_CXX],
801 [AC_REQUIRE([AC_PROG_CXX])
802 AC_REQUIRE([AC_PROG_CXXCPP])
803 LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-cxx.sh"
804 lt_save_CC="$CC"
805 lt_save_CFLAGS="$CFLAGS"
806 dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC
807 dnl is set to the C++ compiler.
808 AR="$AR" LTCC="$CC" CC="$CXX" CXX="$CXX" CFLAGS="$CXXFLAGS" CPPFLAGS="$CPPFLAGS" \
809 MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
810 LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \
811 AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \
812 objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \
813 deplibs_check_method="$deplibs_check_method" \
814 file_magic_cmd="$file_magic_cmd" \
815 ${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \
816 --build="$build" --add-tag=CXX $ac_aux_dir/ltcf-cxx.sh $host \
817 || AC_MSG_ERROR([libtool tag configuration failed])
818 CC="$lt_save_CC"
819 CFLAGS="$lt_save_CFLAGS"
821 # Redirect the config.log output again, so that the ltconfig log is not
822 # clobbered by the next message.
823 exec 5>>./config.log
826 # AC_LIBTOOL_GCJ - enable support for GCJ libraries
827 AC_DEFUN([AC_LIBTOOL_GCJ],[AC_REQUIRE([_AC_LIBTOOL_GCJ])])
829 AC_DEFUN([_AC_LIBTOOL_GCJ],
830 [AC_REQUIRE([AC_PROG_LIBTOOL])
831 AC_PROVIDE_IFELSE([AC_PROG_GCJ],[],
832   [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[],
833     [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[],
834       [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])],
835          [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])],
836            [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])])
837 LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-gcj.sh"
838 lt_save_CC="$CC"
839 lt_save_CFLAGS="$CFLAGS"
840 dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC
841 dnl is set to the C++ compiler.
842 AR="$AR" LTCC="$CC" CC="$GCJ" CFLAGS="$GCJFLAGS" CPPFLAGS="$CPPFLAGS" \
843 MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
844 LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \
845 AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \
846 objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \
847 deplibs_check_method="$deplibs_check_method" \
848 file_magic_cmd="$file_magic_cmd" \
849 ${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \
850 --build="$build" --add-tag=GCJ $ac_aux_dir/ltcf-gcj.sh $host \
851 || AC_MSG_ERROR([libtool tag configuration failed])
852 CC="$lt_save_CC"
853 CFLAGS="$lt_save_CFLAGS"
855 # Redirect the config.log output again, so that the ltconfig log is not
856 # clobbered by the next message.
857 exec 5>>./config.log
860 dnl old names
861 AC_DEFUN([AM_PROG_LIBTOOL],   [AC_PROG_LIBTOOL])
862 AC_DEFUN([AM_ENABLE_SHARED],  [AC_ENABLE_SHARED($@)])
863 AC_DEFUN([AM_ENABLE_STATIC],  [AC_ENABLE_STATIC($@)])
864 AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
865 AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
866 AC_DEFUN([AM_PROG_LD],        [AC_PROG_LD])
867 AC_DEFUN([AM_PROG_NM],        [AC_PROG_NM])
869 dnl This is just to silence aclocal about the macro not being used
870 ifelse([AC_DISABLE_FAST_INSTALL])dnl
872 AC_DEFUN([LT_AC_PROG_GCJ],
873 [AC_CHECK_TOOL(GCJ, gcj, no)
874   test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
875   AC_SUBST(GCJFLAGS)