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 if test "$lt_cv_prog_gnu_ld" = yes; then 148 case `/usr/bin/file conftest.$ac_objext` in 149 *32-bit*) 150 LD="${LD-ld} -melf32bsmip" 151 ;; 152 *N32*) 153 LD="${LD-ld} -melf32bmipn32" 154 ;; 155 *64-bit*) 156 LD="${LD-ld} -melf64bmip" 157 ;; 158 esac 159 else 160 case `/usr/bin/file conftest.$ac_objext` in 161 *32-bit*) 162 LD="${LD-ld} -32" 163 ;; 164 *N32*) 165 LD="${LD-ld} -n32" 166 ;; 167 *64-bit*) 168 LD="${LD-ld} -64" 169 ;; 170 esac 171 fi 172 fi 173 rm -rf conftest* 174 ;; 175 176ia64-*-hpux*) 177 # Find out which ABI we are using. 178 echo 'int i;' > conftest.$ac_ext 179 if AC_TRY_EVAL(ac_compile); then 180 case "`/usr/bin/file conftest.o`" in 181 *ELF-32*) 182 HPUX_IA64_MODE="32" 183 ;; 184 *ELF-64*) 185 HPUX_IA64_MODE="64" 186 ;; 187 esac 188 fi 189 rm -rf conftest* 190 ;; 191 192x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*) 193 # Find out which ABI we are using. 194 echo 'int i;' > conftest.$ac_ext 195 if AC_TRY_EVAL(ac_compile); then 196 case "`/usr/bin/file conftest.o`" in 197 *32-bit*) 198 case $host in 199 x86_64-*linux*) 200 LD="${LD-ld} -m elf_i386" 201 ;; 202 ppc64-*linux*|powerpc64-*linux*) 203 LD="${LD-ld} -m elf32ppclinux" 204 ;; 205 s390x-*linux*) 206 LD="${LD-ld} -m elf_s390" 207 ;; 208 sparc64-*linux*) 209 LD="${LD-ld} -m elf32_sparc" 210 ;; 211 esac 212 ;; 213 *64-bit*) 214 case $host in 215 x86_64-*linux*) 216 LD="${LD-ld} -m elf_x86_64" 217 ;; 218 ppc*-*linux*|powerpc*-*linux*) 219 LD="${LD-ld} -m elf64ppc" 220 ;; 221 s390*-*linux*) 222 LD="${LD-ld} -m elf64_s390" 223 ;; 224 sparc*-*linux*) 225 LD="${LD-ld} -m elf64_sparc" 226 ;; 227 esac 228 ;; 229 esac 230 fi 231 rm -rf conftest* 232 ;; 233 234*-*-sco3.2v5*) 235 # On SCO OpenServer 5, we need -belf to get full-featured binaries. 236 SAVE_CFLAGS="$CFLAGS" 237 CFLAGS="$CFLAGS -belf" 238 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, 239 [AC_LANG_SAVE 240 AC_LANG_C 241 AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) 242 AC_LANG_RESTORE]) 243 if test x"$lt_cv_cc_needs_belf" != x"yes"; then 244 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf 245 CFLAGS="$SAVE_CFLAGS" 246 fi 247 ;; 248 249ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], 250[*-*-cygwin* | *-*-mingw* | *-*-pw32*) 251 AC_CHECK_TOOL(DLLTOOL, dlltool, false) 252 AC_CHECK_TOOL(AS, as, false) 253 AC_CHECK_TOOL(OBJDUMP, objdump, false) 254 255 # recent cygwin and mingw systems supply a stub DllMain which the user 256 # can override, but on older systems we have to supply one 257 AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain, 258 [AC_TRY_LINK([], 259 [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*); 260 DllMain (0, 0, 0);], 261 [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])]) 262 263 case $host/$CC in 264 *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*) 265 # old mingw systems require "-dll" to link a DLL, while more recent ones 266 # require "-mdll" 267 SAVE_CFLAGS="$CFLAGS" 268 CFLAGS="$CFLAGS -mdll" 269 AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch, 270 [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])]) 271 CFLAGS="$SAVE_CFLAGS" ;; 272 *-*-cygwin* | *-*-pw32*) 273 # cygwin systems need to pass --dll to the linker, and not link 274 # crt.o which will require a WinMain@16 definition. 275 lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;; 276 esac 277 ;; 278 ]) 279esac 280]) 281 282# AC_LIBTOOL_DLOPEN - enable checks for dlopen support 283AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) 284 285# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's 286AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) 287 288# AC_ENABLE_SHARED - implement the --enable-shared flag 289# Usage: AC_ENABLE_SHARED[(DEFAULT)] 290# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to 291# `yes'. 292AC_DEFUN([AC_ENABLE_SHARED], 293[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl 294AC_ARG_ENABLE(shared, 295changequote(<<, >>)dnl 296<< --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT], 297changequote([, ])dnl 298[p=${PACKAGE-default} 299case $enableval in 300yes) enable_shared=yes ;; 301no) enable_shared=no ;; 302*) 303 enable_shared=no 304 # Look at the argument we got. We use all the common list separators. 305 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," 306 for pkg in $enableval; do 307 if test "X$pkg" = "X$p"; then 308 enable_shared=yes 309 fi 310 done 311 IFS="$ac_save_ifs" 312 ;; 313esac], 314enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl 315]) 316 317# AC_DISABLE_SHARED - set the default shared flag to --disable-shared 318AC_DEFUN([AC_DISABLE_SHARED], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl 319AC_ENABLE_SHARED(no)]) 320 321# AC_ENABLE_STATIC - implement the --enable-static flag 322# Usage: AC_ENABLE_STATIC[(DEFAULT)] 323# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to 324# `yes'. 325AC_DEFUN([AC_ENABLE_STATIC], 326[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl 327AC_ARG_ENABLE(static, 328changequote(<<, >>)dnl 329<< --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT], 330changequote([, ])dnl 331[p=${PACKAGE-default} 332case $enableval in 333yes) enable_static=yes ;; 334no) enable_static=no ;; 335*) 336 enable_static=no 337 # Look at the argument we got. We use all the common list separators. 338 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," 339 for pkg in $enableval; do 340 if test "X$pkg" = "X$p"; then 341 enable_static=yes 342 fi 343 done 344 IFS="$ac_save_ifs" 345 ;; 346esac], 347enable_static=AC_ENABLE_STATIC_DEFAULT)dnl 348]) 349 350# AC_DISABLE_STATIC - set the default static flag to --disable-static 351AC_DEFUN([AC_DISABLE_STATIC], 352[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl 353AC_ENABLE_STATIC(no)]) 354 355 356# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag 357# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)] 358# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to 359# `yes'. 360AC_DEFUN([AC_ENABLE_FAST_INSTALL], 361[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl 362AC_ARG_ENABLE(fast-install, 363changequote(<<, >>)dnl 364<< --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT], 365changequote([, ])dnl 366[p=${PACKAGE-default} 367case $enableval in 368yes) enable_fast_install=yes ;; 369no) enable_fast_install=no ;; 370*) 371 enable_fast_install=no 372 # Look at the argument we got. We use all the common list separators. 373 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," 374 for pkg in $enableval; do 375 if test "X$pkg" = "X$p"; then 376 enable_fast_install=yes 377 fi 378 done 379 IFS="$ac_save_ifs" 380 ;; 381esac], 382enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl 383]) 384 385# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install 386AC_DEFUN([AC_DISABLE_FAST_INSTALL], 387[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl 388AC_ENABLE_FAST_INSTALL(no)]) 389 390# AC_LIBTOOL_PICMODE - implement the --with-pic flag 391# Usage: AC_LIBTOOL_PICMODE[(MODE)] 392# Where MODE is either `yes' or `no'. If omitted, it defaults to 393# `both'. 394AC_DEFUN([AC_LIBTOOL_PICMODE], 395[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl 396pic_mode=ifelse($#,1,$1,default)]) 397 398 399# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library 400AC_DEFUN([AC_PATH_TOOL_PREFIX], 401[AC_MSG_CHECKING([for $1]) 402AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, 403[case $MAGIC_CMD in 404 /*) 405 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. 406 ;; 407 ?:/*) 408 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. 409 ;; 410 *) 411 ac_save_MAGIC_CMD="$MAGIC_CMD" 412 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" 413dnl $ac_dummy forces splitting on constant user-supplied paths. 414dnl POSIX.2 word splitting is done only on the output of word expansions, 415dnl not every word. This closes a longstanding sh security hole. 416 ac_dummy="ifelse([$2], , $PATH, [$2])" 417 for ac_dir in $ac_dummy; do 418 test -z "$ac_dir" && ac_dir=. 419 if test -f $ac_dir/$1; then 420 lt_cv_path_MAGIC_CMD="$ac_dir/$1" 421 if test -n "$file_magic_test_file"; then 422 case $deplibs_check_method in 423 "file_magic "*) 424 file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" 425 MAGIC_CMD="$lt_cv_path_MAGIC_CMD" 426 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | 427 egrep "$file_magic_regex" > /dev/null; then 428 : 429 else 430 cat <<EOF 1>&2 431 432*** Warning: the command libtool uses to detect shared libraries, 433*** $file_magic_cmd, produces output that libtool cannot recognize. 434*** The result is that libtool may fail to recognize shared libraries 435*** as such. This will affect the creation of libtool libraries that 436*** depend on shared libraries, but programs linked with such libtool 437*** libraries will work regardless of this problem. Nevertheless, you 438*** may want to report the problem to your system manager and/or to 439*** bug-libtool@gnu.org 440 441EOF 442 fi ;; 443 esac 444 fi 445 break 446 fi 447 done 448 IFS="$ac_save_ifs" 449 MAGIC_CMD="$ac_save_MAGIC_CMD" 450 ;; 451esac]) 452MAGIC_CMD="$lt_cv_path_MAGIC_CMD" 453if test -n "$MAGIC_CMD"; then 454 AC_MSG_RESULT($MAGIC_CMD) 455else 456 AC_MSG_RESULT(no) 457fi 458]) 459 460 461# AC_PATH_MAGIC - find a file program which can recognise a shared library 462AC_DEFUN([AC_PATH_MAGIC], 463[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl 464AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH) 465if test -z "$lt_cv_path_MAGIC_CMD"; then 466 if test -n "$ac_tool_prefix"; then 467 AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH) 468 else 469 MAGIC_CMD=: 470 fi 471fi 472]) 473 474 475# AC_PROG_LD - find the path to the GNU or non-GNU linker 476AC_DEFUN([AC_PROG_LD], 477[AC_ARG_WITH(gnu-ld, 478[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], 479test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) 480AC_REQUIRE([AC_PROG_CC])dnl 481AC_REQUIRE([AC_CANONICAL_HOST])dnl 482AC_REQUIRE([AC_CANONICAL_BUILD])dnl 483ac_prog=ld 484if test "$GCC" = yes; then 485 # Check if gcc -print-prog-name=ld gives a path. 486 AC_MSG_CHECKING([for ld used by GCC]) 487 case $host in 488 *-*-mingw*) 489 # gcc leaves a trailing carriage return which upsets mingw 490 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; 491 *) 492 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; 493 esac 494 case $ac_prog in 495 # Accept absolute paths. 496 [[\\/]* | [A-Za-z]:[\\/]*)] 497 re_direlt=['/[^/][^/]*/\.\./'] 498 # Canonicalize the path of ld 499 ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` 500 while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do 501 ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` 502 done 503 test -z "$LD" && LD="$ac_prog" 504 ;; 505 "") 506 # If it fails, then pretend we aren't using GCC. 507 ac_prog=ld 508 ;; 509 *) 510 # If it is relative, then search for the first ld in PATH. 511 with_gnu_ld=unknown 512 ;; 513 esac 514elif test "$with_gnu_ld" = yes; then 515 AC_MSG_CHECKING([for GNU ld]) 516else 517 AC_MSG_CHECKING([for non-GNU ld]) 518fi 519AC_CACHE_VAL(lt_cv_path_LD, 520[if test -z "$LD"; then 521 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" 522 for ac_dir in $PATH; do 523 test -z "$ac_dir" && ac_dir=. 524 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then 525 lt_cv_path_LD="$ac_dir/$ac_prog" 526 # Check to see if the program is GNU ld. I'd rather use --version, 527 # but apparently some GNU ld's only accept -v. 528 # Break only if it was the GNU/non-GNU ld that we prefer. 529 if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then 530 test "$with_gnu_ld" != no && break 531 else 532 test "$with_gnu_ld" != yes && break 533 fi 534 fi 535 done 536 IFS="$ac_save_ifs" 537else 538 lt_cv_path_LD="$LD" # Let the user override the test with a path. 539fi]) 540LD="$lt_cv_path_LD" 541if test -n "$LD"; then 542 AC_MSG_RESULT($LD) 543else 544 AC_MSG_RESULT(no) 545fi 546test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) 547AC_PROG_LD_GNU 548]) 549 550AC_DEFUN([AC_PROG_LD_GNU], 551[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, 552[# I'd rather use --version here, but apparently some GNU ld's only accept -v. 553if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then 554 lt_cv_prog_gnu_ld=yes 555else 556 lt_cv_prog_gnu_ld=no 557fi]) 558with_gnu_ld=$lt_cv_prog_gnu_ld 559]) 560 561# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker 562# -- PORTME Some linkers may need a different reload flag. 563AC_DEFUN([AC_PROG_LD_RELOAD_FLAG], 564[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag, 565[lt_cv_ld_reload_flag='-r']) 566reload_flag=$lt_cv_ld_reload_flag 567test -n "$reload_flag" && reload_flag=" $reload_flag" 568]) 569 570# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies 571# -- PORTME fill in with the dynamic library characteristics 572AC_DEFUN([AC_DEPLIBS_CHECK_METHOD], 573[AC_CACHE_CHECK([how to recognise dependant libraries], 574lt_cv_deplibs_check_method, 575[lt_cv_file_magic_cmd='$MAGIC_CMD' 576lt_cv_file_magic_test_file= 577lt_cv_deplibs_check_method='unknown' 578# Need to set the preceding variable on all platforms that support 579# interlibrary dependencies. 580# 'none' -- dependencies not supported. 581# `unknown' -- same as none, but documents that we really don't know. 582# 'pass_all' -- all dependencies passed with no checks. 583# 'test_compile' -- check by making test program. 584# 'file_magic [regex]' -- check by looking for files in library path 585# which responds to the $file_magic_cmd with a given egrep regex. 586# If you have `file' or equivalent on your system and you're not sure 587# whether `pass_all' will *always* work, you probably want this one. 588 589case $host_os in 590aix*) 591 lt_cv_deplibs_check_method=pass_all 592 ;; 593 594beos*) 595 lt_cv_deplibs_check_method=pass_all 596 ;; 597 598bsdi4*) 599 lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'] 600 lt_cv_file_magic_cmd='/usr/bin/file -L' 601 lt_cv_file_magic_test_file=/shlib/libc.so 602 ;; 603 604cygwin* | mingw* |pw32*) 605 lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' 606 lt_cv_file_magic_cmd='$OBJDUMP -f' 607 ;; 608 609darwin* | rhapsody*) 610 # this will be overwritten by pass_all, but leave it in just in case 611 lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' 612 lt_cv_file_magic_cmd='/usr/bin/file -L' 613 case "$host_os" in 614 rhapsody* | darwin1.[012]) 615 lt_cv_file_magic_test_file='/System/Library/Frameworks/System.framework/System' 616 ;; 617 *) # Darwin 1.3 on 618 lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' 619 ;; 620 esac 621 lt_cv_deplibs_check_method=pass_all 622 ;; 623 624freebsd* ) 625 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then 626 case $host_cpu in 627 i*86 ) 628 # Not sure whether the presence of OpenBSD here was a mistake. 629 # Let's accept both of them until this is cleared up. 630 lt_cv_deplibs_check_method=['file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library'] 631 lt_cv_file_magic_cmd=/usr/bin/file 632 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` 633 ;; 634 esac 635 else 636 lt_cv_deplibs_check_method=pass_all 637 fi 638 ;; 639 640gnu*) 641 lt_cv_deplibs_check_method=pass_all 642 ;; 643 644hpux10.20*|hpux11*) 645 case $host_cpu in 646 hppa*) 647 [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'] 648 lt_cv_file_magic_cmd=/usr/bin/file 649 lt_cv_file_magic_test_file=/usr/lib/libc.sl 650 ;; 651 ia64*) 652 [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'] 653 lt_cv_file_magic_cmd=/usr/bin/file 654 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so 655 ;; 656 esac 657 ;; 658 659irix5* | irix6*) 660 case $host_os in 661 irix5*) 662 # this will be overridden with pass_all, but let us keep it just in case 663 lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" 664 ;; 665 *) 666 case $LD in 667 *-32|*"-32 ") libmagic=32-bit;; 668 *-n32|*"-n32 ") libmagic=N32;; 669 *-64|*"-64 ") libmagic=64-bit;; 670 *) libmagic=never-match;; 671 esac 672 # this will be overridden with pass_all, but let us keep it just in case 673 lt_cv_deplibs_check_method=["file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"] 674 ;; 675 esac 676 lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` 677 lt_cv_deplibs_check_method=pass_all 678 ;; 679 680# This must be Linux ELF. 681linux-gnu*) 682 case $host_cpu in 683 alpha* | mips* | hppa* | i*86 | powerpc* | sparc* | ia64* | sh* ) 684 lt_cv_deplibs_check_method=pass_all ;; 685 *) 686 # glibc up to 2.1.1 does not perform some relocations on ARM 687 lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'] ;; 688 esac 689 lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` 690 ;; 691 692netbsd*) 693 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then 694 [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'] 695 else 696 [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so$'] 697 fi 698 ;; 699 700newsos6) 701 [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'] 702 lt_cv_file_magic_cmd=/usr/bin/file 703 lt_cv_file_magic_test_file=/usr/lib/libnls.so 704 ;; 705 706osf3* | osf4* | osf5*) 707 # this will be overridden with pass_all, but let us keep it just in case 708 lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' 709 lt_cv_file_magic_test_file=/shlib/libc.so 710 lt_cv_deplibs_check_method=pass_all 711 ;; 712 713sco3.2v5*) 714 lt_cv_deplibs_check_method=pass_all 715 ;; 716 717solaris*) 718 lt_cv_deplibs_check_method=pass_all 719 lt_cv_file_magic_test_file=/lib/libc.so 720 ;; 721 722[sysv5uw[78]* | sysv4*uw2*)] 723 lt_cv_deplibs_check_method=pass_all 724 ;; 725 726sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) 727 case $host_vendor in 728 ncr) 729 lt_cv_deplibs_check_method=pass_all 730 ;; 731 motorola) 732 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]'] 733 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` 734 ;; 735 esac 736 ;; 737esac 738]) 739file_magic_cmd=$lt_cv_file_magic_cmd 740deplibs_check_method=$lt_cv_deplibs_check_method 741]) 742 743 744# AC_PROG_NM - find the path to a BSD-compatible name lister 745AC_DEFUN([AC_PROG_NM], 746[AC_MSG_CHECKING([for BSD-compatible nm]) 747AC_CACHE_VAL(lt_cv_path_NM, 748[if test -n "$NM"; then 749 # Let the user override the test. 750 lt_cv_path_NM="$NM" 751else 752 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" 753 for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do 754 test -z "$ac_dir" && ac_dir=. 755 tmp_nm=$ac_dir/${ac_tool_prefix}nm 756 if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then 757 # Check to see if the nm accepts a BSD-compat flag. 758 # Adding the `sed 1q' prevents false positives on HP-UX, which says: 759 # nm: unknown option "B" ignored 760 # Tru64's nm complains that /dev/null is an invalid object file 761 if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then 762 lt_cv_path_NM="$tmp_nm -B" 763 break 764 elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then 765 lt_cv_path_NM="$tmp_nm -p" 766 break 767 else 768 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but 769 continue # so that we can try to find one that supports BSD flags 770 fi 771 fi 772 done 773 IFS="$ac_save_ifs" 774 test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm 775fi]) 776NM="$lt_cv_path_NM" 777AC_MSG_RESULT([$NM]) 778]) 779 780# AC_CHECK_LIBM - check for math library 781AC_DEFUN([AC_CHECK_LIBM], 782[AC_REQUIRE([AC_CANONICAL_HOST])dnl 783LIBM= 784case $host in 785*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*) 786 # These system don't have libm 787 # on darwin the libm is a symbolic link to libSystem.dylib 788 ;; 789*-ncr-sysv4.3*) 790 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") 791 AC_CHECK_LIB(m, main, LIBM="$LIBM -lm") 792 ;; 793*) 794 AC_CHECK_LIB(m, main, LIBM="-lm") 795 ;; 796esac 797]) 798 799# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for 800# the libltdl convenience library and INCLTDL to the include flags for 801# the libltdl header and adds --enable-ltdl-convenience to the 802# configure arguments. Note that LIBLTDL and INCLTDL are not 803# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not 804# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed 805# with '${top_builddir}/' and INCLTDL will be prefixed with 806# '${top_srcdir}/' (note the single quotes!). If your package is not 807# flat and you're not using automake, define top_builddir and 808# top_srcdir appropriately in the Makefiles. 809AC_DEFUN([AC_LIBLTDL_CONVENIENCE], 810[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl 811 case $enable_ltdl_convenience in 812 no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; 813 "") enable_ltdl_convenience=yes 814 ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; 815 esac 816 LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la 817 INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) 818]) 819 820# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for 821# the libltdl installable library and INCLTDL to the include flags for 822# the libltdl header and adds --enable-ltdl-install to the configure 823# arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is 824# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed 825# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will 826# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed 827# with '${top_srcdir}/' (note the single quotes!). If your package is 828# not flat and you're not using automake, define top_builddir and 829# top_srcdir appropriately in the Makefiles. 830# In the future, this macro may have to be called after AC_PROG_LIBTOOL. 831AC_DEFUN([AC_LIBLTDL_INSTALLABLE], 832[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl 833 AC_CHECK_LIB(ltdl, main, 834 [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], 835 [if test x"$enable_ltdl_install" = xno; then 836 AC_MSG_WARN([libltdl not installed, but installation disabled]) 837 else 838 enable_ltdl_install=yes 839 fi 840 ]) 841 if test x"$enable_ltdl_install" = x"yes"; then 842 ac_configure_args="$ac_configure_args --enable-ltdl-install" 843 LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la 844 INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) 845 else 846 ac_configure_args="$ac_configure_args --enable-ltdl-install=no" 847 LIBLTDL="-lltdl" 848 INCLTDL= 849 fi 850]) 851 852# If this macro is not defined by Autoconf, define it here. 853ifdef([AC_PROVIDE_IFELSE], 854 [], 855 [define([AC_PROVIDE_IFELSE], 856 [ifdef([AC_PROVIDE_$1], 857 [$2], [$3])])]) 858 859# AC_LIBTOOL_CXX - enable support for C++ libraries 860AC_DEFUN([AC_LIBTOOL_CXX], [AC_REQUIRE([_AC_LIBTOOL_CXX])]) 861 862AC_DEFUN([_AC_LIBTOOL_CXX], 863[AC_REQUIRE([AC_PROG_CXX]) 864AC_REQUIRE([AC_PROG_CXXCPP]) 865LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-cxx.sh" 866lt_save_CC="$CC" 867lt_save_CFLAGS="$CFLAGS" 868dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC 869dnl is set to the C++ compiler. 870AR="$AR" LTCC="$CC" CC="$CXX" CXX="$CXX" CFLAGS="$CXXFLAGS" CPPFLAGS="$CPPFLAGS" \ 871MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ 872LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ 873AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ 874objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ 875deplibs_check_method="$deplibs_check_method" \ 876file_magic_cmd="$file_magic_cmd" \ 877${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ 878--build="$build" --add-tag=CXX $ac_aux_dir/ltcf-cxx.sh $host \ 879|| AC_MSG_ERROR([libtool tag configuration failed]) 880CC="$lt_save_CC" 881CFLAGS="$lt_save_CFLAGS" 882 883# Redirect the config.log output again, so that the ltconfig log is not 884# clobbered by the next message. 885exec 5>>./config.log 886]) 887 888# AC_LIBTOOL_GCJ - enable support for GCJ libraries 889AC_DEFUN([AC_LIBTOOL_GCJ],[AC_REQUIRE([_AC_LIBTOOL_GCJ])]) 890 891AC_DEFUN([_AC_LIBTOOL_GCJ], 892[AC_REQUIRE([AC_PROG_LIBTOOL]) 893AC_PROVIDE_IFELSE([AC_PROG_GCJ],[], 894 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[], 895 [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[], 896 [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], 897 [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], 898 [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) 899LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-gcj.sh" 900lt_save_CC="$CC" 901lt_save_CFLAGS="$CFLAGS" 902dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC 903dnl is set to the C++ compiler. 904AR="$AR" LTCC="$CC" CC="$GCJ" CFLAGS="$GCJFLAGS" CPPFLAGS="$CPPFLAGS" \ 905MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ 906LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ 907AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ 908objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ 909deplibs_check_method="$deplibs_check_method" \ 910file_magic_cmd="$file_magic_cmd" \ 911${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ 912--build="$build" --add-tag=GCJ $ac_aux_dir/ltcf-gcj.sh $host \ 913|| AC_MSG_ERROR([libtool tag configuration failed]) 914CC="$lt_save_CC" 915CFLAGS="$lt_save_CFLAGS" 916 917# Redirect the config.log output again, so that the ltconfig log is not 918# clobbered by the next message. 919exec 5>>./config.log 920]) 921 922dnl old names 923AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) 924AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) 925AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) 926AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) 927AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) 928AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) 929AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) 930 931dnl This is just to silence aclocal about the macro not being used 932ifelse([AC_DISABLE_FAST_INSTALL])dnl 933 934AC_DEFUN([LT_AC_PROG_GCJ], 935[AC_CHECK_TOOL(GCJ, gcj, no) 936 test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" 937 AC_SUBST(GCJFLAGS) 938]) 939