aclocal.m4 revision 0496e070
1# generated automatically by aclocal 1.11.6 -*- Autoconf -*- 2 3# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 4# 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, 5# Inc. 6# This file is free software; the Free Software Foundation 7# gives unlimited permission to copy and/or distribute it, 8# with or without modifications, as long as this notice is preserved. 9 10# This program is distributed in the hope that it will be useful, 11# but WITHOUT ANY WARRANTY, to the extent permitted by law; without 12# even the implied warranty of MERCHANTABILITY or FITNESS FOR A 13# PARTICULAR PURPOSE. 14 15m4_ifndef([AC_AUTOCONF_VERSION], 16 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl 17m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],, 18[m4_warning([this file was generated for autoconf 2.69. 19You have another version of autoconf. It may work, but is not guaranteed to. 20If you have problems, you may need to regenerate the build system entirely. 21To do so, use the procedure documented by the package, typically `autoreconf'.])]) 22 23# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- 24# 25# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 26# 2006, 2007, 2008, 2009, 2010, 2011 Free Software 27# Foundation, Inc. 28# Written by Gordon Matzigkeit, 1996 29# 30# This file is free software; the Free Software Foundation gives 31# unlimited permission to copy and/or distribute it, with or without 32# modifications, as long as this notice is preserved. 33 34m4_define([_LT_COPYING], [dnl 35# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 36# 2006, 2007, 2008, 2009, 2010, 2011 Free Software 37# Foundation, Inc. 38# Written by Gordon Matzigkeit, 1996 39# 40# This file is part of GNU Libtool. 41# 42# GNU Libtool is free software; you can redistribute it and/or 43# modify it under the terms of the GNU General Public License as 44# published by the Free Software Foundation; either version 2 of 45# the License, or (at your option) any later version. 46# 47# As a special exception to the GNU General Public License, 48# if you distribute this file as part of a program or library that 49# is built using GNU Libtool, you may include this file under the 50# same distribution terms that you use for the rest of that program. 51# 52# GNU Libtool is distributed in the hope that it will be useful, 53# but WITHOUT ANY WARRANTY; without even the implied warranty of 54# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 55# GNU General Public License for more details. 56# 57# You should have received a copy of the GNU General Public License 58# along with GNU Libtool; see the file COPYING. If not, a copy 59# can be downloaded from http://www.gnu.org/licenses/gpl.html, or 60# obtained by writing to the Free Software Foundation, Inc., 61# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 62]) 63 64# serial 57 LT_INIT 65 66 67# LT_PREREQ(VERSION) 68# ------------------ 69# Complain and exit if this libtool version is less that VERSION. 70m4_defun([LT_PREREQ], 71[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1, 72 [m4_default([$3], 73 [m4_fatal([Libtool version $1 or higher is required], 74 63)])], 75 [$2])]) 76 77 78# _LT_CHECK_BUILDDIR 79# ------------------ 80# Complain if the absolute build directory name contains unusual characters 81m4_defun([_LT_CHECK_BUILDDIR], 82[case `pwd` in 83 *\ * | *\ *) 84 AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;; 85esac 86]) 87 88 89# LT_INIT([OPTIONS]) 90# ------------------ 91AC_DEFUN([LT_INIT], 92[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT 93AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl 94AC_BEFORE([$0], [LT_LANG])dnl 95AC_BEFORE([$0], [LT_OUTPUT])dnl 96AC_BEFORE([$0], [LTDL_INIT])dnl 97m4_require([_LT_CHECK_BUILDDIR])dnl 98 99dnl Autoconf doesn't catch unexpanded LT_ macros by default: 100m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl 101m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl 102dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4 103dnl unless we require an AC_DEFUNed macro: 104AC_REQUIRE([LTOPTIONS_VERSION])dnl 105AC_REQUIRE([LTSUGAR_VERSION])dnl 106AC_REQUIRE([LTVERSION_VERSION])dnl 107AC_REQUIRE([LTOBSOLETE_VERSION])dnl 108m4_require([_LT_PROG_LTMAIN])dnl 109 110_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}]) 111 112dnl Parse OPTIONS 113_LT_SET_OPTIONS([$0], [$1]) 114 115# This can be used to rebuild libtool when needed 116LIBTOOL_DEPS="$ltmain" 117 118# Always use our own libtool. 119LIBTOOL='$(SHELL) $(top_builddir)/libtool' 120AC_SUBST(LIBTOOL)dnl 121 122_LT_SETUP 123 124# Only expand once: 125m4_define([LT_INIT]) 126])# LT_INIT 127 128# Old names: 129AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT]) 130AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT]) 131dnl aclocal-1.4 backwards compatibility: 132dnl AC_DEFUN([AC_PROG_LIBTOOL], []) 133dnl AC_DEFUN([AM_PROG_LIBTOOL], []) 134 135 136# _LT_CC_BASENAME(CC) 137# ------------------- 138# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. 139m4_defun([_LT_CC_BASENAME], 140[for cc_temp in $1""; do 141 case $cc_temp in 142 compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; 143 distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; 144 \-*) ;; 145 *) break;; 146 esac 147done 148cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` 149]) 150 151 152# _LT_FILEUTILS_DEFAULTS 153# ---------------------- 154# It is okay to use these file commands and assume they have been set 155# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'. 156m4_defun([_LT_FILEUTILS_DEFAULTS], 157[: ${CP="cp -f"} 158: ${MV="mv -f"} 159: ${RM="rm -f"} 160])# _LT_FILEUTILS_DEFAULTS 161 162 163# _LT_SETUP 164# --------- 165m4_defun([_LT_SETUP], 166[AC_REQUIRE([AC_CANONICAL_HOST])dnl 167AC_REQUIRE([AC_CANONICAL_BUILD])dnl 168AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl 169AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl 170 171_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl 172dnl 173_LT_DECL([], [host_alias], [0], [The host system])dnl 174_LT_DECL([], [host], [0])dnl 175_LT_DECL([], [host_os], [0])dnl 176dnl 177_LT_DECL([], [build_alias], [0], [The build system])dnl 178_LT_DECL([], [build], [0])dnl 179_LT_DECL([], [build_os], [0])dnl 180dnl 181AC_REQUIRE([AC_PROG_CC])dnl 182AC_REQUIRE([LT_PATH_LD])dnl 183AC_REQUIRE([LT_PATH_NM])dnl 184dnl 185AC_REQUIRE([AC_PROG_LN_S])dnl 186test -z "$LN_S" && LN_S="ln -s" 187_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl 188dnl 189AC_REQUIRE([LT_CMD_MAX_LEN])dnl 190_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl 191_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl 192dnl 193m4_require([_LT_FILEUTILS_DEFAULTS])dnl 194m4_require([_LT_CHECK_SHELL_FEATURES])dnl 195m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl 196m4_require([_LT_CMD_RELOAD])dnl 197m4_require([_LT_CHECK_MAGIC_METHOD])dnl 198m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl 199m4_require([_LT_CMD_OLD_ARCHIVE])dnl 200m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl 201m4_require([_LT_WITH_SYSROOT])dnl 202 203_LT_CONFIG_LIBTOOL_INIT([ 204# See if we are running on zsh, and set the options which allow our 205# commands through without removal of \ escapes INIT. 206if test -n "\${ZSH_VERSION+set}" ; then 207 setopt NO_GLOB_SUBST 208fi 209]) 210if test -n "${ZSH_VERSION+set}" ; then 211 setopt NO_GLOB_SUBST 212fi 213 214_LT_CHECK_OBJDIR 215 216m4_require([_LT_TAG_COMPILER])dnl 217 218case $host_os in 219aix3*) 220 # AIX sometimes has problems with the GCC collect2 program. For some 221 # reason, if we set the COLLECT_NAMES environment variable, the problems 222 # vanish in a puff of smoke. 223 if test "X${COLLECT_NAMES+set}" != Xset; then 224 COLLECT_NAMES= 225 export COLLECT_NAMES 226 fi 227 ;; 228esac 229 230# Global variables: 231ofile=libtool 232can_build_shared=yes 233 234# All known linkers require a `.a' archive for static linking (except MSVC, 235# which needs '.lib'). 236libext=a 237 238with_gnu_ld="$lt_cv_prog_gnu_ld" 239 240old_CC="$CC" 241old_CFLAGS="$CFLAGS" 242 243# Set sane defaults for various variables 244test -z "$CC" && CC=cc 245test -z "$LTCC" && LTCC=$CC 246test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS 247test -z "$LD" && LD=ld 248test -z "$ac_objext" && ac_objext=o 249 250_LT_CC_BASENAME([$compiler]) 251 252# Only perform the check for file, if the check method requires it 253test -z "$MAGIC_CMD" && MAGIC_CMD=file 254case $deplibs_check_method in 255file_magic*) 256 if test "$file_magic_cmd" = '$MAGIC_CMD'; then 257 _LT_PATH_MAGIC 258 fi 259 ;; 260esac 261 262# Use C for the default configuration in the libtool script 263LT_SUPPORTED_TAG([CC]) 264_LT_LANG_C_CONFIG 265_LT_LANG_DEFAULT_CONFIG 266_LT_CONFIG_COMMANDS 267])# _LT_SETUP 268 269 270# _LT_PREPARE_SED_QUOTE_VARS 271# -------------------------- 272# Define a few sed substitution that help us do robust quoting. 273m4_defun([_LT_PREPARE_SED_QUOTE_VARS], 274[# Backslashify metacharacters that are still active within 275# double-quoted strings. 276sed_quote_subst='s/\([["`$\\]]\)/\\\1/g' 277 278# Same as above, but do not quote variable references. 279double_quote_subst='s/\([["`\\]]\)/\\\1/g' 280 281# Sed substitution to delay expansion of an escaped shell variable in a 282# double_quote_subst'ed string. 283delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' 284 285# Sed substitution to delay expansion of an escaped single quote. 286delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' 287 288# Sed substitution to avoid accidental globbing in evaled expressions 289no_glob_subst='s/\*/\\\*/g' 290]) 291 292# _LT_PROG_LTMAIN 293# --------------- 294# Note that this code is called both from `configure', and `config.status' 295# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably, 296# `config.status' has no value for ac_aux_dir unless we are using Automake, 297# so we pass a copy along to make sure it has a sensible value anyway. 298m4_defun([_LT_PROG_LTMAIN], 299[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl 300_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir']) 301ltmain="$ac_aux_dir/ltmain.sh" 302])# _LT_PROG_LTMAIN 303 304 305 306# So that we can recreate a full libtool script including additional 307# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS 308# in macros and then make a single call at the end using the `libtool' 309# label. 310 311 312# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS]) 313# ---------------------------------------- 314# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later. 315m4_define([_LT_CONFIG_LIBTOOL_INIT], 316[m4_ifval([$1], 317 [m4_append([_LT_OUTPUT_LIBTOOL_INIT], 318 [$1 319])])]) 320 321# Initialize. 322m4_define([_LT_OUTPUT_LIBTOOL_INIT]) 323 324 325# _LT_CONFIG_LIBTOOL([COMMANDS]) 326# ------------------------------ 327# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later. 328m4_define([_LT_CONFIG_LIBTOOL], 329[m4_ifval([$1], 330 [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS], 331 [$1 332])])]) 333 334# Initialize. 335m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS]) 336 337 338# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS]) 339# ----------------------------------------------------- 340m4_defun([_LT_CONFIG_SAVE_COMMANDS], 341[_LT_CONFIG_LIBTOOL([$1]) 342_LT_CONFIG_LIBTOOL_INIT([$2]) 343]) 344 345 346# _LT_FORMAT_COMMENT([COMMENT]) 347# ----------------------------- 348# Add leading comment marks to the start of each line, and a trailing 349# full-stop to the whole comment if one is not present already. 350m4_define([_LT_FORMAT_COMMENT], 351[m4_ifval([$1], [ 352m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])], 353 [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.]) 354)]) 355 356 357 358 359 360# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?]) 361# ------------------------------------------------------------------- 362# CONFIGNAME is the name given to the value in the libtool script. 363# VARNAME is the (base) name used in the configure script. 364# VALUE may be 0, 1 or 2 for a computed quote escaped value based on 365# VARNAME. Any other value will be used directly. 366m4_define([_LT_DECL], 367[lt_if_append_uniq([lt_decl_varnames], [$2], [, ], 368 [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name], 369 [m4_ifval([$1], [$1], [$2])]) 370 lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3]) 371 m4_ifval([$4], 372 [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])]) 373 lt_dict_add_subkey([lt_decl_dict], [$2], 374 [tagged?], [m4_ifval([$5], [yes], [no])])]) 375]) 376 377 378# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION]) 379# -------------------------------------------------------- 380m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])]) 381 382 383# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...]) 384# ------------------------------------------------ 385m4_define([lt_decl_tag_varnames], 386[_lt_decl_filter([tagged?], [yes], $@)]) 387 388 389# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..]) 390# --------------------------------------------------------- 391m4_define([_lt_decl_filter], 392[m4_case([$#], 393 [0], [m4_fatal([$0: too few arguments: $#])], 394 [1], [m4_fatal([$0: too few arguments: $#: $1])], 395 [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)], 396 [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)], 397 [lt_dict_filter([lt_decl_dict], $@)])[]dnl 398]) 399 400 401# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...]) 402# -------------------------------------------------- 403m4_define([lt_decl_quote_varnames], 404[_lt_decl_filter([value], [1], $@)]) 405 406 407# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...]) 408# --------------------------------------------------- 409m4_define([lt_decl_dquote_varnames], 410[_lt_decl_filter([value], [2], $@)]) 411 412 413# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...]) 414# --------------------------------------------------- 415m4_define([lt_decl_varnames_tagged], 416[m4_assert([$# <= 2])dnl 417_$0(m4_quote(m4_default([$1], [[, ]])), 418 m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]), 419 m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))]) 420m4_define([_lt_decl_varnames_tagged], 421[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])]) 422 423 424# lt_decl_all_varnames([SEPARATOR], [VARNAME1...]) 425# ------------------------------------------------ 426m4_define([lt_decl_all_varnames], 427[_$0(m4_quote(m4_default([$1], [[, ]])), 428 m4_if([$2], [], 429 m4_quote(lt_decl_varnames), 430 m4_quote(m4_shift($@))))[]dnl 431]) 432m4_define([_lt_decl_all_varnames], 433[lt_join($@, lt_decl_varnames_tagged([$1], 434 lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl 435]) 436 437 438# _LT_CONFIG_STATUS_DECLARE([VARNAME]) 439# ------------------------------------ 440# Quote a variable value, and forward it to `config.status' so that its 441# declaration there will have the same value as in `configure'. VARNAME 442# must have a single quote delimited value for this to work. 443m4_define([_LT_CONFIG_STATUS_DECLARE], 444[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`']) 445 446 447# _LT_CONFIG_STATUS_DECLARATIONS 448# ------------------------------ 449# We delimit libtool config variables with single quotes, so when 450# we write them to config.status, we have to be sure to quote all 451# embedded single quotes properly. In configure, this macro expands 452# each variable declared with _LT_DECL (and _LT_TAGDECL) into: 453# 454# <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`' 455m4_defun([_LT_CONFIG_STATUS_DECLARATIONS], 456[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames), 457 [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])]) 458 459 460# _LT_LIBTOOL_TAGS 461# ---------------- 462# Output comment and list of tags supported by the script 463m4_defun([_LT_LIBTOOL_TAGS], 464[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl 465available_tags="_LT_TAGS"dnl 466]) 467 468 469# _LT_LIBTOOL_DECLARE(VARNAME, [TAG]) 470# ----------------------------------- 471# Extract the dictionary values for VARNAME (optionally with TAG) and 472# expand to a commented shell variable setting: 473# 474# # Some comment about what VAR is for. 475# visible_name=$lt_internal_name 476m4_define([_LT_LIBTOOL_DECLARE], 477[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], 478 [description])))[]dnl 479m4_pushdef([_libtool_name], 480 m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl 481m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])), 482 [0], [_libtool_name=[$]$1], 483 [1], [_libtool_name=$lt_[]$1], 484 [2], [_libtool_name=$lt_[]$1], 485 [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl 486m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl 487]) 488 489 490# _LT_LIBTOOL_CONFIG_VARS 491# ----------------------- 492# Produce commented declarations of non-tagged libtool config variables 493# suitable for insertion in the LIBTOOL CONFIG section of the `libtool' 494# script. Tagged libtool config variables (even for the LIBTOOL CONFIG 495# section) are produced by _LT_LIBTOOL_TAG_VARS. 496m4_defun([_LT_LIBTOOL_CONFIG_VARS], 497[m4_foreach([_lt_var], 498 m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)), 499 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])]) 500 501 502# _LT_LIBTOOL_TAG_VARS(TAG) 503# ------------------------- 504m4_define([_LT_LIBTOOL_TAG_VARS], 505[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames), 506 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])]) 507 508 509# _LT_TAGVAR(VARNAME, [TAGNAME]) 510# ------------------------------ 511m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])]) 512 513 514# _LT_CONFIG_COMMANDS 515# ------------------- 516# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of 517# variables for single and double quote escaping we saved from calls 518# to _LT_DECL, we can put quote escaped variables declarations 519# into `config.status', and then the shell code to quote escape them in 520# for loops in `config.status'. Finally, any additional code accumulated 521# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded. 522m4_defun([_LT_CONFIG_COMMANDS], 523[AC_PROVIDE_IFELSE([LT_OUTPUT], 524 dnl If the libtool generation code has been placed in $CONFIG_LT, 525 dnl instead of duplicating it all over again into config.status, 526 dnl then we will have config.status run $CONFIG_LT later, so it 527 dnl needs to know what name is stored there: 528 [AC_CONFIG_COMMANDS([libtool], 529 [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])], 530 dnl If the libtool generation code is destined for config.status, 531 dnl expand the accumulated commands and init code now: 532 [AC_CONFIG_COMMANDS([libtool], 533 [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])]) 534])#_LT_CONFIG_COMMANDS 535 536 537# Initialize. 538m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT], 539[ 540 541# The HP-UX ksh and POSIX shell print the target directory to stdout 542# if CDPATH is set. 543(unset CDPATH) >/dev/null 2>&1 && unset CDPATH 544 545sed_quote_subst='$sed_quote_subst' 546double_quote_subst='$double_quote_subst' 547delay_variable_subst='$delay_variable_subst' 548_LT_CONFIG_STATUS_DECLARATIONS 549LTCC='$LTCC' 550LTCFLAGS='$LTCFLAGS' 551compiler='$compiler_DEFAULT' 552 553# A function that is used when there is no print builtin or printf. 554func_fallback_echo () 555{ 556 eval 'cat <<_LTECHO_EOF 557\$[]1 558_LTECHO_EOF' 559} 560 561# Quote evaled strings. 562for var in lt_decl_all_varnames([[ \ 563]], lt_decl_quote_varnames); do 564 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in 565 *[[\\\\\\\`\\"\\\$]]*) 566 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" 567 ;; 568 *) 569 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" 570 ;; 571 esac 572done 573 574# Double-quote double-evaled strings. 575for var in lt_decl_all_varnames([[ \ 576]], lt_decl_dquote_varnames); do 577 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in 578 *[[\\\\\\\`\\"\\\$]]*) 579 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" 580 ;; 581 *) 582 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" 583 ;; 584 esac 585done 586 587_LT_OUTPUT_LIBTOOL_INIT 588]) 589 590# _LT_GENERATED_FILE_INIT(FILE, [COMMENT]) 591# ------------------------------------ 592# Generate a child script FILE with all initialization necessary to 593# reuse the environment learned by the parent script, and make the 594# file executable. If COMMENT is supplied, it is inserted after the 595# `#!' sequence but before initialization text begins. After this 596# macro, additional text can be appended to FILE to form the body of 597# the child script. The macro ends with non-zero status if the 598# file could not be fully written (such as if the disk is full). 599m4_ifdef([AS_INIT_GENERATED], 600[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])], 601[m4_defun([_LT_GENERATED_FILE_INIT], 602[m4_require([AS_PREPARE])]dnl 603[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl 604[lt_write_fail=0 605cat >$1 <<_ASEOF || lt_write_fail=1 606#! $SHELL 607# Generated by $as_me. 608$2 609SHELL=\${CONFIG_SHELL-$SHELL} 610export SHELL 611_ASEOF 612cat >>$1 <<\_ASEOF || lt_write_fail=1 613AS_SHELL_SANITIZE 614_AS_PREPARE 615exec AS_MESSAGE_FD>&1 616_ASEOF 617test $lt_write_fail = 0 && chmod +x $1[]dnl 618m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT 619 620# LT_OUTPUT 621# --------- 622# This macro allows early generation of the libtool script (before 623# AC_OUTPUT is called), incase it is used in configure for compilation 624# tests. 625AC_DEFUN([LT_OUTPUT], 626[: ${CONFIG_LT=./config.lt} 627AC_MSG_NOTICE([creating $CONFIG_LT]) 628_LT_GENERATED_FILE_INIT(["$CONFIG_LT"], 629[# Run this file to recreate a libtool stub with the current configuration.]) 630 631cat >>"$CONFIG_LT" <<\_LTEOF 632lt_cl_silent=false 633exec AS_MESSAGE_LOG_FD>>config.log 634{ 635 echo 636 AS_BOX([Running $as_me.]) 637} >&AS_MESSAGE_LOG_FD 638 639lt_cl_help="\ 640\`$as_me' creates a local libtool stub from the current configuration, 641for use in further configure time tests before the real libtool is 642generated. 643 644Usage: $[0] [[OPTIONS]] 645 646 -h, --help print this help, then exit 647 -V, --version print version number, then exit 648 -q, --quiet do not print progress messages 649 -d, --debug don't remove temporary files 650 651Report bugs to <bug-libtool@gnu.org>." 652 653lt_cl_version="\ 654m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl 655m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION]) 656configured by $[0], generated by m4_PACKAGE_STRING. 657 658Copyright (C) 2011 Free Software Foundation, Inc. 659This config.lt script is free software; the Free Software Foundation 660gives unlimited permision to copy, distribute and modify it." 661 662while test $[#] != 0 663do 664 case $[1] in 665 --version | --v* | -V ) 666 echo "$lt_cl_version"; exit 0 ;; 667 --help | --h* | -h ) 668 echo "$lt_cl_help"; exit 0 ;; 669 --debug | --d* | -d ) 670 debug=: ;; 671 --quiet | --q* | --silent | --s* | -q ) 672 lt_cl_silent=: ;; 673 674 -*) AC_MSG_ERROR([unrecognized option: $[1] 675Try \`$[0] --help' for more information.]) ;; 676 677 *) AC_MSG_ERROR([unrecognized argument: $[1] 678Try \`$[0] --help' for more information.]) ;; 679 esac 680 shift 681done 682 683if $lt_cl_silent; then 684 exec AS_MESSAGE_FD>/dev/null 685fi 686_LTEOF 687 688cat >>"$CONFIG_LT" <<_LTEOF 689_LT_OUTPUT_LIBTOOL_COMMANDS_INIT 690_LTEOF 691 692cat >>"$CONFIG_LT" <<\_LTEOF 693AC_MSG_NOTICE([creating $ofile]) 694_LT_OUTPUT_LIBTOOL_COMMANDS 695AS_EXIT(0) 696_LTEOF 697chmod +x "$CONFIG_LT" 698 699# configure is writing to config.log, but config.lt does its own redirection, 700# appending to config.log, which fails on DOS, as config.log is still kept 701# open by configure. Here we exec the FD to /dev/null, effectively closing 702# config.log, so it can be properly (re)opened and appended to by config.lt. 703lt_cl_success=: 704test "$silent" = yes && 705 lt_config_lt_args="$lt_config_lt_args --quiet" 706exec AS_MESSAGE_LOG_FD>/dev/null 707$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false 708exec AS_MESSAGE_LOG_FD>>config.log 709$lt_cl_success || AS_EXIT(1) 710])# LT_OUTPUT 711 712 713# _LT_CONFIG(TAG) 714# --------------- 715# If TAG is the built-in tag, create an initial libtool script with a 716# default configuration from the untagged config vars. Otherwise add code 717# to config.status for appending the configuration named by TAG from the 718# matching tagged config vars. 719m4_defun([_LT_CONFIG], 720[m4_require([_LT_FILEUTILS_DEFAULTS])dnl 721_LT_CONFIG_SAVE_COMMANDS([ 722 m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl 723 m4_if(_LT_TAG, [C], [ 724 # See if we are running on zsh, and set the options which allow our 725 # commands through without removal of \ escapes. 726 if test -n "${ZSH_VERSION+set}" ; then 727 setopt NO_GLOB_SUBST 728 fi 729 730 cfgfile="${ofile}T" 731 trap "$RM \"$cfgfile\"; exit 1" 1 2 15 732 $RM "$cfgfile" 733 734 cat <<_LT_EOF >> "$cfgfile" 735#! $SHELL 736 737# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. 738# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION 739# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: 740# NOTE: Changes made to this file will be lost: look at ltmain.sh. 741# 742_LT_COPYING 743_LT_LIBTOOL_TAGS 744 745# ### BEGIN LIBTOOL CONFIG 746_LT_LIBTOOL_CONFIG_VARS 747_LT_LIBTOOL_TAG_VARS 748# ### END LIBTOOL CONFIG 749 750_LT_EOF 751 752 case $host_os in 753 aix3*) 754 cat <<\_LT_EOF >> "$cfgfile" 755# AIX sometimes has problems with the GCC collect2 program. For some 756# reason, if we set the COLLECT_NAMES environment variable, the problems 757# vanish in a puff of smoke. 758if test "X${COLLECT_NAMES+set}" != Xset; then 759 COLLECT_NAMES= 760 export COLLECT_NAMES 761fi 762_LT_EOF 763 ;; 764 esac 765 766 _LT_PROG_LTMAIN 767 768 # We use sed instead of cat because bash on DJGPP gets confused if 769 # if finds mixed CR/LF and LF-only lines. Since sed operates in 770 # text mode, it properly converts lines to CR/LF. This bash problem 771 # is reportedly fixed, but why not run on old versions too? 772 sed '$q' "$ltmain" >> "$cfgfile" \ 773 || (rm -f "$cfgfile"; exit 1) 774 775 _LT_PROG_REPLACE_SHELLFNS 776 777 mv -f "$cfgfile" "$ofile" || 778 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") 779 chmod +x "$ofile" 780], 781[cat <<_LT_EOF >> "$ofile" 782 783dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded 784dnl in a comment (ie after a #). 785# ### BEGIN LIBTOOL TAG CONFIG: $1 786_LT_LIBTOOL_TAG_VARS(_LT_TAG) 787# ### END LIBTOOL TAG CONFIG: $1 788_LT_EOF 789])dnl /m4_if 790], 791[m4_if([$1], [], [ 792 PACKAGE='$PACKAGE' 793 VERSION='$VERSION' 794 TIMESTAMP='$TIMESTAMP' 795 RM='$RM' 796 ofile='$ofile'], []) 797])dnl /_LT_CONFIG_SAVE_COMMANDS 798])# _LT_CONFIG 799 800 801# LT_SUPPORTED_TAG(TAG) 802# --------------------- 803# Trace this macro to discover what tags are supported by the libtool 804# --tag option, using: 805# autoconf --trace 'LT_SUPPORTED_TAG:$1' 806AC_DEFUN([LT_SUPPORTED_TAG], []) 807 808 809# C support is built-in for now 810m4_define([_LT_LANG_C_enabled], []) 811m4_define([_LT_TAGS], []) 812 813 814# LT_LANG(LANG) 815# ------------- 816# Enable libtool support for the given language if not already enabled. 817AC_DEFUN([LT_LANG], 818[AC_BEFORE([$0], [LT_OUTPUT])dnl 819m4_case([$1], 820 [C], [_LT_LANG(C)], 821 [C++], [_LT_LANG(CXX)], 822 [Go], [_LT_LANG(GO)], 823 [Java], [_LT_LANG(GCJ)], 824 [Fortran 77], [_LT_LANG(F77)], 825 [Fortran], [_LT_LANG(FC)], 826 [Windows Resource], [_LT_LANG(RC)], 827 [m4_ifdef([_LT_LANG_]$1[_CONFIG], 828 [_LT_LANG($1)], 829 [m4_fatal([$0: unsupported language: "$1"])])])dnl 830])# LT_LANG 831 832 833# _LT_LANG(LANGNAME) 834# ------------------ 835m4_defun([_LT_LANG], 836[m4_ifdef([_LT_LANG_]$1[_enabled], [], 837 [LT_SUPPORTED_TAG([$1])dnl 838 m4_append([_LT_TAGS], [$1 ])dnl 839 m4_define([_LT_LANG_]$1[_enabled], [])dnl 840 _LT_LANG_$1_CONFIG($1)])dnl 841])# _LT_LANG 842 843 844m4_ifndef([AC_PROG_GO], [ 845# NOTE: This macro has been submitted for inclusion into # 846# GNU Autoconf as AC_PROG_GO. When it is available in # 847# a released version of Autoconf we should remove this # 848# macro and use it instead. # 849m4_defun([AC_PROG_GO], 850[AC_LANG_PUSH(Go)dnl 851AC_ARG_VAR([GOC], [Go compiler command])dnl 852AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl 853_AC_ARG_VAR_LDFLAGS()dnl 854AC_CHECK_TOOL(GOC, gccgo) 855if test -z "$GOC"; then 856 if test -n "$ac_tool_prefix"; then 857 AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo]) 858 fi 859fi 860if test -z "$GOC"; then 861 AC_CHECK_PROG(GOC, gccgo, gccgo, false) 862fi 863])#m4_defun 864])#m4_ifndef 865 866 867# _LT_LANG_DEFAULT_CONFIG 868# ----------------------- 869m4_defun([_LT_LANG_DEFAULT_CONFIG], 870[AC_PROVIDE_IFELSE([AC_PROG_CXX], 871 [LT_LANG(CXX)], 872 [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])]) 873 874AC_PROVIDE_IFELSE([AC_PROG_F77], 875 [LT_LANG(F77)], 876 [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])]) 877 878AC_PROVIDE_IFELSE([AC_PROG_FC], 879 [LT_LANG(FC)], 880 [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])]) 881 882dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal 883dnl pulling things in needlessly. 884AC_PROVIDE_IFELSE([AC_PROG_GCJ], 885 [LT_LANG(GCJ)], 886 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], 887 [LT_LANG(GCJ)], 888 [AC_PROVIDE_IFELSE([LT_PROG_GCJ], 889 [LT_LANG(GCJ)], 890 [m4_ifdef([AC_PROG_GCJ], 891 [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])]) 892 m4_ifdef([A][M_PROG_GCJ], 893 [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])]) 894 m4_ifdef([LT_PROG_GCJ], 895 [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])]) 896 897AC_PROVIDE_IFELSE([AC_PROG_GO], 898 [LT_LANG(GO)], 899 [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])]) 900 901AC_PROVIDE_IFELSE([LT_PROG_RC], 902 [LT_LANG(RC)], 903 [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])]) 904])# _LT_LANG_DEFAULT_CONFIG 905 906# Obsolete macros: 907AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)]) 908AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)]) 909AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)]) 910AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)]) 911AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)]) 912dnl aclocal-1.4 backwards compatibility: 913dnl AC_DEFUN([AC_LIBTOOL_CXX], []) 914dnl AC_DEFUN([AC_LIBTOOL_F77], []) 915dnl AC_DEFUN([AC_LIBTOOL_FC], []) 916dnl AC_DEFUN([AC_LIBTOOL_GCJ], []) 917dnl AC_DEFUN([AC_LIBTOOL_RC], []) 918 919 920# _LT_TAG_COMPILER 921# ---------------- 922m4_defun([_LT_TAG_COMPILER], 923[AC_REQUIRE([AC_PROG_CC])dnl 924 925_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl 926_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl 927_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl 928_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl 929 930# If no C compiler was specified, use CC. 931LTCC=${LTCC-"$CC"} 932 933# If no C compiler flags were specified, use CFLAGS. 934LTCFLAGS=${LTCFLAGS-"$CFLAGS"} 935 936# Allow CC to be a program name with arguments. 937compiler=$CC 938])# _LT_TAG_COMPILER 939 940 941# _LT_COMPILER_BOILERPLATE 942# ------------------------ 943# Check for compiler boilerplate output or warnings with 944# the simple compiler test code. 945m4_defun([_LT_COMPILER_BOILERPLATE], 946[m4_require([_LT_DECL_SED])dnl 947ac_outfile=conftest.$ac_objext 948echo "$lt_simple_compile_test_code" >conftest.$ac_ext 949eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err 950_lt_compiler_boilerplate=`cat conftest.err` 951$RM conftest* 952])# _LT_COMPILER_BOILERPLATE 953 954 955# _LT_LINKER_BOILERPLATE 956# ---------------------- 957# Check for linker boilerplate output or warnings with 958# the simple link test code. 959m4_defun([_LT_LINKER_BOILERPLATE], 960[m4_require([_LT_DECL_SED])dnl 961ac_outfile=conftest.$ac_objext 962echo "$lt_simple_link_test_code" >conftest.$ac_ext 963eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err 964_lt_linker_boilerplate=`cat conftest.err` 965$RM -r conftest* 966])# _LT_LINKER_BOILERPLATE 967 968# _LT_REQUIRED_DARWIN_CHECKS 969# ------------------------- 970m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[ 971 case $host_os in 972 rhapsody* | darwin*) 973 AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:]) 974 AC_CHECK_TOOL([NMEDIT], [nmedit], [:]) 975 AC_CHECK_TOOL([LIPO], [lipo], [:]) 976 AC_CHECK_TOOL([OTOOL], [otool], [:]) 977 AC_CHECK_TOOL([OTOOL64], [otool64], [:]) 978 _LT_DECL([], [DSYMUTIL], [1], 979 [Tool to manipulate archived DWARF debug symbol files on Mac OS X]) 980 _LT_DECL([], [NMEDIT], [1], 981 [Tool to change global to local symbols on Mac OS X]) 982 _LT_DECL([], [LIPO], [1], 983 [Tool to manipulate fat objects and archives on Mac OS X]) 984 _LT_DECL([], [OTOOL], [1], 985 [ldd/readelf like tool for Mach-O binaries on Mac OS X]) 986 _LT_DECL([], [OTOOL64], [1], 987 [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4]) 988 989 AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod], 990 [lt_cv_apple_cc_single_mod=no 991 if test -z "${LT_MULTI_MODULE}"; then 992 # By default we will add the -single_module flag. You can override 993 # by either setting the environment variable LT_MULTI_MODULE 994 # non-empty at configure time, or by adding -multi_module to the 995 # link flags. 996 rm -rf libconftest.dylib* 997 echo "int foo(void){return 1;}" > conftest.c 998 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ 999-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD 1000 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ 1001 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err 1002 _lt_result=$? 1003 # If there is a non-empty error log, and "single_module" 1004 # appears in it, assume the flag caused a linker warning 1005 if test -s conftest.err && $GREP single_module conftest.err; then 1006 cat conftest.err >&AS_MESSAGE_LOG_FD 1007 # Otherwise, if the output was created with a 0 exit code from 1008 # the compiler, it worked. 1009 elif test -f libconftest.dylib && test $_lt_result -eq 0; then 1010 lt_cv_apple_cc_single_mod=yes 1011 else 1012 cat conftest.err >&AS_MESSAGE_LOG_FD 1013 fi 1014 rm -rf libconftest.dylib* 1015 rm -f conftest.* 1016 fi]) 1017 1018 AC_CACHE_CHECK([for -exported_symbols_list linker flag], 1019 [lt_cv_ld_exported_symbols_list], 1020 [lt_cv_ld_exported_symbols_list=no 1021 save_LDFLAGS=$LDFLAGS 1022 echo "_main" > conftest.sym 1023 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" 1024 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], 1025 [lt_cv_ld_exported_symbols_list=yes], 1026 [lt_cv_ld_exported_symbols_list=no]) 1027 LDFLAGS="$save_LDFLAGS" 1028 ]) 1029 1030 AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load], 1031 [lt_cv_ld_force_load=no 1032 cat > conftest.c << _LT_EOF 1033int forced_loaded() { return 2;} 1034_LT_EOF 1035 echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD 1036 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD 1037 echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD 1038 $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD 1039 echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD 1040 $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD 1041 cat > conftest.c << _LT_EOF 1042int main() { return 0;} 1043_LT_EOF 1044 echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD 1045 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err 1046 _lt_result=$? 1047 if test -s conftest.err && $GREP force_load conftest.err; then 1048 cat conftest.err >&AS_MESSAGE_LOG_FD 1049 elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then 1050 lt_cv_ld_force_load=yes 1051 else 1052 cat conftest.err >&AS_MESSAGE_LOG_FD 1053 fi 1054 rm -f conftest.err libconftest.a conftest conftest.c 1055 rm -rf conftest.dSYM 1056 ]) 1057 case $host_os in 1058 rhapsody* | darwin1.[[012]]) 1059 _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; 1060 darwin1.*) 1061 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; 1062 darwin*) # darwin 5.x on 1063 # if running on 10.5 or later, the deployment target defaults 1064 # to the OS version, if on x86, and 10.4, the deployment 1065 # target defaults to 10.4. Don't you love it? 1066 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 1067 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) 1068 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; 1069 10.[[012]]*) 1070 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; 1071 10.*) 1072 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; 1073 esac 1074 ;; 1075 esac 1076 if test "$lt_cv_apple_cc_single_mod" = "yes"; then 1077 _lt_dar_single_mod='$single_module' 1078 fi 1079 if test "$lt_cv_ld_exported_symbols_list" = "yes"; then 1080 _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym' 1081 else 1082 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' 1083 fi 1084 if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then 1085 _lt_dsymutil='~$DSYMUTIL $lib || :' 1086 else 1087 _lt_dsymutil= 1088 fi 1089 ;; 1090 esac 1091]) 1092 1093 1094# _LT_DARWIN_LINKER_FEATURES([TAG]) 1095# --------------------------------- 1096# Checks for linker and compiler features on darwin 1097m4_defun([_LT_DARWIN_LINKER_FEATURES], 1098[ 1099 m4_require([_LT_REQUIRED_DARWIN_CHECKS]) 1100 _LT_TAGVAR(archive_cmds_need_lc, $1)=no 1101 _LT_TAGVAR(hardcode_direct, $1)=no 1102 _LT_TAGVAR(hardcode_automatic, $1)=yes 1103 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported 1104 if test "$lt_cv_ld_force_load" = "yes"; then 1105 _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' 1106 m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes], 1107 [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes]) 1108 else 1109 _LT_TAGVAR(whole_archive_flag_spec, $1)='' 1110 fi 1111 _LT_TAGVAR(link_all_deplibs, $1)=yes 1112 _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined" 1113 case $cc_basename in 1114 ifort*) _lt_dar_can_shared=yes ;; 1115 *) _lt_dar_can_shared=$GCC ;; 1116 esac 1117 if test "$_lt_dar_can_shared" = "yes"; then 1118 output_verbose_link_cmd=func_echo_all 1119 _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" 1120 _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" 1121 _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}" 1122 _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}" 1123 m4_if([$1], [CXX], 1124[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then 1125 _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}" 1126 _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}" 1127 fi 1128],[]) 1129 else 1130 _LT_TAGVAR(ld_shlibs, $1)=no 1131 fi 1132]) 1133 1134# _LT_SYS_MODULE_PATH_AIX([TAGNAME]) 1135# ---------------------------------- 1136# Links a minimal program and checks the executable 1137# for the system default hardcoded library path. In most cases, 1138# this is /usr/lib:/lib, but when the MPI compilers are used 1139# the location of the communication and MPI libs are included too. 1140# If we don't find anything, use the default library path according 1141# to the aix ld manual. 1142# Store the results from the different compilers for each TAGNAME. 1143# Allow to override them for all tags through lt_cv_aix_libpath. 1144m4_defun([_LT_SYS_MODULE_PATH_AIX], 1145[m4_require([_LT_DECL_SED])dnl 1146if test "${lt_cv_aix_libpath+set}" = set; then 1147 aix_libpath=$lt_cv_aix_libpath 1148else 1149 AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])], 1150 [AC_LINK_IFELSE([AC_LANG_PROGRAM],[ 1151 lt_aix_libpath_sed='[ 1152 /Import File Strings/,/^$/ { 1153 /^0/ { 1154 s/^0 *\([^ ]*\) *$/\1/ 1155 p 1156 } 1157 }]' 1158 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` 1159 # Check for a 64-bit object if we didn't find anything. 1160 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then 1161 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` 1162 fi],[]) 1163 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then 1164 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib" 1165 fi 1166 ]) 1167 aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1]) 1168fi 1169])# _LT_SYS_MODULE_PATH_AIX 1170 1171 1172# _LT_SHELL_INIT(ARG) 1173# ------------------- 1174m4_define([_LT_SHELL_INIT], 1175[m4_divert_text([M4SH-INIT], [$1 1176])])# _LT_SHELL_INIT 1177 1178 1179 1180# _LT_PROG_ECHO_BACKSLASH 1181# ----------------------- 1182# Find how we can fake an echo command that does not interpret backslash. 1183# In particular, with Autoconf 2.60 or later we add some code to the start 1184# of the generated configure script which will find a shell with a builtin 1185# printf (which we can use as an echo command). 1186m4_defun([_LT_PROG_ECHO_BACKSLASH], 1187[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' 1188ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO 1189ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO 1190 1191AC_MSG_CHECKING([how to print strings]) 1192# Test print first, because it will be a builtin if present. 1193if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ 1194 test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then 1195 ECHO='print -r --' 1196elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then 1197 ECHO='printf %s\n' 1198else 1199 # Use this function as a fallback that always works. 1200 func_fallback_echo () 1201 { 1202 eval 'cat <<_LTECHO_EOF 1203$[]1 1204_LTECHO_EOF' 1205 } 1206 ECHO='func_fallback_echo' 1207fi 1208 1209# func_echo_all arg... 1210# Invoke $ECHO with all args, space-separated. 1211func_echo_all () 1212{ 1213 $ECHO "$*" 1214} 1215 1216case "$ECHO" in 1217 printf*) AC_MSG_RESULT([printf]) ;; 1218 print*) AC_MSG_RESULT([print -r]) ;; 1219 *) AC_MSG_RESULT([cat]) ;; 1220esac 1221 1222m4_ifdef([_AS_DETECT_SUGGESTED], 1223[_AS_DETECT_SUGGESTED([ 1224 test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || ( 1225 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' 1226 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO 1227 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO 1228 PATH=/empty FPATH=/empty; export PATH FPATH 1229 test "X`printf %s $ECHO`" = "X$ECHO" \ 1230 || test "X`print -r -- $ECHO`" = "X$ECHO" )])]) 1231 1232_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts]) 1233_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes]) 1234])# _LT_PROG_ECHO_BACKSLASH 1235 1236 1237# _LT_WITH_SYSROOT 1238# ---------------- 1239AC_DEFUN([_LT_WITH_SYSROOT], 1240[AC_MSG_CHECKING([for sysroot]) 1241AC_ARG_WITH([sysroot], 1242[ --with-sysroot[=DIR] Search for dependent libraries within DIR 1243 (or the compiler's sysroot if not specified).], 1244[], [with_sysroot=no]) 1245 1246dnl lt_sysroot will always be passed unquoted. We quote it here 1247dnl in case the user passed a directory name. 1248lt_sysroot= 1249case ${with_sysroot} in #( 1250 yes) 1251 if test "$GCC" = yes; then 1252 lt_sysroot=`$CC --print-sysroot 2>/dev/null` 1253 fi 1254 ;; #( 1255 /*) 1256 lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` 1257 ;; #( 1258 no|'') 1259 ;; #( 1260 *) 1261 AC_MSG_RESULT([${with_sysroot}]) 1262 AC_MSG_ERROR([The sysroot must be an absolute path.]) 1263 ;; 1264esac 1265 1266 AC_MSG_RESULT([${lt_sysroot:-no}]) 1267_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl 1268[dependent libraries, and in which our libraries should be installed.])]) 1269 1270# _LT_ENABLE_LOCK 1271# --------------- 1272m4_defun([_LT_ENABLE_LOCK], 1273[AC_ARG_ENABLE([libtool-lock], 1274 [AS_HELP_STRING([--disable-libtool-lock], 1275 [avoid locking (might break parallel builds)])]) 1276test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes 1277 1278# Some flags need to be propagated to the compiler or linker for good 1279# libtool support. 1280case $host in 1281ia64-*-hpux*) 1282 # Find out which ABI we are using. 1283 echo 'int i;' > conftest.$ac_ext 1284 if AC_TRY_EVAL(ac_compile); then 1285 case `/usr/bin/file conftest.$ac_objext` in 1286 *ELF-32*) 1287 HPUX_IA64_MODE="32" 1288 ;; 1289 *ELF-64*) 1290 HPUX_IA64_MODE="64" 1291 ;; 1292 esac 1293 fi 1294 rm -rf conftest* 1295 ;; 1296*-*-irix6*) 1297 # Find out which ABI we are using. 1298 echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext 1299 if AC_TRY_EVAL(ac_compile); then 1300 if test "$lt_cv_prog_gnu_ld" = yes; then 1301 case `/usr/bin/file conftest.$ac_objext` in 1302 *32-bit*) 1303 LD="${LD-ld} -melf32bsmip" 1304 ;; 1305 *N32*) 1306 LD="${LD-ld} -melf32bmipn32" 1307 ;; 1308 *64-bit*) 1309 LD="${LD-ld} -melf64bmip" 1310 ;; 1311 esac 1312 else 1313 case `/usr/bin/file conftest.$ac_objext` in 1314 *32-bit*) 1315 LD="${LD-ld} -32" 1316 ;; 1317 *N32*) 1318 LD="${LD-ld} -n32" 1319 ;; 1320 *64-bit*) 1321 LD="${LD-ld} -64" 1322 ;; 1323 esac 1324 fi 1325 fi 1326 rm -rf conftest* 1327 ;; 1328 1329x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \ 1330s390*-*linux*|s390*-*tpf*|sparc*-*linux*) 1331 # Find out which ABI we are using. 1332 echo 'int i;' > conftest.$ac_ext 1333 if AC_TRY_EVAL(ac_compile); then 1334 case `/usr/bin/file conftest.o` in 1335 *32-bit*) 1336 case $host in 1337 x86_64-*kfreebsd*-gnu) 1338 LD="${LD-ld} -m elf_i386_fbsd" 1339 ;; 1340 x86_64-*linux*) 1341 case `/usr/bin/file conftest.o` in 1342 *x86-64*) 1343 LD="${LD-ld} -m elf32_x86_64" 1344 ;; 1345 *) 1346 LD="${LD-ld} -m elf_i386" 1347 ;; 1348 esac 1349 ;; 1350 ppc64-*linux*|powerpc64-*linux*) 1351 LD="${LD-ld} -m elf32ppclinux" 1352 ;; 1353 s390x-*linux*) 1354 LD="${LD-ld} -m elf_s390" 1355 ;; 1356 sparc64-*linux*) 1357 LD="${LD-ld} -m elf32_sparc" 1358 ;; 1359 esac 1360 ;; 1361 *64-bit*) 1362 case $host in 1363 x86_64-*kfreebsd*-gnu) 1364 LD="${LD-ld} -m elf_x86_64_fbsd" 1365 ;; 1366 x86_64-*linux*) 1367 LD="${LD-ld} -m elf_x86_64" 1368 ;; 1369 ppc*-*linux*|powerpc*-*linux*) 1370 LD="${LD-ld} -m elf64ppc" 1371 ;; 1372 s390*-*linux*|s390*-*tpf*) 1373 LD="${LD-ld} -m elf64_s390" 1374 ;; 1375 sparc*-*linux*) 1376 LD="${LD-ld} -m elf64_sparc" 1377 ;; 1378 esac 1379 ;; 1380 esac 1381 fi 1382 rm -rf conftest* 1383 ;; 1384 1385*-*-sco3.2v5*) 1386 # On SCO OpenServer 5, we need -belf to get full-featured binaries. 1387 SAVE_CFLAGS="$CFLAGS" 1388 CFLAGS="$CFLAGS -belf" 1389 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, 1390 [AC_LANG_PUSH(C) 1391 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) 1392 AC_LANG_POP]) 1393 if test x"$lt_cv_cc_needs_belf" != x"yes"; then 1394 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf 1395 CFLAGS="$SAVE_CFLAGS" 1396 fi 1397 ;; 1398*-*solaris*) 1399 # Find out which ABI we are using. 1400 echo 'int i;' > conftest.$ac_ext 1401 if AC_TRY_EVAL(ac_compile); then 1402 case `/usr/bin/file conftest.o` in 1403 *64-bit*) 1404 case $lt_cv_prog_gnu_ld in 1405 yes*) 1406 case $host in 1407 i?86-*-solaris*) 1408 LD="${LD-ld} -m elf_x86_64" 1409 ;; 1410 sparc*-*-solaris*) 1411 LD="${LD-ld} -m elf64_sparc" 1412 ;; 1413 esac 1414 # GNU ld 2.21 introduced _sol2 emulations. Use them if available. 1415 if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then 1416 LD="${LD-ld}_sol2" 1417 fi 1418 ;; 1419 *) 1420 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then 1421 LD="${LD-ld} -64" 1422 fi 1423 ;; 1424 esac 1425 ;; 1426 esac 1427 fi 1428 rm -rf conftest* 1429 ;; 1430esac 1431 1432need_locks="$enable_libtool_lock" 1433])# _LT_ENABLE_LOCK 1434 1435 1436# _LT_PROG_AR 1437# ----------- 1438m4_defun([_LT_PROG_AR], 1439[AC_CHECK_TOOLS(AR, [ar], false) 1440: ${AR=ar} 1441: ${AR_FLAGS=cru} 1442_LT_DECL([], [AR], [1], [The archiver]) 1443_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive]) 1444 1445AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file], 1446 [lt_cv_ar_at_file=no 1447 AC_COMPILE_IFELSE([AC_LANG_PROGRAM], 1448 [echo conftest.$ac_objext > conftest.lst 1449 lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD' 1450 AC_TRY_EVAL([lt_ar_try]) 1451 if test "$ac_status" -eq 0; then 1452 # Ensure the archiver fails upon bogus file names. 1453 rm -f conftest.$ac_objext libconftest.a 1454 AC_TRY_EVAL([lt_ar_try]) 1455 if test "$ac_status" -ne 0; then 1456 lt_cv_ar_at_file=@ 1457 fi 1458 fi 1459 rm -f conftest.* libconftest.a 1460 ]) 1461 ]) 1462 1463if test "x$lt_cv_ar_at_file" = xno; then 1464 archiver_list_spec= 1465else 1466 archiver_list_spec=$lt_cv_ar_at_file 1467fi 1468_LT_DECL([], [archiver_list_spec], [1], 1469 [How to feed a file listing to the archiver]) 1470])# _LT_PROG_AR 1471 1472 1473# _LT_CMD_OLD_ARCHIVE 1474# ------------------- 1475m4_defun([_LT_CMD_OLD_ARCHIVE], 1476[_LT_PROG_AR 1477 1478AC_CHECK_TOOL(STRIP, strip, :) 1479test -z "$STRIP" && STRIP=: 1480_LT_DECL([], [STRIP], [1], [A symbol stripping program]) 1481 1482AC_CHECK_TOOL(RANLIB, ranlib, :) 1483test -z "$RANLIB" && RANLIB=: 1484_LT_DECL([], [RANLIB], [1], 1485 [Commands used to install an old-style archive]) 1486 1487# Determine commands to create old-style static archives. 1488old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' 1489old_postinstall_cmds='chmod 644 $oldlib' 1490old_postuninstall_cmds= 1491 1492if test -n "$RANLIB"; then 1493 case $host_os in 1494 openbsd*) 1495 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" 1496 ;; 1497 *) 1498 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" 1499 ;; 1500 esac 1501 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" 1502fi 1503 1504case $host_os in 1505 darwin*) 1506 lock_old_archive_extraction=yes ;; 1507 *) 1508 lock_old_archive_extraction=no ;; 1509esac 1510_LT_DECL([], [old_postinstall_cmds], [2]) 1511_LT_DECL([], [old_postuninstall_cmds], [2]) 1512_LT_TAGDECL([], [old_archive_cmds], [2], 1513 [Commands used to build an old-style archive]) 1514_LT_DECL([], [lock_old_archive_extraction], [0], 1515 [Whether to use a lock for old archive extraction]) 1516])# _LT_CMD_OLD_ARCHIVE 1517 1518 1519# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, 1520# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) 1521# ---------------------------------------------------------------- 1522# Check whether the given compiler option works 1523AC_DEFUN([_LT_COMPILER_OPTION], 1524[m4_require([_LT_FILEUTILS_DEFAULTS])dnl 1525m4_require([_LT_DECL_SED])dnl 1526AC_CACHE_CHECK([$1], [$2], 1527 [$2=no 1528 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) 1529 echo "$lt_simple_compile_test_code" > conftest.$ac_ext 1530 lt_compiler_flag="$3" 1531 # Insert the option either (1) after the last *FLAGS variable, or 1532 # (2) before a word containing "conftest.", or (3) at the end. 1533 # Note that $ac_compile itself does not contain backslashes and begins 1534 # with a dollar sign (not a hyphen), so the echo should work correctly. 1535 # The option is referenced via a variable to avoid confusing sed. 1536 lt_compile=`echo "$ac_compile" | $SED \ 1537 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ 1538 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ 1539 -e 's:$: $lt_compiler_flag:'` 1540 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) 1541 (eval "$lt_compile" 2>conftest.err) 1542 ac_status=$? 1543 cat conftest.err >&AS_MESSAGE_LOG_FD 1544 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD 1545 if (exit $ac_status) && test -s "$ac_outfile"; then 1546 # The compiler can only warn and ignore the option if not recognized 1547 # So say no if there are warnings other than the usual output. 1548 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp 1549 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 1550 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then 1551 $2=yes 1552 fi 1553 fi 1554 $RM conftest* 1555]) 1556 1557if test x"[$]$2" = xyes; then 1558 m4_if([$5], , :, [$5]) 1559else 1560 m4_if([$6], , :, [$6]) 1561fi 1562])# _LT_COMPILER_OPTION 1563 1564# Old name: 1565AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION]) 1566dnl aclocal-1.4 backwards compatibility: 1567dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], []) 1568 1569 1570# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, 1571# [ACTION-SUCCESS], [ACTION-FAILURE]) 1572# ---------------------------------------------------- 1573# Check whether the given linker option works 1574AC_DEFUN([_LT_LINKER_OPTION], 1575[m4_require([_LT_FILEUTILS_DEFAULTS])dnl 1576m4_require([_LT_DECL_SED])dnl 1577AC_CACHE_CHECK([$1], [$2], 1578 [$2=no 1579 save_LDFLAGS="$LDFLAGS" 1580 LDFLAGS="$LDFLAGS $3" 1581 echo "$lt_simple_link_test_code" > conftest.$ac_ext 1582 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then 1583 # The linker can only warn and ignore the option if not recognized 1584 # So say no if there are warnings 1585 if test -s conftest.err; then 1586 # Append any errors to the config.log. 1587 cat conftest.err 1>&AS_MESSAGE_LOG_FD 1588 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp 1589 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 1590 if diff conftest.exp conftest.er2 >/dev/null; then 1591 $2=yes 1592 fi 1593 else 1594 $2=yes 1595 fi 1596 fi 1597 $RM -r conftest* 1598 LDFLAGS="$save_LDFLAGS" 1599]) 1600 1601if test x"[$]$2" = xyes; then 1602 m4_if([$4], , :, [$4]) 1603else 1604 m4_if([$5], , :, [$5]) 1605fi 1606])# _LT_LINKER_OPTION 1607 1608# Old name: 1609AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION]) 1610dnl aclocal-1.4 backwards compatibility: 1611dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], []) 1612 1613 1614# LT_CMD_MAX_LEN 1615#--------------- 1616AC_DEFUN([LT_CMD_MAX_LEN], 1617[AC_REQUIRE([AC_CANONICAL_HOST])dnl 1618# find the maximum length of command line arguments 1619AC_MSG_CHECKING([the maximum length of command line arguments]) 1620AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl 1621 i=0 1622 teststring="ABCD" 1623 1624 case $build_os in 1625 msdosdjgpp*) 1626 # On DJGPP, this test can blow up pretty badly due to problems in libc 1627 # (any single argument exceeding 2000 bytes causes a buffer overrun 1628 # during glob expansion). Even if it were fixed, the result of this 1629 # check would be larger than it should be. 1630 lt_cv_sys_max_cmd_len=12288; # 12K is about right 1631 ;; 1632 1633 gnu*) 1634 # Under GNU Hurd, this test is not required because there is 1635 # no limit to the length of command line arguments. 1636 # Libtool will interpret -1 as no limit whatsoever 1637 lt_cv_sys_max_cmd_len=-1; 1638 ;; 1639 1640 cygwin* | mingw* | cegcc*) 1641 # On Win9x/ME, this test blows up -- it succeeds, but takes 1642 # about 5 minutes as the teststring grows exponentially. 1643 # Worse, since 9x/ME are not pre-emptively multitasking, 1644 # you end up with a "frozen" computer, even though with patience 1645 # the test eventually succeeds (with a max line length of 256k). 1646 # Instead, let's just punt: use the minimum linelength reported by 1647 # all of the supported platforms: 8192 (on NT/2K/XP). 1648 lt_cv_sys_max_cmd_len=8192; 1649 ;; 1650 1651 mint*) 1652 # On MiNT this can take a long time and run out of memory. 1653 lt_cv_sys_max_cmd_len=8192; 1654 ;; 1655 1656 amigaos*) 1657 # On AmigaOS with pdksh, this test takes hours, literally. 1658 # So we just punt and use a minimum line length of 8192. 1659 lt_cv_sys_max_cmd_len=8192; 1660 ;; 1661 1662 netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) 1663 # This has been around since 386BSD, at least. Likely further. 1664 if test -x /sbin/sysctl; then 1665 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` 1666 elif test -x /usr/sbin/sysctl; then 1667 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` 1668 else 1669 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs 1670 fi 1671 # And add a safety zone 1672 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` 1673 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` 1674 ;; 1675 1676 interix*) 1677 # We know the value 262144 and hardcode it with a safety zone (like BSD) 1678 lt_cv_sys_max_cmd_len=196608 1679 ;; 1680 1681 os2*) 1682 # The test takes a long time on OS/2. 1683 lt_cv_sys_max_cmd_len=8192 1684 ;; 1685 1686 osf*) 1687 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure 1688 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not 1689 # nice to cause kernel panics so lets avoid the loop below. 1690 # First set a reasonable default. 1691 lt_cv_sys_max_cmd_len=16384 1692 # 1693 if test -x /sbin/sysconfig; then 1694 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in 1695 *1*) lt_cv_sys_max_cmd_len=-1 ;; 1696 esac 1697 fi 1698 ;; 1699 sco3.2v5*) 1700 lt_cv_sys_max_cmd_len=102400 1701 ;; 1702 sysv5* | sco5v6* | sysv4.2uw2*) 1703 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` 1704 if test -n "$kargmax"; then 1705 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'` 1706 else 1707 lt_cv_sys_max_cmd_len=32768 1708 fi 1709 ;; 1710 *) 1711 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` 1712 if test -n "$lt_cv_sys_max_cmd_len" && \ 1713 test undefined != "$lt_cv_sys_max_cmd_len"; then 1714 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` 1715 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` 1716 else 1717 # Make teststring a little bigger before we do anything with it. 1718 # a 1K string should be a reasonable start. 1719 for i in 1 2 3 4 5 6 7 8 ; do 1720 teststring=$teststring$teststring 1721 done 1722 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} 1723 # If test is not a shell built-in, we'll probably end up computing a 1724 # maximum length that is only half of the actual maximum length, but 1725 # we can't tell. 1726 while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \ 1727 = "X$teststring$teststring"; } >/dev/null 2>&1 && 1728 test $i != 17 # 1/2 MB should be enough 1729 do 1730 i=`expr $i + 1` 1731 teststring=$teststring$teststring 1732 done 1733 # Only check the string length outside the loop. 1734 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` 1735 teststring= 1736 # Add a significant safety factor because C++ compilers can tack on 1737 # massive amounts of additional arguments before passing them to the 1738 # linker. It appears as though 1/2 is a usable value. 1739 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` 1740 fi 1741 ;; 1742 esac 1743]) 1744if test -n $lt_cv_sys_max_cmd_len ; then 1745 AC_MSG_RESULT($lt_cv_sys_max_cmd_len) 1746else 1747 AC_MSG_RESULT(none) 1748fi 1749max_cmd_len=$lt_cv_sys_max_cmd_len 1750_LT_DECL([], [max_cmd_len], [0], 1751 [What is the maximum length of a command?]) 1752])# LT_CMD_MAX_LEN 1753 1754# Old name: 1755AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN]) 1756dnl aclocal-1.4 backwards compatibility: 1757dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], []) 1758 1759 1760# _LT_HEADER_DLFCN 1761# ---------------- 1762m4_defun([_LT_HEADER_DLFCN], 1763[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl 1764])# _LT_HEADER_DLFCN 1765 1766 1767# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, 1768# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) 1769# ---------------------------------------------------------------- 1770m4_defun([_LT_TRY_DLOPEN_SELF], 1771[m4_require([_LT_HEADER_DLFCN])dnl 1772if test "$cross_compiling" = yes; then : 1773 [$4] 1774else 1775 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 1776 lt_status=$lt_dlunknown 1777 cat > conftest.$ac_ext <<_LT_EOF 1778[#line $LINENO "configure" 1779#include "confdefs.h" 1780 1781#if HAVE_DLFCN_H 1782#include <dlfcn.h> 1783#endif 1784 1785#include <stdio.h> 1786 1787#ifdef RTLD_GLOBAL 1788# define LT_DLGLOBAL RTLD_GLOBAL 1789#else 1790# ifdef DL_GLOBAL 1791# define LT_DLGLOBAL DL_GLOBAL 1792# else 1793# define LT_DLGLOBAL 0 1794# endif 1795#endif 1796 1797/* We may have to define LT_DLLAZY_OR_NOW in the command line if we 1798 find out it does not work in some platform. */ 1799#ifndef LT_DLLAZY_OR_NOW 1800# ifdef RTLD_LAZY 1801# define LT_DLLAZY_OR_NOW RTLD_LAZY 1802# else 1803# ifdef DL_LAZY 1804# define LT_DLLAZY_OR_NOW DL_LAZY 1805# else 1806# ifdef RTLD_NOW 1807# define LT_DLLAZY_OR_NOW RTLD_NOW 1808# else 1809# ifdef DL_NOW 1810# define LT_DLLAZY_OR_NOW DL_NOW 1811# else 1812# define LT_DLLAZY_OR_NOW 0 1813# endif 1814# endif 1815# endif 1816# endif 1817#endif 1818 1819/* When -fvisbility=hidden is used, assume the code has been annotated 1820 correspondingly for the symbols needed. */ 1821#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) 1822int fnord () __attribute__((visibility("default"))); 1823#endif 1824 1825int fnord () { return 42; } 1826int main () 1827{ 1828 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); 1829 int status = $lt_dlunknown; 1830 1831 if (self) 1832 { 1833 if (dlsym (self,"fnord")) status = $lt_dlno_uscore; 1834 else 1835 { 1836 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; 1837 else puts (dlerror ()); 1838 } 1839 /* dlclose (self); */ 1840 } 1841 else 1842 puts (dlerror ()); 1843 1844 return status; 1845}] 1846_LT_EOF 1847 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then 1848 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null 1849 lt_status=$? 1850 case x$lt_status in 1851 x$lt_dlno_uscore) $1 ;; 1852 x$lt_dlneed_uscore) $2 ;; 1853 x$lt_dlunknown|x*) $3 ;; 1854 esac 1855 else : 1856 # compilation failed 1857 $3 1858 fi 1859fi 1860rm -fr conftest* 1861])# _LT_TRY_DLOPEN_SELF 1862 1863 1864# LT_SYS_DLOPEN_SELF 1865# ------------------ 1866AC_DEFUN([LT_SYS_DLOPEN_SELF], 1867[m4_require([_LT_HEADER_DLFCN])dnl 1868if test "x$enable_dlopen" != xyes; then 1869 enable_dlopen=unknown 1870 enable_dlopen_self=unknown 1871 enable_dlopen_self_static=unknown 1872else 1873 lt_cv_dlopen=no 1874 lt_cv_dlopen_libs= 1875 1876 case $host_os in 1877 beos*) 1878 lt_cv_dlopen="load_add_on" 1879 lt_cv_dlopen_libs= 1880 lt_cv_dlopen_self=yes 1881 ;; 1882 1883 mingw* | pw32* | cegcc*) 1884 lt_cv_dlopen="LoadLibrary" 1885 lt_cv_dlopen_libs= 1886 ;; 1887 1888 cygwin*) 1889 lt_cv_dlopen="dlopen" 1890 lt_cv_dlopen_libs= 1891 ;; 1892 1893 darwin*) 1894 # if libdl is installed we need to link against it 1895 AC_CHECK_LIB([dl], [dlopen], 1896 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[ 1897 lt_cv_dlopen="dyld" 1898 lt_cv_dlopen_libs= 1899 lt_cv_dlopen_self=yes 1900 ]) 1901 ;; 1902 1903 *) 1904 AC_CHECK_FUNC([shl_load], 1905 [lt_cv_dlopen="shl_load"], 1906 [AC_CHECK_LIB([dld], [shl_load], 1907 [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"], 1908 [AC_CHECK_FUNC([dlopen], 1909 [lt_cv_dlopen="dlopen"], 1910 [AC_CHECK_LIB([dl], [dlopen], 1911 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], 1912 [AC_CHECK_LIB([svld], [dlopen], 1913 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], 1914 [AC_CHECK_LIB([dld], [dld_link], 1915 [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"]) 1916 ]) 1917 ]) 1918 ]) 1919 ]) 1920 ]) 1921 ;; 1922 esac 1923 1924 if test "x$lt_cv_dlopen" != xno; then 1925 enable_dlopen=yes 1926 else 1927 enable_dlopen=no 1928 fi 1929 1930 case $lt_cv_dlopen in 1931 dlopen) 1932 save_CPPFLAGS="$CPPFLAGS" 1933 test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" 1934 1935 save_LDFLAGS="$LDFLAGS" 1936 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" 1937 1938 save_LIBS="$LIBS" 1939 LIBS="$lt_cv_dlopen_libs $LIBS" 1940 1941 AC_CACHE_CHECK([whether a program can dlopen itself], 1942 lt_cv_dlopen_self, [dnl 1943 _LT_TRY_DLOPEN_SELF( 1944 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, 1945 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) 1946 ]) 1947 1948 if test "x$lt_cv_dlopen_self" = xyes; then 1949 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" 1950 AC_CACHE_CHECK([whether a statically linked program can dlopen itself], 1951 lt_cv_dlopen_self_static, [dnl 1952 _LT_TRY_DLOPEN_SELF( 1953 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, 1954 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) 1955 ]) 1956 fi 1957 1958 CPPFLAGS="$save_CPPFLAGS" 1959 LDFLAGS="$save_LDFLAGS" 1960 LIBS="$save_LIBS" 1961 ;; 1962 esac 1963 1964 case $lt_cv_dlopen_self in 1965 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; 1966 *) enable_dlopen_self=unknown ;; 1967 esac 1968 1969 case $lt_cv_dlopen_self_static in 1970 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; 1971 *) enable_dlopen_self_static=unknown ;; 1972 esac 1973fi 1974_LT_DECL([dlopen_support], [enable_dlopen], [0], 1975 [Whether dlopen is supported]) 1976_LT_DECL([dlopen_self], [enable_dlopen_self], [0], 1977 [Whether dlopen of programs is supported]) 1978_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0], 1979 [Whether dlopen of statically linked programs is supported]) 1980])# LT_SYS_DLOPEN_SELF 1981 1982# Old name: 1983AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF]) 1984dnl aclocal-1.4 backwards compatibility: 1985dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], []) 1986 1987 1988# _LT_COMPILER_C_O([TAGNAME]) 1989# --------------------------- 1990# Check to see if options -c and -o are simultaneously supported by compiler. 1991# This macro does not hard code the compiler like AC_PROG_CC_C_O. 1992m4_defun([_LT_COMPILER_C_O], 1993[m4_require([_LT_DECL_SED])dnl 1994m4_require([_LT_FILEUTILS_DEFAULTS])dnl 1995m4_require([_LT_TAG_COMPILER])dnl 1996AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], 1997 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)], 1998 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no 1999 $RM -r conftest 2>/dev/null 2000 mkdir conftest 2001 cd conftest 2002 mkdir out 2003 echo "$lt_simple_compile_test_code" > conftest.$ac_ext 2004 2005 lt_compiler_flag="-o out/conftest2.$ac_objext" 2006 # Insert the option either (1) after the last *FLAGS variable, or 2007 # (2) before a word containing "conftest.", or (3) at the end. 2008 # Note that $ac_compile itself does not contain backslashes and begins 2009 # with a dollar sign (not a hyphen), so the echo should work correctly. 2010 lt_compile=`echo "$ac_compile" | $SED \ 2011 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ 2012 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ 2013 -e 's:$: $lt_compiler_flag:'` 2014 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) 2015 (eval "$lt_compile" 2>out/conftest.err) 2016 ac_status=$? 2017 cat out/conftest.err >&AS_MESSAGE_LOG_FD 2018 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD 2019 if (exit $ac_status) && test -s out/conftest2.$ac_objext 2020 then 2021 # The compiler can only warn and ignore the option if not recognized 2022 # So say no if there are warnings 2023 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp 2024 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 2025 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then 2026 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes 2027 fi 2028 fi 2029 chmod u+w . 2>&AS_MESSAGE_LOG_FD 2030 $RM conftest* 2031 # SGI C++ compiler will create directory out/ii_files/ for 2032 # template instantiation 2033 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files 2034 $RM out/* && rmdir out 2035 cd .. 2036 $RM -r conftest 2037 $RM conftest* 2038]) 2039_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1], 2040 [Does compiler simultaneously support -c and -o options?]) 2041])# _LT_COMPILER_C_O 2042 2043 2044# _LT_COMPILER_FILE_LOCKS([TAGNAME]) 2045# ---------------------------------- 2046# Check to see if we can do hard links to lock some files if needed 2047m4_defun([_LT_COMPILER_FILE_LOCKS], 2048[m4_require([_LT_ENABLE_LOCK])dnl 2049m4_require([_LT_FILEUTILS_DEFAULTS])dnl 2050_LT_COMPILER_C_O([$1]) 2051 2052hard_links="nottested" 2053if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then 2054 # do not overwrite the value of need_locks provided by the user 2055 AC_MSG_CHECKING([if we can lock with hard links]) 2056 hard_links=yes 2057 $RM conftest* 2058 ln conftest.a conftest.b 2>/dev/null && hard_links=no 2059 touch conftest.a 2060 ln conftest.a conftest.b 2>&5 || hard_links=no 2061 ln conftest.a conftest.b 2>/dev/null && hard_links=no 2062 AC_MSG_RESULT([$hard_links]) 2063 if test "$hard_links" = no; then 2064 AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe]) 2065 need_locks=warn 2066 fi 2067else 2068 need_locks=no 2069fi 2070_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?]) 2071])# _LT_COMPILER_FILE_LOCKS 2072 2073 2074# _LT_CHECK_OBJDIR 2075# ---------------- 2076m4_defun([_LT_CHECK_OBJDIR], 2077[AC_CACHE_CHECK([for objdir], [lt_cv_objdir], 2078[rm -f .libs 2>/dev/null 2079mkdir .libs 2>/dev/null 2080if test -d .libs; then 2081 lt_cv_objdir=.libs 2082else 2083 # MS-DOS does not allow filenames that begin with a dot. 2084 lt_cv_objdir=_libs 2085fi 2086rmdir .libs 2>/dev/null]) 2087objdir=$lt_cv_objdir 2088_LT_DECL([], [objdir], [0], 2089 [The name of the directory that contains temporary libtool files])dnl 2090m4_pattern_allow([LT_OBJDIR])dnl 2091AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/", 2092 [Define to the sub-directory in which libtool stores uninstalled libraries.]) 2093])# _LT_CHECK_OBJDIR 2094 2095 2096# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME]) 2097# -------------------------------------- 2098# Check hardcoding attributes. 2099m4_defun([_LT_LINKER_HARDCODE_LIBPATH], 2100[AC_MSG_CHECKING([how to hardcode library paths into programs]) 2101_LT_TAGVAR(hardcode_action, $1)= 2102if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" || 2103 test -n "$_LT_TAGVAR(runpath_var, $1)" || 2104 test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then 2105 2106 # We can hardcode non-existent directories. 2107 if test "$_LT_TAGVAR(hardcode_direct, $1)" != no && 2108 # If the only mechanism to avoid hardcoding is shlibpath_var, we 2109 # have to relink, otherwise we might link with an installed library 2110 # when we should be linking with a yet-to-be-installed one 2111 ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no && 2112 test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then 2113 # Linking always hardcodes the temporary library directory. 2114 _LT_TAGVAR(hardcode_action, $1)=relink 2115 else 2116 # We can link without hardcoding, and we can hardcode nonexisting dirs. 2117 _LT_TAGVAR(hardcode_action, $1)=immediate 2118 fi 2119else 2120 # We cannot hardcode anything, or else we can only hardcode existing 2121 # directories. 2122 _LT_TAGVAR(hardcode_action, $1)=unsupported 2123fi 2124AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)]) 2125 2126if test "$_LT_TAGVAR(hardcode_action, $1)" = relink || 2127 test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then 2128 # Fast installation is not supported 2129 enable_fast_install=no 2130elif test "$shlibpath_overrides_runpath" = yes || 2131 test "$enable_shared" = no; then 2132 # Fast installation is not necessary 2133 enable_fast_install=needless 2134fi 2135_LT_TAGDECL([], [hardcode_action], [0], 2136 [How to hardcode a shared library path into an executable]) 2137])# _LT_LINKER_HARDCODE_LIBPATH 2138 2139 2140# _LT_CMD_STRIPLIB 2141# ---------------- 2142m4_defun([_LT_CMD_STRIPLIB], 2143[m4_require([_LT_DECL_EGREP]) 2144striplib= 2145old_striplib= 2146AC_MSG_CHECKING([whether stripping libraries is possible]) 2147if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then 2148 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" 2149 test -z "$striplib" && striplib="$STRIP --strip-unneeded" 2150 AC_MSG_RESULT([yes]) 2151else 2152# FIXME - insert some real tests, host_os isn't really good enough 2153 case $host_os in 2154 darwin*) 2155 if test -n "$STRIP" ; then 2156 striplib="$STRIP -x" 2157 old_striplib="$STRIP -S" 2158 AC_MSG_RESULT([yes]) 2159 else 2160 AC_MSG_RESULT([no]) 2161 fi 2162 ;; 2163 *) 2164 AC_MSG_RESULT([no]) 2165 ;; 2166 esac 2167fi 2168_LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) 2169_LT_DECL([], [striplib], [1]) 2170])# _LT_CMD_STRIPLIB 2171 2172 2173# _LT_SYS_DYNAMIC_LINKER([TAG]) 2174# ----------------------------- 2175# PORTME Fill in your ld.so characteristics 2176m4_defun([_LT_SYS_DYNAMIC_LINKER], 2177[AC_REQUIRE([AC_CANONICAL_HOST])dnl 2178m4_require([_LT_DECL_EGREP])dnl 2179m4_require([_LT_FILEUTILS_DEFAULTS])dnl 2180m4_require([_LT_DECL_OBJDUMP])dnl 2181m4_require([_LT_DECL_SED])dnl 2182m4_require([_LT_CHECK_SHELL_FEATURES])dnl 2183AC_MSG_CHECKING([dynamic linker characteristics]) 2184m4_if([$1], 2185 [], [ 2186if test "$GCC" = yes; then 2187 case $host_os in 2188 darwin*) lt_awk_arg="/^libraries:/,/LR/" ;; 2189 *) lt_awk_arg="/^libraries:/" ;; 2190 esac 2191 case $host_os in 2192 mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;; 2193 *) lt_sed_strip_eq="s,=/,/,g" ;; 2194 esac 2195 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` 2196 case $lt_search_path_spec in 2197 *\;*) 2198 # if the path contains ";" then we assume it to be the separator 2199 # otherwise default to the standard path separator (i.e. ":") - it is 2200 # assumed that no part of a normal pathname contains ";" but that should 2201 # okay in the real world where ";" in dirpaths is itself problematic. 2202 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'` 2203 ;; 2204 *) 2205 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` 2206 ;; 2207 esac 2208 # Ok, now we have the path, separated by spaces, we can step through it 2209 # and add multilib dir if necessary. 2210 lt_tmp_lt_search_path_spec= 2211 lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` 2212 for lt_sys_path in $lt_search_path_spec; do 2213 if test -d "$lt_sys_path/$lt_multi_os_dir"; then 2214 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir" 2215 else 2216 test -d "$lt_sys_path" && \ 2217 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" 2218 fi 2219 done 2220 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' 2221BEGIN {RS=" "; FS="/|\n";} { 2222 lt_foo=""; 2223 lt_count=0; 2224 for (lt_i = NF; lt_i > 0; lt_i--) { 2225 if ($lt_i != "" && $lt_i != ".") { 2226 if ($lt_i == "..") { 2227 lt_count++; 2228 } else { 2229 if (lt_count == 0) { 2230 lt_foo="/" $lt_i lt_foo; 2231 } else { 2232 lt_count--; 2233 } 2234 } 2235 } 2236 } 2237 if (lt_foo != "") { lt_freq[[lt_foo]]++; } 2238 if (lt_freq[[lt_foo]] == 1) { print lt_foo; } 2239}'` 2240 # AWK program above erroneously prepends '/' to C:/dos/paths 2241 # for these hosts. 2242 case $host_os in 2243 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ 2244 $SED 's,/\([[A-Za-z]]:\),\1,g'` ;; 2245 esac 2246 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` 2247else 2248 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" 2249fi]) 2250library_names_spec= 2251libname_spec='lib$name' 2252soname_spec= 2253shrext_cmds=".so" 2254postinstall_cmds= 2255postuninstall_cmds= 2256finish_cmds= 2257finish_eval= 2258shlibpath_var= 2259shlibpath_overrides_runpath=unknown 2260version_type=none 2261dynamic_linker="$host_os ld.so" 2262sys_lib_dlsearch_path_spec="/lib /usr/lib" 2263need_lib_prefix=unknown 2264hardcode_into_libs=no 2265 2266# when you set need_version to no, make sure it does not cause -set_version 2267# flags to be left without arguments 2268need_version=unknown 2269 2270case $host_os in 2271aix3*) 2272 version_type=linux # correct to gnu/linux during the next big refactor 2273 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' 2274 shlibpath_var=LIBPATH 2275 2276 # AIX 3 has no versioning support, so we append a major version to the name. 2277 soname_spec='${libname}${release}${shared_ext}$major' 2278 ;; 2279 2280aix[[4-9]]*) 2281 version_type=linux # correct to gnu/linux during the next big refactor 2282 need_lib_prefix=no 2283 need_version=no 2284 hardcode_into_libs=yes 2285 if test "$host_cpu" = ia64; then 2286 # AIX 5 supports IA64 2287 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' 2288 shlibpath_var=LD_LIBRARY_PATH 2289 else 2290 # With GCC up to 2.95.x, collect2 would create an import file 2291 # for dependence libraries. The import file would start with 2292 # the line `#! .'. This would cause the generated library to 2293 # depend on `.', always an invalid library. This was fixed in 2294 # development snapshots of GCC prior to 3.0. 2295 case $host_os in 2296 aix4 | aix4.[[01]] | aix4.[[01]].*) 2297 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' 2298 echo ' yes ' 2299 echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then 2300 : 2301 else 2302 can_build_shared=no 2303 fi 2304 ;; 2305 esac 2306 # AIX (on Power*) has no versioning support, so currently we can not hardcode correct 2307 # soname into executable. Probably we can add versioning support to 2308 # collect2, so additional links can be useful in future. 2309 if test "$aix_use_runtimelinking" = yes; then 2310 # If using run time linking (on AIX 4.2 or later) use lib<name>.so 2311 # instead of lib<name>.a to let people know that these are not 2312 # typical AIX shared libraries. 2313 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' 2314 else 2315 # We preserve .a as extension for shared libraries through AIX4.2 2316 # and later when we are not doing run time linking. 2317 library_names_spec='${libname}${release}.a $libname.a' 2318 soname_spec='${libname}${release}${shared_ext}$major' 2319 fi 2320 shlibpath_var=LIBPATH 2321 fi 2322 ;; 2323 2324amigaos*) 2325 case $host_cpu in 2326 powerpc) 2327 # Since July 2007 AmigaOS4 officially supports .so libraries. 2328 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. 2329 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' 2330 ;; 2331 m68k) 2332 library_names_spec='$libname.ixlibrary $libname.a' 2333 # Create ${libname}_ixlibrary.a entries in /sys/libs. 2334 finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' 2335 ;; 2336 esac 2337 ;; 2338 2339beos*) 2340 library_names_spec='${libname}${shared_ext}' 2341 dynamic_linker="$host_os ld.so" 2342 shlibpath_var=LIBRARY_PATH 2343 ;; 2344 2345bsdi[[45]]*) 2346 version_type=linux # correct to gnu/linux during the next big refactor 2347 need_version=no 2348 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' 2349 soname_spec='${libname}${release}${shared_ext}$major' 2350 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' 2351 shlibpath_var=LD_LIBRARY_PATH 2352 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" 2353 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" 2354 # the default ld.so.conf also contains /usr/contrib/lib and 2355 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow 2356 # libtool to hard-code these into programs 2357 ;; 2358 2359cygwin* | mingw* | pw32* | cegcc*) 2360 version_type=windows 2361 shrext_cmds=".dll" 2362 need_version=no 2363 need_lib_prefix=no 2364 2365 case $GCC,$cc_basename in 2366 yes,*) 2367 # gcc 2368 library_names_spec='$libname.dll.a' 2369 # DLL is installed to $(libdir)/../bin by postinstall_cmds 2370 postinstall_cmds='base_file=`basename \${file}`~ 2371 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ 2372 dldir=$destdir/`dirname \$dlpath`~ 2373 test -d \$dldir || mkdir -p \$dldir~ 2374 $install_prog $dir/$dlname \$dldir/$dlname~ 2375 chmod a+x \$dldir/$dlname~ 2376 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then 2377 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; 2378 fi' 2379 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ 2380 dlpath=$dir/\$dldll~ 2381 $RM \$dlpath' 2382 shlibpath_overrides_runpath=yes 2383 2384 case $host_os in 2385 cygwin*) 2386 # Cygwin DLLs use 'cyg' prefix rather than 'lib' 2387 soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' 2388m4_if([$1], [],[ 2389 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) 2390 ;; 2391 mingw* | cegcc*) 2392 # MinGW DLLs use traditional 'lib' prefix 2393 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' 2394 ;; 2395 pw32*) 2396 # pw32 DLLs use 'pw' prefix rather than 'lib' 2397 library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' 2398 ;; 2399 esac 2400 dynamic_linker='Win32 ld.exe' 2401 ;; 2402 2403 *,cl*) 2404 # Native MSVC 2405 libname_spec='$name' 2406 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' 2407 library_names_spec='${libname}.dll.lib' 2408 2409 case $build_os in 2410 mingw*) 2411 sys_lib_search_path_spec= 2412 lt_save_ifs=$IFS 2413 IFS=';' 2414 for lt_path in $LIB 2415 do 2416 IFS=$lt_save_ifs 2417 # Let DOS variable expansion print the short 8.3 style file name. 2418 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` 2419 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" 2420 done 2421 IFS=$lt_save_ifs 2422 # Convert to MSYS style. 2423 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` 2424 ;; 2425 cygwin*) 2426 # Convert to unix form, then to dos form, then back to unix form 2427 # but this time dos style (no spaces!) so that the unix form looks 2428 # like /cygdrive/c/PROGRA~1:/cygdr... 2429 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` 2430 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` 2431 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` 2432 ;; 2433 *) 2434 sys_lib_search_path_spec="$LIB" 2435 if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then 2436 # It is most probably a Windows format PATH. 2437 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` 2438 else 2439 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` 2440 fi 2441 # FIXME: find the short name or the path components, as spaces are 2442 # common. (e.g. "Program Files" -> "PROGRA~1") 2443 ;; 2444 esac 2445 2446 # DLL is installed to $(libdir)/../bin by postinstall_cmds 2447 postinstall_cmds='base_file=`basename \${file}`~ 2448 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ 2449 dldir=$destdir/`dirname \$dlpath`~ 2450 test -d \$dldir || mkdir -p \$dldir~ 2451 $install_prog $dir/$dlname \$dldir/$dlname' 2452 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ 2453 dlpath=$dir/\$dldll~ 2454 $RM \$dlpath' 2455 shlibpath_overrides_runpath=yes 2456 dynamic_linker='Win32 link.exe' 2457 ;; 2458 2459 *) 2460 # Assume MSVC wrapper 2461 library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib' 2462 dynamic_linker='Win32 ld.exe' 2463 ;; 2464 esac 2465 # FIXME: first we should search . and the directory the executable is in 2466 shlibpath_var=PATH 2467 ;; 2468 2469darwin* | rhapsody*) 2470 dynamic_linker="$host_os dyld" 2471 version_type=darwin 2472 need_lib_prefix=no 2473 need_version=no 2474 library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext' 2475 soname_spec='${libname}${release}${major}$shared_ext' 2476 shlibpath_overrides_runpath=yes 2477 shlibpath_var=DYLD_LIBRARY_PATH 2478 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' 2479m4_if([$1], [],[ 2480 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"]) 2481 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' 2482 ;; 2483 2484dgux*) 2485 version_type=linux # correct to gnu/linux during the next big refactor 2486 need_lib_prefix=no 2487 need_version=no 2488 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' 2489 soname_spec='${libname}${release}${shared_ext}$major' 2490 shlibpath_var=LD_LIBRARY_PATH 2491 ;; 2492 2493freebsd* | dragonfly*) 2494 # DragonFly does not have aout. When/if they implement a new 2495 # versioning mechanism, adjust this. 2496 if test -x /usr/bin/objformat; then 2497 objformat=`/usr/bin/objformat` 2498 else 2499 case $host_os in 2500 freebsd[[23]].*) objformat=aout ;; 2501 *) objformat=elf ;; 2502 esac 2503 fi 2504 version_type=freebsd-$objformat 2505 case $version_type in 2506 freebsd-elf*) 2507 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' 2508 need_version=no 2509 need_lib_prefix=no 2510 ;; 2511 freebsd-*) 2512 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' 2513 need_version=yes 2514 ;; 2515 esac 2516 shlibpath_var=LD_LIBRARY_PATH 2517 case $host_os in 2518 freebsd2.*) 2519 shlibpath_overrides_runpath=yes 2520 ;; 2521 freebsd3.[[01]]* | freebsdelf3.[[01]]*) 2522 shlibpath_overrides_runpath=yes 2523 hardcode_into_libs=yes 2524 ;; 2525 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \ 2526 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1) 2527 shlibpath_overrides_runpath=no 2528 hardcode_into_libs=yes 2529 ;; 2530 *) # from 4.6 on, and DragonFly 2531 shlibpath_overrides_runpath=yes 2532 hardcode_into_libs=yes 2533 ;; 2534 esac 2535 ;; 2536 2537haiku*) 2538 version_type=linux # correct to gnu/linux during the next big refactor 2539 need_lib_prefix=no 2540 need_version=no 2541 dynamic_linker="$host_os runtime_loader" 2542 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' 2543 soname_spec='${libname}${release}${shared_ext}$major' 2544 shlibpath_var=LIBRARY_PATH 2545 shlibpath_overrides_runpath=yes 2546 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' 2547 hardcode_into_libs=yes 2548 ;; 2549 2550hpux9* | hpux10* | hpux11*) 2551 # Give a soname corresponding to the major version so that dld.sl refuses to 2552 # link against other versions. 2553 version_type=sunos 2554 need_lib_prefix=no 2555 need_version=no 2556 case $host_cpu in 2557 ia64*) 2558 shrext_cmds='.so' 2559 hardcode_into_libs=yes 2560 dynamic_linker="$host_os dld.so" 2561 shlibpath_var=LD_LIBRARY_PATH 2562 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. 2563 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' 2564 soname_spec='${libname}${release}${shared_ext}$major' 2565 if test "X$HPUX_IA64_MODE" = X32; then 2566 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" 2567 else 2568 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" 2569 fi 2570 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec 2571 ;; 2572 hppa*64*) 2573 shrext_cmds='.sl' 2574 hardcode_into_libs=yes 2575 dynamic_linker="$host_os dld.sl" 2576 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH 2577 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. 2578 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' 2579 soname_spec='${libname}${release}${shared_ext}$major' 2580 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" 2581 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec 2582 ;; 2583 *) 2584 shrext_cmds='.sl' 2585 dynamic_linker="$host_os dld.sl" 2586 shlibpath_var=SHLIB_PATH 2587 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH 2588 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' 2589 soname_spec='${libname}${release}${shared_ext}$major' 2590 ;; 2591 esac 2592 # HP-UX runs *really* slowly unless shared libraries are mode 555, ... 2593 postinstall_cmds='chmod 555 $lib' 2594 # or fails outright, so override atomically: 2595 install_override_mode=555 2596 ;; 2597 2598interix[[3-9]]*) 2599 version_type=linux # correct to gnu/linux during the next big refactor 2600 need_lib_prefix=no 2601 need_version=no 2602 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' 2603 soname_spec='${libname}${release}${shared_ext}$major' 2604 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' 2605 shlibpath_var=LD_LIBRARY_PATH 2606 shlibpath_overrides_runpath=no 2607 hardcode_into_libs=yes 2608 ;; 2609 2610irix5* | irix6* | nonstopux*) 2611 case $host_os in 2612 nonstopux*) version_type=nonstopux ;; 2613 *) 2614 if test "$lt_cv_prog_gnu_ld" = yes; then 2615 version_type=linux # correct to gnu/linux during the next big refactor 2616 else 2617 version_type=irix 2618 fi ;; 2619 esac 2620 need_lib_prefix=no 2621 need_version=no 2622 soname_spec='${libname}${release}${shared_ext}$major' 2623 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' 2624 case $host_os in 2625 irix5* | nonstopux*) 2626 libsuff= shlibsuff= 2627 ;; 2628 *) 2629 case $LD in # libtool.m4 will add one of these switches to LD 2630 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") 2631 libsuff= shlibsuff= libmagic=32-bit;; 2632 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") 2633 libsuff=32 shlibsuff=N32 libmagic=N32;; 2634 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") 2635 libsuff=64 shlibsuff=64 libmagic=64-bit;; 2636 *) libsuff= shlibsuff= libmagic=never-match;; 2637 esac 2638 ;; 2639 esac 2640 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH 2641 shlibpath_overrides_runpath=no 2642 sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" 2643 sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" 2644 hardcode_into_libs=yes 2645 ;; 2646 2647# No shared lib support for Linux oldld, aout, or coff. 2648linux*oldld* | linux*aout* | linux*coff*) 2649 dynamic_linker=no 2650 ;; 2651 2652# This must be glibc/ELF. 2653linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) 2654 version_type=linux # correct to gnu/linux during the next big refactor 2655 need_lib_prefix=no 2656 need_version=no 2657 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' 2658 soname_spec='${libname}${release}${shared_ext}$major' 2659 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' 2660 shlibpath_var=LD_LIBRARY_PATH 2661 shlibpath_overrides_runpath=no 2662 2663 # Some binutils ld are patched to set DT_RUNPATH 2664 AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath], 2665 [lt_cv_shlibpath_overrides_runpath=no 2666 save_LDFLAGS=$LDFLAGS 2667 save_libdir=$libdir 2668 eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \ 2669 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\"" 2670 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], 2671 [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null], 2672 [lt_cv_shlibpath_overrides_runpath=yes])]) 2673 LDFLAGS=$save_LDFLAGS 2674 libdir=$save_libdir 2675 ]) 2676 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath 2677 2678 # This implies no fast_install, which is unacceptable. 2679 # Some rework will be needed to allow for fast_install 2680 # before this can be enabled. 2681 hardcode_into_libs=yes 2682 2683 # Append ld.so.conf contents to the search path 2684 if test -f /etc/ld.so.conf; then 2685 lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` 2686 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" 2687 fi 2688 2689 # We used to test for /lib/ld.so.1 and disable shared libraries on 2690 # powerpc, because MkLinux only supported shared libraries with the 2691 # GNU dynamic linker. Since this was broken with cross compilers, 2692 # most powerpc-linux boxes support dynamic linking these days and 2693 # people can always --disable-shared, the test was removed, and we 2694 # assume the GNU/Linux dynamic linker is in use. 2695 dynamic_linker='GNU/Linux ld.so' 2696 ;; 2697 2698netbsdelf*-gnu) 2699 version_type=linux 2700 need_lib_prefix=no 2701 need_version=no 2702 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' 2703 soname_spec='${libname}${release}${shared_ext}$major' 2704 shlibpath_var=LD_LIBRARY_PATH 2705 shlibpath_overrides_runpath=no 2706 hardcode_into_libs=yes 2707 dynamic_linker='NetBSD ld.elf_so' 2708 ;; 2709 2710netbsd*) 2711 version_type=sunos 2712 need_lib_prefix=no 2713 need_version=no 2714 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then 2715 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' 2716 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' 2717 dynamic_linker='NetBSD (a.out) ld.so' 2718 else 2719 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' 2720 soname_spec='${libname}${release}${shared_ext}$major' 2721 dynamic_linker='NetBSD ld.elf_so' 2722 fi 2723 shlibpath_var=LD_LIBRARY_PATH 2724 shlibpath_overrides_runpath=yes 2725 hardcode_into_libs=yes 2726 ;; 2727 2728newsos6) 2729 version_type=linux # correct to gnu/linux during the next big refactor 2730 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' 2731 shlibpath_var=LD_LIBRARY_PATH 2732 shlibpath_overrides_runpath=yes 2733 ;; 2734 2735*nto* | *qnx*) 2736 version_type=qnx 2737 need_lib_prefix=no 2738 need_version=no 2739 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' 2740 soname_spec='${libname}${release}${shared_ext}$major' 2741 shlibpath_var=LD_LIBRARY_PATH 2742 shlibpath_overrides_runpath=no 2743 hardcode_into_libs=yes 2744 dynamic_linker='ldqnx.so' 2745 ;; 2746 2747openbsd*) 2748 version_type=sunos 2749 sys_lib_dlsearch_path_spec="/usr/lib" 2750 need_lib_prefix=no 2751 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. 2752 case $host_os in 2753 openbsd3.3 | openbsd3.3.*) need_version=yes ;; 2754 *) need_version=no ;; 2755 esac 2756 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' 2757 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' 2758 shlibpath_var=LD_LIBRARY_PATH 2759 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then 2760 case $host_os in 2761 openbsd2.[[89]] | openbsd2.[[89]].*) 2762 shlibpath_overrides_runpath=no 2763 ;; 2764 *) 2765 shlibpath_overrides_runpath=yes 2766 ;; 2767 esac 2768 else 2769 shlibpath_overrides_runpath=yes 2770 fi 2771 ;; 2772 2773os2*) 2774 libname_spec='$name' 2775 shrext_cmds=".dll" 2776 need_lib_prefix=no 2777 library_names_spec='$libname${shared_ext} $libname.a' 2778 dynamic_linker='OS/2 ld.exe' 2779 shlibpath_var=LIBPATH 2780 ;; 2781 2782osf3* | osf4* | osf5*) 2783 version_type=osf 2784 need_lib_prefix=no 2785 need_version=no 2786 soname_spec='${libname}${release}${shared_ext}$major' 2787 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' 2788 shlibpath_var=LD_LIBRARY_PATH 2789 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" 2790 sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" 2791 ;; 2792 2793rdos*) 2794 dynamic_linker=no 2795 ;; 2796 2797solaris*) 2798 version_type=linux # correct to gnu/linux during the next big refactor 2799 need_lib_prefix=no 2800 need_version=no 2801 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' 2802 soname_spec='${libname}${release}${shared_ext}$major' 2803 shlibpath_var=LD_LIBRARY_PATH 2804 shlibpath_overrides_runpath=yes 2805 hardcode_into_libs=yes 2806 # ldd complains unless libraries are executable 2807 postinstall_cmds='chmod +x $lib' 2808 ;; 2809 2810sunos4*) 2811 version_type=sunos 2812 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' 2813 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' 2814 shlibpath_var=LD_LIBRARY_PATH 2815 shlibpath_overrides_runpath=yes 2816 if test "$with_gnu_ld" = yes; then 2817 need_lib_prefix=no 2818 fi 2819 need_version=yes 2820 ;; 2821 2822sysv4 | sysv4.3*) 2823 version_type=linux # correct to gnu/linux during the next big refactor 2824 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' 2825 soname_spec='${libname}${release}${shared_ext}$major' 2826 shlibpath_var=LD_LIBRARY_PATH 2827 case $host_vendor in 2828 sni) 2829 shlibpath_overrides_runpath=no 2830 need_lib_prefix=no 2831 runpath_var=LD_RUN_PATH 2832 ;; 2833 siemens) 2834 need_lib_prefix=no 2835 ;; 2836 motorola) 2837 need_lib_prefix=no 2838 need_version=no 2839 shlibpath_overrides_runpath=no 2840 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' 2841 ;; 2842 esac 2843 ;; 2844 2845sysv4*MP*) 2846 if test -d /usr/nec ;then 2847 version_type=linux # correct to gnu/linux during the next big refactor 2848 library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' 2849 soname_spec='$libname${shared_ext}.$major' 2850 shlibpath_var=LD_LIBRARY_PATH 2851 fi 2852 ;; 2853 2854sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) 2855 version_type=freebsd-elf 2856 need_lib_prefix=no 2857 need_version=no 2858 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' 2859 soname_spec='${libname}${release}${shared_ext}$major' 2860 shlibpath_var=LD_LIBRARY_PATH 2861 shlibpath_overrides_runpath=yes 2862 hardcode_into_libs=yes 2863 if test "$with_gnu_ld" = yes; then 2864 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' 2865 else 2866 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' 2867 case $host_os in 2868 sco3.2v5*) 2869 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" 2870 ;; 2871 esac 2872 fi 2873 sys_lib_dlsearch_path_spec='/usr/lib' 2874 ;; 2875 2876tpf*) 2877 # TPF is a cross-target only. Preferred cross-host = GNU/Linux. 2878 version_type=linux # correct to gnu/linux during the next big refactor 2879 need_lib_prefix=no 2880 need_version=no 2881 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' 2882 shlibpath_var=LD_LIBRARY_PATH 2883 shlibpath_overrides_runpath=no 2884 hardcode_into_libs=yes 2885 ;; 2886 2887uts4*) 2888 version_type=linux # correct to gnu/linux during the next big refactor 2889 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' 2890 soname_spec='${libname}${release}${shared_ext}$major' 2891 shlibpath_var=LD_LIBRARY_PATH 2892 ;; 2893 2894*) 2895 dynamic_linker=no 2896 ;; 2897esac 2898AC_MSG_RESULT([$dynamic_linker]) 2899test "$dynamic_linker" = no && can_build_shared=no 2900 2901variables_saved_for_relink="PATH $shlibpath_var $runpath_var" 2902if test "$GCC" = yes; then 2903 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" 2904fi 2905 2906if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then 2907 sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" 2908fi 2909if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then 2910 sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" 2911fi 2912 2913_LT_DECL([], [variables_saved_for_relink], [1], 2914 [Variables whose values should be saved in libtool wrapper scripts and 2915 restored at link time]) 2916_LT_DECL([], [need_lib_prefix], [0], 2917 [Do we need the "lib" prefix for modules?]) 2918_LT_DECL([], [need_version], [0], [Do we need a version for libraries?]) 2919_LT_DECL([], [version_type], [0], [Library versioning type]) 2920_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable]) 2921_LT_DECL([], [shlibpath_var], [0],[Shared library path variable]) 2922_LT_DECL([], [shlibpath_overrides_runpath], [0], 2923 [Is shlibpath searched before the hard-coded library search path?]) 2924_LT_DECL([], [libname_spec], [1], [Format of library name prefix]) 2925_LT_DECL([], [library_names_spec], [1], 2926 [[List of archive names. First name is the real one, the rest are links. 2927 The last name is the one that the linker finds with -lNAME]]) 2928_LT_DECL([], [soname_spec], [1], 2929 [[The coded name of the library, if different from the real name]]) 2930_LT_DECL([], [install_override_mode], [1], 2931 [Permission mode override for installation of shared libraries]) 2932_LT_DECL([], [postinstall_cmds], [2], 2933 [Command to use after installation of a shared archive]) 2934_LT_DECL([], [postuninstall_cmds], [2], 2935 [Command to use after uninstallation of a shared archive]) 2936_LT_DECL([], [finish_cmds], [2], 2937 [Commands used to finish a libtool library installation in a directory]) 2938_LT_DECL([], [finish_eval], [1], 2939 [[As "finish_cmds", except a single script fragment to be evaled but 2940 not shown]]) 2941_LT_DECL([], [hardcode_into_libs], [0], 2942 [Whether we should hardcode library paths into libraries]) 2943_LT_DECL([], [sys_lib_search_path_spec], [2], 2944 [Compile-time system search path for libraries]) 2945_LT_DECL([], [sys_lib_dlsearch_path_spec], [2], 2946 [Run-time system search path for libraries]) 2947])# _LT_SYS_DYNAMIC_LINKER 2948 2949 2950# _LT_PATH_TOOL_PREFIX(TOOL) 2951# -------------------------- 2952# find a file program which can recognize shared library 2953AC_DEFUN([_LT_PATH_TOOL_PREFIX], 2954[m4_require([_LT_DECL_EGREP])dnl 2955AC_MSG_CHECKING([for $1]) 2956AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, 2957[case $MAGIC_CMD in 2958[[\\/*] | ?:[\\/]*]) 2959 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. 2960 ;; 2961*) 2962 lt_save_MAGIC_CMD="$MAGIC_CMD" 2963 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR 2964dnl $ac_dummy forces splitting on constant user-supplied paths. 2965dnl POSIX.2 word splitting is done only on the output of word expansions, 2966dnl not every word. This closes a longstanding sh security hole. 2967 ac_dummy="m4_if([$2], , $PATH, [$2])" 2968 for ac_dir in $ac_dummy; do 2969 IFS="$lt_save_ifs" 2970 test -z "$ac_dir" && ac_dir=. 2971 if test -f $ac_dir/$1; then 2972 lt_cv_path_MAGIC_CMD="$ac_dir/$1" 2973 if test -n "$file_magic_test_file"; then 2974 case $deplibs_check_method in 2975 "file_magic "*) 2976 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` 2977 MAGIC_CMD="$lt_cv_path_MAGIC_CMD" 2978 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | 2979 $EGREP "$file_magic_regex" > /dev/null; then 2980 : 2981 else 2982 cat <<_LT_EOF 1>&2 2983 2984*** Warning: the command libtool uses to detect shared libraries, 2985*** $file_magic_cmd, produces output that libtool cannot recognize. 2986*** The result is that libtool may fail to recognize shared libraries 2987*** as such. This will affect the creation of libtool libraries that 2988*** depend on shared libraries, but programs linked with such libtool 2989*** libraries will work regardless of this problem. Nevertheless, you 2990*** may want to report the problem to your system manager and/or to 2991*** bug-libtool@gnu.org 2992 2993_LT_EOF 2994 fi ;; 2995 esac 2996 fi 2997 break 2998 fi 2999 done 3000 IFS="$lt_save_ifs" 3001 MAGIC_CMD="$lt_save_MAGIC_CMD" 3002 ;; 3003esac]) 3004MAGIC_CMD="$lt_cv_path_MAGIC_CMD" 3005if test -n "$MAGIC_CMD"; then 3006 AC_MSG_RESULT($MAGIC_CMD) 3007else 3008 AC_MSG_RESULT(no) 3009fi 3010_LT_DECL([], [MAGIC_CMD], [0], 3011 [Used to examine libraries when file_magic_cmd begins with "file"])dnl 3012])# _LT_PATH_TOOL_PREFIX 3013 3014# Old name: 3015AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX]) 3016dnl aclocal-1.4 backwards compatibility: 3017dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], []) 3018 3019 3020# _LT_PATH_MAGIC 3021# -------------- 3022# find a file program which can recognize a shared library 3023m4_defun([_LT_PATH_MAGIC], 3024[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) 3025if test -z "$lt_cv_path_MAGIC_CMD"; then 3026 if test -n "$ac_tool_prefix"; then 3027 _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) 3028 else 3029 MAGIC_CMD=: 3030 fi 3031fi 3032])# _LT_PATH_MAGIC 3033 3034 3035# LT_PATH_LD 3036# ---------- 3037# find the pathname to the GNU or non-GNU linker 3038AC_DEFUN([LT_PATH_LD], 3039[AC_REQUIRE([AC_PROG_CC])dnl 3040AC_REQUIRE([AC_CANONICAL_HOST])dnl 3041AC_REQUIRE([AC_CANONICAL_BUILD])dnl 3042m4_require([_LT_DECL_SED])dnl 3043m4_require([_LT_DECL_EGREP])dnl 3044m4_require([_LT_PROG_ECHO_BACKSLASH])dnl 3045 3046AC_ARG_WITH([gnu-ld], 3047 [AS_HELP_STRING([--with-gnu-ld], 3048 [assume the C compiler uses GNU ld @<:@default=no@:>@])], 3049 [test "$withval" = no || with_gnu_ld=yes], 3050 [with_gnu_ld=no])dnl 3051 3052ac_prog=ld 3053if test "$GCC" = yes; then 3054 # Check if gcc -print-prog-name=ld gives a path. 3055 AC_MSG_CHECKING([for ld used by $CC]) 3056 case $host in 3057 *-*-mingw*) 3058 # gcc leaves a trailing carriage return which upsets mingw 3059 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; 3060 *) 3061 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; 3062 esac 3063 case $ac_prog in 3064 # Accept absolute paths. 3065 [[\\/]]* | ?:[[\\/]]*) 3066 re_direlt='/[[^/]][[^/]]*/\.\./' 3067 # Canonicalize the pathname of ld 3068 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` 3069 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do 3070 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` 3071 done 3072 test -z "$LD" && LD="$ac_prog" 3073 ;; 3074 "") 3075 # If it fails, then pretend we aren't using GCC. 3076 ac_prog=ld 3077 ;; 3078 *) 3079 # If it is relative, then search for the first ld in PATH. 3080 with_gnu_ld=unknown 3081 ;; 3082 esac 3083elif test "$with_gnu_ld" = yes; then 3084 AC_MSG_CHECKING([for GNU ld]) 3085else 3086 AC_MSG_CHECKING([for non-GNU ld]) 3087fi 3088AC_CACHE_VAL(lt_cv_path_LD, 3089[if test -z "$LD"; then 3090 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR 3091 for ac_dir in $PATH; do 3092 IFS="$lt_save_ifs" 3093 test -z "$ac_dir" && ac_dir=. 3094 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then 3095 lt_cv_path_LD="$ac_dir/$ac_prog" 3096 # Check to see if the program is GNU ld. I'd rather use --version, 3097 # but apparently some variants of GNU ld only accept -v. 3098 # Break only if it was the GNU/non-GNU ld that we prefer. 3099 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in 3100 *GNU* | *'with BFD'*) 3101 test "$with_gnu_ld" != no && break 3102 ;; 3103 *) 3104 test "$with_gnu_ld" != yes && break 3105 ;; 3106 esac 3107 fi 3108 done 3109 IFS="$lt_save_ifs" 3110else 3111 lt_cv_path_LD="$LD" # Let the user override the test with a path. 3112fi]) 3113LD="$lt_cv_path_LD" 3114if test -n "$LD"; then 3115 AC_MSG_RESULT($LD) 3116else 3117 AC_MSG_RESULT(no) 3118fi 3119test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) 3120_LT_PATH_LD_GNU 3121AC_SUBST([LD]) 3122 3123_LT_TAGDECL([], [LD], [1], [The linker used to build libraries]) 3124])# LT_PATH_LD 3125 3126# Old names: 3127AU_ALIAS([AM_PROG_LD], [LT_PATH_LD]) 3128AU_ALIAS([AC_PROG_LD], [LT_PATH_LD]) 3129dnl aclocal-1.4 backwards compatibility: 3130dnl AC_DEFUN([AM_PROG_LD], []) 3131dnl AC_DEFUN([AC_PROG_LD], []) 3132 3133 3134# _LT_PATH_LD_GNU 3135#- -------------- 3136m4_defun([_LT_PATH_LD_GNU], 3137[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, 3138[# I'd rather use --version here, but apparently some GNU lds only accept -v. 3139case `$LD -v 2>&1 </dev/null` in 3140*GNU* | *'with BFD'*) 3141 lt_cv_prog_gnu_ld=yes 3142 ;; 3143*) 3144 lt_cv_prog_gnu_ld=no 3145 ;; 3146esac]) 3147with_gnu_ld=$lt_cv_prog_gnu_ld 3148])# _LT_PATH_LD_GNU 3149 3150 3151# _LT_CMD_RELOAD 3152# -------------- 3153# find reload flag for linker 3154# -- PORTME Some linkers may need a different reload flag. 3155m4_defun([_LT_CMD_RELOAD], 3156[AC_CACHE_CHECK([for $LD option to reload object files], 3157 lt_cv_ld_reload_flag, 3158 [lt_cv_ld_reload_flag='-r']) 3159reload_flag=$lt_cv_ld_reload_flag 3160case $reload_flag in 3161"" | " "*) ;; 3162*) reload_flag=" $reload_flag" ;; 3163esac 3164reload_cmds='$LD$reload_flag -o $output$reload_objs' 3165case $host_os in 3166 cygwin* | mingw* | pw32* | cegcc*) 3167 if test "$GCC" != yes; then 3168 reload_cmds=false 3169 fi 3170 ;; 3171 darwin*) 3172 if test "$GCC" = yes; then 3173 reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs' 3174 else 3175 reload_cmds='$LD$reload_flag -o $output$reload_objs' 3176 fi 3177 ;; 3178esac 3179_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl 3180_LT_TAGDECL([], [reload_cmds], [2])dnl 3181])# _LT_CMD_RELOAD 3182 3183 3184# _LT_CHECK_MAGIC_METHOD 3185# ---------------------- 3186# how to check for library dependencies 3187# -- PORTME fill in with the dynamic library characteristics 3188m4_defun([_LT_CHECK_MAGIC_METHOD], 3189[m4_require([_LT_DECL_EGREP]) 3190m4_require([_LT_DECL_OBJDUMP]) 3191AC_CACHE_CHECK([how to recognize dependent libraries], 3192lt_cv_deplibs_check_method, 3193[lt_cv_file_magic_cmd='$MAGIC_CMD' 3194lt_cv_file_magic_test_file= 3195lt_cv_deplibs_check_method='unknown' 3196# Need to set the preceding variable on all platforms that support 3197# interlibrary dependencies. 3198# 'none' -- dependencies not supported. 3199# `unknown' -- same as none, but documents that we really don't know. 3200# 'pass_all' -- all dependencies passed with no checks. 3201# 'test_compile' -- check by making test program. 3202# 'file_magic [[regex]]' -- check by looking for files in library path 3203# which responds to the $file_magic_cmd with a given extended regex. 3204# If you have `file' or equivalent on your system and you're not sure 3205# whether `pass_all' will *always* work, you probably want this one. 3206 3207case $host_os in 3208aix[[4-9]]*) 3209 lt_cv_deplibs_check_method=pass_all 3210 ;; 3211 3212beos*) 3213 lt_cv_deplibs_check_method=pass_all 3214 ;; 3215 3216bsdi[[45]]*) 3217 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' 3218 lt_cv_file_magic_cmd='/usr/bin/file -L' 3219 lt_cv_file_magic_test_file=/shlib/libc.so 3220 ;; 3221 3222cygwin*) 3223 # func_win32_libid is a shell function defined in ltmain.sh 3224 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' 3225 lt_cv_file_magic_cmd='func_win32_libid' 3226 ;; 3227 3228mingw* | pw32*) 3229 # Base MSYS/MinGW do not provide the 'file' command needed by 3230 # func_win32_libid shell function, so use a weaker test based on 'objdump', 3231 # unless we find 'file', for example because we are cross-compiling. 3232 # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin. 3233 if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then 3234 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' 3235 lt_cv_file_magic_cmd='func_win32_libid' 3236 else 3237 # Keep this pattern in sync with the one in func_win32_libid. 3238 lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' 3239 lt_cv_file_magic_cmd='$OBJDUMP -f' 3240 fi 3241 ;; 3242 3243cegcc*) 3244 # use the weaker test based on 'objdump'. See mingw*. 3245 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' 3246 lt_cv_file_magic_cmd='$OBJDUMP -f' 3247 ;; 3248 3249darwin* | rhapsody*) 3250 lt_cv_deplibs_check_method=pass_all 3251 ;; 3252 3253freebsd* | dragonfly*) 3254 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then 3255 case $host_cpu in 3256 i*86 ) 3257 # Not sure whether the presence of OpenBSD here was a mistake. 3258 # Let's accept both of them until this is cleared up. 3259 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' 3260 lt_cv_file_magic_cmd=/usr/bin/file 3261 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` 3262 ;; 3263 esac 3264 else 3265 lt_cv_deplibs_check_method=pass_all 3266 fi 3267 ;; 3268 3269haiku*) 3270 lt_cv_deplibs_check_method=pass_all 3271 ;; 3272 3273hpux10.20* | hpux11*) 3274 lt_cv_file_magic_cmd=/usr/bin/file 3275 case $host_cpu in 3276 ia64*) 3277 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' 3278 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so 3279 ;; 3280 hppa*64*) 3281 [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]'] 3282 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl 3283 ;; 3284 *) 3285 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library' 3286 lt_cv_file_magic_test_file=/usr/lib/libc.sl 3287 ;; 3288 esac 3289 ;; 3290 3291interix[[3-9]]*) 3292 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here 3293 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$' 3294 ;; 3295 3296irix5* | irix6* | nonstopux*) 3297 case $LD in 3298 *-32|*"-32 ") libmagic=32-bit;; 3299 *-n32|*"-n32 ") libmagic=N32;; 3300 *-64|*"-64 ") libmagic=64-bit;; 3301 *) libmagic=never-match;; 3302 esac 3303 lt_cv_deplibs_check_method=pass_all 3304 ;; 3305 3306# This must be glibc/ELF. 3307linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) 3308 lt_cv_deplibs_check_method=pass_all 3309 ;; 3310 3311netbsd* | netbsdelf*-gnu) 3312 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then 3313 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' 3314 else 3315 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' 3316 fi 3317 ;; 3318 3319newos6*) 3320 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' 3321 lt_cv_file_magic_cmd=/usr/bin/file 3322 lt_cv_file_magic_test_file=/usr/lib/libnls.so 3323 ;; 3324 3325*nto* | *qnx*) 3326 lt_cv_deplibs_check_method=pass_all 3327 ;; 3328 3329openbsd*) 3330 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then 3331 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$' 3332 else 3333 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' 3334 fi 3335 ;; 3336 3337osf3* | osf4* | osf5*) 3338 lt_cv_deplibs_check_method=pass_all 3339 ;; 3340 3341rdos*) 3342 lt_cv_deplibs_check_method=pass_all 3343 ;; 3344 3345solaris*) 3346 lt_cv_deplibs_check_method=pass_all 3347 ;; 3348 3349sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) 3350 lt_cv_deplibs_check_method=pass_all 3351 ;; 3352 3353sysv4 | sysv4.3*) 3354 case $host_vendor in 3355 motorola) 3356 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]]' 3357 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` 3358 ;; 3359 ncr) 3360 lt_cv_deplibs_check_method=pass_all 3361 ;; 3362 sequent) 3363 lt_cv_file_magic_cmd='/bin/file' 3364 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' 3365 ;; 3366 sni) 3367 lt_cv_file_magic_cmd='/bin/file' 3368 lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" 3369 lt_cv_file_magic_test_file=/lib/libc.so 3370 ;; 3371 siemens) 3372 lt_cv_deplibs_check_method=pass_all 3373 ;; 3374 pc) 3375 lt_cv_deplibs_check_method=pass_all 3376 ;; 3377 esac 3378 ;; 3379 3380tpf*) 3381 lt_cv_deplibs_check_method=pass_all 3382 ;; 3383esac 3384]) 3385 3386file_magic_glob= 3387want_nocaseglob=no 3388if test "$build" = "$host"; then 3389 case $host_os in 3390 mingw* | pw32*) 3391 if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then 3392 want_nocaseglob=yes 3393 else 3394 file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"` 3395 fi 3396 ;; 3397 esac 3398fi 3399 3400file_magic_cmd=$lt_cv_file_magic_cmd 3401deplibs_check_method=$lt_cv_deplibs_check_method 3402test -z "$deplibs_check_method" && deplibs_check_method=unknown 3403 3404_LT_DECL([], [deplibs_check_method], [1], 3405 [Method to check whether dependent libraries are shared objects]) 3406_LT_DECL([], [file_magic_cmd], [1], 3407 [Command to use when deplibs_check_method = "file_magic"]) 3408_LT_DECL([], [file_magic_glob], [1], 3409 [How to find potential files when deplibs_check_method = "file_magic"]) 3410_LT_DECL([], [want_nocaseglob], [1], 3411 [Find potential files using nocaseglob when deplibs_check_method = "file_magic"]) 3412])# _LT_CHECK_MAGIC_METHOD 3413 3414 3415# LT_PATH_NM 3416# ---------- 3417# find the pathname to a BSD- or MS-compatible name lister 3418AC_DEFUN([LT_PATH_NM], 3419[AC_REQUIRE([AC_PROG_CC])dnl 3420AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM, 3421[if test -n "$NM"; then 3422 # Let the user override the test. 3423 lt_cv_path_NM="$NM" 3424else 3425 lt_nm_to_check="${ac_tool_prefix}nm" 3426 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then 3427 lt_nm_to_check="$lt_nm_to_check nm" 3428 fi 3429 for lt_tmp_nm in $lt_nm_to_check; do 3430 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR 3431 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do 3432 IFS="$lt_save_ifs" 3433 test -z "$ac_dir" && ac_dir=. 3434 tmp_nm="$ac_dir/$lt_tmp_nm" 3435 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then 3436 # Check to see if the nm accepts a BSD-compat flag. 3437 # Adding the `sed 1q' prevents false positives on HP-UX, which says: 3438 # nm: unknown option "B" ignored 3439 # Tru64's nm complains that /dev/null is an invalid object file 3440 case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in 3441 */dev/null* | *'Invalid file or object type'*) 3442 lt_cv_path_NM="$tmp_nm -B" 3443 break 3444 ;; 3445 *) 3446 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in 3447 */dev/null*) 3448 lt_cv_path_NM="$tmp_nm -p" 3449 break 3450 ;; 3451 *) 3452 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but 3453 continue # so that we can try to find one that supports BSD flags 3454 ;; 3455 esac 3456 ;; 3457 esac 3458 fi 3459 done 3460 IFS="$lt_save_ifs" 3461 done 3462 : ${lt_cv_path_NM=no} 3463fi]) 3464if test "$lt_cv_path_NM" != "no"; then 3465 NM="$lt_cv_path_NM" 3466else 3467 # Didn't find any BSD compatible name lister, look for dumpbin. 3468 if test -n "$DUMPBIN"; then : 3469 # Let the user override the test. 3470 else 3471 AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :) 3472 case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in 3473 *COFF*) 3474 DUMPBIN="$DUMPBIN -symbols" 3475 ;; 3476 *) 3477 DUMPBIN=: 3478 ;; 3479 esac 3480 fi 3481 AC_SUBST([DUMPBIN]) 3482 if test "$DUMPBIN" != ":"; then 3483 NM="$DUMPBIN" 3484 fi 3485fi 3486test -z "$NM" && NM=nm 3487AC_SUBST([NM]) 3488_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl 3489 3490AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface], 3491 [lt_cv_nm_interface="BSD nm" 3492 echo "int some_variable = 0;" > conftest.$ac_ext 3493 (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD) 3494 (eval "$ac_compile" 2>conftest.err) 3495 cat conftest.err >&AS_MESSAGE_LOG_FD 3496 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD) 3497 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) 3498 cat conftest.err >&AS_MESSAGE_LOG_FD 3499 (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD) 3500 cat conftest.out >&AS_MESSAGE_LOG_FD 3501 if $GREP 'External.*some_variable' conftest.out > /dev/null; then 3502 lt_cv_nm_interface="MS dumpbin" 3503 fi 3504 rm -f conftest*]) 3505])# LT_PATH_NM 3506 3507# Old names: 3508AU_ALIAS([AM_PROG_NM], [LT_PATH_NM]) 3509AU_ALIAS([AC_PROG_NM], [LT_PATH_NM]) 3510dnl aclocal-1.4 backwards compatibility: 3511dnl AC_DEFUN([AM_PROG_NM], []) 3512dnl AC_DEFUN([AC_PROG_NM], []) 3513 3514# _LT_CHECK_SHAREDLIB_FROM_LINKLIB 3515# -------------------------------- 3516# how to determine the name of the shared library 3517# associated with a specific link library. 3518# -- PORTME fill in with the dynamic library characteristics 3519m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB], 3520[m4_require([_LT_DECL_EGREP]) 3521m4_require([_LT_DECL_OBJDUMP]) 3522m4_require([_LT_DECL_DLLTOOL]) 3523AC_CACHE_CHECK([how to associate runtime and link libraries], 3524lt_cv_sharedlib_from_linklib_cmd, 3525[lt_cv_sharedlib_from_linklib_cmd='unknown' 3526 3527case $host_os in 3528cygwin* | mingw* | pw32* | cegcc*) 3529 # two different shell functions defined in ltmain.sh 3530 # decide which to use based on capabilities of $DLLTOOL 3531 case `$DLLTOOL --help 2>&1` in 3532 *--identify-strict*) 3533 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib 3534 ;; 3535 *) 3536 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback 3537 ;; 3538 esac 3539 ;; 3540*) 3541 # fallback: assume linklib IS sharedlib 3542 lt_cv_sharedlib_from_linklib_cmd="$ECHO" 3543 ;; 3544esac 3545]) 3546sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd 3547test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO 3548 3549_LT_DECL([], [sharedlib_from_linklib_cmd], [1], 3550 [Command to associate shared and link libraries]) 3551])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB 3552 3553 3554# _LT_PATH_MANIFEST_TOOL 3555# ---------------------- 3556# locate the manifest tool 3557m4_defun([_LT_PATH_MANIFEST_TOOL], 3558[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :) 3559test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt 3560AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool], 3561 [lt_cv_path_mainfest_tool=no 3562 echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD 3563 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out 3564 cat conftest.err >&AS_MESSAGE_LOG_FD 3565 if $GREP 'Manifest Tool' conftest.out > /dev/null; then 3566 lt_cv_path_mainfest_tool=yes 3567 fi 3568 rm -f conftest*]) 3569if test "x$lt_cv_path_mainfest_tool" != xyes; then 3570 MANIFEST_TOOL=: 3571fi 3572_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl 3573])# _LT_PATH_MANIFEST_TOOL 3574 3575 3576# LT_LIB_M 3577# -------- 3578# check for math library 3579AC_DEFUN([LT_LIB_M], 3580[AC_REQUIRE([AC_CANONICAL_HOST])dnl 3581LIBM= 3582case $host in 3583*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*) 3584 # These system don't have libm, or don't need it 3585 ;; 3586*-ncr-sysv4.3*) 3587 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") 3588 AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") 3589 ;; 3590*) 3591 AC_CHECK_LIB(m, cos, LIBM="-lm") 3592 ;; 3593esac 3594AC_SUBST([LIBM]) 3595])# LT_LIB_M 3596 3597# Old name: 3598AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M]) 3599dnl aclocal-1.4 backwards compatibility: 3600dnl AC_DEFUN([AC_CHECK_LIBM], []) 3601 3602 3603# _LT_COMPILER_NO_RTTI([TAGNAME]) 3604# ------------------------------- 3605m4_defun([_LT_COMPILER_NO_RTTI], 3606[m4_require([_LT_TAG_COMPILER])dnl 3607 3608_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= 3609 3610if test "$GCC" = yes; then 3611 case $cc_basename in 3612 nvcc*) 3613 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;; 3614 *) 3615 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;; 3616 esac 3617 3618 _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], 3619 lt_cv_prog_compiler_rtti_exceptions, 3620 [-fno-rtti -fno-exceptions], [], 3621 [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) 3622fi 3623_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1], 3624 [Compiler flag to turn off builtin functions]) 3625])# _LT_COMPILER_NO_RTTI 3626 3627 3628# _LT_CMD_GLOBAL_SYMBOLS 3629# ---------------------- 3630m4_defun([_LT_CMD_GLOBAL_SYMBOLS], 3631[AC_REQUIRE([AC_CANONICAL_HOST])dnl 3632AC_REQUIRE([AC_PROG_CC])dnl 3633AC_REQUIRE([AC_PROG_AWK])dnl 3634AC_REQUIRE([LT_PATH_NM])dnl 3635AC_REQUIRE([LT_PATH_LD])dnl 3636m4_require([_LT_DECL_SED])dnl 3637m4_require([_LT_DECL_EGREP])dnl 3638m4_require([_LT_TAG_COMPILER])dnl 3639 3640# Check for command to grab the raw symbol name followed by C symbol from nm. 3641AC_MSG_CHECKING([command to parse $NM output from $compiler object]) 3642AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], 3643[ 3644# These are sane defaults that work on at least a few old systems. 3645# [They come from Ultrix. What could be older than Ultrix?!! ;)] 3646 3647# Character class describing NM global symbol codes. 3648symcode='[[BCDEGRST]]' 3649 3650# Regexp to match symbols that can be accessed directly from C. 3651sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' 3652 3653# Define system-specific variables. 3654case $host_os in 3655aix*) 3656 symcode='[[BCDT]]' 3657 ;; 3658cygwin* | mingw* | pw32* | cegcc*) 3659 symcode='[[ABCDGISTW]]' 3660 ;; 3661hpux*) 3662 if test "$host_cpu" = ia64; then 3663 symcode='[[ABCDEGRST]]' 3664 fi 3665 ;; 3666irix* | nonstopux*) 3667 symcode='[[BCDEGRST]]' 3668 ;; 3669osf*) 3670 symcode='[[BCDEGQRST]]' 3671 ;; 3672solaris*) 3673 symcode='[[BDRT]]' 3674 ;; 3675sco3.2v5*) 3676 symcode='[[DT]]' 3677 ;; 3678sysv4.2uw2*) 3679 symcode='[[DT]]' 3680 ;; 3681sysv5* | sco5v6* | unixware* | OpenUNIX*) 3682 symcode='[[ABDT]]' 3683 ;; 3684sysv4) 3685 symcode='[[DFNSTU]]' 3686 ;; 3687esac 3688 3689# If we're using GNU nm, then use its standard symbol codes. 3690case `$NM -V 2>&1` in 3691*GNU* | *'with BFD'*) 3692 symcode='[[ABCDGIRSTW]]' ;; 3693esac 3694 3695# Transform an extracted symbol line into a proper C declaration. 3696# Some systems (esp. on ia64) link data and code symbols differently, 3697# so use this general approach. 3698lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" 3699 3700# Transform an extracted symbol line into symbol name and symbol address 3701lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'" 3702lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'" 3703 3704# Handle CRLF in mingw tool chain 3705opt_cr= 3706case $build_os in 3707mingw*) 3708 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp 3709 ;; 3710esac 3711 3712# Try without a prefix underscore, then with it. 3713for ac_symprfx in "" "_"; do 3714 3715 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. 3716 symxfrm="\\1 $ac_symprfx\\2 \\2" 3717 3718 # Write the raw and C identifiers. 3719 if test "$lt_cv_nm_interface" = "MS dumpbin"; then 3720 # Fake it for dumpbin and say T for any non-static function 3721 # and D for any global variable. 3722 # Also find C++ and __fastcall symbols from MSVC++, 3723 # which start with @ or ?. 3724 lt_cv_sys_global_symbol_pipe="$AWK ['"\ 3725" {last_section=section; section=\$ 3};"\ 3726" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ 3727" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ 3728" \$ 0!~/External *\|/{next};"\ 3729" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ 3730" {if(hide[section]) next};"\ 3731" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\ 3732" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\ 3733" s[1]~/^[@?]/{print s[1], s[1]; next};"\ 3734" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\ 3735" ' prfx=^$ac_symprfx]" 3736 else 3737 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" 3738 fi 3739 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" 3740 3741 # Check to see that the pipe works correctly. 3742 pipe_works=no 3743 3744 rm -f conftest* 3745 cat > conftest.$ac_ext <<_LT_EOF 3746#ifdef __cplusplus 3747extern "C" { 3748#endif 3749char nm_test_var; 3750void nm_test_func(void); 3751void nm_test_func(void){} 3752#ifdef __cplusplus 3753} 3754#endif 3755int main(){nm_test_var='a';nm_test_func();return(0);} 3756_LT_EOF 3757 3758 if AC_TRY_EVAL(ac_compile); then 3759 # Now try to grab the symbols. 3760 nlist=conftest.nm 3761 if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then 3762 # Try sorting and uniquifying the output. 3763 if sort "$nlist" | uniq > "$nlist"T; then 3764 mv -f "$nlist"T "$nlist" 3765 else 3766 rm -f "$nlist"T 3767 fi 3768 3769 # Make sure that we snagged all the symbols we need. 3770 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then 3771 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then 3772 cat <<_LT_EOF > conftest.$ac_ext 3773/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ 3774#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE) 3775/* DATA imports from DLLs on WIN32 con't be const, because runtime 3776 relocations are performed -- see ld's documentation on pseudo-relocs. */ 3777# define LT@&t@_DLSYM_CONST 3778#elif defined(__osf__) 3779/* This system does not cope well with relocations in const data. */ 3780# define LT@&t@_DLSYM_CONST 3781#else 3782# define LT@&t@_DLSYM_CONST const 3783#endif 3784 3785#ifdef __cplusplus 3786extern "C" { 3787#endif 3788 3789_LT_EOF 3790 # Now generate the symbol file. 3791 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' 3792 3793 cat <<_LT_EOF >> conftest.$ac_ext 3794 3795/* The mapping between symbol names and symbols. */ 3796LT@&t@_DLSYM_CONST struct { 3797 const char *name; 3798 void *address; 3799} 3800lt__PROGRAM__LTX_preloaded_symbols[[]] = 3801{ 3802 { "@PROGRAM@", (void *) 0 }, 3803_LT_EOF 3804 $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext 3805 cat <<\_LT_EOF >> conftest.$ac_ext 3806 {0, (void *) 0} 3807}; 3808 3809/* This works around a problem in FreeBSD linker */ 3810#ifdef FREEBSD_WORKAROUND 3811static const void *lt_preloaded_setup() { 3812 return lt__PROGRAM__LTX_preloaded_symbols; 3813} 3814#endif 3815 3816#ifdef __cplusplus 3817} 3818#endif 3819_LT_EOF 3820 # Now try linking the two files. 3821 mv conftest.$ac_objext conftstm.$ac_objext 3822 lt_globsym_save_LIBS=$LIBS 3823 lt_globsym_save_CFLAGS=$CFLAGS 3824 LIBS="conftstm.$ac_objext" 3825 CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" 3826 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then 3827 pipe_works=yes 3828 fi 3829 LIBS=$lt_globsym_save_LIBS 3830 CFLAGS=$lt_globsym_save_CFLAGS 3831 else 3832 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD 3833 fi 3834 else 3835 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD 3836 fi 3837 else 3838 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD 3839 fi 3840 else 3841 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD 3842 cat conftest.$ac_ext >&5 3843 fi 3844 rm -rf conftest* conftst* 3845 3846 # Do not use the global_symbol_pipe unless it works. 3847 if test "$pipe_works" = yes; then 3848 break 3849 else 3850 lt_cv_sys_global_symbol_pipe= 3851 fi 3852done 3853]) 3854if test -z "$lt_cv_sys_global_symbol_pipe"; then 3855 lt_cv_sys_global_symbol_to_cdecl= 3856fi 3857if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then 3858 AC_MSG_RESULT(failed) 3859else 3860 AC_MSG_RESULT(ok) 3861fi 3862 3863# Response file support. 3864if test "$lt_cv_nm_interface" = "MS dumpbin"; then 3865 nm_file_list_spec='@' 3866elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then 3867 nm_file_list_spec='@' 3868fi 3869 3870_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1], 3871 [Take the output of nm and produce a listing of raw symbols and C names]) 3872_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1], 3873 [Transform the output of nm in a proper C declaration]) 3874_LT_DECL([global_symbol_to_c_name_address], 3875 [lt_cv_sys_global_symbol_to_c_name_address], [1], 3876 [Transform the output of nm in a C name address pair]) 3877_LT_DECL([global_symbol_to_c_name_address_lib_prefix], 3878 [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1], 3879 [Transform the output of nm in a C name address pair when lib prefix is needed]) 3880_LT_DECL([], [nm_file_list_spec], [1], 3881 [Specify filename containing input files for $NM]) 3882]) # _LT_CMD_GLOBAL_SYMBOLS 3883 3884 3885# _LT_COMPILER_PIC([TAGNAME]) 3886# --------------------------- 3887m4_defun([_LT_COMPILER_PIC], 3888[m4_require([_LT_TAG_COMPILER])dnl 3889_LT_TAGVAR(lt_prog_compiler_wl, $1)= 3890_LT_TAGVAR(lt_prog_compiler_pic, $1)= 3891_LT_TAGVAR(lt_prog_compiler_static, $1)= 3892 3893m4_if([$1], [CXX], [ 3894 # C++ specific cases for pic, static, wl, etc. 3895 if test "$GXX" = yes; then 3896 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 3897 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 3898 3899 case $host_os in 3900 aix*) 3901 # All AIX code is PIC. 3902 if test "$host_cpu" = ia64; then 3903 # AIX 5 now supports IA64 processor 3904 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 3905 fi 3906 ;; 3907 3908 amigaos*) 3909 case $host_cpu in 3910 powerpc) 3911 # see comment about AmigaOS4 .so support 3912 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 3913 ;; 3914 m68k) 3915 # FIXME: we need at least 68020 code to build shared libraries, but 3916 # adding the `-m68020' flag to GCC prevents building anything better, 3917 # like `-m68040'. 3918 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' 3919 ;; 3920 esac 3921 ;; 3922 3923 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) 3924 # PIC is the default for these OSes. 3925 ;; 3926 mingw* | cygwin* | os2* | pw32* | cegcc*) 3927 # This hack is so that the source file can tell whether it is being 3928 # built for inclusion in a dll (and should export symbols for example). 3929 # Although the cygwin gcc ignores -fPIC, still need this for old-style 3930 # (--disable-auto-import) libraries 3931 m4_if([$1], [GCJ], [], 3932 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) 3933 ;; 3934 darwin* | rhapsody*) 3935 # PIC is the default on this platform 3936 # Common symbols not allowed in MH_DYLIB files 3937 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' 3938 ;; 3939 *djgpp*) 3940 # DJGPP does not support shared libraries at all 3941 _LT_TAGVAR(lt_prog_compiler_pic, $1)= 3942 ;; 3943 haiku*) 3944 # PIC is the default for Haiku. 3945 # The "-static" flag exists, but is broken. 3946 _LT_TAGVAR(lt_prog_compiler_static, $1)= 3947 ;; 3948 interix[[3-9]]*) 3949 # Interix 3.x gcc -fpic/-fPIC options generate broken code. 3950 # Instead, we relocate shared libraries at runtime. 3951 ;; 3952 sysv4*MP*) 3953 if test -d /usr/nec; then 3954 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic 3955 fi 3956 ;; 3957 hpux*) 3958 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit 3959 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag 3960 # sets the default TLS model and affects inlining. 3961 case $host_cpu in 3962 hppa*64*) 3963 ;; 3964 *) 3965 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 3966 ;; 3967 esac 3968 ;; 3969 *qnx* | *nto*) 3970 # QNX uses GNU C++, but need to define -shared option too, otherwise 3971 # it will coredump. 3972 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' 3973 ;; 3974 *) 3975 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 3976 ;; 3977 esac 3978 else 3979 case $host_os in 3980 aix[[4-9]]*) 3981 # All AIX code is PIC. 3982 if test "$host_cpu" = ia64; then 3983 # AIX 5 now supports IA64 processor 3984 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 3985 else 3986 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' 3987 fi 3988 ;; 3989 chorus*) 3990 case $cc_basename in 3991 cxch68*) 3992 # Green Hills C++ Compiler 3993 # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" 3994 ;; 3995 esac 3996 ;; 3997 mingw* | cygwin* | os2* | pw32* | cegcc*) 3998 # This hack is so that the source file can tell whether it is being 3999 # built for inclusion in a dll (and should export symbols for example). 4000 m4_if([$1], [GCJ], [], 4001 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) 4002 ;; 4003 dgux*) 4004 case $cc_basename in 4005 ec++*) 4006 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4007 ;; 4008 ghcx*) 4009 # Green Hills C++ Compiler 4010 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' 4011 ;; 4012 *) 4013 ;; 4014 esac 4015 ;; 4016 freebsd* | dragonfly*) 4017 # FreeBSD uses GNU C++ 4018 ;; 4019 hpux9* | hpux10* | hpux11*) 4020 case $cc_basename in 4021 CC*) 4022 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4023 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' 4024 if test "$host_cpu" != ia64; then 4025 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' 4026 fi 4027 ;; 4028 aCC*) 4029 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4030 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' 4031 case $host_cpu in 4032 hppa*64*|ia64*) 4033 # +Z the default 4034 ;; 4035 *) 4036 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' 4037 ;; 4038 esac 4039 ;; 4040 *) 4041 ;; 4042 esac 4043 ;; 4044 interix*) 4045 # This is c89, which is MS Visual C++ (no shared libs) 4046 # Anyone wants to do a port? 4047 ;; 4048 irix5* | irix6* | nonstopux*) 4049 case $cc_basename in 4050 CC*) 4051 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4052 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 4053 # CC pic flag -KPIC is the default. 4054 ;; 4055 *) 4056 ;; 4057 esac 4058 ;; 4059 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) 4060 case $cc_basename in 4061 KCC*) 4062 # KAI C++ Compiler 4063 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' 4064 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4065 ;; 4066 ecpc* ) 4067 # old Intel C++ for x86_64 which still supported -KPIC. 4068 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4069 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4070 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 4071 ;; 4072 icpc* ) 4073 # Intel C++, used to be incompatible with GCC. 4074 # ICC 10 doesn't accept -KPIC any more. 4075 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4076 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4077 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 4078 ;; 4079 pgCC* | pgcpp*) 4080 # Portland Group C++ compiler 4081 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4082 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' 4083 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4084 ;; 4085 cxx*) 4086 # Compaq C++ 4087 # Make sure the PIC flag is empty. It appears that all Alpha 4088 # Linux and Compaq Tru64 Unix objects are PIC. 4089 _LT_TAGVAR(lt_prog_compiler_pic, $1)= 4090 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 4091 ;; 4092 xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*) 4093 # IBM XL 8.0, 9.0 on PPC and BlueGene 4094 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4095 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' 4096 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' 4097 ;; 4098 *) 4099 case `$CC -V 2>&1 | sed 5q` in 4100 *Sun\ C*) 4101 # Sun C++ 5.9 4102 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4103 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4104 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' 4105 ;; 4106 esac 4107 ;; 4108 esac 4109 ;; 4110 lynxos*) 4111 ;; 4112 m88k*) 4113 ;; 4114 mvs*) 4115 case $cc_basename in 4116 cxx*) 4117 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' 4118 ;; 4119 *) 4120 ;; 4121 esac 4122 ;; 4123 netbsd* | netbsdelf*-gnu) 4124 ;; 4125 *qnx* | *nto*) 4126 # QNX uses GNU C++, but need to define -shared option too, otherwise 4127 # it will coredump. 4128 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' 4129 ;; 4130 osf3* | osf4* | osf5*) 4131 case $cc_basename in 4132 KCC*) 4133 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' 4134 ;; 4135 RCC*) 4136 # Rational C++ 2.4.1 4137 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' 4138 ;; 4139 cxx*) 4140 # Digital/Compaq C++ 4141 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4142 # Make sure the PIC flag is empty. It appears that all Alpha 4143 # Linux and Compaq Tru64 Unix objects are PIC. 4144 _LT_TAGVAR(lt_prog_compiler_pic, $1)= 4145 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 4146 ;; 4147 *) 4148 ;; 4149 esac 4150 ;; 4151 psos*) 4152 ;; 4153 solaris*) 4154 case $cc_basename in 4155 CC* | sunCC*) 4156 # Sun C++ 4.2, 5.x and Centerline C++ 4157 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4158 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4159 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' 4160 ;; 4161 gcx*) 4162 # Green Hills C++ Compiler 4163 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' 4164 ;; 4165 *) 4166 ;; 4167 esac 4168 ;; 4169 sunos4*) 4170 case $cc_basename in 4171 CC*) 4172 # Sun C++ 4.x 4173 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' 4174 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4175 ;; 4176 lcc*) 4177 # Lucid 4178 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' 4179 ;; 4180 *) 4181 ;; 4182 esac 4183 ;; 4184 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) 4185 case $cc_basename in 4186 CC*) 4187 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4188 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4189 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4190 ;; 4191 esac 4192 ;; 4193 tandem*) 4194 case $cc_basename in 4195 NCC*) 4196 # NonStop-UX NCC 3.20 4197 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4198 ;; 4199 *) 4200 ;; 4201 esac 4202 ;; 4203 vxworks*) 4204 ;; 4205 *) 4206 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no 4207 ;; 4208 esac 4209 fi 4210], 4211[ 4212 if test "$GCC" = yes; then 4213 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4214 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 4215 4216 case $host_os in 4217 aix*) 4218 # All AIX code is PIC. 4219 if test "$host_cpu" = ia64; then 4220 # AIX 5 now supports IA64 processor 4221 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4222 fi 4223 ;; 4224 4225 amigaos*) 4226 case $host_cpu in 4227 powerpc) 4228 # see comment about AmigaOS4 .so support 4229 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4230 ;; 4231 m68k) 4232 # FIXME: we need at least 68020 code to build shared libraries, but 4233 # adding the `-m68020' flag to GCC prevents building anything better, 4234 # like `-m68040'. 4235 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' 4236 ;; 4237 esac 4238 ;; 4239 4240 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) 4241 # PIC is the default for these OSes. 4242 ;; 4243 4244 mingw* | cygwin* | pw32* | os2* | cegcc*) 4245 # This hack is so that the source file can tell whether it is being 4246 # built for inclusion in a dll (and should export symbols for example). 4247 # Although the cygwin gcc ignores -fPIC, still need this for old-style 4248 # (--disable-auto-import) libraries 4249 m4_if([$1], [GCJ], [], 4250 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) 4251 ;; 4252 4253 darwin* | rhapsody*) 4254 # PIC is the default on this platform 4255 # Common symbols not allowed in MH_DYLIB files 4256 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' 4257 ;; 4258 4259 haiku*) 4260 # PIC is the default for Haiku. 4261 # The "-static" flag exists, but is broken. 4262 _LT_TAGVAR(lt_prog_compiler_static, $1)= 4263 ;; 4264 4265 hpux*) 4266 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit 4267 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag 4268 # sets the default TLS model and affects inlining. 4269 case $host_cpu in 4270 hppa*64*) 4271 # +Z the default 4272 ;; 4273 *) 4274 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4275 ;; 4276 esac 4277 ;; 4278 4279 interix[[3-9]]*) 4280 # Interix 3.x gcc -fpic/-fPIC options generate broken code. 4281 # Instead, we relocate shared libraries at runtime. 4282 ;; 4283 4284 msdosdjgpp*) 4285 # Just because we use GCC doesn't mean we suddenly get shared libraries 4286 # on systems that don't support them. 4287 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no 4288 enable_shared=no 4289 ;; 4290 4291 *nto* | *qnx*) 4292 # QNX uses GNU C++, but need to define -shared option too, otherwise 4293 # it will coredump. 4294 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' 4295 ;; 4296 4297 sysv4*MP*) 4298 if test -d /usr/nec; then 4299 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic 4300 fi 4301 ;; 4302 4303 *) 4304 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4305 ;; 4306 esac 4307 4308 case $cc_basename in 4309 nvcc*) # Cuda Compiler Driver 2.2 4310 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker ' 4311 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then 4312 _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)" 4313 fi 4314 ;; 4315 esac 4316 else 4317 # PORTME Check for flag to pass linker flags through the system compiler. 4318 case $host_os in 4319 aix*) 4320 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4321 if test "$host_cpu" = ia64; then 4322 # AIX 5 now supports IA64 processor 4323 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4324 else 4325 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' 4326 fi 4327 ;; 4328 4329 mingw* | cygwin* | pw32* | os2* | cegcc*) 4330 # This hack is so that the source file can tell whether it is being 4331 # built for inclusion in a dll (and should export symbols for example). 4332 m4_if([$1], [GCJ], [], 4333 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) 4334 ;; 4335 4336 hpux9* | hpux10* | hpux11*) 4337 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4338 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but 4339 # not for PA HP-UX. 4340 case $host_cpu in 4341 hppa*64*|ia64*) 4342 # +Z the default 4343 ;; 4344 *) 4345 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' 4346 ;; 4347 esac 4348 # Is there a better lt_prog_compiler_static that works with the bundled CC? 4349 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' 4350 ;; 4351 4352 irix5* | irix6* | nonstopux*) 4353 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4354 # PIC (with -KPIC) is the default. 4355 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 4356 ;; 4357 4358 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) 4359 case $cc_basename in 4360 # old Intel for x86_64 which still supported -KPIC. 4361 ecc*) 4362 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4363 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4364 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 4365 ;; 4366 # icc used to be incompatible with GCC. 4367 # ICC 10 doesn't accept -KPIC any more. 4368 icc* | ifort*) 4369 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4370 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4371 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 4372 ;; 4373 # Lahey Fortran 8.1. 4374 lf95*) 4375 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4376 _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared' 4377 _LT_TAGVAR(lt_prog_compiler_static, $1)='--static' 4378 ;; 4379 nagfor*) 4380 # NAG Fortran compiler 4381 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' 4382 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' 4383 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4384 ;; 4385 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) 4386 # Portland Group compilers (*not* the Pentium gcc compiler, 4387 # which looks to be a dead project) 4388 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4389 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' 4390 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4391 ;; 4392 ccc*) 4393 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4394 # All Alpha code is PIC. 4395 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 4396 ;; 4397 xl* | bgxl* | bgf* | mpixl*) 4398 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene 4399 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4400 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' 4401 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' 4402 ;; 4403 *) 4404 case `$CC -V 2>&1 | sed 5q` in 4405 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*) 4406 # Sun Fortran 8.3 passes all unrecognized flags to the linker 4407 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4408 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4409 _LT_TAGVAR(lt_prog_compiler_wl, $1)='' 4410 ;; 4411 *Sun\ F* | *Sun*Fortran*) 4412 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4413 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4414 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' 4415 ;; 4416 *Sun\ C*) 4417 # Sun C 5.9 4418 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4419 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4420 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4421 ;; 4422 *Intel*\ [[CF]]*Compiler*) 4423 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4424 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4425 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 4426 ;; 4427 *Portland\ Group*) 4428 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4429 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' 4430 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4431 ;; 4432 esac 4433 ;; 4434 esac 4435 ;; 4436 4437 newsos6) 4438 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4439 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4440 ;; 4441 4442 *nto* | *qnx*) 4443 # QNX uses GNU C++, but need to define -shared option too, otherwise 4444 # it will coredump. 4445 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' 4446 ;; 4447 4448 osf3* | osf4* | osf5*) 4449 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4450 # All OSF/1 code is PIC. 4451 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 4452 ;; 4453 4454 rdos*) 4455 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 4456 ;; 4457 4458 solaris*) 4459 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4460 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4461 case $cc_basename in 4462 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) 4463 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; 4464 *) 4465 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; 4466 esac 4467 ;; 4468 4469 sunos4*) 4470 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' 4471 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' 4472 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4473 ;; 4474 4475 sysv4 | sysv4.2uw2* | sysv4.3*) 4476 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4477 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4478 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4479 ;; 4480 4481 sysv4*MP*) 4482 if test -d /usr/nec ;then 4483 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' 4484 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4485 fi 4486 ;; 4487 4488 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) 4489 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4490 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4491 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4492 ;; 4493 4494 unicos*) 4495 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4496 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no 4497 ;; 4498 4499 uts4*) 4500 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' 4501 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4502 ;; 4503 4504 *) 4505 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no 4506 ;; 4507 esac 4508 fi 4509]) 4510case $host_os in 4511 # For platforms which do not support PIC, -DPIC is meaningless: 4512 *djgpp*) 4513 _LT_TAGVAR(lt_prog_compiler_pic, $1)= 4514 ;; 4515 *) 4516 _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])" 4517 ;; 4518esac 4519 4520AC_CACHE_CHECK([for $compiler option to produce PIC], 4521 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)], 4522 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)]) 4523_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1) 4524 4525# 4526# Check to make sure the PIC flag actually works. 4527# 4528if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then 4529 _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works], 4530 [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)], 4531 [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [], 4532 [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in 4533 "" | " "*) ;; 4534 *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;; 4535 esac], 4536 [_LT_TAGVAR(lt_prog_compiler_pic, $1)= 4537 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) 4538fi 4539_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1], 4540 [Additional compiler flags for building library objects]) 4541 4542_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1], 4543 [How to pass a linker flag through the compiler]) 4544# 4545# Check to make sure the static flag actually works. 4546# 4547wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\" 4548_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], 4549 _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1), 4550 $lt_tmp_static_flag, 4551 [], 4552 [_LT_TAGVAR(lt_prog_compiler_static, $1)=]) 4553_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1], 4554 [Compiler flag to prevent dynamic linking]) 4555])# _LT_COMPILER_PIC 4556 4557 4558# _LT_LINKER_SHLIBS([TAGNAME]) 4559# ---------------------------- 4560# See if the linker supports building shared libraries. 4561m4_defun([_LT_LINKER_SHLIBS], 4562[AC_REQUIRE([LT_PATH_LD])dnl 4563AC_REQUIRE([LT_PATH_NM])dnl 4564m4_require([_LT_PATH_MANIFEST_TOOL])dnl 4565m4_require([_LT_FILEUTILS_DEFAULTS])dnl 4566m4_require([_LT_DECL_EGREP])dnl 4567m4_require([_LT_DECL_SED])dnl 4568m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl 4569m4_require([_LT_TAG_COMPILER])dnl 4570AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) 4571m4_if([$1], [CXX], [ 4572 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' 4573 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] 4574 case $host_os in 4575 aix[[4-9]]*) 4576 # If we're using GNU nm, then we don't want the "-C" option. 4577 # -C means demangle to AIX nm, but means don't demangle with GNU nm 4578 # Also, AIX nm treats weak defined symbols like other global defined 4579 # symbols, whereas GNU nm marks them as "W". 4580 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then 4581 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' 4582 else 4583 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' 4584 fi 4585 ;; 4586 pw32*) 4587 _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" 4588 ;; 4589 cygwin* | mingw* | cegcc*) 4590 case $cc_basename in 4591 cl*) 4592 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' 4593 ;; 4594 *) 4595 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' 4596 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] 4597 ;; 4598 esac 4599 ;; 4600 linux* | k*bsd*-gnu | gnu*) 4601 _LT_TAGVAR(link_all_deplibs, $1)=no 4602 ;; 4603 *) 4604 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' 4605 ;; 4606 esac 4607], [ 4608 runpath_var= 4609 _LT_TAGVAR(allow_undefined_flag, $1)= 4610 _LT_TAGVAR(always_export_symbols, $1)=no 4611 _LT_TAGVAR(archive_cmds, $1)= 4612 _LT_TAGVAR(archive_expsym_cmds, $1)= 4613 _LT_TAGVAR(compiler_needs_object, $1)=no 4614 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no 4615 _LT_TAGVAR(export_dynamic_flag_spec, $1)= 4616 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' 4617 _LT_TAGVAR(hardcode_automatic, $1)=no 4618 _LT_TAGVAR(hardcode_direct, $1)=no 4619 _LT_TAGVAR(hardcode_direct_absolute, $1)=no 4620 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= 4621 _LT_TAGVAR(hardcode_libdir_separator, $1)= 4622 _LT_TAGVAR(hardcode_minus_L, $1)=no 4623 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported 4624 _LT_TAGVAR(inherit_rpath, $1)=no 4625 _LT_TAGVAR(link_all_deplibs, $1)=unknown 4626 _LT_TAGVAR(module_cmds, $1)= 4627 _LT_TAGVAR(module_expsym_cmds, $1)= 4628 _LT_TAGVAR(old_archive_from_new_cmds, $1)= 4629 _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)= 4630 _LT_TAGVAR(thread_safe_flag_spec, $1)= 4631 _LT_TAGVAR(whole_archive_flag_spec, $1)= 4632 # include_expsyms should be a list of space-separated symbols to be *always* 4633 # included in the symbol list 4634 _LT_TAGVAR(include_expsyms, $1)= 4635 # exclude_expsyms can be an extended regexp of symbols to exclude 4636 # it will be wrapped by ` (' and `)$', so one must not match beginning or 4637 # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', 4638 # as well as any symbol that contains `d'. 4639 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] 4640 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out 4641 # platforms (ab)use it in PIC code, but their linkers get confused if 4642 # the symbol is explicitly referenced. Since portable code cannot 4643 # rely on this symbol name, it's probably fine to never include it in 4644 # preloaded symbol tables. 4645 # Exclude shared library initialization/finalization symbols. 4646dnl Note also adjust exclude_expsyms for C++ above. 4647 extract_expsyms_cmds= 4648 4649 case $host_os in 4650 cygwin* | mingw* | pw32* | cegcc*) 4651 # FIXME: the MSVC++ port hasn't been tested in a loooong time 4652 # When not using gcc, we currently assume that we are using 4653 # Microsoft Visual C++. 4654 if test "$GCC" != yes; then 4655 with_gnu_ld=no 4656 fi 4657 ;; 4658 interix*) 4659 # we just hope/assume this is gcc and not c89 (= MSVC++) 4660 with_gnu_ld=yes 4661 ;; 4662 openbsd*) 4663 with_gnu_ld=no 4664 ;; 4665 linux* | k*bsd*-gnu | gnu*) 4666 _LT_TAGVAR(link_all_deplibs, $1)=no 4667 ;; 4668 esac 4669 4670 _LT_TAGVAR(ld_shlibs, $1)=yes 4671 4672 # On some targets, GNU ld is compatible enough with the native linker 4673 # that we're better off using the native interface for both. 4674 lt_use_gnu_ld_interface=no 4675 if test "$with_gnu_ld" = yes; then 4676 case $host_os in 4677 aix*) 4678 # The AIX port of GNU ld has always aspired to compatibility 4679 # with the native linker. However, as the warning in the GNU ld 4680 # block says, versions before 2.19.5* couldn't really create working 4681 # shared libraries, regardless of the interface used. 4682 case `$LD -v 2>&1` in 4683 *\ \(GNU\ Binutils\)\ 2.19.5*) ;; 4684 *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;; 4685 *\ \(GNU\ Binutils\)\ [[3-9]]*) ;; 4686 *) 4687 lt_use_gnu_ld_interface=yes 4688 ;; 4689 esac 4690 ;; 4691 *) 4692 lt_use_gnu_ld_interface=yes 4693 ;; 4694 esac 4695 fi 4696 4697 if test "$lt_use_gnu_ld_interface" = yes; then 4698 # If archive_cmds runs LD, not CC, wlarc should be empty 4699 wlarc='${wl}' 4700 4701 # Set some defaults for GNU ld with shared library support. These 4702 # are reset later if shared libraries are not supported. Putting them 4703 # here allows them to be overridden if necessary. 4704 runpath_var=LD_RUN_PATH 4705 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' 4706 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' 4707 # ancient GNU ld didn't support --whole-archive et. al. 4708 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then 4709 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' 4710 else 4711 _LT_TAGVAR(whole_archive_flag_spec, $1)= 4712 fi 4713 supports_anon_versioning=no 4714 case `$LD -v 2>&1` in 4715 *GNU\ gold*) supports_anon_versioning=yes ;; 4716 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 4717 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... 4718 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... 4719 *\ 2.11.*) ;; # other 2.11 versions 4720 *) supports_anon_versioning=yes ;; 4721 esac 4722 4723 # See if GNU ld supports shared libraries. 4724 case $host_os in 4725 aix[[3-9]]*) 4726 # On AIX/PPC, the GNU linker is very broken 4727 if test "$host_cpu" != ia64; then 4728 _LT_TAGVAR(ld_shlibs, $1)=no 4729 cat <<_LT_EOF 1>&2 4730 4731*** Warning: the GNU linker, at least up to release 2.19, is reported 4732*** to be unable to reliably create shared libraries on AIX. 4733*** Therefore, libtool is disabling shared libraries support. If you 4734*** really care for shared libraries, you may want to install binutils 4735*** 2.20 or above, or modify your PATH so that a non-GNU linker is found. 4736*** You will then need to restart the configuration process. 4737 4738_LT_EOF 4739 fi 4740 ;; 4741 4742 amigaos*) 4743 case $host_cpu in 4744 powerpc) 4745 # see comment about AmigaOS4 .so support 4746 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' 4747 _LT_TAGVAR(archive_expsym_cmds, $1)='' 4748 ;; 4749 m68k) 4750 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' 4751 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 4752 _LT_TAGVAR(hardcode_minus_L, $1)=yes 4753 ;; 4754 esac 4755 ;; 4756 4757 beos*) 4758 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then 4759 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 4760 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc 4761 # support --undefined. This deserves some investigation. FIXME 4762 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' 4763 else 4764 _LT_TAGVAR(ld_shlibs, $1)=no 4765 fi 4766 ;; 4767 4768 cygwin* | mingw* | pw32* | cegcc*) 4769 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, 4770 # as there is no search path for DLLs. 4771 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 4772 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols' 4773 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 4774 _LT_TAGVAR(always_export_symbols, $1)=no 4775 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 4776 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' 4777 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] 4778 4779 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then 4780 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' 4781 # If the export-symbols file already is a .def file (1st line 4782 # is EXPORTS), use it as is; otherwise, prepend... 4783 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then 4784 cp $export_symbols $output_objdir/$soname.def; 4785 else 4786 echo EXPORTS > $output_objdir/$soname.def; 4787 cat $export_symbols >> $output_objdir/$soname.def; 4788 fi~ 4789 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' 4790 else 4791 _LT_TAGVAR(ld_shlibs, $1)=no 4792 fi 4793 ;; 4794 4795 haiku*) 4796 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' 4797 _LT_TAGVAR(link_all_deplibs, $1)=yes 4798 ;; 4799 4800 interix[[3-9]]*) 4801 _LT_TAGVAR(hardcode_direct, $1)=no 4802 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 4803 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' 4804 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' 4805 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. 4806 # Instead, shared libraries are loaded at an image base (0x10000000 by 4807 # default) and relocated if they conflict, which is a slow very memory 4808 # consuming and fragmenting process. To avoid this, we pick a random, 4809 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link 4810 # time. Moving up from 0x10000000 also allows more sbrk(2) space. 4811 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' 4812 _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' 4813 ;; 4814 4815 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) 4816 tmp_diet=no 4817 if test "$host_os" = linux-dietlibc; then 4818 case $cc_basename in 4819 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) 4820 esac 4821 fi 4822 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ 4823 && test "$tmp_diet" = no 4824 then 4825 tmp_addflag=' $pic_flag' 4826 tmp_sharedflag='-shared' 4827 case $cc_basename,$host_cpu in 4828 pgcc*) # Portland Group C compiler 4829 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' 4830 tmp_addflag=' $pic_flag' 4831 ;; 4832 pgf77* | pgf90* | pgf95* | pgfortran*) 4833 # Portland Group f77 and f90 compilers 4834 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' 4835 tmp_addflag=' $pic_flag -Mnomain' ;; 4836 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 4837 tmp_addflag=' -i_dynamic' ;; 4838 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 4839 tmp_addflag=' -i_dynamic -nofor_main' ;; 4840 ifc* | ifort*) # Intel Fortran compiler 4841 tmp_addflag=' -nofor_main' ;; 4842 lf95*) # Lahey Fortran 8.1 4843 _LT_TAGVAR(whole_archive_flag_spec, $1)= 4844 tmp_sharedflag='--shared' ;; 4845 xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below) 4846 tmp_sharedflag='-qmkshrobj' 4847 tmp_addflag= ;; 4848 nvcc*) # Cuda Compiler Driver 2.2 4849 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' 4850 _LT_TAGVAR(compiler_needs_object, $1)=yes 4851 ;; 4852 esac 4853 case `$CC -V 2>&1 | sed 5q` in 4854 *Sun\ C*) # Sun C 5.9 4855 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' 4856 _LT_TAGVAR(compiler_needs_object, $1)=yes 4857 tmp_sharedflag='-G' ;; 4858 *Sun\ F*) # Sun Fortran 8.3 4859 tmp_sharedflag='-G' ;; 4860 esac 4861 _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' 4862 4863 if test "x$supports_anon_versioning" = xyes; then 4864 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ 4865 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ 4866 echo "local: *; };" >> $output_objdir/$libname.ver~ 4867 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' 4868 fi 4869 4870 case $cc_basename in 4871 xlf* | bgf* | bgxlf* | mpixlf*) 4872 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself 4873 _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive' 4874 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' 4875 _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' 4876 if test "x$supports_anon_versioning" = xyes; then 4877 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ 4878 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ 4879 echo "local: *; };" >> $output_objdir/$libname.ver~ 4880 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' 4881 fi 4882 ;; 4883 esac 4884 else 4885 _LT_TAGVAR(ld_shlibs, $1)=no 4886 fi 4887 ;; 4888 4889 netbsd* | netbsdelf*-gnu) 4890 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then 4891 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' 4892 wlarc= 4893 else 4894 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' 4895 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' 4896 fi 4897 ;; 4898 4899 solaris*) 4900 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then 4901 _LT_TAGVAR(ld_shlibs, $1)=no 4902 cat <<_LT_EOF 1>&2 4903 4904*** Warning: The releases 2.8.* of the GNU linker cannot reliably 4905*** create shared libraries on Solaris systems. Therefore, libtool 4906*** is disabling shared libraries support. We urge you to upgrade GNU 4907*** binutils to release 2.9.1 or newer. Another option is to modify 4908*** your PATH or compiler configuration so that the native linker is 4909*** used, and then restart. 4910 4911_LT_EOF 4912 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then 4913 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' 4914 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' 4915 else 4916 _LT_TAGVAR(ld_shlibs, $1)=no 4917 fi 4918 ;; 4919 4920 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) 4921 case `$LD -v 2>&1` in 4922 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) 4923 _LT_TAGVAR(ld_shlibs, $1)=no 4924 cat <<_LT_EOF 1>&2 4925 4926*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not 4927*** reliably create shared libraries on SCO systems. Therefore, libtool 4928*** is disabling shared libraries support. We urge you to upgrade GNU 4929*** binutils to release 2.16.91.0.3 or newer. Another option is to modify 4930*** your PATH or compiler configuration so that the native linker is 4931*** used, and then restart. 4932 4933_LT_EOF 4934 ;; 4935 *) 4936 # For security reasons, it is highly recommended that you always 4937 # use absolute paths for naming shared libraries, and exclude the 4938 # DT_RUNPATH tag from executables and libraries. But doing so 4939 # requires that you compile everything twice, which is a pain. 4940 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then 4941 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' 4942 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' 4943 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' 4944 else 4945 _LT_TAGVAR(ld_shlibs, $1)=no 4946 fi 4947 ;; 4948 esac 4949 ;; 4950 4951 sunos4*) 4952 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' 4953 wlarc= 4954 _LT_TAGVAR(hardcode_direct, $1)=yes 4955 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 4956 ;; 4957 4958 *) 4959 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then 4960 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' 4961 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' 4962 else 4963 _LT_TAGVAR(ld_shlibs, $1)=no 4964 fi 4965 ;; 4966 esac 4967 4968 if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then 4969 runpath_var= 4970 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= 4971 _LT_TAGVAR(export_dynamic_flag_spec, $1)= 4972 _LT_TAGVAR(whole_archive_flag_spec, $1)= 4973 fi 4974 else 4975 # PORTME fill in a description of your system's linker (not GNU ld) 4976 case $host_os in 4977 aix3*) 4978 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 4979 _LT_TAGVAR(always_export_symbols, $1)=yes 4980 _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' 4981 # Note: this linker hardcodes the directories in LIBPATH if there 4982 # are no directories specified by -L. 4983 _LT_TAGVAR(hardcode_minus_L, $1)=yes 4984 if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then 4985 # Neither direct hardcoding nor static linking is supported with a 4986 # broken collect2. 4987 _LT_TAGVAR(hardcode_direct, $1)=unsupported 4988 fi 4989 ;; 4990 4991 aix[[4-9]]*) 4992 if test "$host_cpu" = ia64; then 4993 # On IA64, the linker does run time linking by default, so we don't 4994 # have to do anything special. 4995 aix_use_runtimelinking=no 4996 exp_sym_flag='-Bexport' 4997 no_entry_flag="" 4998 else 4999 # If we're using GNU nm, then we don't want the "-C" option. 5000 # -C means demangle to AIX nm, but means don't demangle with GNU nm 5001 # Also, AIX nm treats weak defined symbols like other global 5002 # defined symbols, whereas GNU nm marks them as "W". 5003 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then 5004 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' 5005 else 5006 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' 5007 fi 5008 aix_use_runtimelinking=no 5009 5010 # Test if we are trying to use run time linking or normal 5011 # AIX style linking. If -brtl is somewhere in LDFLAGS, we 5012 # need to do runtime linking. 5013 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) 5014 for ld_flag in $LDFLAGS; do 5015 if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then 5016 aix_use_runtimelinking=yes 5017 break 5018 fi 5019 done 5020 ;; 5021 esac 5022 5023 exp_sym_flag='-bexport' 5024 no_entry_flag='-bnoentry' 5025 fi 5026 5027 # When large executables or shared objects are built, AIX ld can 5028 # have problems creating the table of contents. If linking a library 5029 # or program results in "error TOC overflow" add -mminimal-toc to 5030 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not 5031 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. 5032 5033 _LT_TAGVAR(archive_cmds, $1)='' 5034 _LT_TAGVAR(hardcode_direct, $1)=yes 5035 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 5036 _LT_TAGVAR(hardcode_libdir_separator, $1)=':' 5037 _LT_TAGVAR(link_all_deplibs, $1)=yes 5038 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' 5039 5040 if test "$GCC" = yes; then 5041 case $host_os in aix4.[[012]]|aix4.[[012]].*) 5042 # We only want to do this on AIX 4.2 and lower, the check 5043 # below for broken collect2 doesn't work under 4.3+ 5044 collect2name=`${CC} -print-prog-name=collect2` 5045 if test -f "$collect2name" && 5046 strings "$collect2name" | $GREP resolve_lib_name >/dev/null 5047 then 5048 # We have reworked collect2 5049 : 5050 else 5051 # We have old collect2 5052 _LT_TAGVAR(hardcode_direct, $1)=unsupported 5053 # It fails to find uninstalled libraries when the uninstalled 5054 # path is not listed in the libpath. Setting hardcode_minus_L 5055 # to unsupported forces relinking 5056 _LT_TAGVAR(hardcode_minus_L, $1)=yes 5057 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 5058 _LT_TAGVAR(hardcode_libdir_separator, $1)= 5059 fi 5060 ;; 5061 esac 5062 shared_flag='-shared' 5063 if test "$aix_use_runtimelinking" = yes; then 5064 shared_flag="$shared_flag "'${wl}-G' 5065 fi 5066 _LT_TAGVAR(link_all_deplibs, $1)=no 5067 else 5068 # not using gcc 5069 if test "$host_cpu" = ia64; then 5070 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release 5071 # chokes on -Wl,-G. The following line is correct: 5072 shared_flag='-G' 5073 else 5074 if test "$aix_use_runtimelinking" = yes; then 5075 shared_flag='${wl}-G' 5076 else 5077 shared_flag='${wl}-bM:SRE' 5078 fi 5079 fi 5080 fi 5081 5082 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' 5083 # It seems that -bexpall does not export symbols beginning with 5084 # underscore (_), so it is better to generate a list of symbols to export. 5085 _LT_TAGVAR(always_export_symbols, $1)=yes 5086 if test "$aix_use_runtimelinking" = yes; then 5087 # Warning - without using the other runtime loading flags (-brtl), 5088 # -berok will link without error, but may produce a broken library. 5089 _LT_TAGVAR(allow_undefined_flag, $1)='-berok' 5090 # Determine the default libpath from the value encoded in an 5091 # empty executable. 5092 _LT_SYS_MODULE_PATH_AIX([$1]) 5093 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" 5094 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" 5095 else 5096 if test "$host_cpu" = ia64; then 5097 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' 5098 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" 5099 _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" 5100 else 5101 # Determine the default libpath from the value encoded in an 5102 # empty executable. 5103 _LT_SYS_MODULE_PATH_AIX([$1]) 5104 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" 5105 # Warning - without using the other run time loading flags, 5106 # -berok will link without error, but may produce a broken library. 5107 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' 5108 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' 5109 if test "$with_gnu_ld" = yes; then 5110 # We only use this code for GNU lds that support --whole-archive. 5111 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' 5112 else 5113 # Exported symbols can be pulled into shared objects from archives 5114 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' 5115 fi 5116 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes 5117 # This is similar to how AIX traditionally builds its shared libraries. 5118 _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' 5119 fi 5120 fi 5121 ;; 5122 5123 amigaos*) 5124 case $host_cpu in 5125 powerpc) 5126 # see comment about AmigaOS4 .so support 5127 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' 5128 _LT_TAGVAR(archive_expsym_cmds, $1)='' 5129 ;; 5130 m68k) 5131 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' 5132 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 5133 _LT_TAGVAR(hardcode_minus_L, $1)=yes 5134 ;; 5135 esac 5136 ;; 5137 5138 bsdi[[45]]*) 5139 _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic 5140 ;; 5141 5142 cygwin* | mingw* | pw32* | cegcc*) 5143 # When not using gcc, we currently assume that we are using 5144 # Microsoft Visual C++. 5145 # hardcode_libdir_flag_spec is actually meaningless, as there is 5146 # no search path for DLLs. 5147 case $cc_basename in 5148 cl*) 5149 # Native MSVC 5150 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' 5151 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 5152 _LT_TAGVAR(always_export_symbols, $1)=yes 5153 _LT_TAGVAR(file_list_spec, $1)='@' 5154 # Tell ltmain to make .lib files, not .a files. 5155 libext=lib 5156 # Tell ltmain to make .dll files, not .so files. 5157 shrext_cmds=".dll" 5158 # FIXME: Setting linknames here is a bad hack. 5159 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames=' 5160 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then 5161 sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; 5162 else 5163 sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp; 5164 fi~ 5165 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ 5166 linknames=' 5167 # The linker will not automatically build a static lib if we build a DLL. 5168 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' 5169 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 5170 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' 5171 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1,DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols' 5172 # Don't use ranlib 5173 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' 5174 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ 5175 lt_tool_outputfile="@TOOL_OUTPUT@"~ 5176 case $lt_outputfile in 5177 *.exe|*.EXE) ;; 5178 *) 5179 lt_outputfile="$lt_outputfile.exe" 5180 lt_tool_outputfile="$lt_tool_outputfile.exe" 5181 ;; 5182 esac~ 5183 if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then 5184 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; 5185 $RM "$lt_outputfile.manifest"; 5186 fi' 5187 ;; 5188 *) 5189 # Assume MSVC wrapper 5190 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' 5191 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 5192 # Tell ltmain to make .lib files, not .a files. 5193 libext=lib 5194 # Tell ltmain to make .dll files, not .so files. 5195 shrext_cmds=".dll" 5196 # FIXME: Setting linknames here is a bad hack. 5197 _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' 5198 # The linker will automatically build a .lib file if we build a DLL. 5199 _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' 5200 # FIXME: Should let the user specify the lib program. 5201 _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs' 5202 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 5203 ;; 5204 esac 5205 ;; 5206 5207 darwin* | rhapsody*) 5208 _LT_DARWIN_LINKER_FEATURES($1) 5209 ;; 5210 5211 dgux*) 5212 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 5213 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 5214 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5215 ;; 5216 5217 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor 5218 # support. Future versions do this automatically, but an explicit c++rt0.o 5219 # does not break anything, and helps significantly (at the cost of a little 5220 # extra space). 5221 freebsd2.2*) 5222 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' 5223 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 5224 _LT_TAGVAR(hardcode_direct, $1)=yes 5225 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5226 ;; 5227 5228 # Unfortunately, older versions of FreeBSD 2 do not have this feature. 5229 freebsd2.*) 5230 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' 5231 _LT_TAGVAR(hardcode_direct, $1)=yes 5232 _LT_TAGVAR(hardcode_minus_L, $1)=yes 5233 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5234 ;; 5235 5236 # FreeBSD 3 and greater uses gcc -shared to do shared libraries. 5237 freebsd* | dragonfly*) 5238 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' 5239 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 5240 _LT_TAGVAR(hardcode_direct, $1)=yes 5241 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5242 ;; 5243 5244 hpux9*) 5245 if test "$GCC" = yes; then 5246 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' 5247 else 5248 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' 5249 fi 5250 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' 5251 _LT_TAGVAR(hardcode_libdir_separator, $1)=: 5252 _LT_TAGVAR(hardcode_direct, $1)=yes 5253 5254 # hardcode_minus_L: Not really in the search PATH, 5255 # but as the default location of the library. 5256 _LT_TAGVAR(hardcode_minus_L, $1)=yes 5257 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' 5258 ;; 5259 5260 hpux10*) 5261 if test "$GCC" = yes && test "$with_gnu_ld" = no; then 5262 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' 5263 else 5264 _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' 5265 fi 5266 if test "$with_gnu_ld" = no; then 5267 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' 5268 _LT_TAGVAR(hardcode_libdir_separator, $1)=: 5269 _LT_TAGVAR(hardcode_direct, $1)=yes 5270 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 5271 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' 5272 # hardcode_minus_L: Not really in the search PATH, 5273 # but as the default location of the library. 5274 _LT_TAGVAR(hardcode_minus_L, $1)=yes 5275 fi 5276 ;; 5277 5278 hpux11*) 5279 if test "$GCC" = yes && test "$with_gnu_ld" = no; then 5280 case $host_cpu in 5281 hppa*64*) 5282 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' 5283 ;; 5284 ia64*) 5285 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' 5286 ;; 5287 *) 5288 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' 5289 ;; 5290 esac 5291 else 5292 case $host_cpu in 5293 hppa*64*) 5294 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' 5295 ;; 5296 ia64*) 5297 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' 5298 ;; 5299 *) 5300 m4_if($1, [], [ 5301 # Older versions of the 11.00 compiler do not understand -b yet 5302 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) 5303 _LT_LINKER_OPTION([if $CC understands -b], 5304 _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b], 5305 [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'], 5306 [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])], 5307 [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags']) 5308 ;; 5309 esac 5310 fi 5311 if test "$with_gnu_ld" = no; then 5312 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' 5313 _LT_TAGVAR(hardcode_libdir_separator, $1)=: 5314 5315 case $host_cpu in 5316 hppa*64*|ia64*) 5317 _LT_TAGVAR(hardcode_direct, $1)=no 5318 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5319 ;; 5320 *) 5321 _LT_TAGVAR(hardcode_direct, $1)=yes 5322 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 5323 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' 5324 5325 # hardcode_minus_L: Not really in the search PATH, 5326 # but as the default location of the library. 5327 _LT_TAGVAR(hardcode_minus_L, $1)=yes 5328 ;; 5329 esac 5330 fi 5331 ;; 5332 5333 irix5* | irix6* | nonstopux*) 5334 if test "$GCC" = yes; then 5335 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' 5336 # Try to use the -exported_symbol ld option, if it does not 5337 # work, assume that -exports_file does not work either and 5338 # implicitly export all symbols. 5339 # This should be the same for all languages, so no per-tag cache variable. 5340 AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol], 5341 [lt_cv_irix_exported_symbol], 5342 [save_LDFLAGS="$LDFLAGS" 5343 LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" 5344 AC_LINK_IFELSE( 5345 [AC_LANG_SOURCE( 5346 [AC_LANG_CASE([C], [[int foo (void) { return 0; }]], 5347 [C++], [[int foo (void) { return 0; }]], 5348 [Fortran 77], [[ 5349 subroutine foo 5350 end]], 5351 [Fortran], [[ 5352 subroutine foo 5353 end]])])], 5354 [lt_cv_irix_exported_symbol=yes], 5355 [lt_cv_irix_exported_symbol=no]) 5356 LDFLAGS="$save_LDFLAGS"]) 5357 if test "$lt_cv_irix_exported_symbol" = yes; then 5358 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib' 5359 fi 5360 else 5361 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' 5362 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib' 5363 fi 5364 _LT_TAGVAR(archive_cmds_need_lc, $1)='no' 5365 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' 5366 _LT_TAGVAR(hardcode_libdir_separator, $1)=: 5367 _LT_TAGVAR(inherit_rpath, $1)=yes 5368 _LT_TAGVAR(link_all_deplibs, $1)=yes 5369 ;; 5370 5371 netbsd* | netbsdelf*-gnu) 5372 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then 5373 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out 5374 else 5375 _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF 5376 fi 5377 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 5378 _LT_TAGVAR(hardcode_direct, $1)=yes 5379 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5380 ;; 5381 5382 newsos6) 5383 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 5384 _LT_TAGVAR(hardcode_direct, $1)=yes 5385 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' 5386 _LT_TAGVAR(hardcode_libdir_separator, $1)=: 5387 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5388 ;; 5389 5390 *nto* | *qnx*) 5391 ;; 5392 5393 openbsd*) 5394 if test -f /usr/libexec/ld.so; then 5395 _LT_TAGVAR(hardcode_direct, $1)=yes 5396 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5397 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 5398 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then 5399 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' 5400 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' 5401 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' 5402 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' 5403 else 5404 case $host_os in 5405 openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) 5406 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' 5407 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 5408 ;; 5409 *) 5410 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' 5411 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' 5412 ;; 5413 esac 5414 fi 5415 else 5416 _LT_TAGVAR(ld_shlibs, $1)=no 5417 fi 5418 ;; 5419 5420 os2*) 5421 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 5422 _LT_TAGVAR(hardcode_minus_L, $1)=yes 5423 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 5424 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' 5425 _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' 5426 ;; 5427 5428 osf3*) 5429 if test "$GCC" = yes; then 5430 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' 5431 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' 5432 else 5433 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' 5434 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' 5435 fi 5436 _LT_TAGVAR(archive_cmds_need_lc, $1)='no' 5437 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' 5438 _LT_TAGVAR(hardcode_libdir_separator, $1)=: 5439 ;; 5440 5441 osf4* | osf5*) # as osf3* with the addition of -msym flag 5442 if test "$GCC" = yes; then 5443 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' 5444 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' 5445 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' 5446 else 5447 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' 5448 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' 5449 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ 5450 $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp' 5451 5452 # Both c and cxx compiler support -rpath directly 5453 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' 5454 fi 5455 _LT_TAGVAR(archive_cmds_need_lc, $1)='no' 5456 _LT_TAGVAR(hardcode_libdir_separator, $1)=: 5457 ;; 5458 5459 solaris*) 5460 _LT_TAGVAR(no_undefined_flag, $1)=' -z defs' 5461 if test "$GCC" = yes; then 5462 wlarc='${wl}' 5463 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' 5464 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 5465 $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' 5466 else 5467 case `$CC -V 2>&1` in 5468 *"Compilers 5.0"*) 5469 wlarc='' 5470 _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' 5471 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 5472 $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' 5473 ;; 5474 *) 5475 wlarc='${wl}' 5476 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags' 5477 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 5478 $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' 5479 ;; 5480 esac 5481 fi 5482 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 5483 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5484 case $host_os in 5485 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; 5486 *) 5487 # The compiler driver will combine and reorder linker options, 5488 # but understands `-z linker_flag'. GCC discards it without `$wl', 5489 # but is careful enough not to reorder. 5490 # Supported since Solaris 2.6 (maybe 2.5.1?) 5491 if test "$GCC" = yes; then 5492 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' 5493 else 5494 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' 5495 fi 5496 ;; 5497 esac 5498 _LT_TAGVAR(link_all_deplibs, $1)=yes 5499 ;; 5500 5501 sunos4*) 5502 if test "x$host_vendor" = xsequent; then 5503 # Use $CC to link under sequent, because it throws in some extra .o 5504 # files that make .init and .fini sections work. 5505 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' 5506 else 5507 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' 5508 fi 5509 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 5510 _LT_TAGVAR(hardcode_direct, $1)=yes 5511 _LT_TAGVAR(hardcode_minus_L, $1)=yes 5512 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5513 ;; 5514 5515 sysv4) 5516 case $host_vendor in 5517 sni) 5518 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 5519 _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true??? 5520 ;; 5521 siemens) 5522 ## LD is ld it makes a PLAMLIB 5523 ## CC just makes a GrossModule. 5524 _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' 5525 _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' 5526 _LT_TAGVAR(hardcode_direct, $1)=no 5527 ;; 5528 motorola) 5529 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 5530 _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie 5531 ;; 5532 esac 5533 runpath_var='LD_RUN_PATH' 5534 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5535 ;; 5536 5537 sysv4.3*) 5538 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 5539 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5540 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' 5541 ;; 5542 5543 sysv4*MP*) 5544 if test -d /usr/nec; then 5545 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 5546 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5547 runpath_var=LD_RUN_PATH 5548 hardcode_runpath_var=yes 5549 _LT_TAGVAR(ld_shlibs, $1)=yes 5550 fi 5551 ;; 5552 5553 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) 5554 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' 5555 _LT_TAGVAR(archive_cmds_need_lc, $1)=no 5556 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5557 runpath_var='LD_RUN_PATH' 5558 5559 if test "$GCC" = yes; then 5560 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 5561 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 5562 else 5563 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 5564 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 5565 fi 5566 ;; 5567 5568 sysv5* | sco3.2v5* | sco5v6*) 5569 # Note: We can NOT use -z defs as we might desire, because we do not 5570 # link with -lc, and that would cause any symbols used from libc to 5571 # always be unresolved, which means just about no library would 5572 # ever link correctly. If we're not using GNU ld we use -z text 5573 # though, which does catch some bad symbols but isn't as heavy-handed 5574 # as -z defs. 5575 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' 5576 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' 5577 _LT_TAGVAR(archive_cmds_need_lc, $1)=no 5578 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5579 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' 5580 _LT_TAGVAR(hardcode_libdir_separator, $1)=':' 5581 _LT_TAGVAR(link_all_deplibs, $1)=yes 5582 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' 5583 runpath_var='LD_RUN_PATH' 5584 5585 if test "$GCC" = yes; then 5586 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 5587 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 5588 else 5589 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 5590 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 5591 fi 5592 ;; 5593 5594 uts4*) 5595 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 5596 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 5597 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5598 ;; 5599 5600 *) 5601 _LT_TAGVAR(ld_shlibs, $1)=no 5602 ;; 5603 esac 5604 5605 if test x$host_vendor = xsni; then 5606 case $host in 5607 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) 5608 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym' 5609 ;; 5610 esac 5611 fi 5612 fi 5613]) 5614AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) 5615test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no 5616 5617_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld 5618 5619_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl 5620_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl 5621_LT_DECL([], [extract_expsyms_cmds], [2], 5622 [The commands to extract the exported symbol list from a shared archive]) 5623 5624# 5625# Do we need to explicitly link libc? 5626# 5627case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in 5628x|xyes) 5629 # Assume -lc should be added 5630 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes 5631 5632 if test "$enable_shared" = yes && test "$GCC" = yes; then 5633 case $_LT_TAGVAR(archive_cmds, $1) in 5634 *'~'*) 5635 # FIXME: we may have to deal with multi-command sequences. 5636 ;; 5637 '$CC '*) 5638 # Test whether the compiler implicitly links with -lc since on some 5639 # systems, -lgcc has to come before -lc. If gcc already passes -lc 5640 # to ld, don't add -lc before -lgcc. 5641 AC_CACHE_CHECK([whether -lc should be explicitly linked in], 5642 [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1), 5643 [$RM conftest* 5644 echo "$lt_simple_compile_test_code" > conftest.$ac_ext 5645 5646 if AC_TRY_EVAL(ac_compile) 2>conftest.err; then 5647 soname=conftest 5648 lib=conftest 5649 libobjs=conftest.$ac_objext 5650 deplibs= 5651 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) 5652 pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1) 5653 compiler_flags=-v 5654 linker_flags=-v 5655 verstring= 5656 output_objdir=. 5657 libname=conftest 5658 lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1) 5659 _LT_TAGVAR(allow_undefined_flag, $1)= 5660 if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 5661 then 5662 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no 5663 else 5664 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes 5665 fi 5666 _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag 5667 else 5668 cat conftest.err 1>&5 5669 fi 5670 $RM conftest* 5671 ]) 5672 _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1) 5673 ;; 5674 esac 5675 fi 5676 ;; 5677esac 5678 5679_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0], 5680 [Whether or not to add -lc for building shared libraries]) 5681_LT_TAGDECL([allow_libtool_libs_with_static_runtimes], 5682 [enable_shared_with_static_runtimes], [0], 5683 [Whether or not to disallow shared libs when runtime libs are static]) 5684_LT_TAGDECL([], [export_dynamic_flag_spec], [1], 5685 [Compiler flag to allow reflexive dlopens]) 5686_LT_TAGDECL([], [whole_archive_flag_spec], [1], 5687 [Compiler flag to generate shared objects directly from archives]) 5688_LT_TAGDECL([], [compiler_needs_object], [1], 5689 [Whether the compiler copes with passing no objects directly]) 5690_LT_TAGDECL([], [old_archive_from_new_cmds], [2], 5691 [Create an old-style archive from a shared archive]) 5692_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2], 5693 [Create a temporary old-style archive to link instead of a shared archive]) 5694_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive]) 5695_LT_TAGDECL([], [archive_expsym_cmds], [2]) 5696_LT_TAGDECL([], [module_cmds], [2], 5697 [Commands used to build a loadable module if different from building 5698 a shared archive.]) 5699_LT_TAGDECL([], [module_expsym_cmds], [2]) 5700_LT_TAGDECL([], [with_gnu_ld], [1], 5701 [Whether we are building with GNU ld or not]) 5702_LT_TAGDECL([], [allow_undefined_flag], [1], 5703 [Flag that allows shared libraries with undefined symbols to be built]) 5704_LT_TAGDECL([], [no_undefined_flag], [1], 5705 [Flag that enforces no undefined symbols]) 5706_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1], 5707 [Flag to hardcode $libdir into a binary during linking. 5708 This must work even if $libdir does not exist]) 5709_LT_TAGDECL([], [hardcode_libdir_separator], [1], 5710 [Whether we need a single "-rpath" flag with a separated argument]) 5711_LT_TAGDECL([], [hardcode_direct], [0], 5712 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes 5713 DIR into the resulting binary]) 5714_LT_TAGDECL([], [hardcode_direct_absolute], [0], 5715 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes 5716 DIR into the resulting binary and the resulting library dependency is 5717 "absolute", i.e impossible to change by setting ${shlibpath_var} if the 5718 library is relocated]) 5719_LT_TAGDECL([], [hardcode_minus_L], [0], 5720 [Set to "yes" if using the -LDIR flag during linking hardcodes DIR 5721 into the resulting binary]) 5722_LT_TAGDECL([], [hardcode_shlibpath_var], [0], 5723 [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR 5724 into the resulting binary]) 5725_LT_TAGDECL([], [hardcode_automatic], [0], 5726 [Set to "yes" if building a shared library automatically hardcodes DIR 5727 into the library and all subsequent libraries and executables linked 5728 against it]) 5729_LT_TAGDECL([], [inherit_rpath], [0], 5730 [Set to yes if linker adds runtime paths of dependent libraries 5731 to runtime path list]) 5732_LT_TAGDECL([], [link_all_deplibs], [0], 5733 [Whether libtool must link a program against all its dependency libraries]) 5734_LT_TAGDECL([], [always_export_symbols], [0], 5735 [Set to "yes" if exported symbols are required]) 5736_LT_TAGDECL([], [export_symbols_cmds], [2], 5737 [The commands to list exported symbols]) 5738_LT_TAGDECL([], [exclude_expsyms], [1], 5739 [Symbols that should not be listed in the preloaded symbols]) 5740_LT_TAGDECL([], [include_expsyms], [1], 5741 [Symbols that must always be exported]) 5742_LT_TAGDECL([], [prelink_cmds], [2], 5743 [Commands necessary for linking programs (against libraries) with templates]) 5744_LT_TAGDECL([], [postlink_cmds], [2], 5745 [Commands necessary for finishing linking programs]) 5746_LT_TAGDECL([], [file_list_spec], [1], 5747 [Specify filename containing input files]) 5748dnl FIXME: Not yet implemented 5749dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1], 5750dnl [Compiler flag to generate thread safe objects]) 5751])# _LT_LINKER_SHLIBS 5752 5753 5754# _LT_LANG_C_CONFIG([TAG]) 5755# ------------------------ 5756# Ensure that the configuration variables for a C compiler are suitably 5757# defined. These variables are subsequently used by _LT_CONFIG to write 5758# the compiler configuration to `libtool'. 5759m4_defun([_LT_LANG_C_CONFIG], 5760[m4_require([_LT_DECL_EGREP])dnl 5761lt_save_CC="$CC" 5762AC_LANG_PUSH(C) 5763 5764# Source file extension for C test sources. 5765ac_ext=c 5766 5767# Object file extension for compiled C test sources. 5768objext=o 5769_LT_TAGVAR(objext, $1)=$objext 5770 5771# Code to be used in simple compile tests 5772lt_simple_compile_test_code="int some_variable = 0;" 5773 5774# Code to be used in simple link tests 5775lt_simple_link_test_code='int main(){return(0);}' 5776 5777_LT_TAG_COMPILER 5778# Save the default compiler, since it gets overwritten when the other 5779# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. 5780compiler_DEFAULT=$CC 5781 5782# save warnings/boilerplate of simple test code 5783_LT_COMPILER_BOILERPLATE 5784_LT_LINKER_BOILERPLATE 5785 5786if test -n "$compiler"; then 5787 _LT_COMPILER_NO_RTTI($1) 5788 _LT_COMPILER_PIC($1) 5789 _LT_COMPILER_C_O($1) 5790 _LT_COMPILER_FILE_LOCKS($1) 5791 _LT_LINKER_SHLIBS($1) 5792 _LT_SYS_DYNAMIC_LINKER($1) 5793 _LT_LINKER_HARDCODE_LIBPATH($1) 5794 LT_SYS_DLOPEN_SELF 5795 _LT_CMD_STRIPLIB 5796 5797 # Report which library types will actually be built 5798 AC_MSG_CHECKING([if libtool supports shared libraries]) 5799 AC_MSG_RESULT([$can_build_shared]) 5800 5801 AC_MSG_CHECKING([whether to build shared libraries]) 5802 test "$can_build_shared" = "no" && enable_shared=no 5803 5804 # On AIX, shared libraries and static libraries use the same namespace, and 5805 # are all built from PIC. 5806 case $host_os in 5807 aix3*) 5808 test "$enable_shared" = yes && enable_static=no 5809 if test -n "$RANLIB"; then 5810 archive_cmds="$archive_cmds~\$RANLIB \$lib" 5811 postinstall_cmds='$RANLIB $lib' 5812 fi 5813 ;; 5814 5815 aix[[4-9]]*) 5816 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then 5817 test "$enable_shared" = yes && enable_static=no 5818 fi 5819 ;; 5820 esac 5821 AC_MSG_RESULT([$enable_shared]) 5822 5823 AC_MSG_CHECKING([whether to build static libraries]) 5824 # Make sure either enable_shared or enable_static is yes. 5825 test "$enable_shared" = yes || enable_static=yes 5826 AC_MSG_RESULT([$enable_static]) 5827 5828 _LT_CONFIG($1) 5829fi 5830AC_LANG_POP 5831CC="$lt_save_CC" 5832])# _LT_LANG_C_CONFIG 5833 5834 5835# _LT_LANG_CXX_CONFIG([TAG]) 5836# -------------------------- 5837# Ensure that the configuration variables for a C++ compiler are suitably 5838# defined. These variables are subsequently used by _LT_CONFIG to write 5839# the compiler configuration to `libtool'. 5840m4_defun([_LT_LANG_CXX_CONFIG], 5841[m4_require([_LT_FILEUTILS_DEFAULTS])dnl 5842m4_require([_LT_DECL_EGREP])dnl 5843m4_require([_LT_PATH_MANIFEST_TOOL])dnl 5844if test -n "$CXX" && ( test "X$CXX" != "Xno" && 5845 ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || 5846 (test "X$CXX" != "Xg++"))) ; then 5847 AC_PROG_CXXCPP 5848else 5849 _lt_caught_CXX_error=yes 5850fi 5851 5852AC_LANG_PUSH(C++) 5853_LT_TAGVAR(archive_cmds_need_lc, $1)=no 5854_LT_TAGVAR(allow_undefined_flag, $1)= 5855_LT_TAGVAR(always_export_symbols, $1)=no 5856_LT_TAGVAR(archive_expsym_cmds, $1)= 5857_LT_TAGVAR(compiler_needs_object, $1)=no 5858_LT_TAGVAR(export_dynamic_flag_spec, $1)= 5859_LT_TAGVAR(hardcode_direct, $1)=no 5860_LT_TAGVAR(hardcode_direct_absolute, $1)=no 5861_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= 5862_LT_TAGVAR(hardcode_libdir_separator, $1)= 5863_LT_TAGVAR(hardcode_minus_L, $1)=no 5864_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported 5865_LT_TAGVAR(hardcode_automatic, $1)=no 5866_LT_TAGVAR(inherit_rpath, $1)=no 5867_LT_TAGVAR(module_cmds, $1)= 5868_LT_TAGVAR(module_expsym_cmds, $1)= 5869_LT_TAGVAR(link_all_deplibs, $1)=unknown 5870_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds 5871_LT_TAGVAR(reload_flag, $1)=$reload_flag 5872_LT_TAGVAR(reload_cmds, $1)=$reload_cmds 5873_LT_TAGVAR(no_undefined_flag, $1)= 5874_LT_TAGVAR(whole_archive_flag_spec, $1)= 5875_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no 5876 5877# Source file extension for C++ test sources. 5878ac_ext=cpp 5879 5880# Object file extension for compiled C++ test sources. 5881objext=o 5882_LT_TAGVAR(objext, $1)=$objext 5883 5884# No sense in running all these tests if we already determined that 5885# the CXX compiler isn't working. Some variables (like enable_shared) 5886# are currently assumed to apply to all compilers on this platform, 5887# and will be corrupted by setting them based on a non-working compiler. 5888if test "$_lt_caught_CXX_error" != yes; then 5889 # Code to be used in simple compile tests 5890 lt_simple_compile_test_code="int some_variable = 0;" 5891 5892 # Code to be used in simple link tests 5893 lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }' 5894 5895 # ltmain only uses $CC for tagged configurations so make sure $CC is set. 5896 _LT_TAG_COMPILER 5897 5898 # save warnings/boilerplate of simple test code 5899 _LT_COMPILER_BOILERPLATE 5900 _LT_LINKER_BOILERPLATE 5901 5902 # Allow CC to be a program name with arguments. 5903 lt_save_CC=$CC 5904 lt_save_CFLAGS=$CFLAGS 5905 lt_save_LD=$LD 5906 lt_save_GCC=$GCC 5907 GCC=$GXX 5908 lt_save_with_gnu_ld=$with_gnu_ld 5909 lt_save_path_LD=$lt_cv_path_LD 5910 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then 5911 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx 5912 else 5913 $as_unset lt_cv_prog_gnu_ld 5914 fi 5915 if test -n "${lt_cv_path_LDCXX+set}"; then 5916 lt_cv_path_LD=$lt_cv_path_LDCXX 5917 else 5918 $as_unset lt_cv_path_LD 5919 fi 5920 test -z "${LDCXX+set}" || LD=$LDCXX 5921 CC=${CXX-"c++"} 5922 CFLAGS=$CXXFLAGS 5923 compiler=$CC 5924 _LT_TAGVAR(compiler, $1)=$CC 5925 _LT_CC_BASENAME([$compiler]) 5926 5927 if test -n "$compiler"; then 5928 # We don't want -fno-exception when compiling C++ code, so set the 5929 # no_builtin_flag separately 5930 if test "$GXX" = yes; then 5931 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' 5932 else 5933 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= 5934 fi 5935 5936 if test "$GXX" = yes; then 5937 # Set up default GNU C++ configuration 5938 5939 LT_PATH_LD 5940 5941 # Check if GNU C++ uses GNU ld as the underlying linker, since the 5942 # archiving commands below assume that GNU ld is being used. 5943 if test "$with_gnu_ld" = yes; then 5944 _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' 5945 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' 5946 5947 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' 5948 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' 5949 5950 # If archive_cmds runs LD, not CC, wlarc should be empty 5951 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to 5952 # investigate it a little bit more. (MM) 5953 wlarc='${wl}' 5954 5955 # ancient GNU ld didn't support --whole-archive et. al. 5956 if eval "`$CC -print-prog-name=ld` --help 2>&1" | 5957 $GREP 'no-whole-archive' > /dev/null; then 5958 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' 5959 else 5960 _LT_TAGVAR(whole_archive_flag_spec, $1)= 5961 fi 5962 else 5963 with_gnu_ld=no 5964 wlarc= 5965 5966 # A generic and very simple default shared library creation 5967 # command for GNU C++ for the case where it uses the native 5968 # linker, instead of GNU ld. If possible, this setting should 5969 # overridden to take advantage of the native linker features on 5970 # the platform it is being used on. 5971 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' 5972 fi 5973 5974 # Commands to make compiler produce verbose output that lists 5975 # what "hidden" libraries, object files and flags are used when 5976 # linking a shared library. 5977 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' 5978 5979 else 5980 GXX=no 5981 with_gnu_ld=no 5982 wlarc= 5983 fi 5984 5985 # PORTME: fill in a description of your system's C++ link characteristics 5986 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) 5987 _LT_TAGVAR(ld_shlibs, $1)=yes 5988 case $host_os in 5989 aix3*) 5990 # FIXME: insert proper C++ library support 5991 _LT_TAGVAR(ld_shlibs, $1)=no 5992 ;; 5993 aix[[4-9]]*) 5994 if test "$host_cpu" = ia64; then 5995 # On IA64, the linker does run time linking by default, so we don't 5996 # have to do anything special. 5997 aix_use_runtimelinking=no 5998 exp_sym_flag='-Bexport' 5999 no_entry_flag="" 6000 else 6001 aix_use_runtimelinking=no 6002 6003 # Test if we are trying to use run time linking or normal 6004 # AIX style linking. If -brtl is somewhere in LDFLAGS, we 6005 # need to do runtime linking. 6006 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) 6007 for ld_flag in $LDFLAGS; do 6008 case $ld_flag in 6009 *-brtl*) 6010 aix_use_runtimelinking=yes 6011 break 6012 ;; 6013 esac 6014 done 6015 ;; 6016 esac 6017 6018 exp_sym_flag='-bexport' 6019 no_entry_flag='-bnoentry' 6020 fi 6021 6022 # When large executables or shared objects are built, AIX ld can 6023 # have problems creating the table of contents. If linking a library 6024 # or program results in "error TOC overflow" add -mminimal-toc to 6025 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not 6026 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. 6027 6028 _LT_TAGVAR(archive_cmds, $1)='' 6029 _LT_TAGVAR(hardcode_direct, $1)=yes 6030 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 6031 _LT_TAGVAR(hardcode_libdir_separator, $1)=':' 6032 _LT_TAGVAR(link_all_deplibs, $1)=yes 6033 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' 6034 6035 if test "$GXX" = yes; then 6036 case $host_os in aix4.[[012]]|aix4.[[012]].*) 6037 # We only want to do this on AIX 4.2 and lower, the check 6038 # below for broken collect2 doesn't work under 4.3+ 6039 collect2name=`${CC} -print-prog-name=collect2` 6040 if test -f "$collect2name" && 6041 strings "$collect2name" | $GREP resolve_lib_name >/dev/null 6042 then 6043 # We have reworked collect2 6044 : 6045 else 6046 # We have old collect2 6047 _LT_TAGVAR(hardcode_direct, $1)=unsupported 6048 # It fails to find uninstalled libraries when the uninstalled 6049 # path is not listed in the libpath. Setting hardcode_minus_L 6050 # to unsupported forces relinking 6051 _LT_TAGVAR(hardcode_minus_L, $1)=yes 6052 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 6053 _LT_TAGVAR(hardcode_libdir_separator, $1)= 6054 fi 6055 esac 6056 shared_flag='-shared' 6057 if test "$aix_use_runtimelinking" = yes; then 6058 shared_flag="$shared_flag "'${wl}-G' 6059 fi 6060 else 6061 # not using gcc 6062 if test "$host_cpu" = ia64; then 6063 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release 6064 # chokes on -Wl,-G. The following line is correct: 6065 shared_flag='-G' 6066 else 6067 if test "$aix_use_runtimelinking" = yes; then 6068 shared_flag='${wl}-G' 6069 else 6070 shared_flag='${wl}-bM:SRE' 6071 fi 6072 fi 6073 fi 6074 6075 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' 6076 # It seems that -bexpall does not export symbols beginning with 6077 # underscore (_), so it is better to generate a list of symbols to 6078 # export. 6079 _LT_TAGVAR(always_export_symbols, $1)=yes 6080 if test "$aix_use_runtimelinking" = yes; then 6081 # Warning - without using the other runtime loading flags (-brtl), 6082 # -berok will link without error, but may produce a broken library. 6083 _LT_TAGVAR(allow_undefined_flag, $1)='-berok' 6084 # Determine the default libpath from the value encoded in an empty 6085 # executable. 6086 _LT_SYS_MODULE_PATH_AIX([$1]) 6087 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" 6088 6089 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" 6090 else 6091 if test "$host_cpu" = ia64; then 6092 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' 6093 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" 6094 _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" 6095 else 6096 # Determine the default libpath from the value encoded in an 6097 # empty executable. 6098 _LT_SYS_MODULE_PATH_AIX([$1]) 6099 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" 6100 # Warning - without using the other run time loading flags, 6101 # -berok will link without error, but may produce a broken library. 6102 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' 6103 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' 6104 if test "$with_gnu_ld" = yes; then 6105 # We only use this code for GNU lds that support --whole-archive. 6106 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' 6107 else 6108 # Exported symbols can be pulled into shared objects from archives 6109 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' 6110 fi 6111 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes 6112 # This is similar to how AIX traditionally builds its shared 6113 # libraries. 6114 _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' 6115 fi 6116 fi 6117 ;; 6118 6119 beos*) 6120 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then 6121 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 6122 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc 6123 # support --undefined. This deserves some investigation. FIXME 6124 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' 6125 else 6126 _LT_TAGVAR(ld_shlibs, $1)=no 6127 fi 6128 ;; 6129 6130 chorus*) 6131 case $cc_basename in 6132 *) 6133 # FIXME: insert proper C++ library support 6134 _LT_TAGVAR(ld_shlibs, $1)=no 6135 ;; 6136 esac 6137 ;; 6138 6139 cygwin* | mingw* | pw32* | cegcc*) 6140 case $GXX,$cc_basename in 6141 ,cl* | no,cl*) 6142 # Native MSVC 6143 # hardcode_libdir_flag_spec is actually meaningless, as there is 6144 # no search path for DLLs. 6145 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' 6146 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 6147 _LT_TAGVAR(always_export_symbols, $1)=yes 6148 _LT_TAGVAR(file_list_spec, $1)='@' 6149 # Tell ltmain to make .lib files, not .a files. 6150 libext=lib 6151 # Tell ltmain to make .dll files, not .so files. 6152 shrext_cmds=".dll" 6153 # FIXME: Setting linknames here is a bad hack. 6154 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames=' 6155 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then 6156 $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; 6157 else 6158 $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp; 6159 fi~ 6160 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ 6161 linknames=' 6162 # The linker will not automatically build a static lib if we build a DLL. 6163 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' 6164 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 6165 # Don't use ranlib 6166 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' 6167 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ 6168 lt_tool_outputfile="@TOOL_OUTPUT@"~ 6169 case $lt_outputfile in 6170 *.exe|*.EXE) ;; 6171 *) 6172 lt_outputfile="$lt_outputfile.exe" 6173 lt_tool_outputfile="$lt_tool_outputfile.exe" 6174 ;; 6175 esac~ 6176 func_to_tool_file "$lt_outputfile"~ 6177 if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then 6178 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; 6179 $RM "$lt_outputfile.manifest"; 6180 fi' 6181 ;; 6182 *) 6183 # g++ 6184 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, 6185 # as there is no search path for DLLs. 6186 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 6187 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols' 6188 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 6189 _LT_TAGVAR(always_export_symbols, $1)=no 6190 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 6191 6192 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then 6193 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' 6194 # If the export-symbols file already is a .def file (1st line 6195 # is EXPORTS), use it as is; otherwise, prepend... 6196 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then 6197 cp $export_symbols $output_objdir/$soname.def; 6198 else 6199 echo EXPORTS > $output_objdir/$soname.def; 6200 cat $export_symbols >> $output_objdir/$soname.def; 6201 fi~ 6202 $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' 6203 else 6204 _LT_TAGVAR(ld_shlibs, $1)=no 6205 fi 6206 ;; 6207 esac 6208 ;; 6209 darwin* | rhapsody*) 6210 _LT_DARWIN_LINKER_FEATURES($1) 6211 ;; 6212 6213 dgux*) 6214 case $cc_basename in 6215 ec++*) 6216 # FIXME: insert proper C++ library support 6217 _LT_TAGVAR(ld_shlibs, $1)=no 6218 ;; 6219 ghcx*) 6220 # Green Hills C++ Compiler 6221 # FIXME: insert proper C++ library support 6222 _LT_TAGVAR(ld_shlibs, $1)=no 6223 ;; 6224 *) 6225 # FIXME: insert proper C++ library support 6226 _LT_TAGVAR(ld_shlibs, $1)=no 6227 ;; 6228 esac 6229 ;; 6230 6231 freebsd2.*) 6232 # C++ shared libraries reported to be fairly broken before 6233 # switch to ELF 6234 _LT_TAGVAR(ld_shlibs, $1)=no 6235 ;; 6236 6237 freebsd-elf*) 6238 _LT_TAGVAR(archive_cmds_need_lc, $1)=no 6239 ;; 6240 6241 freebsd* | dragonfly*) 6242 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF 6243 # conventions 6244 _LT_TAGVAR(ld_shlibs, $1)=yes 6245 ;; 6246 6247 haiku*) 6248 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' 6249 _LT_TAGVAR(link_all_deplibs, $1)=yes 6250 ;; 6251 6252 hpux9*) 6253 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' 6254 _LT_TAGVAR(hardcode_libdir_separator, $1)=: 6255 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' 6256 _LT_TAGVAR(hardcode_direct, $1)=yes 6257 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, 6258 # but as the default 6259 # location of the library. 6260 6261 case $cc_basename in 6262 CC*) 6263 # FIXME: insert proper C++ library support 6264 _LT_TAGVAR(ld_shlibs, $1)=no 6265 ;; 6266 aCC*) 6267 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' 6268 # Commands to make compiler produce verbose output that lists 6269 # what "hidden" libraries, object files and flags are used when 6270 # linking a shared library. 6271 # 6272 # There doesn't appear to be a way to prevent this compiler from 6273 # explicitly linking system object files so we need to strip them 6274 # from the output so that they don't get included in the library 6275 # dependencies. 6276 output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' 6277 ;; 6278 *) 6279 if test "$GXX" = yes; then 6280 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' 6281 else 6282 # FIXME: insert proper C++ library support 6283 _LT_TAGVAR(ld_shlibs, $1)=no 6284 fi 6285 ;; 6286 esac 6287 ;; 6288 6289 hpux10*|hpux11*) 6290 if test $with_gnu_ld = no; then 6291 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' 6292 _LT_TAGVAR(hardcode_libdir_separator, $1)=: 6293 6294 case $host_cpu in 6295 hppa*64*|ia64*) 6296 ;; 6297 *) 6298 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' 6299 ;; 6300 esac 6301 fi 6302 case $host_cpu in 6303 hppa*64*|ia64*) 6304 _LT_TAGVAR(hardcode_direct, $1)=no 6305 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 6306 ;; 6307 *) 6308 _LT_TAGVAR(hardcode_direct, $1)=yes 6309 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 6310 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, 6311 # but as the default 6312 # location of the library. 6313 ;; 6314 esac 6315 6316 case $cc_basename in 6317 CC*) 6318 # FIXME: insert proper C++ library support 6319 _LT_TAGVAR(ld_shlibs, $1)=no 6320 ;; 6321 aCC*) 6322 case $host_cpu in 6323 hppa*64*) 6324 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 6325 ;; 6326 ia64*) 6327 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 6328 ;; 6329 *) 6330 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 6331 ;; 6332 esac 6333 # Commands to make compiler produce verbose output that lists 6334 # what "hidden" libraries, object files and flags are used when 6335 # linking a shared library. 6336 # 6337 # There doesn't appear to be a way to prevent this compiler from 6338 # explicitly linking system object files so we need to strip them 6339 # from the output so that they don't get included in the library 6340 # dependencies. 6341 output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' 6342 ;; 6343 *) 6344 if test "$GXX" = yes; then 6345 if test $with_gnu_ld = no; then 6346 case $host_cpu in 6347 hppa*64*) 6348 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 6349 ;; 6350 ia64*) 6351 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 6352 ;; 6353 *) 6354 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 6355 ;; 6356 esac 6357 fi 6358 else 6359 # FIXME: insert proper C++ library support 6360 _LT_TAGVAR(ld_shlibs, $1)=no 6361 fi 6362 ;; 6363 esac 6364 ;; 6365 6366 interix[[3-9]]*) 6367 _LT_TAGVAR(hardcode_direct, $1)=no 6368 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 6369 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' 6370 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' 6371 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. 6372 # Instead, shared libraries are loaded at an image base (0x10000000 by 6373 # default) and relocated if they conflict, which is a slow very memory 6374 # consuming and fragmenting process. To avoid this, we pick a random, 6375 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link 6376 # time. Moving up from 0x10000000 also allows more sbrk(2) space. 6377 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' 6378 _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' 6379 ;; 6380 irix5* | irix6*) 6381 case $cc_basename in 6382 CC*) 6383 # SGI C++ 6384 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' 6385 6386 # Archives containing C++ object files must be created using 6387 # "CC -ar", where "CC" is the IRIX C++ compiler. This is 6388 # necessary to make sure instantiated templates are included 6389 # in the archive. 6390 _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' 6391 ;; 6392 *) 6393 if test "$GXX" = yes; then 6394 if test "$with_gnu_ld" = no; then 6395 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' 6396 else 6397 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` -o $lib' 6398 fi 6399 fi 6400 _LT_TAGVAR(link_all_deplibs, $1)=yes 6401 ;; 6402 esac 6403 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' 6404 _LT_TAGVAR(hardcode_libdir_separator, $1)=: 6405 _LT_TAGVAR(inherit_rpath, $1)=yes 6406 ;; 6407 6408 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) 6409 case $cc_basename in 6410 KCC*) 6411 # Kuck and Associates, Inc. (KAI) C++ Compiler 6412 6413 # KCC will only create a shared library if the output file 6414 # ends with ".so" (or ".sl" for HP-UX), so rename the library 6415 # to its proper name (with version) after linking. 6416 _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' 6417 _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' 6418 # Commands to make compiler produce verbose output that lists 6419 # what "hidden" libraries, object files and flags are used when 6420 # linking a shared library. 6421 # 6422 # There doesn't appear to be a way to prevent this compiler from 6423 # explicitly linking system object files so we need to strip them 6424 # from the output so that they don't get included in the library 6425 # dependencies. 6426 output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' 6427 6428 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' 6429 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' 6430 6431 # Archives containing C++ object files must be created using 6432 # "CC -Bstatic", where "CC" is the KAI C++ compiler. 6433 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' 6434 ;; 6435 icpc* | ecpc* ) 6436 # Intel C++ 6437 with_gnu_ld=yes 6438 # version 8.0 and above of icpc choke on multiply defined symbols 6439 # if we add $predep_objects and $postdep_objects, however 7.1 and 6440 # earlier do not add the objects themselves. 6441 case `$CC -V 2>&1` in 6442 *"Version 7."*) 6443 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' 6444 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' 6445 ;; 6446 *) # Version 8.0 or newer 6447 tmp_idyn= 6448 case $host_cpu in 6449 ia64*) tmp_idyn=' -i_dynamic';; 6450 esac 6451 _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' 6452 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' 6453 ;; 6454 esac 6455 _LT_TAGVAR(archive_cmds_need_lc, $1)=no 6456 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' 6457 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' 6458 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' 6459 ;; 6460 pgCC* | pgcpp*) 6461 # Portland Group C++ compiler 6462 case `$CC -V` in 6463 *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*) 6464 _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~ 6465 rm -rf $tpldir~ 6466 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ 6467 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"' 6468 _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~ 6469 rm -rf $tpldir~ 6470 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ 6471 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~ 6472 $RANLIB $oldlib' 6473 _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~ 6474 rm -rf $tpldir~ 6475 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ 6476 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' 6477 _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~ 6478 rm -rf $tpldir~ 6479 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ 6480 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' 6481 ;; 6482 *) # Version 6 and above use weak symbols 6483 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' 6484 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' 6485 ;; 6486 esac 6487 6488 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' 6489 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' 6490 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' 6491 ;; 6492 cxx*) 6493 # Compaq C++ 6494 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' 6495 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' 6496 6497 runpath_var=LD_RUN_PATH 6498 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' 6499 _LT_TAGVAR(hardcode_libdir_separator, $1)=: 6500 6501 # Commands to make compiler produce verbose output that lists 6502 # what "hidden" libraries, object files and flags are used when 6503 # linking a shared library. 6504 # 6505 # There doesn't appear to be a way to prevent this compiler from 6506 # explicitly linking system object files so we need to strip them 6507 # from the output so that they don't get included in the library 6508 # dependencies. 6509 output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed' 6510 ;; 6511 xl* | mpixl* | bgxl*) 6512 # IBM XL 8.0 on PPC, with GNU ld 6513 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' 6514 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' 6515 _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' 6516 if test "x$supports_anon_versioning" = xyes; then 6517 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ 6518 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ 6519 echo "local: *; };" >> $output_objdir/$libname.ver~ 6520 $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' 6521 fi 6522 ;; 6523 *) 6524 case `$CC -V 2>&1 | sed 5q` in 6525 *Sun\ C*) 6526 # Sun C++ 5.9 6527 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' 6528 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 6529 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols' 6530 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 6531 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' 6532 _LT_TAGVAR(compiler_needs_object, $1)=yes 6533 6534 # Not sure whether something based on 6535 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 6536 # would be better. 6537 output_verbose_link_cmd='func_echo_all' 6538 6539 # Archives containing C++ object files must be created using 6540 # "CC -xar", where "CC" is the Sun C++ compiler. This is 6541 # necessary to make sure instantiated templates are included 6542 # in the archive. 6543 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' 6544 ;; 6545 esac 6546 ;; 6547 esac 6548 ;; 6549 6550 lynxos*) 6551 # FIXME: insert proper C++ library support 6552 _LT_TAGVAR(ld_shlibs, $1)=no 6553 ;; 6554 6555 m88k*) 6556 # FIXME: insert proper C++ library support 6557 _LT_TAGVAR(ld_shlibs, $1)=no 6558 ;; 6559 6560 mvs*) 6561 case $cc_basename in 6562 cxx*) 6563 # FIXME: insert proper C++ library support 6564 _LT_TAGVAR(ld_shlibs, $1)=no 6565 ;; 6566 *) 6567 # FIXME: insert proper C++ library support 6568 _LT_TAGVAR(ld_shlibs, $1)=no 6569 ;; 6570 esac 6571 ;; 6572 6573 netbsd*) 6574 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then 6575 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' 6576 wlarc= 6577 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 6578 _LT_TAGVAR(hardcode_direct, $1)=yes 6579 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 6580 fi 6581 # Workaround some broken pre-1.5 toolchains 6582 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' 6583 ;; 6584 6585 *nto* | *qnx*) 6586 _LT_TAGVAR(ld_shlibs, $1)=yes 6587 ;; 6588 6589 openbsd2*) 6590 # C++ shared libraries are fairly broken 6591 _LT_TAGVAR(ld_shlibs, $1)=no 6592 ;; 6593 6594 openbsd*) 6595 if test -f /usr/libexec/ld.so; then 6596 _LT_TAGVAR(hardcode_direct, $1)=yes 6597 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 6598 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 6599 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' 6600 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' 6601 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then 6602 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib' 6603 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' 6604 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' 6605 fi 6606 output_verbose_link_cmd=func_echo_all 6607 else 6608 _LT_TAGVAR(ld_shlibs, $1)=no 6609 fi 6610 ;; 6611 6612 osf3* | osf4* | osf5*) 6613 case $cc_basename in 6614 KCC*) 6615 # Kuck and Associates, Inc. (KAI) C++ Compiler 6616 6617 # KCC will only create a shared library if the output file 6618 # ends with ".so" (or ".sl" for HP-UX), so rename the library 6619 # to its proper name (with version) after linking. 6620 _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' 6621 6622 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' 6623 _LT_TAGVAR(hardcode_libdir_separator, $1)=: 6624 6625 # Archives containing C++ object files must be created using 6626 # the KAI C++ compiler. 6627 case $host in 6628 osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; 6629 *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;; 6630 esac 6631 ;; 6632 RCC*) 6633 # Rational C++ 2.4.1 6634 # FIXME: insert proper C++ library support 6635 _LT_TAGVAR(ld_shlibs, $1)=no 6636 ;; 6637 cxx*) 6638 case $host in 6639 osf3*) 6640 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' 6641 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && func_echo_all "${wl}-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' 6642 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' 6643 ;; 6644 *) 6645 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' 6646 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' 6647 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ 6648 echo "-hidden">> $lib.exp~ 6649 $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~ 6650 $RM $lib.exp' 6651 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' 6652 ;; 6653 esac 6654 6655 _LT_TAGVAR(hardcode_libdir_separator, $1)=: 6656 6657 # Commands to make compiler produce verbose output that lists 6658 # what "hidden" libraries, object files and flags are used when 6659 # linking a shared library. 6660 # 6661 # There doesn't appear to be a way to prevent this compiler from 6662 # explicitly linking system object files so we need to strip them 6663 # from the output so that they don't get included in the library 6664 # dependencies. 6665 output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' 6666 ;; 6667 *) 6668 if test "$GXX" = yes && test "$with_gnu_ld" = no; then 6669 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' 6670 case $host in 6671 osf3*) 6672 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' 6673 ;; 6674 *) 6675 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' 6676 ;; 6677 esac 6678 6679 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' 6680 _LT_TAGVAR(hardcode_libdir_separator, $1)=: 6681 6682 # Commands to make compiler produce verbose output that lists 6683 # what "hidden" libraries, object files and flags are used when 6684 # linking a shared library. 6685 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' 6686 6687 else 6688 # FIXME: insert proper C++ library support 6689 _LT_TAGVAR(ld_shlibs, $1)=no 6690 fi 6691 ;; 6692 esac 6693 ;; 6694 6695 psos*) 6696 # FIXME: insert proper C++ library support 6697 _LT_TAGVAR(ld_shlibs, $1)=no 6698 ;; 6699 6700 sunos4*) 6701 case $cc_basename in 6702 CC*) 6703 # Sun C++ 4.x 6704 # FIXME: insert proper C++ library support 6705 _LT_TAGVAR(ld_shlibs, $1)=no 6706 ;; 6707 lcc*) 6708 # Lucid 6709 # FIXME: insert proper C++ library support 6710 _LT_TAGVAR(ld_shlibs, $1)=no 6711 ;; 6712 *) 6713 # FIXME: insert proper C++ library support 6714 _LT_TAGVAR(ld_shlibs, $1)=no 6715 ;; 6716 esac 6717 ;; 6718 6719 solaris*) 6720 case $cc_basename in 6721 CC* | sunCC*) 6722 # Sun C++ 4.2, 5.x and Centerline C++ 6723 _LT_TAGVAR(archive_cmds_need_lc,$1)=yes 6724 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' 6725 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 6726 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 6727 $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' 6728 6729 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 6730 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 6731 case $host_os in 6732 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; 6733 *) 6734 # The compiler driver will combine and reorder linker options, 6735 # but understands `-z linker_flag'. 6736 # Supported since Solaris 2.6 (maybe 2.5.1?) 6737 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' 6738 ;; 6739 esac 6740 _LT_TAGVAR(link_all_deplibs, $1)=yes 6741 6742 output_verbose_link_cmd='func_echo_all' 6743 6744 # Archives containing C++ object files must be created using 6745 # "CC -xar", where "CC" is the Sun C++ compiler. This is 6746 # necessary to make sure instantiated templates are included 6747 # in the archive. 6748 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' 6749 ;; 6750 gcx*) 6751 # Green Hills C++ Compiler 6752 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' 6753 6754 # The C++ compiler must be used to create the archive. 6755 _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' 6756 ;; 6757 *) 6758 # GNU C++ compiler with Solaris linker 6759 if test "$GXX" = yes && test "$with_gnu_ld" = no; then 6760 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' 6761 if $CC --version | $GREP -v '^2\.7' > /dev/null; then 6762 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' 6763 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 6764 $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' 6765 6766 # Commands to make compiler produce verbose output that lists 6767 # what "hidden" libraries, object files and flags are used when 6768 # linking a shared library. 6769 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' 6770 else 6771 # g++ 2.7 appears to require `-G' NOT `-shared' on this 6772 # platform. 6773 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' 6774 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 6775 $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' 6776 6777 # Commands to make compiler produce verbose output that lists 6778 # what "hidden" libraries, object files and flags are used when 6779 # linking a shared library. 6780 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' 6781 fi 6782 6783 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir' 6784 case $host_os in 6785 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; 6786 *) 6787 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' 6788 ;; 6789 esac 6790 fi 6791 ;; 6792 esac 6793 ;; 6794 6795 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) 6796 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' 6797 _LT_TAGVAR(archive_cmds_need_lc, $1)=no 6798 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 6799 runpath_var='LD_RUN_PATH' 6800 6801 case $cc_basename in 6802 CC*) 6803 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 6804 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 6805 ;; 6806 *) 6807 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 6808 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 6809 ;; 6810 esac 6811 ;; 6812 6813 sysv5* | sco3.2v5* | sco5v6*) 6814 # Note: We can NOT use -z defs as we might desire, because we do not 6815 # link with -lc, and that would cause any symbols used from libc to 6816 # always be unresolved, which means just about no library would 6817 # ever link correctly. If we're not using GNU ld we use -z text 6818 # though, which does catch some bad symbols but isn't as heavy-handed 6819 # as -z defs. 6820 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' 6821 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' 6822 _LT_TAGVAR(archive_cmds_need_lc, $1)=no 6823 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 6824 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' 6825 _LT_TAGVAR(hardcode_libdir_separator, $1)=':' 6826 _LT_TAGVAR(link_all_deplibs, $1)=yes 6827 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' 6828 runpath_var='LD_RUN_PATH' 6829 6830 case $cc_basename in 6831 CC*) 6832 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 6833 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 6834 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~ 6835 '"$_LT_TAGVAR(old_archive_cmds, $1)" 6836 _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~ 6837 '"$_LT_TAGVAR(reload_cmds, $1)" 6838 ;; 6839 *) 6840 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 6841 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 6842 ;; 6843 esac 6844 ;; 6845 6846 tandem*) 6847 case $cc_basename in 6848 NCC*) 6849 # NonStop-UX NCC 3.20 6850 # FIXME: insert proper C++ library support 6851 _LT_TAGVAR(ld_shlibs, $1)=no 6852 ;; 6853 *) 6854 # FIXME: insert proper C++ library support 6855 _LT_TAGVAR(ld_shlibs, $1)=no 6856 ;; 6857 esac 6858 ;; 6859 6860 vxworks*) 6861 # FIXME: insert proper C++ library support 6862 _LT_TAGVAR(ld_shlibs, $1)=no 6863 ;; 6864 6865 *) 6866 # FIXME: insert proper C++ library support 6867 _LT_TAGVAR(ld_shlibs, $1)=no 6868 ;; 6869 esac 6870 6871 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) 6872 test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no 6873 6874 _LT_TAGVAR(GCC, $1)="$GXX" 6875 _LT_TAGVAR(LD, $1)="$LD" 6876 6877 ## CAVEAT EMPTOR: 6878 ## There is no encapsulation within the following macros, do not change 6879 ## the running order or otherwise move them around unless you know exactly 6880 ## what you are doing... 6881 _LT_SYS_HIDDEN_LIBDEPS($1) 6882 _LT_COMPILER_PIC($1) 6883 _LT_COMPILER_C_O($1) 6884 _LT_COMPILER_FILE_LOCKS($1) 6885 _LT_LINKER_SHLIBS($1) 6886 _LT_SYS_DYNAMIC_LINKER($1) 6887 _LT_LINKER_HARDCODE_LIBPATH($1) 6888 6889 _LT_CONFIG($1) 6890 fi # test -n "$compiler" 6891 6892 CC=$lt_save_CC 6893 CFLAGS=$lt_save_CFLAGS 6894 LDCXX=$LD 6895 LD=$lt_save_LD 6896 GCC=$lt_save_GCC 6897 with_gnu_ld=$lt_save_with_gnu_ld 6898 lt_cv_path_LDCXX=$lt_cv_path_LD 6899 lt_cv_path_LD=$lt_save_path_LD 6900 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld 6901 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld 6902fi # test "$_lt_caught_CXX_error" != yes 6903 6904AC_LANG_POP 6905])# _LT_LANG_CXX_CONFIG 6906 6907 6908# _LT_FUNC_STRIPNAME_CNF 6909# ---------------------- 6910# func_stripname_cnf prefix suffix name 6911# strip PREFIX and SUFFIX off of NAME. 6912# PREFIX and SUFFIX must not contain globbing or regex special 6913# characters, hashes, percent signs, but SUFFIX may contain a leading 6914# dot (in which case that matches only a dot). 6915# 6916# This function is identical to the (non-XSI) version of func_stripname, 6917# except this one can be used by m4 code that may be executed by configure, 6918# rather than the libtool script. 6919m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl 6920AC_REQUIRE([_LT_DECL_SED]) 6921AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH]) 6922func_stripname_cnf () 6923{ 6924 case ${2} in 6925 .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;; 6926 *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;; 6927 esac 6928} # func_stripname_cnf 6929])# _LT_FUNC_STRIPNAME_CNF 6930 6931# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME]) 6932# --------------------------------- 6933# Figure out "hidden" library dependencies from verbose 6934# compiler output when linking a shared library. 6935# Parse the compiler output and extract the necessary 6936# objects, libraries and library flags. 6937m4_defun([_LT_SYS_HIDDEN_LIBDEPS], 6938[m4_require([_LT_FILEUTILS_DEFAULTS])dnl 6939AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl 6940# Dependencies to place before and after the object being linked: 6941_LT_TAGVAR(predep_objects, $1)= 6942_LT_TAGVAR(postdep_objects, $1)= 6943_LT_TAGVAR(predeps, $1)= 6944_LT_TAGVAR(postdeps, $1)= 6945_LT_TAGVAR(compiler_lib_search_path, $1)= 6946 6947dnl we can't use the lt_simple_compile_test_code here, 6948dnl because it contains code intended for an executable, 6949dnl not a library. It's possible we should let each 6950dnl tag define a new lt_????_link_test_code variable, 6951dnl but it's only used here... 6952m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF 6953int a; 6954void foo (void) { a = 0; } 6955_LT_EOF 6956], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF 6957class Foo 6958{ 6959public: 6960 Foo (void) { a = 0; } 6961private: 6962 int a; 6963}; 6964_LT_EOF 6965], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF 6966 subroutine foo 6967 implicit none 6968 integer*4 a 6969 a=0 6970 return 6971 end 6972_LT_EOF 6973], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF 6974 subroutine foo 6975 implicit none 6976 integer a 6977 a=0 6978 return 6979 end 6980_LT_EOF 6981], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF 6982public class foo { 6983 private int a; 6984 public void bar (void) { 6985 a = 0; 6986 } 6987}; 6988_LT_EOF 6989], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF 6990package foo 6991func foo() { 6992} 6993_LT_EOF 6994]) 6995 6996_lt_libdeps_save_CFLAGS=$CFLAGS 6997case "$CC $CFLAGS " in #( 6998*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;; 6999*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;; 7000*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;; 7001esac 7002 7003dnl Parse the compiler output and extract the necessary 7004dnl objects, libraries and library flags. 7005if AC_TRY_EVAL(ac_compile); then 7006 # Parse the compiler output and extract the necessary 7007 # objects, libraries and library flags. 7008 7009 # Sentinel used to keep track of whether or not we are before 7010 # the conftest object file. 7011 pre_test_object_deps_done=no 7012 7013 for p in `eval "$output_verbose_link_cmd"`; do 7014 case ${prev}${p} in 7015 7016 -L* | -R* | -l*) 7017 # Some compilers place space between "-{L,R}" and the path. 7018 # Remove the space. 7019 if test $p = "-L" || 7020 test $p = "-R"; then 7021 prev=$p 7022 continue 7023 fi 7024 7025 # Expand the sysroot to ease extracting the directories later. 7026 if test -z "$prev"; then 7027 case $p in 7028 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;; 7029 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;; 7030 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;; 7031 esac 7032 fi 7033 case $p in 7034 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;; 7035 esac 7036 if test "$pre_test_object_deps_done" = no; then 7037 case ${prev} in 7038 -L | -R) 7039 # Internal compiler library paths should come after those 7040 # provided the user. The postdeps already come after the 7041 # user supplied libs so there is no need to process them. 7042 if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then 7043 _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}" 7044 else 7045 _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}" 7046 fi 7047 ;; 7048 # The "-l" case would never come before the object being 7049 # linked, so don't bother handling this case. 7050 esac 7051 else 7052 if test -z "$_LT_TAGVAR(postdeps, $1)"; then 7053 _LT_TAGVAR(postdeps, $1)="${prev}${p}" 7054 else 7055 _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}" 7056 fi 7057 fi 7058 prev= 7059 ;; 7060 7061 *.lto.$objext) ;; # Ignore GCC LTO objects 7062 *.$objext) 7063 # This assumes that the test object file only shows up 7064 # once in the compiler output. 7065 if test "$p" = "conftest.$objext"; then 7066 pre_test_object_deps_done=yes 7067 continue 7068 fi 7069 7070 if test "$pre_test_object_deps_done" = no; then 7071 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then 7072 _LT_TAGVAR(predep_objects, $1)="$p" 7073 else 7074 _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p" 7075 fi 7076 else 7077 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then 7078 _LT_TAGVAR(postdep_objects, $1)="$p" 7079 else 7080 _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p" 7081 fi 7082 fi 7083 ;; 7084 7085 *) ;; # Ignore the rest. 7086 7087 esac 7088 done 7089 7090 # Clean up. 7091 rm -f a.out a.exe 7092else 7093 echo "libtool.m4: error: problem compiling $1 test program" 7094fi 7095 7096$RM -f confest.$objext 7097CFLAGS=$_lt_libdeps_save_CFLAGS 7098 7099# PORTME: override above test on systems where it is broken 7100m4_if([$1], [CXX], 7101[case $host_os in 7102interix[[3-9]]*) 7103 # Interix 3.5 installs completely hosed .la files for C++, so rather than 7104 # hack all around it, let's just trust "g++" to DTRT. 7105 _LT_TAGVAR(predep_objects,$1)= 7106 _LT_TAGVAR(postdep_objects,$1)= 7107 _LT_TAGVAR(postdeps,$1)= 7108 ;; 7109 7110linux*) 7111 case `$CC -V 2>&1 | sed 5q` in 7112 *Sun\ C*) 7113 # Sun C++ 5.9 7114 7115 # The more standards-conforming stlport4 library is 7116 # incompatible with the Cstd library. Avoid specifying 7117 # it if it's in CXXFLAGS. Ignore libCrun as 7118 # -library=stlport4 depends on it. 7119 case " $CXX $CXXFLAGS " in 7120 *" -library=stlport4 "*) 7121 solaris_use_stlport4=yes 7122 ;; 7123 esac 7124 7125 if test "$solaris_use_stlport4" != yes; then 7126 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' 7127 fi 7128 ;; 7129 esac 7130 ;; 7131 7132solaris*) 7133 case $cc_basename in 7134 CC* | sunCC*) 7135 # The more standards-conforming stlport4 library is 7136 # incompatible with the Cstd library. Avoid specifying 7137 # it if it's in CXXFLAGS. Ignore libCrun as 7138 # -library=stlport4 depends on it. 7139 case " $CXX $CXXFLAGS " in 7140 *" -library=stlport4 "*) 7141 solaris_use_stlport4=yes 7142 ;; 7143 esac 7144 7145 # Adding this requires a known-good setup of shared libraries for 7146 # Sun compiler versions before 5.6, else PIC objects from an old 7147 # archive will be linked into the output, leading to subtle bugs. 7148 if test "$solaris_use_stlport4" != yes; then 7149 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' 7150 fi 7151 ;; 7152 esac 7153 ;; 7154esac 7155]) 7156 7157case " $_LT_TAGVAR(postdeps, $1) " in 7158*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; 7159esac 7160 _LT_TAGVAR(compiler_lib_search_dirs, $1)= 7161if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then 7162 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'` 7163fi 7164_LT_TAGDECL([], [compiler_lib_search_dirs], [1], 7165 [The directories searched by this compiler when creating a shared library]) 7166_LT_TAGDECL([], [predep_objects], [1], 7167 [Dependencies to place before and after the objects being linked to 7168 create a shared library]) 7169_LT_TAGDECL([], [postdep_objects], [1]) 7170_LT_TAGDECL([], [predeps], [1]) 7171_LT_TAGDECL([], [postdeps], [1]) 7172_LT_TAGDECL([], [compiler_lib_search_path], [1], 7173 [The library search path used internally by the compiler when linking 7174 a shared library]) 7175])# _LT_SYS_HIDDEN_LIBDEPS 7176 7177 7178# _LT_LANG_F77_CONFIG([TAG]) 7179# -------------------------- 7180# Ensure that the configuration variables for a Fortran 77 compiler are 7181# suitably defined. These variables are subsequently used by _LT_CONFIG 7182# to write the compiler configuration to `libtool'. 7183m4_defun([_LT_LANG_F77_CONFIG], 7184[AC_LANG_PUSH(Fortran 77) 7185if test -z "$F77" || test "X$F77" = "Xno"; then 7186 _lt_disable_F77=yes 7187fi 7188 7189_LT_TAGVAR(archive_cmds_need_lc, $1)=no 7190_LT_TAGVAR(allow_undefined_flag, $1)= 7191_LT_TAGVAR(always_export_symbols, $1)=no 7192_LT_TAGVAR(archive_expsym_cmds, $1)= 7193_LT_TAGVAR(export_dynamic_flag_spec, $1)= 7194_LT_TAGVAR(hardcode_direct, $1)=no 7195_LT_TAGVAR(hardcode_direct_absolute, $1)=no 7196_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= 7197_LT_TAGVAR(hardcode_libdir_separator, $1)= 7198_LT_TAGVAR(hardcode_minus_L, $1)=no 7199_LT_TAGVAR(hardcode_automatic, $1)=no 7200_LT_TAGVAR(inherit_rpath, $1)=no 7201_LT_TAGVAR(module_cmds, $1)= 7202_LT_TAGVAR(module_expsym_cmds, $1)= 7203_LT_TAGVAR(link_all_deplibs, $1)=unknown 7204_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds 7205_LT_TAGVAR(reload_flag, $1)=$reload_flag 7206_LT_TAGVAR(reload_cmds, $1)=$reload_cmds 7207_LT_TAGVAR(no_undefined_flag, $1)= 7208_LT_TAGVAR(whole_archive_flag_spec, $1)= 7209_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no 7210 7211# Source file extension for f77 test sources. 7212ac_ext=f 7213 7214# Object file extension for compiled f77 test sources. 7215objext=o 7216_LT_TAGVAR(objext, $1)=$objext 7217 7218# No sense in running all these tests if we already determined that 7219# the F77 compiler isn't working. Some variables (like enable_shared) 7220# are currently assumed to apply to all compilers on this platform, 7221# and will be corrupted by setting them based on a non-working compiler. 7222if test "$_lt_disable_F77" != yes; then 7223 # Code to be used in simple compile tests 7224 lt_simple_compile_test_code="\ 7225 subroutine t 7226 return 7227 end 7228" 7229 7230 # Code to be used in simple link tests 7231 lt_simple_link_test_code="\ 7232 program t 7233 end 7234" 7235 7236 # ltmain only uses $CC for tagged configurations so make sure $CC is set. 7237 _LT_TAG_COMPILER 7238 7239 # save warnings/boilerplate of simple test code 7240 _LT_COMPILER_BOILERPLATE 7241 _LT_LINKER_BOILERPLATE 7242 7243 # Allow CC to be a program name with arguments. 7244 lt_save_CC="$CC" 7245 lt_save_GCC=$GCC 7246 lt_save_CFLAGS=$CFLAGS 7247 CC=${F77-"f77"} 7248 CFLAGS=$FFLAGS 7249 compiler=$CC 7250 _LT_TAGVAR(compiler, $1)=$CC 7251 _LT_CC_BASENAME([$compiler]) 7252 GCC=$G77 7253 if test -n "$compiler"; then 7254 AC_MSG_CHECKING([if libtool supports shared libraries]) 7255 AC_MSG_RESULT([$can_build_shared]) 7256 7257 AC_MSG_CHECKING([whether to build shared libraries]) 7258 test "$can_build_shared" = "no" && enable_shared=no 7259 7260 # On AIX, shared libraries and static libraries use the same namespace, and 7261 # are all built from PIC. 7262 case $host_os in 7263 aix3*) 7264 test "$enable_shared" = yes && enable_static=no 7265 if test -n "$RANLIB"; then 7266 archive_cmds="$archive_cmds~\$RANLIB \$lib" 7267 postinstall_cmds='$RANLIB $lib' 7268 fi 7269 ;; 7270 aix[[4-9]]*) 7271 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then 7272 test "$enable_shared" = yes && enable_static=no 7273 fi 7274 ;; 7275 esac 7276 AC_MSG_RESULT([$enable_shared]) 7277 7278 AC_MSG_CHECKING([whether to build static libraries]) 7279 # Make sure either enable_shared or enable_static is yes. 7280 test "$enable_shared" = yes || enable_static=yes 7281 AC_MSG_RESULT([$enable_static]) 7282 7283 _LT_TAGVAR(GCC, $1)="$G77" 7284 _LT_TAGVAR(LD, $1)="$LD" 7285 7286 ## CAVEAT EMPTOR: 7287 ## There is no encapsulation within the following macros, do not change 7288 ## the running order or otherwise move them around unless you know exactly 7289 ## what you are doing... 7290 _LT_COMPILER_PIC($1) 7291 _LT_COMPILER_C_O($1) 7292 _LT_COMPILER_FILE_LOCKS($1) 7293 _LT_LINKER_SHLIBS($1) 7294 _LT_SYS_DYNAMIC_LINKER($1) 7295 _LT_LINKER_HARDCODE_LIBPATH($1) 7296 7297 _LT_CONFIG($1) 7298 fi # test -n "$compiler" 7299 7300 GCC=$lt_save_GCC 7301 CC="$lt_save_CC" 7302 CFLAGS="$lt_save_CFLAGS" 7303fi # test "$_lt_disable_F77" != yes 7304 7305AC_LANG_POP 7306])# _LT_LANG_F77_CONFIG 7307 7308 7309# _LT_LANG_FC_CONFIG([TAG]) 7310# ------------------------- 7311# Ensure that the configuration variables for a Fortran compiler are 7312# suitably defined. These variables are subsequently used by _LT_CONFIG 7313# to write the compiler configuration to `libtool'. 7314m4_defun([_LT_LANG_FC_CONFIG], 7315[AC_LANG_PUSH(Fortran) 7316 7317if test -z "$FC" || test "X$FC" = "Xno"; then 7318 _lt_disable_FC=yes 7319fi 7320 7321_LT_TAGVAR(archive_cmds_need_lc, $1)=no 7322_LT_TAGVAR(allow_undefined_flag, $1)= 7323_LT_TAGVAR(always_export_symbols, $1)=no 7324_LT_TAGVAR(archive_expsym_cmds, $1)= 7325_LT_TAGVAR(export_dynamic_flag_spec, $1)= 7326_LT_TAGVAR(hardcode_direct, $1)=no 7327_LT_TAGVAR(hardcode_direct_absolute, $1)=no 7328_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= 7329_LT_TAGVAR(hardcode_libdir_separator, $1)= 7330_LT_TAGVAR(hardcode_minus_L, $1)=no 7331_LT_TAGVAR(hardcode_automatic, $1)=no 7332_LT_TAGVAR(inherit_rpath, $1)=no 7333_LT_TAGVAR(module_cmds, $1)= 7334_LT_TAGVAR(module_expsym_cmds, $1)= 7335_LT_TAGVAR(link_all_deplibs, $1)=unknown 7336_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds 7337_LT_TAGVAR(reload_flag, $1)=$reload_flag 7338_LT_TAGVAR(reload_cmds, $1)=$reload_cmds 7339_LT_TAGVAR(no_undefined_flag, $1)= 7340_LT_TAGVAR(whole_archive_flag_spec, $1)= 7341_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no 7342 7343# Source file extension for fc test sources. 7344ac_ext=${ac_fc_srcext-f} 7345 7346# Object file extension for compiled fc test sources. 7347objext=o 7348_LT_TAGVAR(objext, $1)=$objext 7349 7350# No sense in running all these tests if we already determined that 7351# the FC compiler isn't working. Some variables (like enable_shared) 7352# are currently assumed to apply to all compilers on this platform, 7353# and will be corrupted by setting them based on a non-working compiler. 7354if test "$_lt_disable_FC" != yes; then 7355 # Code to be used in simple compile tests 7356 lt_simple_compile_test_code="\ 7357 subroutine t 7358 return 7359 end 7360" 7361 7362 # Code to be used in simple link tests 7363 lt_simple_link_test_code="\ 7364 program t 7365 end 7366" 7367 7368 # ltmain only uses $CC for tagged configurations so make sure $CC is set. 7369 _LT_TAG_COMPILER 7370 7371 # save warnings/boilerplate of simple test code 7372 _LT_COMPILER_BOILERPLATE 7373 _LT_LINKER_BOILERPLATE 7374 7375 # Allow CC to be a program name with arguments. 7376 lt_save_CC="$CC" 7377 lt_save_GCC=$GCC 7378 lt_save_CFLAGS=$CFLAGS 7379 CC=${FC-"f95"} 7380 CFLAGS=$FCFLAGS 7381 compiler=$CC 7382 GCC=$ac_cv_fc_compiler_gnu 7383 7384 _LT_TAGVAR(compiler, $1)=$CC 7385 _LT_CC_BASENAME([$compiler]) 7386 7387 if test -n "$compiler"; then 7388 AC_MSG_CHECKING([if libtool supports shared libraries]) 7389 AC_MSG_RESULT([$can_build_shared]) 7390 7391 AC_MSG_CHECKING([whether to build shared libraries]) 7392 test "$can_build_shared" = "no" && enable_shared=no 7393 7394 # On AIX, shared libraries and static libraries use the same namespace, and 7395 # are all built from PIC. 7396 case $host_os in 7397 aix3*) 7398 test "$enable_shared" = yes && enable_static=no 7399 if test -n "$RANLIB"; then 7400 archive_cmds="$archive_cmds~\$RANLIB \$lib" 7401 postinstall_cmds='$RANLIB $lib' 7402 fi 7403 ;; 7404 aix[[4-9]]*) 7405 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then 7406 test "$enable_shared" = yes && enable_static=no 7407 fi 7408 ;; 7409 esac 7410 AC_MSG_RESULT([$enable_shared]) 7411 7412 AC_MSG_CHECKING([whether to build static libraries]) 7413 # Make sure either enable_shared or enable_static is yes. 7414 test "$enable_shared" = yes || enable_static=yes 7415 AC_MSG_RESULT([$enable_static]) 7416 7417 _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu" 7418 _LT_TAGVAR(LD, $1)="$LD" 7419 7420 ## CAVEAT EMPTOR: 7421 ## There is no encapsulation within the following macros, do not change 7422 ## the running order or otherwise move them around unless you know exactly 7423 ## what you are doing... 7424 _LT_SYS_HIDDEN_LIBDEPS($1) 7425 _LT_COMPILER_PIC($1) 7426 _LT_COMPILER_C_O($1) 7427 _LT_COMPILER_FILE_LOCKS($1) 7428 _LT_LINKER_SHLIBS($1) 7429 _LT_SYS_DYNAMIC_LINKER($1) 7430 _LT_LINKER_HARDCODE_LIBPATH($1) 7431 7432 _LT_CONFIG($1) 7433 fi # test -n "$compiler" 7434 7435 GCC=$lt_save_GCC 7436 CC=$lt_save_CC 7437 CFLAGS=$lt_save_CFLAGS 7438fi # test "$_lt_disable_FC" != yes 7439 7440AC_LANG_POP 7441])# _LT_LANG_FC_CONFIG 7442 7443 7444# _LT_LANG_GCJ_CONFIG([TAG]) 7445# -------------------------- 7446# Ensure that the configuration variables for the GNU Java Compiler compiler 7447# are suitably defined. These variables are subsequently used by _LT_CONFIG 7448# to write the compiler configuration to `libtool'. 7449m4_defun([_LT_LANG_GCJ_CONFIG], 7450[AC_REQUIRE([LT_PROG_GCJ])dnl 7451AC_LANG_SAVE 7452 7453# Source file extension for Java test sources. 7454ac_ext=java 7455 7456# Object file extension for compiled Java test sources. 7457objext=o 7458_LT_TAGVAR(objext, $1)=$objext 7459 7460# Code to be used in simple compile tests 7461lt_simple_compile_test_code="class foo {}" 7462 7463# Code to be used in simple link tests 7464lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }' 7465 7466# ltmain only uses $CC for tagged configurations so make sure $CC is set. 7467_LT_TAG_COMPILER 7468 7469# save warnings/boilerplate of simple test code 7470_LT_COMPILER_BOILERPLATE 7471_LT_LINKER_BOILERPLATE 7472 7473# Allow CC to be a program name with arguments. 7474lt_save_CC=$CC 7475lt_save_CFLAGS=$CFLAGS 7476lt_save_GCC=$GCC 7477GCC=yes 7478CC=${GCJ-"gcj"} 7479CFLAGS=$GCJFLAGS 7480compiler=$CC 7481_LT_TAGVAR(compiler, $1)=$CC 7482_LT_TAGVAR(LD, $1)="$LD" 7483_LT_CC_BASENAME([$compiler]) 7484 7485# GCJ did not exist at the time GCC didn't implicitly link libc in. 7486_LT_TAGVAR(archive_cmds_need_lc, $1)=no 7487 7488_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds 7489_LT_TAGVAR(reload_flag, $1)=$reload_flag 7490_LT_TAGVAR(reload_cmds, $1)=$reload_cmds 7491 7492if test -n "$compiler"; then 7493 _LT_COMPILER_NO_RTTI($1) 7494 _LT_COMPILER_PIC($1) 7495 _LT_COMPILER_C_O($1) 7496 _LT_COMPILER_FILE_LOCKS($1) 7497 _LT_LINKER_SHLIBS($1) 7498 _LT_LINKER_HARDCODE_LIBPATH($1) 7499 7500 _LT_CONFIG($1) 7501fi 7502 7503AC_LANG_RESTORE 7504 7505GCC=$lt_save_GCC 7506CC=$lt_save_CC 7507CFLAGS=$lt_save_CFLAGS 7508])# _LT_LANG_GCJ_CONFIG 7509 7510 7511# _LT_LANG_GO_CONFIG([TAG]) 7512# -------------------------- 7513# Ensure that the configuration variables for the GNU Go compiler 7514# are suitably defined. These variables are subsequently used by _LT_CONFIG 7515# to write the compiler configuration to `libtool'. 7516m4_defun([_LT_LANG_GO_CONFIG], 7517[AC_REQUIRE([LT_PROG_GO])dnl 7518AC_LANG_SAVE 7519 7520# Source file extension for Go test sources. 7521ac_ext=go 7522 7523# Object file extension for compiled Go test sources. 7524objext=o 7525_LT_TAGVAR(objext, $1)=$objext 7526 7527# Code to be used in simple compile tests 7528lt_simple_compile_test_code="package main; func main() { }" 7529 7530# Code to be used in simple link tests 7531lt_simple_link_test_code='package main; func main() { }' 7532 7533# ltmain only uses $CC for tagged configurations so make sure $CC is set. 7534_LT_TAG_COMPILER 7535 7536# save warnings/boilerplate of simple test code 7537_LT_COMPILER_BOILERPLATE 7538_LT_LINKER_BOILERPLATE 7539 7540# Allow CC to be a program name with arguments. 7541lt_save_CC=$CC 7542lt_save_CFLAGS=$CFLAGS 7543lt_save_GCC=$GCC 7544GCC=yes 7545CC=${GOC-"gccgo"} 7546CFLAGS=$GOFLAGS 7547compiler=$CC 7548_LT_TAGVAR(compiler, $1)=$CC 7549_LT_TAGVAR(LD, $1)="$LD" 7550_LT_CC_BASENAME([$compiler]) 7551 7552# Go did not exist at the time GCC didn't implicitly link libc in. 7553_LT_TAGVAR(archive_cmds_need_lc, $1)=no 7554 7555_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds 7556_LT_TAGVAR(reload_flag, $1)=$reload_flag 7557_LT_TAGVAR(reload_cmds, $1)=$reload_cmds 7558 7559if test -n "$compiler"; then 7560 _LT_COMPILER_NO_RTTI($1) 7561 _LT_COMPILER_PIC($1) 7562 _LT_COMPILER_C_O($1) 7563 _LT_COMPILER_FILE_LOCKS($1) 7564 _LT_LINKER_SHLIBS($1) 7565 _LT_LINKER_HARDCODE_LIBPATH($1) 7566 7567 _LT_CONFIG($1) 7568fi 7569 7570AC_LANG_RESTORE 7571 7572GCC=$lt_save_GCC 7573CC=$lt_save_CC 7574CFLAGS=$lt_save_CFLAGS 7575])# _LT_LANG_GO_CONFIG 7576 7577 7578# _LT_LANG_RC_CONFIG([TAG]) 7579# ------------------------- 7580# Ensure that the configuration variables for the Windows resource compiler 7581# are suitably defined. These variables are subsequently used by _LT_CONFIG 7582# to write the compiler configuration to `libtool'. 7583m4_defun([_LT_LANG_RC_CONFIG], 7584[AC_REQUIRE([LT_PROG_RC])dnl 7585AC_LANG_SAVE 7586 7587# Source file extension for RC test sources. 7588ac_ext=rc 7589 7590# Object file extension for compiled RC test sources. 7591objext=o 7592_LT_TAGVAR(objext, $1)=$objext 7593 7594# Code to be used in simple compile tests 7595lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }' 7596 7597# Code to be used in simple link tests 7598lt_simple_link_test_code="$lt_simple_compile_test_code" 7599 7600# ltmain only uses $CC for tagged configurations so make sure $CC is set. 7601_LT_TAG_COMPILER 7602 7603# save warnings/boilerplate of simple test code 7604_LT_COMPILER_BOILERPLATE 7605_LT_LINKER_BOILERPLATE 7606 7607# Allow CC to be a program name with arguments. 7608lt_save_CC="$CC" 7609lt_save_CFLAGS=$CFLAGS 7610lt_save_GCC=$GCC 7611GCC= 7612CC=${RC-"windres"} 7613CFLAGS= 7614compiler=$CC 7615_LT_TAGVAR(compiler, $1)=$CC 7616_LT_CC_BASENAME([$compiler]) 7617_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes 7618 7619if test -n "$compiler"; then 7620 : 7621 _LT_CONFIG($1) 7622fi 7623 7624GCC=$lt_save_GCC 7625AC_LANG_RESTORE 7626CC=$lt_save_CC 7627CFLAGS=$lt_save_CFLAGS 7628])# _LT_LANG_RC_CONFIG 7629 7630 7631# LT_PROG_GCJ 7632# ----------- 7633AC_DEFUN([LT_PROG_GCJ], 7634[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ], 7635 [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ], 7636 [AC_CHECK_TOOL(GCJ, gcj,) 7637 test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" 7638 AC_SUBST(GCJFLAGS)])])[]dnl 7639]) 7640 7641# Old name: 7642AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ]) 7643dnl aclocal-1.4 backwards compatibility: 7644dnl AC_DEFUN([LT_AC_PROG_GCJ], []) 7645 7646 7647# LT_PROG_GO 7648# ---------- 7649AC_DEFUN([LT_PROG_GO], 7650[AC_CHECK_TOOL(GOC, gccgo,) 7651]) 7652 7653 7654# LT_PROG_RC 7655# ---------- 7656AC_DEFUN([LT_PROG_RC], 7657[AC_CHECK_TOOL(RC, windres,) 7658]) 7659 7660# Old name: 7661AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC]) 7662dnl aclocal-1.4 backwards compatibility: 7663dnl AC_DEFUN([LT_AC_PROG_RC], []) 7664 7665 7666# _LT_DECL_EGREP 7667# -------------- 7668# If we don't have a new enough Autoconf to choose the best grep 7669# available, choose the one first in the user's PATH. 7670m4_defun([_LT_DECL_EGREP], 7671[AC_REQUIRE([AC_PROG_EGREP])dnl 7672AC_REQUIRE([AC_PROG_FGREP])dnl 7673test -z "$GREP" && GREP=grep 7674_LT_DECL([], [GREP], [1], [A grep program that handles long lines]) 7675_LT_DECL([], [EGREP], [1], [An ERE matcher]) 7676_LT_DECL([], [FGREP], [1], [A literal string matcher]) 7677dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too 7678AC_SUBST([GREP]) 7679]) 7680 7681 7682# _LT_DECL_OBJDUMP 7683# -------------- 7684# If we don't have a new enough Autoconf to choose the best objdump 7685# available, choose the one first in the user's PATH. 7686m4_defun([_LT_DECL_OBJDUMP], 7687[AC_CHECK_TOOL(OBJDUMP, objdump, false) 7688test -z "$OBJDUMP" && OBJDUMP=objdump 7689_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper]) 7690AC_SUBST([OBJDUMP]) 7691]) 7692 7693# _LT_DECL_DLLTOOL 7694# ---------------- 7695# Ensure DLLTOOL variable is set. 7696m4_defun([_LT_DECL_DLLTOOL], 7697[AC_CHECK_TOOL(DLLTOOL, dlltool, false) 7698test -z "$DLLTOOL" && DLLTOOL=dlltool 7699_LT_DECL([], [DLLTOOL], [1], [DLL creation program]) 7700AC_SUBST([DLLTOOL]) 7701]) 7702 7703# _LT_DECL_SED 7704# ------------ 7705# Check for a fully-functional sed program, that truncates 7706# as few characters as possible. Prefer GNU sed if found. 7707m4_defun([_LT_DECL_SED], 7708[AC_PROG_SED 7709test -z "$SED" && SED=sed 7710Xsed="$SED -e 1s/^X//" 7711_LT_DECL([], [SED], [1], [A sed program that does not truncate output]) 7712_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"], 7713 [Sed that helps us avoid accidentally triggering echo(1) options like -n]) 7714])# _LT_DECL_SED 7715 7716m4_ifndef([AC_PROG_SED], [ 7717# NOTE: This macro has been submitted for inclusion into # 7718# GNU Autoconf as AC_PROG_SED. When it is available in # 7719# a released version of Autoconf we should remove this # 7720# macro and use it instead. # 7721 7722m4_defun([AC_PROG_SED], 7723[AC_MSG_CHECKING([for a sed that does not truncate output]) 7724AC_CACHE_VAL(lt_cv_path_SED, 7725[# Loop through the user's path and test for sed and gsed. 7726# Then use that list of sed's as ones to test for truncation. 7727as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 7728for as_dir in $PATH 7729do 7730 IFS=$as_save_IFS 7731 test -z "$as_dir" && as_dir=. 7732 for lt_ac_prog in sed gsed; do 7733 for ac_exec_ext in '' $ac_executable_extensions; do 7734 if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then 7735 lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" 7736 fi 7737 done 7738 done 7739done 7740IFS=$as_save_IFS 7741lt_ac_max=0 7742lt_ac_count=0 7743# Add /usr/xpg4/bin/sed as it is typically found on Solaris 7744# along with /bin/sed that truncates output. 7745for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do 7746 test ! -f $lt_ac_sed && continue 7747 cat /dev/null > conftest.in 7748 lt_ac_count=0 7749 echo $ECHO_N "0123456789$ECHO_C" >conftest.in 7750 # Check for GNU sed and select it if it is found. 7751 if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then 7752 lt_cv_path_SED=$lt_ac_sed 7753 break 7754 fi 7755 while true; do 7756 cat conftest.in conftest.in >conftest.tmp 7757 mv conftest.tmp conftest.in 7758 cp conftest.in conftest.nl 7759 echo >>conftest.nl 7760 $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break 7761 cmp -s conftest.out conftest.nl || break 7762 # 10000 chars as input seems more than enough 7763 test $lt_ac_count -gt 10 && break 7764 lt_ac_count=`expr $lt_ac_count + 1` 7765 if test $lt_ac_count -gt $lt_ac_max; then 7766 lt_ac_max=$lt_ac_count 7767 lt_cv_path_SED=$lt_ac_sed 7768 fi 7769 done 7770done 7771]) 7772SED=$lt_cv_path_SED 7773AC_SUBST([SED]) 7774AC_MSG_RESULT([$SED]) 7775])#AC_PROG_SED 7776])#m4_ifndef 7777 7778# Old name: 7779AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED]) 7780dnl aclocal-1.4 backwards compatibility: 7781dnl AC_DEFUN([LT_AC_PROG_SED], []) 7782 7783 7784# _LT_CHECK_SHELL_FEATURES 7785# ------------------------ 7786# Find out whether the shell is Bourne or XSI compatible, 7787# or has some other useful features. 7788m4_defun([_LT_CHECK_SHELL_FEATURES], 7789[AC_MSG_CHECKING([whether the shell understands some XSI constructs]) 7790# Try some XSI features 7791xsi_shell=no 7792( _lt_dummy="a/b/c" 7793 test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \ 7794 = c,a/b,b/c, \ 7795 && eval 'test $(( 1 + 1 )) -eq 2 \ 7796 && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \ 7797 && xsi_shell=yes 7798AC_MSG_RESULT([$xsi_shell]) 7799_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell']) 7800 7801AC_MSG_CHECKING([whether the shell understands "+="]) 7802lt_shell_append=no 7803( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \ 7804 >/dev/null 2>&1 \ 7805 && lt_shell_append=yes 7806AC_MSG_RESULT([$lt_shell_append]) 7807_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append']) 7808 7809if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then 7810 lt_unset=unset 7811else 7812 lt_unset=false 7813fi 7814_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl 7815 7816# test EBCDIC or ASCII 7817case `echo X|tr X '\101'` in 7818 A) # ASCII based system 7819 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr 7820 lt_SP2NL='tr \040 \012' 7821 lt_NL2SP='tr \015\012 \040\040' 7822 ;; 7823 *) # EBCDIC based system 7824 lt_SP2NL='tr \100 \n' 7825 lt_NL2SP='tr \r\n \100\100' 7826 ;; 7827esac 7828_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl 7829_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl 7830])# _LT_CHECK_SHELL_FEATURES 7831 7832 7833# _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY) 7834# ------------------------------------------------------ 7835# In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and 7836# '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY. 7837m4_defun([_LT_PROG_FUNCTION_REPLACE], 7838[dnl { 7839sed -e '/^$1 ()$/,/^} # $1 /c\ 7840$1 ()\ 7841{\ 7842m4_bpatsubsts([$2], [$], [\\], [^\([ ]\)], [\\\1]) 7843} # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \ 7844 && mv -f "$cfgfile.tmp" "$cfgfile" \ 7845 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") 7846test 0 -eq $? || _lt_function_replace_fail=: 7847]) 7848 7849 7850# _LT_PROG_REPLACE_SHELLFNS 7851# ------------------------- 7852# Replace existing portable implementations of several shell functions with 7853# equivalent extended shell implementations where those features are available.. 7854m4_defun([_LT_PROG_REPLACE_SHELLFNS], 7855[if test x"$xsi_shell" = xyes; then 7856 _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl 7857 case ${1} in 7858 */*) func_dirname_result="${1%/*}${2}" ;; 7859 * ) func_dirname_result="${3}" ;; 7860 esac]) 7861 7862 _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl 7863 func_basename_result="${1##*/}"]) 7864 7865 _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl 7866 case ${1} in 7867 */*) func_dirname_result="${1%/*}${2}" ;; 7868 * ) func_dirname_result="${3}" ;; 7869 esac 7870 func_basename_result="${1##*/}"]) 7871 7872 _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl 7873 # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are 7874 # positional parameters, so assign one to ordinary parameter first. 7875 func_stripname_result=${3} 7876 func_stripname_result=${func_stripname_result#"${1}"} 7877 func_stripname_result=${func_stripname_result%"${2}"}]) 7878 7879 _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl 7880 func_split_long_opt_name=${1%%=*} 7881 func_split_long_opt_arg=${1#*=}]) 7882 7883 _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl 7884 func_split_short_opt_arg=${1#??} 7885 func_split_short_opt_name=${1%"$func_split_short_opt_arg"}]) 7886 7887 _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl 7888 case ${1} in 7889 *.lo) func_lo2o_result=${1%.lo}.${objext} ;; 7890 *) func_lo2o_result=${1} ;; 7891 esac]) 7892 7893 _LT_PROG_FUNCTION_REPLACE([func_xform], [ func_xform_result=${1%.*}.lo]) 7894 7895 _LT_PROG_FUNCTION_REPLACE([func_arith], [ func_arith_result=$(( $[*] ))]) 7896 7897 _LT_PROG_FUNCTION_REPLACE([func_len], [ func_len_result=${#1}]) 7898fi 7899 7900if test x"$lt_shell_append" = xyes; then 7901 _LT_PROG_FUNCTION_REPLACE([func_append], [ eval "${1}+=\\${2}"]) 7902 7903 _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl 7904 func_quote_for_eval "${2}" 7905dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \ 7906 eval "${1}+=\\\\ \\$func_quote_for_eval_result"]) 7907 7908 # Save a `func_append' function call where possible by direct use of '+=' 7909 sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \ 7910 && mv -f "$cfgfile.tmp" "$cfgfile" \ 7911 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") 7912 test 0 -eq $? || _lt_function_replace_fail=: 7913else 7914 # Save a `func_append' function call even when '+=' is not available 7915 sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \ 7916 && mv -f "$cfgfile.tmp" "$cfgfile" \ 7917 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") 7918 test 0 -eq $? || _lt_function_replace_fail=: 7919fi 7920 7921if test x"$_lt_function_replace_fail" = x":"; then 7922 AC_MSG_WARN([Unable to substitute extended shell functions in $ofile]) 7923fi 7924]) 7925 7926# _LT_PATH_CONVERSION_FUNCTIONS 7927# ----------------------------- 7928# Determine which file name conversion functions should be used by 7929# func_to_host_file (and, implicitly, by func_to_host_path). These are needed 7930# for certain cross-compile configurations and native mingw. 7931m4_defun([_LT_PATH_CONVERSION_FUNCTIONS], 7932[AC_REQUIRE([AC_CANONICAL_HOST])dnl 7933AC_REQUIRE([AC_CANONICAL_BUILD])dnl 7934AC_MSG_CHECKING([how to convert $build file names to $host format]) 7935AC_CACHE_VAL(lt_cv_to_host_file_cmd, 7936[case $host in 7937 *-*-mingw* ) 7938 case $build in 7939 *-*-mingw* ) # actually msys 7940 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 7941 ;; 7942 *-*-cygwin* ) 7943 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 7944 ;; 7945 * ) # otherwise, assume *nix 7946 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 7947 ;; 7948 esac 7949 ;; 7950 *-*-cygwin* ) 7951 case $build in 7952 *-*-mingw* ) # actually msys 7953 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin 7954 ;; 7955 *-*-cygwin* ) 7956 lt_cv_to_host_file_cmd=func_convert_file_noop 7957 ;; 7958 * ) # otherwise, assume *nix 7959 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin 7960 ;; 7961 esac 7962 ;; 7963 * ) # unhandled hosts (and "normal" native builds) 7964 lt_cv_to_host_file_cmd=func_convert_file_noop 7965 ;; 7966esac 7967]) 7968to_host_file_cmd=$lt_cv_to_host_file_cmd 7969AC_MSG_RESULT([$lt_cv_to_host_file_cmd]) 7970_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd], 7971 [0], [convert $build file names to $host format])dnl 7972 7973AC_MSG_CHECKING([how to convert $build file names to toolchain format]) 7974AC_CACHE_VAL(lt_cv_to_tool_file_cmd, 7975[#assume ordinary cross tools, or native build. 7976lt_cv_to_tool_file_cmd=func_convert_file_noop 7977case $host in 7978 *-*-mingw* ) 7979 case $build in 7980 *-*-mingw* ) # actually msys 7981 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 7982 ;; 7983 esac 7984 ;; 7985esac 7986]) 7987to_tool_file_cmd=$lt_cv_to_tool_file_cmd 7988AC_MSG_RESULT([$lt_cv_to_tool_file_cmd]) 7989_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd], 7990 [0], [convert $build files to toolchain format])dnl 7991])# _LT_PATH_CONVERSION_FUNCTIONS 7992 7993# Helper functions for option handling. -*- Autoconf -*- 7994# 7995# Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation, 7996# Inc. 7997# Written by Gary V. Vaughan, 2004 7998# 7999# This file is free software; the Free Software Foundation gives 8000# unlimited permission to copy and/or distribute it, with or without 8001# modifications, as long as this notice is preserved. 8002 8003# serial 7 ltoptions.m4 8004 8005# This is to help aclocal find these macros, as it can't see m4_define. 8006AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])]) 8007 8008 8009# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME) 8010# ------------------------------------------ 8011m4_define([_LT_MANGLE_OPTION], 8012[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])]) 8013 8014 8015# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME) 8016# --------------------------------------- 8017# Set option OPTION-NAME for macro MACRO-NAME, and if there is a 8018# matching handler defined, dispatch to it. Other OPTION-NAMEs are 8019# saved as a flag. 8020m4_define([_LT_SET_OPTION], 8021[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl 8022m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]), 8023 _LT_MANGLE_DEFUN([$1], [$2]), 8024 [m4_warning([Unknown $1 option `$2'])])[]dnl 8025]) 8026 8027 8028# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET]) 8029# ------------------------------------------------------------ 8030# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. 8031m4_define([_LT_IF_OPTION], 8032[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])]) 8033 8034 8035# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET) 8036# ------------------------------------------------------- 8037# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME 8038# are set. 8039m4_define([_LT_UNLESS_OPTIONS], 8040[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), 8041 [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option), 8042 [m4_define([$0_found])])])[]dnl 8043m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3 8044])[]dnl 8045]) 8046 8047 8048# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST) 8049# ---------------------------------------- 8050# OPTION-LIST is a space-separated list of Libtool options associated 8051# with MACRO-NAME. If any OPTION has a matching handler declared with 8052# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about 8053# the unknown option and exit. 8054m4_defun([_LT_SET_OPTIONS], 8055[# Set options 8056m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), 8057 [_LT_SET_OPTION([$1], _LT_Option)]) 8058 8059m4_if([$1],[LT_INIT],[ 8060 dnl 8061 dnl Simply set some default values (i.e off) if boolean options were not 8062 dnl specified: 8063 _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no 8064 ]) 8065 _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no 8066 ]) 8067 dnl 8068 dnl If no reference was made to various pairs of opposing options, then 8069 dnl we run the default mode handler for the pair. For example, if neither 8070 dnl `shared' nor `disable-shared' was passed, we enable building of shared 8071 dnl archives by default: 8072 _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED]) 8073 _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC]) 8074 _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC]) 8075 _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install], 8076 [_LT_ENABLE_FAST_INSTALL]) 8077 ]) 8078])# _LT_SET_OPTIONS 8079 8080 8081 8082# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME) 8083# ----------------------------------------- 8084m4_define([_LT_MANGLE_DEFUN], 8085[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])]) 8086 8087 8088# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE) 8089# ----------------------------------------------- 8090m4_define([LT_OPTION_DEFINE], 8091[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl 8092])# LT_OPTION_DEFINE 8093 8094 8095# dlopen 8096# ------ 8097LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes 8098]) 8099 8100AU_DEFUN([AC_LIBTOOL_DLOPEN], 8101[_LT_SET_OPTION([LT_INIT], [dlopen]) 8102AC_DIAGNOSE([obsolete], 8103[$0: Remove this warning and the call to _LT_SET_OPTION when you 8104put the `dlopen' option into LT_INIT's first parameter.]) 8105]) 8106 8107dnl aclocal-1.4 backwards compatibility: 8108dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], []) 8109 8110 8111# win32-dll 8112# --------- 8113# Declare package support for building win32 dll's. 8114LT_OPTION_DEFINE([LT_INIT], [win32-dll], 8115[enable_win32_dll=yes 8116 8117case $host in 8118*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*) 8119 AC_CHECK_TOOL(AS, as, false) 8120 AC_CHECK_TOOL(DLLTOOL, dlltool, false) 8121 AC_CHECK_TOOL(OBJDUMP, objdump, false) 8122 ;; 8123esac 8124 8125test -z "$AS" && AS=as 8126_LT_DECL([], [AS], [1], [Assembler program])dnl 8127 8128test -z "$DLLTOOL" && DLLTOOL=dlltool 8129_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl 8130 8131test -z "$OBJDUMP" && OBJDUMP=objdump 8132_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl 8133])# win32-dll 8134 8135AU_DEFUN([AC_LIBTOOL_WIN32_DLL], 8136[AC_REQUIRE([AC_CANONICAL_HOST])dnl 8137_LT_SET_OPTION([LT_INIT], [win32-dll]) 8138AC_DIAGNOSE([obsolete], 8139[$0: Remove this warning and the call to _LT_SET_OPTION when you 8140put the `win32-dll' option into LT_INIT's first parameter.]) 8141]) 8142 8143dnl aclocal-1.4 backwards compatibility: 8144dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], []) 8145 8146 8147# _LT_ENABLE_SHARED([DEFAULT]) 8148# ---------------------------- 8149# implement the --enable-shared flag, and supports the `shared' and 8150# `disable-shared' LT_INIT options. 8151# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. 8152m4_define([_LT_ENABLE_SHARED], 8153[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl 8154AC_ARG_ENABLE([shared], 8155 [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@], 8156 [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])], 8157 [p=${PACKAGE-default} 8158 case $enableval in 8159 yes) enable_shared=yes ;; 8160 no) enable_shared=no ;; 8161 *) 8162 enable_shared=no 8163 # Look at the argument we got. We use all the common list separators. 8164 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," 8165 for pkg in $enableval; do 8166 IFS="$lt_save_ifs" 8167 if test "X$pkg" = "X$p"; then 8168 enable_shared=yes 8169 fi 8170 done 8171 IFS="$lt_save_ifs" 8172 ;; 8173 esac], 8174 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT) 8175 8176 _LT_DECL([build_libtool_libs], [enable_shared], [0], 8177 [Whether or not to build shared libraries]) 8178])# _LT_ENABLE_SHARED 8179 8180LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])]) 8181LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])]) 8182 8183# Old names: 8184AC_DEFUN([AC_ENABLE_SHARED], 8185[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared]) 8186]) 8187 8188AC_DEFUN([AC_DISABLE_SHARED], 8189[_LT_SET_OPTION([LT_INIT], [disable-shared]) 8190]) 8191 8192AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) 8193AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) 8194 8195dnl aclocal-1.4 backwards compatibility: 8196dnl AC_DEFUN([AM_ENABLE_SHARED], []) 8197dnl AC_DEFUN([AM_DISABLE_SHARED], []) 8198 8199 8200 8201# _LT_ENABLE_STATIC([DEFAULT]) 8202# ---------------------------- 8203# implement the --enable-static flag, and support the `static' and 8204# `disable-static' LT_INIT options. 8205# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. 8206m4_define([_LT_ENABLE_STATIC], 8207[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl 8208AC_ARG_ENABLE([static], 8209 [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@], 8210 [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])], 8211 [p=${PACKAGE-default} 8212 case $enableval in 8213 yes) enable_static=yes ;; 8214 no) enable_static=no ;; 8215 *) 8216 enable_static=no 8217 # Look at the argument we got. We use all the common list separators. 8218 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," 8219 for pkg in $enableval; do 8220 IFS="$lt_save_ifs" 8221 if test "X$pkg" = "X$p"; then 8222 enable_static=yes 8223 fi 8224 done 8225 IFS="$lt_save_ifs" 8226 ;; 8227 esac], 8228 [enable_static=]_LT_ENABLE_STATIC_DEFAULT) 8229 8230 _LT_DECL([build_old_libs], [enable_static], [0], 8231 [Whether or not to build static libraries]) 8232])# _LT_ENABLE_STATIC 8233 8234LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])]) 8235LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])]) 8236 8237# Old names: 8238AC_DEFUN([AC_ENABLE_STATIC], 8239[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static]) 8240]) 8241 8242AC_DEFUN([AC_DISABLE_STATIC], 8243[_LT_SET_OPTION([LT_INIT], [disable-static]) 8244]) 8245 8246AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) 8247AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) 8248 8249dnl aclocal-1.4 backwards compatibility: 8250dnl AC_DEFUN([AM_ENABLE_STATIC], []) 8251dnl AC_DEFUN([AM_DISABLE_STATIC], []) 8252 8253 8254 8255# _LT_ENABLE_FAST_INSTALL([DEFAULT]) 8256# ---------------------------------- 8257# implement the --enable-fast-install flag, and support the `fast-install' 8258# and `disable-fast-install' LT_INIT options. 8259# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. 8260m4_define([_LT_ENABLE_FAST_INSTALL], 8261[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl 8262AC_ARG_ENABLE([fast-install], 8263 [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], 8264 [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], 8265 [p=${PACKAGE-default} 8266 case $enableval in 8267 yes) enable_fast_install=yes ;; 8268 no) enable_fast_install=no ;; 8269 *) 8270 enable_fast_install=no 8271 # Look at the argument we got. We use all the common list separators. 8272 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," 8273 for pkg in $enableval; do 8274 IFS="$lt_save_ifs" 8275 if test "X$pkg" = "X$p"; then 8276 enable_fast_install=yes 8277 fi 8278 done 8279 IFS="$lt_save_ifs" 8280 ;; 8281 esac], 8282 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT) 8283 8284_LT_DECL([fast_install], [enable_fast_install], [0], 8285 [Whether or not to optimize for fast installation])dnl 8286])# _LT_ENABLE_FAST_INSTALL 8287 8288LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])]) 8289LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])]) 8290 8291# Old names: 8292AU_DEFUN([AC_ENABLE_FAST_INSTALL], 8293[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install]) 8294AC_DIAGNOSE([obsolete], 8295[$0: Remove this warning and the call to _LT_SET_OPTION when you put 8296the `fast-install' option into LT_INIT's first parameter.]) 8297]) 8298 8299AU_DEFUN([AC_DISABLE_FAST_INSTALL], 8300[_LT_SET_OPTION([LT_INIT], [disable-fast-install]) 8301AC_DIAGNOSE([obsolete], 8302[$0: Remove this warning and the call to _LT_SET_OPTION when you put 8303the `disable-fast-install' option into LT_INIT's first parameter.]) 8304]) 8305 8306dnl aclocal-1.4 backwards compatibility: 8307dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], []) 8308dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], []) 8309 8310 8311# _LT_WITH_PIC([MODE]) 8312# -------------------- 8313# implement the --with-pic flag, and support the `pic-only' and `no-pic' 8314# LT_INIT options. 8315# MODE is either `yes' or `no'. If omitted, it defaults to `both'. 8316m4_define([_LT_WITH_PIC], 8317[AC_ARG_WITH([pic], 8318 [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@], 8319 [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], 8320 [lt_p=${PACKAGE-default} 8321 case $withval in 8322 yes|no) pic_mode=$withval ;; 8323 *) 8324 pic_mode=default 8325 # Look at the argument we got. We use all the common list separators. 8326 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," 8327 for lt_pkg in $withval; do 8328 IFS="$lt_save_ifs" 8329 if test "X$lt_pkg" = "X$lt_p"; then 8330 pic_mode=yes 8331 fi 8332 done 8333 IFS="$lt_save_ifs" 8334 ;; 8335 esac], 8336 [pic_mode=default]) 8337 8338test -z "$pic_mode" && pic_mode=m4_default([$1], [default]) 8339 8340_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl 8341])# _LT_WITH_PIC 8342 8343LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])]) 8344LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])]) 8345 8346# Old name: 8347AU_DEFUN([AC_LIBTOOL_PICMODE], 8348[_LT_SET_OPTION([LT_INIT], [pic-only]) 8349AC_DIAGNOSE([obsolete], 8350[$0: Remove this warning and the call to _LT_SET_OPTION when you 8351put the `pic-only' option into LT_INIT's first parameter.]) 8352]) 8353 8354dnl aclocal-1.4 backwards compatibility: 8355dnl AC_DEFUN([AC_LIBTOOL_PICMODE], []) 8356 8357 8358m4_define([_LTDL_MODE], []) 8359LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive], 8360 [m4_define([_LTDL_MODE], [nonrecursive])]) 8361LT_OPTION_DEFINE([LTDL_INIT], [recursive], 8362 [m4_define([_LTDL_MODE], [recursive])]) 8363LT_OPTION_DEFINE([LTDL_INIT], [subproject], 8364 [m4_define([_LTDL_MODE], [subproject])]) 8365 8366m4_define([_LTDL_TYPE], []) 8367LT_OPTION_DEFINE([LTDL_INIT], [installable], 8368 [m4_define([_LTDL_TYPE], [installable])]) 8369LT_OPTION_DEFINE([LTDL_INIT], [convenience], 8370 [m4_define([_LTDL_TYPE], [convenience])]) 8371 8372# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- 8373# 8374# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc. 8375# Written by Gary V. Vaughan, 2004 8376# 8377# This file is free software; the Free Software Foundation gives 8378# unlimited permission to copy and/or distribute it, with or without 8379# modifications, as long as this notice is preserved. 8380 8381# serial 6 ltsugar.m4 8382 8383# This is to help aclocal find these macros, as it can't see m4_define. 8384AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])]) 8385 8386 8387# lt_join(SEP, ARG1, [ARG2...]) 8388# ----------------------------- 8389# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their 8390# associated separator. 8391# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier 8392# versions in m4sugar had bugs. 8393m4_define([lt_join], 8394[m4_if([$#], [1], [], 8395 [$#], [2], [[$2]], 8396 [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])]) 8397m4_define([_lt_join], 8398[m4_if([$#$2], [2], [], 8399 [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])]) 8400 8401 8402# lt_car(LIST) 8403# lt_cdr(LIST) 8404# ------------ 8405# Manipulate m4 lists. 8406# These macros are necessary as long as will still need to support 8407# Autoconf-2.59 which quotes differently. 8408m4_define([lt_car], [[$1]]) 8409m4_define([lt_cdr], 8410[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], 8411 [$#], 1, [], 8412 [m4_dquote(m4_shift($@))])]) 8413m4_define([lt_unquote], $1) 8414 8415 8416# lt_append(MACRO-NAME, STRING, [SEPARATOR]) 8417# ------------------------------------------ 8418# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'. 8419# Note that neither SEPARATOR nor STRING are expanded; they are appended 8420# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked). 8421# No SEPARATOR is output if MACRO-NAME was previously undefined (different 8422# than defined and empty). 8423# 8424# This macro is needed until we can rely on Autoconf 2.62, since earlier 8425# versions of m4sugar mistakenly expanded SEPARATOR but not STRING. 8426m4_define([lt_append], 8427[m4_define([$1], 8428 m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])]) 8429 8430 8431 8432# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...]) 8433# ---------------------------------------------------------- 8434# Produce a SEP delimited list of all paired combinations of elements of 8435# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list 8436# has the form PREFIXmINFIXSUFFIXn. 8437# Needed until we can rely on m4_combine added in Autoconf 2.62. 8438m4_define([lt_combine], 8439[m4_if(m4_eval([$# > 3]), [1], 8440 [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl 8441[[m4_foreach([_Lt_prefix], [$2], 8442 [m4_foreach([_Lt_suffix], 8443 ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[, 8444 [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])]) 8445 8446 8447# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ]) 8448# ----------------------------------------------------------------------- 8449# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited 8450# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ. 8451m4_define([lt_if_append_uniq], 8452[m4_ifdef([$1], 8453 [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1], 8454 [lt_append([$1], [$2], [$3])$4], 8455 [$5])], 8456 [lt_append([$1], [$2], [$3])$4])]) 8457 8458 8459# lt_dict_add(DICT, KEY, VALUE) 8460# ----------------------------- 8461m4_define([lt_dict_add], 8462[m4_define([$1($2)], [$3])]) 8463 8464 8465# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE) 8466# -------------------------------------------- 8467m4_define([lt_dict_add_subkey], 8468[m4_define([$1($2:$3)], [$4])]) 8469 8470 8471# lt_dict_fetch(DICT, KEY, [SUBKEY]) 8472# ---------------------------------- 8473m4_define([lt_dict_fetch], 8474[m4_ifval([$3], 8475 m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]), 8476 m4_ifdef([$1($2)], [m4_defn([$1($2)])]))]) 8477 8478 8479# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE]) 8480# ----------------------------------------------------------------- 8481m4_define([lt_if_dict_fetch], 8482[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4], 8483 [$5], 8484 [$6])]) 8485 8486 8487# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...]) 8488# -------------------------------------------------------------- 8489m4_define([lt_dict_filter], 8490[m4_if([$5], [], [], 8491 [lt_join(m4_quote(m4_default([$4], [[, ]])), 8492 lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]), 8493 [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl 8494]) 8495 8496# ltversion.m4 -- version numbers -*- Autoconf -*- 8497# 8498# Copyright (C) 2004 Free Software Foundation, Inc. 8499# Written by Scott James Remnant, 2004 8500# 8501# This file is free software; the Free Software Foundation gives 8502# unlimited permission to copy and/or distribute it, with or without 8503# modifications, as long as this notice is preserved. 8504 8505# @configure_input@ 8506 8507# serial 3337 ltversion.m4 8508# This file is part of GNU Libtool 8509 8510m4_define([LT_PACKAGE_VERSION], [2.4.2]) 8511m4_define([LT_PACKAGE_REVISION], [1.3337]) 8512 8513AC_DEFUN([LTVERSION_VERSION], 8514[macro_version='2.4.2' 8515macro_revision='1.3337' 8516_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) 8517_LT_DECL(, macro_revision, 0) 8518]) 8519 8520# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- 8521# 8522# Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc. 8523# Written by Scott James Remnant, 2004. 8524# 8525# This file is free software; the Free Software Foundation gives 8526# unlimited permission to copy and/or distribute it, with or without 8527# modifications, as long as this notice is preserved. 8528 8529# serial 5 lt~obsolete.m4 8530 8531# These exist entirely to fool aclocal when bootstrapping libtool. 8532# 8533# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN) 8534# which have later been changed to m4_define as they aren't part of the 8535# exported API, or moved to Autoconf or Automake where they belong. 8536# 8537# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN 8538# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us 8539# using a macro with the same name in our local m4/libtool.m4 it'll 8540# pull the old libtool.m4 in (it doesn't see our shiny new m4_define 8541# and doesn't know about Autoconf macros at all.) 8542# 8543# So we provide this file, which has a silly filename so it's always 8544# included after everything else. This provides aclocal with the 8545# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything 8546# because those macros already exist, or will be overwritten later. 8547# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. 8548# 8549# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here. 8550# Yes, that means every name once taken will need to remain here until 8551# we give up compatibility with versions before 1.7, at which point 8552# we need to keep only those names which we still refer to. 8553 8554# This is to help aclocal find these macros, as it can't see m4_define. 8555AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])]) 8556 8557m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])]) 8558m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])]) 8559m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])]) 8560m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])]) 8561m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])]) 8562m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])]) 8563m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])]) 8564m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])]) 8565m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])]) 8566m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])]) 8567m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])]) 8568m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])]) 8569m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])]) 8570m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])]) 8571m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])]) 8572m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])]) 8573m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])]) 8574m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])]) 8575m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])]) 8576m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])]) 8577m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])]) 8578m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])]) 8579m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])]) 8580m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])]) 8581m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])]) 8582m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])]) 8583m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])]) 8584m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])]) 8585m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])]) 8586m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])]) 8587m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])]) 8588m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])]) 8589m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])]) 8590m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])]) 8591m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])]) 8592m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])]) 8593m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])]) 8594m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])]) 8595m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])]) 8596m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])]) 8597m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])]) 8598m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])]) 8599m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])]) 8600m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])]) 8601m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])]) 8602m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])]) 8603m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])]) 8604m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])]) 8605m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])]) 8606m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])]) 8607m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])]) 8608m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])]) 8609m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])]) 8610m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])]) 8611m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])]) 8612m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])]) 8613m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])]) 8614m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])]) 8615m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])]) 8616m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])]) 8617m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])]) 8618 8619# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- 8620# serial 1 (pkg-config-0.24) 8621# 8622# Copyright © 2004 Scott James Remnant <scott@netsplit.com>. 8623# 8624# This program is free software; you can redistribute it and/or modify 8625# it under the terms of the GNU General Public License as published by 8626# the Free Software Foundation; either version 2 of the License, or 8627# (at your option) any later version. 8628# 8629# This program is distributed in the hope that it will be useful, but 8630# WITHOUT ANY WARRANTY; without even the implied warranty of 8631# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 8632# General Public License for more details. 8633# 8634# You should have received a copy of the GNU General Public License 8635# along with this program; if not, write to the Free Software 8636# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 8637# 8638# As a special exception to the GNU General Public License, if you 8639# distribute this file as part of a program that contains a 8640# configuration script generated by Autoconf, you may include it under 8641# the same distribution terms that you use for the rest of that program. 8642 8643# PKG_PROG_PKG_CONFIG([MIN-VERSION]) 8644# ---------------------------------- 8645AC_DEFUN([PKG_PROG_PKG_CONFIG], 8646[m4_pattern_forbid([^_?PKG_[A-Z_]+$]) 8647m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) 8648m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) 8649AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) 8650AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) 8651AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) 8652 8653if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then 8654 AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) 8655fi 8656if test -n "$PKG_CONFIG"; then 8657 _pkg_min_version=m4_default([$1], [0.9.0]) 8658 AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) 8659 if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then 8660 AC_MSG_RESULT([yes]) 8661 else 8662 AC_MSG_RESULT([no]) 8663 PKG_CONFIG="" 8664 fi 8665fi[]dnl 8666])# PKG_PROG_PKG_CONFIG 8667 8668# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) 8669# 8670# Check to see whether a particular set of modules exists. Similar 8671# to PKG_CHECK_MODULES(), but does not set variables or print errors. 8672# 8673# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) 8674# only at the first occurence in configure.ac, so if the first place 8675# it's called might be skipped (such as if it is within an "if", you 8676# have to call PKG_CHECK_EXISTS manually 8677# -------------------------------------------------------------- 8678AC_DEFUN([PKG_CHECK_EXISTS], 8679[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl 8680if test -n "$PKG_CONFIG" && \ 8681 AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then 8682 m4_default([$2], [:]) 8683m4_ifvaln([$3], [else 8684 $3])dnl 8685fi]) 8686 8687# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) 8688# --------------------------------------------- 8689m4_define([_PKG_CONFIG], 8690[if test -n "$$1"; then 8691 pkg_cv_[]$1="$$1" 8692 elif test -n "$PKG_CONFIG"; then 8693 PKG_CHECK_EXISTS([$3], 8694 [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null` 8695 test "x$?" != "x0" && pkg_failed=yes ], 8696 [pkg_failed=yes]) 8697 else 8698 pkg_failed=untried 8699fi[]dnl 8700])# _PKG_CONFIG 8701 8702# _PKG_SHORT_ERRORS_SUPPORTED 8703# ----------------------------- 8704AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], 8705[AC_REQUIRE([PKG_PROG_PKG_CONFIG]) 8706if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then 8707 _pkg_short_errors_supported=yes 8708else 8709 _pkg_short_errors_supported=no 8710fi[]dnl 8711])# _PKG_SHORT_ERRORS_SUPPORTED 8712 8713 8714# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], 8715# [ACTION-IF-NOT-FOUND]) 8716# 8717# 8718# Note that if there is a possibility the first call to 8719# PKG_CHECK_MODULES might not happen, you should be sure to include an 8720# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac 8721# 8722# 8723# -------------------------------------------------------------- 8724AC_DEFUN([PKG_CHECK_MODULES], 8725[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl 8726AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl 8727AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl 8728 8729pkg_failed=no 8730AC_MSG_CHECKING([for $1]) 8731 8732_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) 8733_PKG_CONFIG([$1][_LIBS], [libs], [$2]) 8734 8735m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS 8736and $1[]_LIBS to avoid the need to call pkg-config. 8737See the pkg-config man page for more details.]) 8738 8739if test $pkg_failed = yes; then 8740 AC_MSG_RESULT([no]) 8741 _PKG_SHORT_ERRORS_SUPPORTED 8742 if test $_pkg_short_errors_supported = yes; then 8743 $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` 8744 else 8745 $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` 8746 fi 8747 # Put the nasty error message in config.log where it belongs 8748 echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD 8749 8750 m4_default([$4], [AC_MSG_ERROR( 8751[Package requirements ($2) were not met: 8752 8753$$1_PKG_ERRORS 8754 8755Consider adjusting the PKG_CONFIG_PATH environment variable if you 8756installed software in a non-standard prefix. 8757 8758_PKG_TEXT])[]dnl 8759 ]) 8760elif test $pkg_failed = untried; then 8761 AC_MSG_RESULT([no]) 8762 m4_default([$4], [AC_MSG_FAILURE( 8763[The pkg-config script could not be found or is too old. Make sure it 8764is in your PATH or set the PKG_CONFIG environment variable to the full 8765path to pkg-config. 8766 8767_PKG_TEXT 8768 8769To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl 8770 ]) 8771else 8772 $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS 8773 $1[]_LIBS=$pkg_cv_[]$1[]_LIBS 8774 AC_MSG_RESULT([yes]) 8775 $3 8776fi[]dnl 8777])# PKG_CHECK_MODULES 8778 8779dnl xorg-macros.m4. Generated from xorg-macros.m4.in xorgversion.m4 by configure. 8780dnl 8781dnl Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. 8782dnl 8783dnl Permission is hereby granted, free of charge, to any person obtaining a 8784dnl copy of this software and associated documentation files (the "Software"), 8785dnl to deal in the Software without restriction, including without limitation 8786dnl the rights to use, copy, modify, merge, publish, distribute, sublicense, 8787dnl and/or sell copies of the Software, and to permit persons to whom the 8788dnl Software is furnished to do so, subject to the following conditions: 8789dnl 8790dnl The above copyright notice and this permission notice (including the next 8791dnl paragraph) shall be included in all copies or substantial portions of the 8792dnl Software. 8793dnl 8794dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 8795dnl IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 8796dnl FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 8797dnl THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 8798dnl LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 8799dnl FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 8800dnl DEALINGS IN THE SOFTWARE. 8801 8802# XORG_MACROS_VERSION(required-version) 8803# ------------------------------------- 8804# Minimum version: 1.1.0 8805# 8806# If you're using a macro added in Version 1.1 or newer, include this in 8807# your configure.ac with the minimum required version, such as: 8808# XORG_MACROS_VERSION(1.1) 8809# 8810# To ensure that this macro is defined, also add: 8811# m4_ifndef([XORG_MACROS_VERSION], 8812# [m4_fatal([must install xorg-macros 1.1 or later before running autoconf/autogen])]) 8813# 8814# 8815# See the "minimum version" comment for each macro you use to see what 8816# version you require. 8817m4_defun([XORG_MACROS_VERSION],[ 8818m4_define([vers_have], [1.17]) 8819m4_define([maj_have], m4_substr(vers_have, 0, m4_index(vers_have, [.]))) 8820m4_define([maj_needed], m4_substr([$1], 0, m4_index([$1], [.]))) 8821m4_if(m4_cmp(maj_have, maj_needed), 0,, 8822 [m4_fatal([xorg-macros major version ]maj_needed[ is required but ]vers_have[ found])]) 8823m4_if(m4_version_compare(vers_have, [$1]), -1, 8824 [m4_fatal([xorg-macros version $1 or higher is required but ]vers_have[ found])]) 8825m4_undefine([vers_have]) 8826m4_undefine([maj_have]) 8827m4_undefine([maj_needed]) 8828]) # XORG_MACROS_VERSION 8829 8830# XORG_PROG_RAWCPP() 8831# ------------------ 8832# Minimum version: 1.0.0 8833# 8834# Find cpp program and necessary flags for use in pre-processing text files 8835# such as man pages and config files 8836AC_DEFUN([XORG_PROG_RAWCPP],[ 8837AC_REQUIRE([AC_PROG_CPP]) 8838AC_PATH_PROGS(RAWCPP, [cpp], [${CPP}], 8839 [$PATH:/bin:/usr/bin:/usr/lib:/usr/libexec:/usr/ccs/lib:/usr/ccs/lbin:/lib]) 8840 8841# Check for flag to avoid builtin definitions - assumes unix is predefined, 8842# which is not the best choice for supporting other OS'es, but covers most 8843# of the ones we need for now. 8844AC_MSG_CHECKING([if $RAWCPP requires -undef]) 8845AC_LANG_CONFTEST([AC_LANG_SOURCE([[Does cpp redefine unix ?]])]) 8846if test `${RAWCPP} < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then 8847 AC_MSG_RESULT([no]) 8848else 8849 if test `${RAWCPP} -undef < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then 8850 RAWCPPFLAGS=-undef 8851 AC_MSG_RESULT([yes]) 8852 # under Cygwin unix is still defined even with -undef 8853 elif test `${RAWCPP} -undef -ansi < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then 8854 RAWCPPFLAGS="-undef -ansi" 8855 AC_MSG_RESULT([yes, with -ansi]) 8856 else 8857 AC_MSG_ERROR([${RAWCPP} defines unix with or without -undef. I don't know what to do.]) 8858 fi 8859fi 8860rm -f conftest.$ac_ext 8861 8862AC_MSG_CHECKING([if $RAWCPP requires -traditional]) 8863AC_LANG_CONFTEST([AC_LANG_SOURCE([[Does cpp preserve "whitespace"?]])]) 8864if test `${RAWCPP} < conftest.$ac_ext | grep -c 'preserve \"'` -eq 1 ; then 8865 AC_MSG_RESULT([no]) 8866else 8867 if test `${RAWCPP} -traditional < conftest.$ac_ext | grep -c 'preserve \"'` -eq 1 ; then 8868 RAWCPPFLAGS="${RAWCPPFLAGS} -traditional" 8869 AC_MSG_RESULT([yes]) 8870 else 8871 AC_MSG_ERROR([${RAWCPP} does not preserve whitespace with or without -traditional. I don't know what to do.]) 8872 fi 8873fi 8874rm -f conftest.$ac_ext 8875AC_SUBST(RAWCPPFLAGS) 8876]) # XORG_PROG_RAWCPP 8877 8878# XORG_MANPAGE_SECTIONS() 8879# ----------------------- 8880# Minimum version: 1.0.0 8881# 8882# Determine which sections man pages go in for the different man page types 8883# on this OS - replaces *ManSuffix settings in old Imake *.cf per-os files. 8884# Not sure if there's any better way than just hardcoding by OS name. 8885# Override default settings by setting environment variables 8886# Added MAN_SUBSTS in version 1.8 8887# Added AC_PROG_SED in version 1.8 8888 8889AC_DEFUN([XORG_MANPAGE_SECTIONS],[ 8890AC_REQUIRE([AC_CANONICAL_HOST]) 8891AC_REQUIRE([AC_PROG_SED]) 8892 8893if test x$APP_MAN_SUFFIX = x ; then 8894 APP_MAN_SUFFIX=1 8895fi 8896if test x$APP_MAN_DIR = x ; then 8897 APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)' 8898fi 8899 8900if test x$LIB_MAN_SUFFIX = x ; then 8901 LIB_MAN_SUFFIX=3 8902fi 8903if test x$LIB_MAN_DIR = x ; then 8904 LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)' 8905fi 8906 8907if test x$FILE_MAN_SUFFIX = x ; then 8908 case $host_os in 8909 solaris*) FILE_MAN_SUFFIX=4 ;; 8910 *) FILE_MAN_SUFFIX=5 ;; 8911 esac 8912fi 8913if test x$FILE_MAN_DIR = x ; then 8914 FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)' 8915fi 8916 8917if test x$MISC_MAN_SUFFIX = x ; then 8918 case $host_os in 8919 solaris*) MISC_MAN_SUFFIX=5 ;; 8920 *) MISC_MAN_SUFFIX=7 ;; 8921 esac 8922fi 8923if test x$MISC_MAN_DIR = x ; then 8924 MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)' 8925fi 8926 8927if test x$DRIVER_MAN_SUFFIX = x ; then 8928 case $host_os in 8929 solaris*) DRIVER_MAN_SUFFIX=7 ;; 8930 *) DRIVER_MAN_SUFFIX=4 ;; 8931 esac 8932fi 8933if test x$DRIVER_MAN_DIR = x ; then 8934 DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)' 8935fi 8936 8937if test x$ADMIN_MAN_SUFFIX = x ; then 8938 case $host_os in 8939 solaris*) ADMIN_MAN_SUFFIX=1m ;; 8940 *) ADMIN_MAN_SUFFIX=8 ;; 8941 esac 8942fi 8943if test x$ADMIN_MAN_DIR = x ; then 8944 ADMIN_MAN_DIR='$(mandir)/man$(ADMIN_MAN_SUFFIX)' 8945fi 8946 8947 8948AC_SUBST([APP_MAN_SUFFIX]) 8949AC_SUBST([LIB_MAN_SUFFIX]) 8950AC_SUBST([FILE_MAN_SUFFIX]) 8951AC_SUBST([MISC_MAN_SUFFIX]) 8952AC_SUBST([DRIVER_MAN_SUFFIX]) 8953AC_SUBST([ADMIN_MAN_SUFFIX]) 8954AC_SUBST([APP_MAN_DIR]) 8955AC_SUBST([LIB_MAN_DIR]) 8956AC_SUBST([FILE_MAN_DIR]) 8957AC_SUBST([MISC_MAN_DIR]) 8958AC_SUBST([DRIVER_MAN_DIR]) 8959AC_SUBST([ADMIN_MAN_DIR]) 8960 8961XORG_MAN_PAGE="X Version 11" 8962AC_SUBST([XORG_MAN_PAGE]) 8963MAN_SUBSTS="\ 8964 -e 's|__vendorversion__|\"\$(PACKAGE_STRING)\" \"\$(XORG_MAN_PAGE)\"|' \ 8965 -e 's|__xorgversion__|\"\$(PACKAGE_STRING)\" \"\$(XORG_MAN_PAGE)\"|' \ 8966 -e 's|__xservername__|Xorg|g' \ 8967 -e 's|__xconfigfile__|xorg.conf|g' \ 8968 -e 's|__projectroot__|\$(prefix)|g' \ 8969 -e 's|__apploaddir__|\$(appdefaultdir)|g' \ 8970 -e 's|__appmansuffix__|\$(APP_MAN_SUFFIX)|g' \ 8971 -e 's|__drivermansuffix__|\$(DRIVER_MAN_SUFFIX)|g' \ 8972 -e 's|__adminmansuffix__|\$(ADMIN_MAN_SUFFIX)|g' \ 8973 -e 's|__libmansuffix__|\$(LIB_MAN_SUFFIX)|g' \ 8974 -e 's|__miscmansuffix__|\$(MISC_MAN_SUFFIX)|g' \ 8975 -e 's|__filemansuffix__|\$(FILE_MAN_SUFFIX)|g'" 8976AC_SUBST([MAN_SUBSTS]) 8977 8978]) # XORG_MANPAGE_SECTIONS 8979 8980# XORG_CHECK_SGML_DOCTOOLS([MIN-VERSION]) 8981# ------------------------ 8982# Minimum version: 1.7.0 8983# 8984# Defines the variable XORG_SGML_PATH containing the location of X11/defs.ent 8985# provided by xorg-sgml-doctools, if installed. 8986AC_DEFUN([XORG_CHECK_SGML_DOCTOOLS],[ 8987AC_MSG_CHECKING([for X.Org SGML entities m4_ifval([$1],[>= $1])]) 8988XORG_SGML_PATH= 8989PKG_CHECK_EXISTS([xorg-sgml-doctools m4_ifval([$1],[>= $1])], 8990 [XORG_SGML_PATH=`$PKG_CONFIG --variable=sgmlrootdir xorg-sgml-doctools`], 8991 [m4_ifval([$1],[:], 8992 [if test x"$cross_compiling" != x"yes" ; then 8993 AC_CHECK_FILE([$prefix/share/sgml/X11/defs.ent], 8994 [XORG_SGML_PATH=$prefix/share/sgml]) 8995 fi]) 8996 ]) 8997 8998# Define variables STYLESHEET_SRCDIR and XSL_STYLESHEET containing 8999# the path and the name of the doc stylesheet 9000if test "x$XORG_SGML_PATH" != "x" ; then 9001 AC_MSG_RESULT([$XORG_SGML_PATH]) 9002 STYLESHEET_SRCDIR=$XORG_SGML_PATH/X11 9003 XSL_STYLESHEET=$STYLESHEET_SRCDIR/xorg.xsl 9004else 9005 AC_MSG_RESULT([no]) 9006fi 9007 9008AC_SUBST(XORG_SGML_PATH) 9009AC_SUBST(STYLESHEET_SRCDIR) 9010AC_SUBST(XSL_STYLESHEET) 9011AM_CONDITIONAL([HAVE_STYLESHEETS], [test "x$XSL_STYLESHEET" != "x"]) 9012]) # XORG_CHECK_SGML_DOCTOOLS 9013 9014# XORG_CHECK_LINUXDOC 9015# ------------------- 9016# Minimum version: 1.0.0 9017# 9018# Defines the variable MAKE_TEXT if the necessary tools and 9019# files are found. $(MAKE_TEXT) blah.sgml will then produce blah.txt. 9020# Whether or not the necessary tools and files are found can be checked 9021# with the AM_CONDITIONAL "BUILD_LINUXDOC" 9022AC_DEFUN([XORG_CHECK_LINUXDOC],[ 9023AC_REQUIRE([XORG_CHECK_SGML_DOCTOOLS]) 9024AC_REQUIRE([XORG_WITH_PS2PDF]) 9025 9026AC_PATH_PROG(LINUXDOC, linuxdoc) 9027 9028AC_MSG_CHECKING([whether to build documentation]) 9029 9030if test x$XORG_SGML_PATH != x && test x$LINUXDOC != x ; then 9031 BUILDDOC=yes 9032else 9033 BUILDDOC=no 9034fi 9035 9036AM_CONDITIONAL(BUILD_LINUXDOC, [test x$BUILDDOC = xyes]) 9037 9038AC_MSG_RESULT([$BUILDDOC]) 9039 9040AC_MSG_CHECKING([whether to build pdf documentation]) 9041 9042if test x$have_ps2pdf != xno && test x$BUILD_PDFDOC != xno; then 9043 BUILDPDFDOC=yes 9044else 9045 BUILDPDFDOC=no 9046fi 9047 9048AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes]) 9049 9050AC_MSG_RESULT([$BUILDPDFDOC]) 9051 9052MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH GROFF_NO_SGR=y $LINUXDOC -B txt -f" 9053MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B latex --papersize=letter --output=ps" 9054MAKE_PDF="$PS2PDF" 9055MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B html --split=0" 9056 9057AC_SUBST(MAKE_TEXT) 9058AC_SUBST(MAKE_PS) 9059AC_SUBST(MAKE_PDF) 9060AC_SUBST(MAKE_HTML) 9061]) # XORG_CHECK_LINUXDOC 9062 9063# XORG_CHECK_DOCBOOK 9064# ------------------- 9065# Minimum version: 1.0.0 9066# 9067# Checks for the ability to build output formats from SGML DocBook source. 9068# For XXX in {TXT, PDF, PS, HTML}, the AM_CONDITIONAL "BUILD_XXXDOC" 9069# indicates whether the necessary tools and files are found and, if set, 9070# $(MAKE_XXX) blah.sgml will produce blah.xxx. 9071AC_DEFUN([XORG_CHECK_DOCBOOK],[ 9072AC_REQUIRE([XORG_CHECK_SGML_DOCTOOLS]) 9073 9074BUILDTXTDOC=no 9075BUILDPDFDOC=no 9076BUILDPSDOC=no 9077BUILDHTMLDOC=no 9078 9079AC_PATH_PROG(DOCBOOKPS, docbook2ps) 9080AC_PATH_PROG(DOCBOOKPDF, docbook2pdf) 9081AC_PATH_PROG(DOCBOOKHTML, docbook2html) 9082AC_PATH_PROG(DOCBOOKTXT, docbook2txt) 9083 9084AC_MSG_CHECKING([whether to build text documentation]) 9085if test x$XORG_SGML_PATH != x && test x$DOCBOOKTXT != x && 9086 test x$BUILD_TXTDOC != xno; then 9087 BUILDTXTDOC=yes 9088fi 9089AM_CONDITIONAL(BUILD_TXTDOC, [test x$BUILDTXTDOC = xyes]) 9090AC_MSG_RESULT([$BUILDTXTDOC]) 9091 9092AC_MSG_CHECKING([whether to build PDF documentation]) 9093if test x$XORG_SGML_PATH != x && test x$DOCBOOKPDF != x && 9094 test x$BUILD_PDFDOC != xno; then 9095 BUILDPDFDOC=yes 9096fi 9097AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes]) 9098AC_MSG_RESULT([$BUILDPDFDOC]) 9099 9100AC_MSG_CHECKING([whether to build PostScript documentation]) 9101if test x$XORG_SGML_PATH != x && test x$DOCBOOKPS != x && 9102 test x$BUILD_PSDOC != xno; then 9103 BUILDPSDOC=yes 9104fi 9105AM_CONDITIONAL(BUILD_PSDOC, [test x$BUILDPSDOC = xyes]) 9106AC_MSG_RESULT([$BUILDPSDOC]) 9107 9108AC_MSG_CHECKING([whether to build HTML documentation]) 9109if test x$XORG_SGML_PATH != x && test x$DOCBOOKHTML != x && 9110 test x$BUILD_HTMLDOC != xno; then 9111 BUILDHTMLDOC=yes 9112fi 9113AM_CONDITIONAL(BUILD_HTMLDOC, [test x$BUILDHTMLDOC = xyes]) 9114AC_MSG_RESULT([$BUILDHTMLDOC]) 9115 9116MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKTXT" 9117MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPS" 9118MAKE_PDF="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPDF" 9119MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKHTML" 9120 9121AC_SUBST(MAKE_TEXT) 9122AC_SUBST(MAKE_PS) 9123AC_SUBST(MAKE_PDF) 9124AC_SUBST(MAKE_HTML) 9125]) # XORG_CHECK_DOCBOOK 9126 9127# XORG_WITH_XMLTO([MIN-VERSION], [DEFAULT]) 9128# ---------------- 9129# Minimum version: 1.5.0 9130# Minimum version for optional DEFAULT argument: 1.11.0 9131# 9132# Documentation tools are not always available on all platforms and sometimes 9133# not at the appropriate level. This macro enables a module to test for the 9134# presence of the tool and obtain it's path in separate variables. Coupled with 9135# the --with-xmlto option, it allows maximum flexibilty in making decisions 9136# as whether or not to use the xmlto package. When DEFAULT is not specified, 9137# --with-xmlto assumes 'auto'. 9138# 9139# Interface to module: 9140# HAVE_XMLTO: used in makefiles to conditionally generate documentation 9141# XMLTO: returns the path of the xmlto program found 9142# returns the path set by the user in the environment 9143# --with-xmlto: 'yes' user instructs the module to use xmlto 9144# 'no' user instructs the module not to use xmlto 9145# 9146# Added in version 1.10.0 9147# HAVE_XMLTO_TEXT: used in makefiles to conditionally generate text documentation 9148# xmlto for text output requires either lynx, links, or w3m browsers 9149# 9150# If the user sets the value of XMLTO, AC_PATH_PROG skips testing the path. 9151# 9152AC_DEFUN([XORG_WITH_XMLTO],[ 9153AC_ARG_VAR([XMLTO], [Path to xmlto command]) 9154m4_define([_defopt], m4_default([$2], [auto])) 9155AC_ARG_WITH(xmlto, 9156 AS_HELP_STRING([--with-xmlto], 9157 [Use xmlto to regenerate documentation (default: ]_defopt[)]), 9158 [use_xmlto=$withval], [use_xmlto=]_defopt) 9159m4_undefine([_defopt]) 9160 9161if test "x$use_xmlto" = x"auto"; then 9162 AC_PATH_PROG([XMLTO], [xmlto]) 9163 if test "x$XMLTO" = "x"; then 9164 AC_MSG_WARN([xmlto not found - documentation targets will be skipped]) 9165 have_xmlto=no 9166 else 9167 have_xmlto=yes 9168 fi 9169elif test "x$use_xmlto" = x"yes" ; then 9170 AC_PATH_PROG([XMLTO], [xmlto]) 9171 if test "x$XMLTO" = "x"; then 9172 AC_MSG_ERROR([--with-xmlto=yes specified but xmlto not found in PATH]) 9173 fi 9174 have_xmlto=yes 9175elif test "x$use_xmlto" = x"no" ; then 9176 if test "x$XMLTO" != "x"; then 9177 AC_MSG_WARN([ignoring XMLTO environment variable since --with-xmlto=no was specified]) 9178 fi 9179 have_xmlto=no 9180else 9181 AC_MSG_ERROR([--with-xmlto expects 'yes' or 'no']) 9182fi 9183 9184# Test for a minimum version of xmlto, if provided. 9185m4_ifval([$1], 9186[if test "$have_xmlto" = yes; then 9187 # scrape the xmlto version 9188 AC_MSG_CHECKING([the xmlto version]) 9189 xmlto_version=`$XMLTO --version 2>/dev/null | cut -d' ' -f3` 9190 AC_MSG_RESULT([$xmlto_version]) 9191 AS_VERSION_COMPARE([$xmlto_version], [$1], 9192 [if test "x$use_xmlto" = xauto; then 9193 AC_MSG_WARN([xmlto version $xmlto_version found, but $1 needed]) 9194 have_xmlto=no 9195 else 9196 AC_MSG_ERROR([xmlto version $xmlto_version found, but $1 needed]) 9197 fi]) 9198fi]) 9199 9200# Test for the ability of xmlto to generate a text target 9201have_xmlto_text=no 9202cat > conftest.xml << "EOF" 9203EOF 9204AS_IF([test "$have_xmlto" = yes], 9205 [AS_IF([$XMLTO --skip-validation txt conftest.xml >/dev/null 2>&1], 9206 [have_xmlto_text=yes], 9207 [AC_MSG_WARN([xmlto cannot generate text format, this format skipped])])]) 9208rm -f conftest.xml 9209AM_CONDITIONAL([HAVE_XMLTO_TEXT], [test $have_xmlto_text = yes]) 9210AM_CONDITIONAL([HAVE_XMLTO], [test "$have_xmlto" = yes]) 9211]) # XORG_WITH_XMLTO 9212 9213# XORG_WITH_XSLTPROC([MIN-VERSION], [DEFAULT]) 9214# -------------------------------------------- 9215# Minimum version: 1.12.0 9216# Minimum version for optional DEFAULT argument: 1.12.0 9217# 9218# XSLT (Extensible Stylesheet Language Transformations) is a declarative, 9219# XML-based language used for the transformation of XML documents. 9220# The xsltproc command line tool is for applying XSLT stylesheets to XML documents. 9221# It is used under the cover by xmlto to generate html files from DocBook/XML. 9222# The XSLT processor is often used as a standalone tool for transformations. 9223# It should not be assumed that this tool is used only to work with documnetation. 9224# When DEFAULT is not specified, --with-xsltproc assumes 'auto'. 9225# 9226# Interface to module: 9227# HAVE_XSLTPROC: used in makefiles to conditionally generate documentation 9228# XSLTPROC: returns the path of the xsltproc program found 9229# returns the path set by the user in the environment 9230# --with-xsltproc: 'yes' user instructs the module to use xsltproc 9231# 'no' user instructs the module not to use xsltproc 9232# have_xsltproc: returns yes if xsltproc found in PATH or no 9233# 9234# If the user sets the value of XSLTPROC, AC_PATH_PROG skips testing the path. 9235# 9236AC_DEFUN([XORG_WITH_XSLTPROC],[ 9237AC_ARG_VAR([XSLTPROC], [Path to xsltproc command]) 9238# Preserves the interface, should it be implemented later 9239m4_ifval([$1], [m4_warn([syntax], [Checking for xsltproc MIN-VERSION is not implemented])]) 9240m4_define([_defopt], m4_default([$2], [auto])) 9241AC_ARG_WITH(xsltproc, 9242 AS_HELP_STRING([--with-xsltproc], 9243 [Use xsltproc for the transformation of XML documents (default: ]_defopt[)]), 9244 [use_xsltproc=$withval], [use_xsltproc=]_defopt) 9245m4_undefine([_defopt]) 9246 9247if test "x$use_xsltproc" = x"auto"; then 9248 AC_PATH_PROG([XSLTPROC], [xsltproc]) 9249 if test "x$XSLTPROC" = "x"; then 9250 AC_MSG_WARN([xsltproc not found - cannot transform XML documents]) 9251 have_xsltproc=no 9252 else 9253 have_xsltproc=yes 9254 fi 9255elif test "x$use_xsltproc" = x"yes" ; then 9256 AC_PATH_PROG([XSLTPROC], [xsltproc]) 9257 if test "x$XSLTPROC" = "x"; then 9258 AC_MSG_ERROR([--with-xsltproc=yes specified but xsltproc not found in PATH]) 9259 fi 9260 have_xsltproc=yes 9261elif test "x$use_xsltproc" = x"no" ; then 9262 if test "x$XSLTPROC" != "x"; then 9263 AC_MSG_WARN([ignoring XSLTPROC environment variable since --with-xsltproc=no was specified]) 9264 fi 9265 have_xsltproc=no 9266else 9267 AC_MSG_ERROR([--with-xsltproc expects 'yes' or 'no']) 9268fi 9269 9270AM_CONDITIONAL([HAVE_XSLTPROC], [test "$have_xsltproc" = yes]) 9271]) # XORG_WITH_XSLTPROC 9272 9273# XORG_WITH_PERL([MIN-VERSION], [DEFAULT]) 9274# ---------------------------------------- 9275# Minimum version: 1.15.0 9276# 9277# PERL (Practical Extraction and Report Language) is a language optimized for 9278# scanning arbitrary text files, extracting information from those text files, 9279# and printing reports based on that information. 9280# 9281# When DEFAULT is not specified, --with-perl assumes 'auto'. 9282# 9283# Interface to module: 9284# HAVE_PERL: used in makefiles to conditionally scan text files 9285# PERL: returns the path of the perl program found 9286# returns the path set by the user in the environment 9287# --with-perl: 'yes' user instructs the module to use perl 9288# 'no' user instructs the module not to use perl 9289# have_perl: returns yes if perl found in PATH or no 9290# 9291# If the user sets the value of PERL, AC_PATH_PROG skips testing the path. 9292# 9293AC_DEFUN([XORG_WITH_PERL],[ 9294AC_ARG_VAR([PERL], [Path to perl command]) 9295# Preserves the interface, should it be implemented later 9296m4_ifval([$1], [m4_warn([syntax], [Checking for perl MIN-VERSION is not implemented])]) 9297m4_define([_defopt], m4_default([$2], [auto])) 9298AC_ARG_WITH(perl, 9299 AS_HELP_STRING([--with-perl], 9300 [Use perl for extracting information from files (default: ]_defopt[)]), 9301 [use_perl=$withval], [use_perl=]_defopt) 9302m4_undefine([_defopt]) 9303 9304if test "x$use_perl" = x"auto"; then 9305 AC_PATH_PROG([PERL], [perl]) 9306 if test "x$PERL" = "x"; then 9307 AC_MSG_WARN([perl not found - cannot extract information and report]) 9308 have_perl=no 9309 else 9310 have_perl=yes 9311 fi 9312elif test "x$use_perl" = x"yes" ; then 9313 AC_PATH_PROG([PERL], [perl]) 9314 if test "x$PERL" = "x"; then 9315 AC_MSG_ERROR([--with-perl=yes specified but perl not found in PATH]) 9316 fi 9317 have_perl=yes 9318elif test "x$use_perl" = x"no" ; then 9319 if test "x$PERL" != "x"; then 9320 AC_MSG_WARN([ignoring PERL environment variable since --with-perl=no was specified]) 9321 fi 9322 have_perl=no 9323else 9324 AC_MSG_ERROR([--with-perl expects 'yes' or 'no']) 9325fi 9326 9327AM_CONDITIONAL([HAVE_PERL], [test "$have_perl" = yes]) 9328]) # XORG_WITH_PERL 9329 9330# XORG_WITH_ASCIIDOC([MIN-VERSION], [DEFAULT]) 9331# ---------------- 9332# Minimum version: 1.5.0 9333# Minimum version for optional DEFAULT argument: 1.11.0 9334# 9335# Documentation tools are not always available on all platforms and sometimes 9336# not at the appropriate level. This macro enables a module to test for the 9337# presence of the tool and obtain it's path in separate variables. Coupled with 9338# the --with-asciidoc option, it allows maximum flexibilty in making decisions 9339# as whether or not to use the asciidoc package. When DEFAULT is not specified, 9340# --with-asciidoc assumes 'auto'. 9341# 9342# Interface to module: 9343# HAVE_ASCIIDOC: used in makefiles to conditionally generate documentation 9344# ASCIIDOC: returns the path of the asciidoc program found 9345# returns the path set by the user in the environment 9346# --with-asciidoc: 'yes' user instructs the module to use asciidoc 9347# 'no' user instructs the module not to use asciidoc 9348# 9349# If the user sets the value of ASCIIDOC, AC_PATH_PROG skips testing the path. 9350# 9351AC_DEFUN([XORG_WITH_ASCIIDOC],[ 9352AC_ARG_VAR([ASCIIDOC], [Path to asciidoc command]) 9353m4_define([_defopt], m4_default([$2], [auto])) 9354AC_ARG_WITH(asciidoc, 9355 AS_HELP_STRING([--with-asciidoc], 9356 [Use asciidoc to regenerate documentation (default: ]_defopt[)]), 9357 [use_asciidoc=$withval], [use_asciidoc=]_defopt) 9358m4_undefine([_defopt]) 9359 9360if test "x$use_asciidoc" = x"auto"; then 9361 AC_PATH_PROG([ASCIIDOC], [asciidoc]) 9362 if test "x$ASCIIDOC" = "x"; then 9363 AC_MSG_WARN([asciidoc not found - documentation targets will be skipped]) 9364 have_asciidoc=no 9365 else 9366 have_asciidoc=yes 9367 fi 9368elif test "x$use_asciidoc" = x"yes" ; then 9369 AC_PATH_PROG([ASCIIDOC], [asciidoc]) 9370 if test "x$ASCIIDOC" = "x"; then 9371 AC_MSG_ERROR([--with-asciidoc=yes specified but asciidoc not found in PATH]) 9372 fi 9373 have_asciidoc=yes 9374elif test "x$use_asciidoc" = x"no" ; then 9375 if test "x$ASCIIDOC" != "x"; then 9376 AC_MSG_WARN([ignoring ASCIIDOC environment variable since --with-asciidoc=no was specified]) 9377 fi 9378 have_asciidoc=no 9379else 9380 AC_MSG_ERROR([--with-asciidoc expects 'yes' or 'no']) 9381fi 9382m4_ifval([$1], 9383[if test "$have_asciidoc" = yes; then 9384 # scrape the asciidoc version 9385 AC_MSG_CHECKING([the asciidoc version]) 9386 asciidoc_version=`$ASCIIDOC --version 2>/dev/null | cut -d' ' -f2` 9387 AC_MSG_RESULT([$asciidoc_version]) 9388 AS_VERSION_COMPARE([$asciidoc_version], [$1], 9389 [if test "x$use_asciidoc" = xauto; then 9390 AC_MSG_WARN([asciidoc version $asciidoc_version found, but $1 needed]) 9391 have_asciidoc=no 9392 else 9393 AC_MSG_ERROR([asciidoc version $asciidoc_version found, but $1 needed]) 9394 fi]) 9395fi]) 9396AM_CONDITIONAL([HAVE_ASCIIDOC], [test "$have_asciidoc" = yes]) 9397]) # XORG_WITH_ASCIIDOC 9398 9399# XORG_WITH_DOXYGEN([MIN-VERSION], [DEFAULT]) 9400# -------------------------------- 9401# Minimum version: 1.5.0 9402# Minimum version for optional DEFAULT argument: 1.11.0 9403# 9404# Documentation tools are not always available on all platforms and sometimes 9405# not at the appropriate level. This macro enables a module to test for the 9406# presence of the tool and obtain it's path in separate variables. Coupled with 9407# the --with-doxygen option, it allows maximum flexibilty in making decisions 9408# as whether or not to use the doxygen package. When DEFAULT is not specified, 9409# --with-doxygen assumes 'auto'. 9410# 9411# Interface to module: 9412# HAVE_DOXYGEN: used in makefiles to conditionally generate documentation 9413# DOXYGEN: returns the path of the doxygen program found 9414# returns the path set by the user in the environment 9415# --with-doxygen: 'yes' user instructs the module to use doxygen 9416# 'no' user instructs the module not to use doxygen 9417# 9418# If the user sets the value of DOXYGEN, AC_PATH_PROG skips testing the path. 9419# 9420AC_DEFUN([XORG_WITH_DOXYGEN],[ 9421AC_ARG_VAR([DOXYGEN], [Path to doxygen command]) 9422m4_define([_defopt], m4_default([$2], [auto])) 9423AC_ARG_WITH(doxygen, 9424 AS_HELP_STRING([--with-doxygen], 9425 [Use doxygen to regenerate documentation (default: ]_defopt[)]), 9426 [use_doxygen=$withval], [use_doxygen=]_defopt) 9427m4_undefine([_defopt]) 9428 9429if test "x$use_doxygen" = x"auto"; then 9430 AC_PATH_PROG([DOXYGEN], [doxygen]) 9431 if test "x$DOXYGEN" = "x"; then 9432 AC_MSG_WARN([doxygen not found - documentation targets will be skipped]) 9433 have_doxygen=no 9434 else 9435 have_doxygen=yes 9436 fi 9437elif test "x$use_doxygen" = x"yes" ; then 9438 AC_PATH_PROG([DOXYGEN], [doxygen]) 9439 if test "x$DOXYGEN" = "x"; then 9440 AC_MSG_ERROR([--with-doxygen=yes specified but doxygen not found in PATH]) 9441 fi 9442 have_doxygen=yes 9443elif test "x$use_doxygen" = x"no" ; then 9444 if test "x$DOXYGEN" != "x"; then 9445 AC_MSG_WARN([ignoring DOXYGEN environment variable since --with-doxygen=no was specified]) 9446 fi 9447 have_doxygen=no 9448else 9449 AC_MSG_ERROR([--with-doxygen expects 'yes' or 'no']) 9450fi 9451m4_ifval([$1], 9452[if test "$have_doxygen" = yes; then 9453 # scrape the doxygen version 9454 AC_MSG_CHECKING([the doxygen version]) 9455 doxygen_version=`$DOXYGEN --version 2>/dev/null` 9456 AC_MSG_RESULT([$doxygen_version]) 9457 AS_VERSION_COMPARE([$doxygen_version], [$1], 9458 [if test "x$use_doxygen" = xauto; then 9459 AC_MSG_WARN([doxygen version $doxygen_version found, but $1 needed]) 9460 have_doxygen=no 9461 else 9462 AC_MSG_ERROR([doxygen version $doxygen_version found, but $1 needed]) 9463 fi]) 9464fi]) 9465AM_CONDITIONAL([HAVE_DOXYGEN], [test "$have_doxygen" = yes]) 9466]) # XORG_WITH_DOXYGEN 9467 9468# XORG_WITH_GROFF([DEFAULT]) 9469# ---------------- 9470# Minimum version: 1.6.0 9471# Minimum version for optional DEFAULT argument: 1.11.0 9472# 9473# Documentation tools are not always available on all platforms and sometimes 9474# not at the appropriate level. This macro enables a module to test for the 9475# presence of the tool and obtain it's path in separate variables. Coupled with 9476# the --with-groff option, it allows maximum flexibilty in making decisions 9477# as whether or not to use the groff package. When DEFAULT is not specified, 9478# --with-groff assumes 'auto'. 9479# 9480# Interface to module: 9481# HAVE_GROFF: used in makefiles to conditionally generate documentation 9482# HAVE_GROFF_MM: the memorandum macros (-mm) package 9483# HAVE_GROFF_MS: the -ms macros package 9484# GROFF: returns the path of the groff program found 9485# returns the path set by the user in the environment 9486# --with-groff: 'yes' user instructs the module to use groff 9487# 'no' user instructs the module not to use groff 9488# 9489# Added in version 1.9.0: 9490# HAVE_GROFF_HTML: groff has dependencies to output HTML format: 9491# pnmcut pnmcrop pnmtopng pnmtops from the netpbm package. 9492# psselect from the psutils package. 9493# the ghostcript package. Refer to the grohtml man pages 9494# 9495# If the user sets the value of GROFF, AC_PATH_PROG skips testing the path. 9496# 9497# OS and distros often splits groff in a basic and full package, the former 9498# having the groff program and the later having devices, fonts and macros 9499# Checking for the groff executable is not enough. 9500# 9501# If macros are missing, we cannot assume that groff is useless, so we don't 9502# unset HAVE_GROFF or GROFF env variables. 9503# HAVE_GROFF_?? can never be true while HAVE_GROFF is false. 9504# 9505AC_DEFUN([XORG_WITH_GROFF],[ 9506AC_ARG_VAR([GROFF], [Path to groff command]) 9507m4_define([_defopt], m4_default([$1], [auto])) 9508AC_ARG_WITH(groff, 9509 AS_HELP_STRING([--with-groff], 9510 [Use groff to regenerate documentation (default: ]_defopt[)]), 9511 [use_groff=$withval], [use_groff=]_defopt) 9512m4_undefine([_defopt]) 9513 9514if test "x$use_groff" = x"auto"; then 9515 AC_PATH_PROG([GROFF], [groff]) 9516 if test "x$GROFF" = "x"; then 9517 AC_MSG_WARN([groff not found - documentation targets will be skipped]) 9518 have_groff=no 9519 else 9520 have_groff=yes 9521 fi 9522elif test "x$use_groff" = x"yes" ; then 9523 AC_PATH_PROG([GROFF], [groff]) 9524 if test "x$GROFF" = "x"; then 9525 AC_MSG_ERROR([--with-groff=yes specified but groff not found in PATH]) 9526 fi 9527 have_groff=yes 9528elif test "x$use_groff" = x"no" ; then 9529 if test "x$GROFF" != "x"; then 9530 AC_MSG_WARN([ignoring GROFF environment variable since --with-groff=no was specified]) 9531 fi 9532 have_groff=no 9533else 9534 AC_MSG_ERROR([--with-groff expects 'yes' or 'no']) 9535fi 9536 9537# We have groff, test for the presence of the macro packages 9538if test "x$have_groff" = x"yes"; then 9539 AC_MSG_CHECKING([for ${GROFF} -ms macros]) 9540 if ${GROFF} -ms -I. /dev/null >/dev/null 2>&1 ; then 9541 groff_ms_works=yes 9542 else 9543 groff_ms_works=no 9544 fi 9545 AC_MSG_RESULT([$groff_ms_works]) 9546 AC_MSG_CHECKING([for ${GROFF} -mm macros]) 9547 if ${GROFF} -mm -I. /dev/null >/dev/null 2>&1 ; then 9548 groff_mm_works=yes 9549 else 9550 groff_mm_works=no 9551 fi 9552 AC_MSG_RESULT([$groff_mm_works]) 9553fi 9554 9555# We have groff, test for HTML dependencies, one command per package 9556if test "x$have_groff" = x"yes"; then 9557 AC_PATH_PROGS(GS_PATH, [gs gswin32c]) 9558 AC_PATH_PROG(PNMTOPNG_PATH, [pnmtopng]) 9559 AC_PATH_PROG(PSSELECT_PATH, [psselect]) 9560 if test "x$GS_PATH" != "x" -a "x$PNMTOPNG_PATH" != "x" -a "x$PSSELECT_PATH" != "x"; then 9561 have_groff_html=yes 9562 else 9563 have_groff_html=no 9564 AC_MSG_WARN([grohtml dependencies not found - HTML Documentation skipped. Refer to grohtml man pages]) 9565 fi 9566fi 9567 9568# Set Automake conditionals for Makefiles 9569AM_CONDITIONAL([HAVE_GROFF], [test "$have_groff" = yes]) 9570AM_CONDITIONAL([HAVE_GROFF_MS], [test "$groff_ms_works" = yes]) 9571AM_CONDITIONAL([HAVE_GROFF_MM], [test "$groff_mm_works" = yes]) 9572AM_CONDITIONAL([HAVE_GROFF_HTML], [test "$have_groff_html" = yes]) 9573]) # XORG_WITH_GROFF 9574 9575# XORG_WITH_FOP([MIN-VERSION], [DEFAULT]) 9576# --------------------------------------- 9577# Minimum version: 1.6.0 9578# Minimum version for optional DEFAULT argument: 1.11.0 9579# Minimum version for optional MIN-VERSION argument: 1.15.0 9580# 9581# Documentation tools are not always available on all platforms and sometimes 9582# not at the appropriate level. This macro enables a module to test for the 9583# presence of the tool and obtain it's path in separate variables. Coupled with 9584# the --with-fop option, it allows maximum flexibilty in making decisions 9585# as whether or not to use the fop package. When DEFAULT is not specified, 9586# --with-fop assumes 'auto'. 9587# 9588# Interface to module: 9589# HAVE_FOP: used in makefiles to conditionally generate documentation 9590# FOP: returns the path of the fop program found 9591# returns the path set by the user in the environment 9592# --with-fop: 'yes' user instructs the module to use fop 9593# 'no' user instructs the module not to use fop 9594# 9595# If the user sets the value of FOP, AC_PATH_PROG skips testing the path. 9596# 9597AC_DEFUN([XORG_WITH_FOP],[ 9598AC_ARG_VAR([FOP], [Path to fop command]) 9599m4_define([_defopt], m4_default([$2], [auto])) 9600AC_ARG_WITH(fop, 9601 AS_HELP_STRING([--with-fop], 9602 [Use fop to regenerate documentation (default: ]_defopt[)]), 9603 [use_fop=$withval], [use_fop=]_defopt) 9604m4_undefine([_defopt]) 9605 9606if test "x$use_fop" = x"auto"; then 9607 AC_PATH_PROG([FOP], [fop]) 9608 if test "x$FOP" = "x"; then 9609 AC_MSG_WARN([fop not found - documentation targets will be skipped]) 9610 have_fop=no 9611 else 9612 have_fop=yes 9613 fi 9614elif test "x$use_fop" = x"yes" ; then 9615 AC_PATH_PROG([FOP], [fop]) 9616 if test "x$FOP" = "x"; then 9617 AC_MSG_ERROR([--with-fop=yes specified but fop not found in PATH]) 9618 fi 9619 have_fop=yes 9620elif test "x$use_fop" = x"no" ; then 9621 if test "x$FOP" != "x"; then 9622 AC_MSG_WARN([ignoring FOP environment variable since --with-fop=no was specified]) 9623 fi 9624 have_fop=no 9625else 9626 AC_MSG_ERROR([--with-fop expects 'yes' or 'no']) 9627fi 9628 9629# Test for a minimum version of fop, if provided. 9630m4_ifval([$1], 9631[if test "$have_fop" = yes; then 9632 # scrape the fop version 9633 AC_MSG_CHECKING([for fop minimum version]) 9634 fop_version=`$FOP -version 2>/dev/null | cut -d' ' -f3` 9635 AC_MSG_RESULT([$fop_version]) 9636 AS_VERSION_COMPARE([$fop_version], [$1], 9637 [if test "x$use_fop" = xauto; then 9638 AC_MSG_WARN([fop version $fop_version found, but $1 needed]) 9639 have_fop=no 9640 else 9641 AC_MSG_ERROR([fop version $fop_version found, but $1 needed]) 9642 fi]) 9643fi]) 9644AM_CONDITIONAL([HAVE_FOP], [test "$have_fop" = yes]) 9645]) # XORG_WITH_FOP 9646 9647# XORG_WITH_PS2PDF([DEFAULT]) 9648# ---------------- 9649# Minimum version: 1.6.0 9650# Minimum version for optional DEFAULT argument: 1.11.0 9651# 9652# Documentation tools are not always available on all platforms and sometimes 9653# not at the appropriate level. This macro enables a module to test for the 9654# presence of the tool and obtain it's path in separate variables. Coupled with 9655# the --with-ps2pdf option, it allows maximum flexibilty in making decisions 9656# as whether or not to use the ps2pdf package. When DEFAULT is not specified, 9657# --with-ps2pdf assumes 'auto'. 9658# 9659# Interface to module: 9660# HAVE_PS2PDF: used in makefiles to conditionally generate documentation 9661# PS2PDF: returns the path of the ps2pdf program found 9662# returns the path set by the user in the environment 9663# --with-ps2pdf: 'yes' user instructs the module to use ps2pdf 9664# 'no' user instructs the module not to use ps2pdf 9665# 9666# If the user sets the value of PS2PDF, AC_PATH_PROG skips testing the path. 9667# 9668AC_DEFUN([XORG_WITH_PS2PDF],[ 9669AC_ARG_VAR([PS2PDF], [Path to ps2pdf command]) 9670m4_define([_defopt], m4_default([$1], [auto])) 9671AC_ARG_WITH(ps2pdf, 9672 AS_HELP_STRING([--with-ps2pdf], 9673 [Use ps2pdf to regenerate documentation (default: ]_defopt[)]), 9674 [use_ps2pdf=$withval], [use_ps2pdf=]_defopt) 9675m4_undefine([_defopt]) 9676 9677if test "x$use_ps2pdf" = x"auto"; then 9678 AC_PATH_PROG([PS2PDF], [ps2pdf]) 9679 if test "x$PS2PDF" = "x"; then 9680 AC_MSG_WARN([ps2pdf not found - documentation targets will be skipped]) 9681 have_ps2pdf=no 9682 else 9683 have_ps2pdf=yes 9684 fi 9685elif test "x$use_ps2pdf" = x"yes" ; then 9686 AC_PATH_PROG([PS2PDF], [ps2pdf]) 9687 if test "x$PS2PDF" = "x"; then 9688 AC_MSG_ERROR([--with-ps2pdf=yes specified but ps2pdf not found in PATH]) 9689 fi 9690 have_ps2pdf=yes 9691elif test "x$use_ps2pdf" = x"no" ; then 9692 if test "x$PS2PDF" != "x"; then 9693 AC_MSG_WARN([ignoring PS2PDF environment variable since --with-ps2pdf=no was specified]) 9694 fi 9695 have_ps2pdf=no 9696else 9697 AC_MSG_ERROR([--with-ps2pdf expects 'yes' or 'no']) 9698fi 9699AM_CONDITIONAL([HAVE_PS2PDF], [test "$have_ps2pdf" = yes]) 9700]) # XORG_WITH_PS2PDF 9701 9702# XORG_ENABLE_DOCS (enable_docs=yes) 9703# ---------------- 9704# Minimum version: 1.6.0 9705# 9706# Documentation tools are not always available on all platforms and sometimes 9707# not at the appropriate level. This macro enables a builder to skip all 9708# documentation targets except traditional man pages. 9709# Combined with the specific tool checking macros XORG_WITH_*, it provides 9710# maximum flexibilty in controlling documentation building. 9711# Refer to: 9712# XORG_WITH_XMLTO --with-xmlto 9713# XORG_WITH_ASCIIDOC --with-asciidoc 9714# XORG_WITH_DOXYGEN --with-doxygen 9715# XORG_WITH_FOP --with-fop 9716# XORG_WITH_GROFF --with-groff 9717# XORG_WITH_PS2PDF --with-ps2pdf 9718# 9719# Interface to module: 9720# ENABLE_DOCS: used in makefiles to conditionally generate documentation 9721# --enable-docs: 'yes' user instructs the module to generate docs 9722# 'no' user instructs the module not to generate docs 9723# parm1: specify the default value, yes or no. 9724# 9725AC_DEFUN([XORG_ENABLE_DOCS],[ 9726m4_define([docs_default], m4_default([$1], [yes])) 9727AC_ARG_ENABLE(docs, 9728 AS_HELP_STRING([--enable-docs], 9729 [Enable building the documentation (default: ]docs_default[)]), 9730 [build_docs=$enableval], [build_docs=]docs_default) 9731m4_undefine([docs_default]) 9732AM_CONDITIONAL(ENABLE_DOCS, [test x$build_docs = xyes]) 9733AC_MSG_CHECKING([whether to build documentation]) 9734AC_MSG_RESULT([$build_docs]) 9735]) # XORG_ENABLE_DOCS 9736 9737# XORG_ENABLE_DEVEL_DOCS (enable_devel_docs=yes) 9738# ---------------- 9739# Minimum version: 1.6.0 9740# 9741# This macro enables a builder to skip all developer documentation. 9742# Combined with the specific tool checking macros XORG_WITH_*, it provides 9743# maximum flexibilty in controlling documentation building. 9744# Refer to: 9745# XORG_WITH_XMLTO --with-xmlto 9746# XORG_WITH_ASCIIDOC --with-asciidoc 9747# XORG_WITH_DOXYGEN --with-doxygen 9748# XORG_WITH_FOP --with-fop 9749# XORG_WITH_GROFF --with-groff 9750# XORG_WITH_PS2PDF --with-ps2pdf 9751# 9752# Interface to module: 9753# ENABLE_DEVEL_DOCS: used in makefiles to conditionally generate developer docs 9754# --enable-devel-docs: 'yes' user instructs the module to generate developer docs 9755# 'no' user instructs the module not to generate developer docs 9756# parm1: specify the default value, yes or no. 9757# 9758AC_DEFUN([XORG_ENABLE_DEVEL_DOCS],[ 9759m4_define([devel_default], m4_default([$1], [yes])) 9760AC_ARG_ENABLE(devel-docs, 9761 AS_HELP_STRING([--enable-devel-docs], 9762 [Enable building the developer documentation (default: ]devel_default[)]), 9763 [build_devel_docs=$enableval], [build_devel_docs=]devel_default) 9764m4_undefine([devel_default]) 9765AM_CONDITIONAL(ENABLE_DEVEL_DOCS, [test x$build_devel_docs = xyes]) 9766AC_MSG_CHECKING([whether to build developer documentation]) 9767AC_MSG_RESULT([$build_devel_docs]) 9768]) # XORG_ENABLE_DEVEL_DOCS 9769 9770# XORG_ENABLE_SPECS (enable_specs=yes) 9771# ---------------- 9772# Minimum version: 1.6.0 9773# 9774# This macro enables a builder to skip all functional specification targets. 9775# Combined with the specific tool checking macros XORG_WITH_*, it provides 9776# maximum flexibilty in controlling documentation building. 9777# Refer to: 9778# XORG_WITH_XMLTO --with-xmlto 9779# XORG_WITH_ASCIIDOC --with-asciidoc 9780# XORG_WITH_DOXYGEN --with-doxygen 9781# XORG_WITH_FOP --with-fop 9782# XORG_WITH_GROFF --with-groff 9783# XORG_WITH_PS2PDF --with-ps2pdf 9784# 9785# Interface to module: 9786# ENABLE_SPECS: used in makefiles to conditionally generate specs 9787# --enable-specs: 'yes' user instructs the module to generate specs 9788# 'no' user instructs the module not to generate specs 9789# parm1: specify the default value, yes or no. 9790# 9791AC_DEFUN([XORG_ENABLE_SPECS],[ 9792m4_define([spec_default], m4_default([$1], [yes])) 9793AC_ARG_ENABLE(specs, 9794 AS_HELP_STRING([--enable-specs], 9795 [Enable building the specs (default: ]spec_default[)]), 9796 [build_specs=$enableval], [build_specs=]spec_default) 9797m4_undefine([spec_default]) 9798AM_CONDITIONAL(ENABLE_SPECS, [test x$build_specs = xyes]) 9799AC_MSG_CHECKING([whether to build functional specifications]) 9800AC_MSG_RESULT([$build_specs]) 9801]) # XORG_ENABLE_SPECS 9802 9803# XORG_ENABLE_UNIT_TESTS (enable_unit_tests=auto) 9804# ---------------------------------------------- 9805# Minimum version: 1.13.0 9806# 9807# This macro enables a builder to enable/disable unit testing 9808# It makes no assumption about the test cases implementation 9809# Test cases may or may not use Automake "Support for test suites" 9810# They may or may not use the software utility library GLib 9811# 9812# When used in conjunction with XORG_WITH_GLIB, use both AM_CONDITIONAL 9813# ENABLE_UNIT_TESTS and HAVE_GLIB. Not all unit tests may use glib. 9814# The variable enable_unit_tests is used by other macros in this file. 9815# 9816# Interface to module: 9817# ENABLE_UNIT_TESTS: used in makefiles to conditionally build tests 9818# enable_unit_tests: used in configure.ac for additional configuration 9819# --enable-unit-tests: 'yes' user instructs the module to build tests 9820# 'no' user instructs the module not to build tests 9821# parm1: specify the default value, yes or no. 9822# 9823AC_DEFUN([XORG_ENABLE_UNIT_TESTS],[ 9824AC_BEFORE([$0], [XORG_WITH_GLIB]) 9825AC_BEFORE([$0], [XORG_LD_WRAP]) 9826AC_REQUIRE([XORG_MEMORY_CHECK_FLAGS]) 9827m4_define([_defopt], m4_default([$1], [auto])) 9828AC_ARG_ENABLE(unit-tests, AS_HELP_STRING([--enable-unit-tests], 9829 [Enable building unit test cases (default: ]_defopt[)]), 9830 [enable_unit_tests=$enableval], [enable_unit_tests=]_defopt) 9831m4_undefine([_defopt]) 9832AM_CONDITIONAL(ENABLE_UNIT_TESTS, [test "x$enable_unit_tests" != xno]) 9833AC_MSG_CHECKING([whether to build unit test cases]) 9834AC_MSG_RESULT([$enable_unit_tests]) 9835]) # XORG_ENABLE_UNIT_TESTS 9836 9837# XORG_ENABLE_INTEGRATION_TESTS (enable_unit_tests=auto) 9838# ------------------------------------------------------ 9839# Minimum version: 1.17.0 9840# 9841# This macro enables a builder to enable/disable integration testing 9842# It makes no assumption about the test cases' implementation 9843# Test cases may or may not use Automake "Support for test suites" 9844# 9845# Please see XORG_ENABLE_UNIT_TESTS for unit test support. Unit test support 9846# usually requires less dependencies and may be built and run under less 9847# stringent environments than integration tests. 9848# 9849# Interface to module: 9850# ENABLE_INTEGRATION_TESTS: used in makefiles to conditionally build tests 9851# enable_integration_tests: used in configure.ac for additional configuration 9852# --enable-integration-tests: 'yes' user instructs the module to build tests 9853# 'no' user instructs the module not to build tests 9854# parm1: specify the default value, yes or no. 9855# 9856AC_DEFUN([XORG_ENABLE_INTEGRATION_TESTS],[ 9857AC_REQUIRE([XORG_MEMORY_CHECK_FLAGS]) 9858m4_define([_defopt], m4_default([$1], [auto])) 9859AC_ARG_ENABLE(integration-tests, AS_HELP_STRING([--enable-integration-tests], 9860 [Enable building integration test cases (default: ]_defopt[)]), 9861 [enable_integration_tests=$enableval], 9862 [enable_integration_tests=]_defopt) 9863m4_undefine([_defopt]) 9864AM_CONDITIONAL([ENABLE_INTEGRATION_TESTS], 9865 [test "x$enable_integration_tests" != xno]) 9866AC_MSG_CHECKING([whether to build unit test cases]) 9867AC_MSG_RESULT([$enable_integration_tests]) 9868]) # XORG_ENABLE_INTEGRATION_TESTS 9869 9870# XORG_WITH_GLIB([MIN-VERSION], [DEFAULT]) 9871# ---------------------------------------- 9872# Minimum version: 1.13.0 9873# 9874# GLib is a library which provides advanced data structures and functions. 9875# This macro enables a module to test for the presence of Glib. 9876# 9877# When used with ENABLE_UNIT_TESTS, it is assumed GLib is used for unit testing. 9878# Otherwise the value of $enable_unit_tests is blank. 9879# 9880# Please see XORG_ENABLE_INTEGRATION_TESTS for integration test support. Unit 9881# test support usually requires less dependencies and may be built and run under 9882# less stringent environments than integration tests. 9883# 9884# Interface to module: 9885# HAVE_GLIB: used in makefiles to conditionally build targets 9886# with_glib: used in configure.ac to know if GLib has been found 9887# --with-glib: 'yes' user instructs the module to use glib 9888# 'no' user instructs the module not to use glib 9889# 9890AC_DEFUN([XORG_WITH_GLIB],[ 9891AC_REQUIRE([PKG_PROG_PKG_CONFIG]) 9892m4_define([_defopt], m4_default([$2], [auto])) 9893AC_ARG_WITH(glib, AS_HELP_STRING([--with-glib], 9894 [Use GLib library for unit testing (default: ]_defopt[)]), 9895 [with_glib=$withval], [with_glib=]_defopt) 9896m4_undefine([_defopt]) 9897 9898have_glib=no 9899# Do not probe GLib if user explicitly disabled unit testing 9900if test "x$enable_unit_tests" != x"no"; then 9901 # Do not probe GLib if user explicitly disabled it 9902 if test "x$with_glib" != x"no"; then 9903 m4_ifval( 9904 [$1], 9905 [PKG_CHECK_MODULES([GLIB], [glib-2.0 >= $1], [have_glib=yes], [have_glib=no])], 9906 [PKG_CHECK_MODULES([GLIB], [glib-2.0], [have_glib=yes], [have_glib=no])] 9907 ) 9908 fi 9909fi 9910 9911# Not having GLib when unit testing has been explicitly requested is an error 9912if test "x$enable_unit_tests" = x"yes"; then 9913 if test "x$have_glib" = x"no"; then 9914 AC_MSG_ERROR([--enable-unit-tests=yes specified but glib-2.0 not found]) 9915 fi 9916fi 9917 9918# Having unit testing disabled when GLib has been explicitly requested is an error 9919if test "x$enable_unit_tests" = x"no"; then 9920 if test "x$with_glib" = x"yes"; then 9921 AC_MSG_ERROR([--enable-unit-tests=yes specified but glib-2.0 not found]) 9922 fi 9923fi 9924 9925# Not having GLib when it has been explicitly requested is an error 9926if test "x$with_glib" = x"yes"; then 9927 if test "x$have_glib" = x"no"; then 9928 AC_MSG_ERROR([--with-glib=yes specified but glib-2.0 not found]) 9929 fi 9930fi 9931 9932AM_CONDITIONAL([HAVE_GLIB], [test "$have_glib" = yes]) 9933]) # XORG_WITH_GLIB 9934 9935# XORG_LD_WRAP([required|optional]) 9936# --------------------------------- 9937# Minimum version: 1.13.0 9938# 9939# Check if linker supports -wrap, passed via compiler flags 9940# 9941# When used with ENABLE_UNIT_TESTS, it is assumed -wrap is used for unit testing. 9942# Otherwise the value of $enable_unit_tests is blank. 9943# 9944# Argument added in 1.16.0 - default is "required", to match existing behavior 9945# of returning an error if enable_unit_tests is yes, and ld -wrap is not 9946# available, an argument of "optional" allows use when some unit tests require 9947# ld -wrap and others do not. 9948# 9949AC_DEFUN([XORG_LD_WRAP],[ 9950XORG_CHECK_LINKER_FLAGS([-Wl,-wrap,exit],[have_ld_wrap=yes],[have_ld_wrap=no], 9951 [AC_LANG_PROGRAM([#include <stdlib.h> 9952 void __wrap_exit(int status) { return; }], 9953 [exit(0);])]) 9954# Not having ld wrap when unit testing has been explicitly requested is an error 9955if test "x$enable_unit_tests" = x"yes" -a "x$1" != "xoptional"; then 9956 if test "x$have_ld_wrap" = x"no"; then 9957 AC_MSG_ERROR([--enable-unit-tests=yes specified but ld -wrap support is not available]) 9958 fi 9959fi 9960AM_CONDITIONAL([HAVE_LD_WRAP], [test "$have_ld_wrap" = yes]) 9961# 9962]) # XORG_LD_WRAP 9963 9964# XORG_CHECK_LINKER_FLAGS 9965# ----------------------- 9966# SYNOPSIS 9967# 9968# XORG_CHECK_LINKER_FLAGS(FLAGS, [ACTION-SUCCESS], [ACTION-FAILURE], [PROGRAM-SOURCE]) 9969# 9970# DESCRIPTION 9971# 9972# Check whether the given linker FLAGS work with the current language's 9973# linker, or whether they give an error. 9974# 9975# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on 9976# success/failure. 9977# 9978# PROGRAM-SOURCE is the program source to link with, if needed 9979# 9980# NOTE: Based on AX_CHECK_COMPILER_FLAGS. 9981# 9982# LICENSE 9983# 9984# Copyright (c) 2009 Mike Frysinger <vapier@gentoo.org> 9985# Copyright (c) 2009 Steven G. Johnson <stevenj@alum.mit.edu> 9986# Copyright (c) 2009 Matteo Frigo 9987# 9988# This program is free software: you can redistribute it and/or modify it 9989# under the terms of the GNU General Public License as published by the 9990# Free Software Foundation, either version 3 of the License, or (at your 9991# option) any later version. 9992# 9993# This program is distributed in the hope that it will be useful, but 9994# WITHOUT ANY WARRANTY; without even the implied warranty of 9995# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General 9996# Public License for more details. 9997# 9998# You should have received a copy of the GNU General Public License along 9999# with this program. If not, see <http://www.gnu.org/licenses/>. 10000# 10001# As a special exception, the respective Autoconf Macro's copyright owner 10002# gives unlimited permission to copy, distribute and modify the configure 10003# scripts that are the output of Autoconf when processing the Macro. You 10004# need not follow the terms of the GNU General Public License when using 10005# or distributing such scripts, even though portions of the text of the 10006# Macro appear in them. The GNU General Public License (GPL) does govern 10007# all other use of the material that constitutes the Autoconf Macro. 10008# 10009# This special exception to the GPL applies to versions of the Autoconf 10010# Macro released by the Autoconf Archive. When you make and distribute a 10011# modified version of the Autoconf Macro, you may extend this special 10012# exception to the GPL to apply to your modified version as well.# 10013AC_DEFUN([XORG_CHECK_LINKER_FLAGS], 10014[AC_MSG_CHECKING([whether the linker accepts $1]) 10015dnl Some hackery here since AC_CACHE_VAL can't handle a non-literal varname: 10016AS_LITERAL_IF([$1], 10017 [AC_CACHE_VAL(AS_TR_SH(xorg_cv_linker_flags_[$1]), [ 10018 ax_save_FLAGS=$LDFLAGS 10019 LDFLAGS="$1" 10020 AC_LINK_IFELSE([m4_default([$4],[AC_LANG_PROGRAM()])], 10021 AS_TR_SH(xorg_cv_linker_flags_[$1])=yes, 10022 AS_TR_SH(xorg_cv_linker_flags_[$1])=no) 10023 LDFLAGS=$ax_save_FLAGS])], 10024 [ax_save_FLAGS=$LDFLAGS 10025 LDFLAGS="$1" 10026 AC_LINK_IFELSE([AC_LANG_PROGRAM()], 10027 eval AS_TR_SH(xorg_cv_linker_flags_[$1])=yes, 10028 eval AS_TR_SH(xorg_cv_linker_flags_[$1])=no) 10029 LDFLAGS=$ax_save_FLAGS]) 10030eval xorg_check_linker_flags=$AS_TR_SH(xorg_cv_linker_flags_[$1]) 10031AC_MSG_RESULT($xorg_check_linker_flags) 10032if test "x$xorg_check_linker_flags" = xyes; then 10033 m4_default([$2], :) 10034else 10035 m4_default([$3], :) 10036fi 10037]) # XORG_CHECK_LINKER_FLAGS 10038 10039# XORG_MEMORY_CHECK_FLAGS 10040# ----------------------- 10041# Minimum version: 1.16.0 10042# 10043# This macro attempts to find appropriate memory checking functionality 10044# for various platforms which unit testing code may use to catch various 10045# forms of memory allocation and access errors in testing. 10046# 10047# Interface to module: 10048# XORG_MALLOC_DEBUG_ENV - environment variables to set to enable debugging 10049# Usually added to TESTS_ENVIRONMENT in Makefile.am 10050# 10051# If the user sets the value of XORG_MALLOC_DEBUG_ENV, it is used verbatim. 10052# 10053AC_DEFUN([XORG_MEMORY_CHECK_FLAGS],[ 10054 10055AC_REQUIRE([AC_CANONICAL_HOST]) 10056AC_ARG_VAR([XORG_MALLOC_DEBUG_ENV], 10057 [Environment variables to enable memory checking in tests]) 10058 10059# Check for different types of support on different platforms 10060case $host_os in 10061 solaris*) 10062 AC_CHECK_LIB([umem], [umem_alloc], 10063 [malloc_debug_env='LD_PRELOAD=libumem.so UMEM_DEBUG=default']) 10064 ;; 10065 *-gnu*) # GNU libc - Value is used as a single byte bit pattern, 10066 # both directly and inverted, so should not be 0 or 255. 10067 malloc_debug_env='MALLOC_PERTURB_=15' 10068 ;; 10069 darwin*) 10070 malloc_debug_env='MallocPreScribble=1 MallocScribble=1 DYLD_INSERT_LIBRARIES=/usr/lib/libgmalloc.dylib' 10071 ;; 10072 *bsd*) 10073 malloc_debug_env='MallocPreScribble=1 MallocScribble=1' 10074 ;; 10075esac 10076 10077# User supplied flags override default flags 10078if test "x$XORG_MALLOC_DEBUG_ENV" != "x"; then 10079 malloc_debug_env="$XORG_MALLOC_DEBUG_ENV" 10080fi 10081 10082AC_SUBST([XORG_MALLOC_DEBUG_ENV],[$malloc_debug_env]) 10083]) # XORG_WITH_LINT 10084 10085# XORG_CHECK_MALLOC_ZERO 10086# ---------------------- 10087# Minimum version: 1.0.0 10088# 10089# Defines {MALLOC,XMALLOC,XTMALLOC}_ZERO_CFLAGS appropriately if 10090# malloc(0) returns NULL. Packages should add one of these cflags to 10091# their AM_CFLAGS (or other appropriate *_CFLAGS) to use them. 10092AC_DEFUN([XORG_CHECK_MALLOC_ZERO],[ 10093AC_ARG_ENABLE(malloc0returnsnull, 10094 AS_HELP_STRING([--enable-malloc0returnsnull], 10095 [malloc(0) returns NULL (default: auto)]), 10096 [MALLOC_ZERO_RETURNS_NULL=$enableval], 10097 [MALLOC_ZERO_RETURNS_NULL=auto]) 10098 10099AC_MSG_CHECKING([whether malloc(0) returns NULL]) 10100if test "x$MALLOC_ZERO_RETURNS_NULL" = xauto; then 10101 AC_RUN_IFELSE([AC_LANG_PROGRAM([ 10102#include <stdlib.h> 10103],[ 10104 char *m0, *r0, *c0, *p; 10105 m0 = malloc(0); 10106 p = malloc(10); 10107 r0 = realloc(p,0); 10108 c0 = calloc(0,10); 10109 exit((m0 == 0 || r0 == 0 || c0 == 0) ? 0 : 1); 10110])], 10111 [MALLOC_ZERO_RETURNS_NULL=yes], 10112 [MALLOC_ZERO_RETURNS_NULL=no], 10113 [MALLOC_ZERO_RETURNS_NULL=yes]) 10114fi 10115AC_MSG_RESULT([$MALLOC_ZERO_RETURNS_NULL]) 10116 10117if test "x$MALLOC_ZERO_RETURNS_NULL" = xyes; then 10118 MALLOC_ZERO_CFLAGS="-DMALLOC_0_RETURNS_NULL" 10119 XMALLOC_ZERO_CFLAGS=$MALLOC_ZERO_CFLAGS 10120 XTMALLOC_ZERO_CFLAGS="$MALLOC_ZERO_CFLAGS -DXTMALLOC_BC" 10121else 10122 MALLOC_ZERO_CFLAGS="" 10123 XMALLOC_ZERO_CFLAGS="" 10124 XTMALLOC_ZERO_CFLAGS="" 10125fi 10126 10127AC_SUBST([MALLOC_ZERO_CFLAGS]) 10128AC_SUBST([XMALLOC_ZERO_CFLAGS]) 10129AC_SUBST([XTMALLOC_ZERO_CFLAGS]) 10130]) # XORG_CHECK_MALLOC_ZERO 10131 10132# XORG_WITH_LINT() 10133# ---------------- 10134# Minimum version: 1.1.0 10135# 10136# This macro enables the use of a tool that flags some suspicious and 10137# non-portable constructs (likely to be bugs) in C language source code. 10138# It will attempt to locate the tool and use appropriate options. 10139# There are various lint type tools on different platforms. 10140# 10141# Interface to module: 10142# LINT: returns the path to the tool found on the platform 10143# or the value set to LINT on the configure cmd line 10144# also an Automake conditional 10145# LINT_FLAGS: an Automake variable with appropriate flags 10146# 10147# --with-lint: 'yes' user instructs the module to use lint 10148# 'no' user instructs the module not to use lint (default) 10149# 10150# If the user sets the value of LINT, AC_PATH_PROG skips testing the path. 10151# If the user sets the value of LINT_FLAGS, they are used verbatim. 10152# 10153AC_DEFUN([XORG_WITH_LINT],[ 10154 10155AC_ARG_VAR([LINT], [Path to a lint-style command]) 10156AC_ARG_VAR([LINT_FLAGS], [Flags for the lint-style command]) 10157AC_ARG_WITH(lint, [AS_HELP_STRING([--with-lint], 10158 [Use a lint-style source code checker (default: disabled)])], 10159 [use_lint=$withval], [use_lint=no]) 10160 10161# Obtain platform specific info like program name and options 10162# The lint program on FreeBSD and NetBSD is different from the one on Solaris 10163case $host_os in 10164 *linux* | *openbsd* | kfreebsd*-gnu | darwin* | cygwin*) 10165 lint_name=splint 10166 lint_options="-badflag" 10167 ;; 10168 *freebsd* | *netbsd*) 10169 lint_name=lint 10170 lint_options="-u -b" 10171 ;; 10172 *solaris*) 10173 lint_name=lint 10174 lint_options="-u -b -h -erroff=E_INDISTING_FROM_TRUNC2" 10175 ;; 10176esac 10177 10178# Test for the presence of the program (either guessed by the code or spelled out by the user) 10179if test "x$use_lint" = x"yes" ; then 10180 AC_PATH_PROG([LINT], [$lint_name]) 10181 if test "x$LINT" = "x"; then 10182 AC_MSG_ERROR([--with-lint=yes specified but lint-style tool not found in PATH]) 10183 fi 10184elif test "x$use_lint" = x"no" ; then 10185 if test "x$LINT" != "x"; then 10186 AC_MSG_WARN([ignoring LINT environment variable since --with-lint=no was specified]) 10187 fi 10188else 10189 AC_MSG_ERROR([--with-lint expects 'yes' or 'no'. Use LINT variable to specify path.]) 10190fi 10191 10192# User supplied flags override default flags 10193if test "x$LINT_FLAGS" != "x"; then 10194 lint_options=$LINT_FLAGS 10195fi 10196 10197AC_SUBST([LINT_FLAGS],[$lint_options]) 10198AM_CONDITIONAL(LINT, [test "x$LINT" != x]) 10199 10200]) # XORG_WITH_LINT 10201 10202# XORG_LINT_LIBRARY(LIBNAME) 10203# -------------------------- 10204# Minimum version: 1.1.0 10205# 10206# Sets up flags for building lint libraries for checking programs that call 10207# functions in the library. 10208# 10209# Interface to module: 10210# LINTLIB - Automake variable with the name of lint library file to make 10211# MAKE_LINT_LIB - Automake conditional 10212# 10213# --enable-lint-library: - 'yes' user instructs the module to created a lint library 10214# - 'no' user instructs the module not to create a lint library (default) 10215 10216AC_DEFUN([XORG_LINT_LIBRARY],[ 10217AC_REQUIRE([XORG_WITH_LINT]) 10218AC_ARG_ENABLE(lint-library, [AS_HELP_STRING([--enable-lint-library], 10219 [Create lint library (default: disabled)])], 10220 [make_lint_lib=$enableval], [make_lint_lib=no]) 10221 10222if test "x$make_lint_lib" = x"yes" ; then 10223 LINTLIB=llib-l$1.ln 10224 if test "x$LINT" = "x"; then 10225 AC_MSG_ERROR([Cannot make lint library without --with-lint]) 10226 fi 10227elif test "x$make_lint_lib" != x"no" ; then 10228 AC_MSG_ERROR([--enable-lint-library expects 'yes' or 'no'.]) 10229fi 10230 10231AC_SUBST(LINTLIB) 10232AM_CONDITIONAL(MAKE_LINT_LIB, [test x$make_lint_lib != xno]) 10233 10234]) # XORG_LINT_LIBRARY 10235 10236# XORG_COMPILER_BRAND 10237# ------------------- 10238# Minimum version: 1.14.0 10239# 10240# Checks for various brands of compilers and sets flags as appropriate: 10241# GNU gcc - relies on AC_PROG_CC (via AC_PROG_CC_C99) to set GCC to "yes" 10242# GNU g++ - relies on AC_PROG_CXX to set GXX to "yes" 10243# clang compiler - sets CLANGCC to "yes" 10244# Intel compiler - sets INTELCC to "yes" 10245# Sun/Oracle Solaris Studio cc - sets SUNCC to "yes" 10246# 10247AC_DEFUN([XORG_COMPILER_BRAND], [ 10248AC_LANG_CASE( 10249 [C], [ 10250 AC_REQUIRE([AC_PROG_CC_C99]) 10251 ], 10252 [C++], [ 10253 AC_REQUIRE([AC_PROG_CXX]) 10254 ] 10255) 10256AC_CHECK_DECL([__clang__], [CLANGCC="yes"], [CLANGCC="no"]) 10257AC_CHECK_DECL([__INTEL_COMPILER], [INTELCC="yes"], [INTELCC="no"]) 10258AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) 10259]) # XORG_COMPILER_BRAND 10260 10261# XORG_TESTSET_CFLAG(<variable>, <flag>, [<alternative flag>, ...]) 10262# --------------- 10263# Minimum version: 1.16.0 10264# 10265# Test if the compiler works when passed the given flag as a command line argument. 10266# If it succeeds, the flag is appeneded to the given variable. If not, it tries the 10267# next flag in the list until there are no more options. 10268# 10269# Note that this does not guarantee that the compiler supports the flag as some 10270# compilers will simply ignore arguments that they do not understand, but we do 10271# attempt to weed out false positives by using -Werror=unknown-warning-option and 10272# -Werror=unused-command-line-argument 10273# 10274AC_DEFUN([XORG_TESTSET_CFLAG], [ 10275m4_if([$#], 0, [m4_fatal([XORG_TESTSET_CFLAG was given with an unsupported number of arguments])]) 10276m4_if([$#], 1, [m4_fatal([XORG_TESTSET_CFLAG was given with an unsupported number of arguments])]) 10277 10278AC_LANG_COMPILER_REQUIRE 10279 10280AC_LANG_CASE( 10281 [C], [ 10282 AC_REQUIRE([AC_PROG_CC_C99]) 10283 define([PREFIX], [C]) 10284 define([CACHE_PREFIX], [cc]) 10285 define([COMPILER], [$CC]) 10286 ], 10287 [C++], [ 10288 define([PREFIX], [CXX]) 10289 define([CACHE_PREFIX], [cxx]) 10290 define([COMPILER], [$CXX]) 10291 ] 10292) 10293 10294[xorg_testset_save_]PREFIX[FLAGS]="$PREFIX[FLAGS]" 10295 10296if test "x$[xorg_testset_]CACHE_PREFIX[_unknown_warning_option]" = "x" ; then 10297 PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unknown-warning-option" 10298 AC_CACHE_CHECK([if ]COMPILER[ supports -Werror=unknown-warning-option], 10299 [xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option], 10300 AC_COMPILE_IFELSE([AC_LANG_SOURCE([int i;])], 10301 [xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option=yes], 10302 [xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option=no])) 10303 [xorg_testset_]CACHE_PREFIX[_unknown_warning_option]=$[xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option] 10304 PREFIX[FLAGS]="$[xorg_testset_save_]PREFIX[FLAGS]" 10305fi 10306 10307if test "x$[xorg_testset_]CACHE_PREFIX[_unused_command_line_argument]" = "x" ; then 10308 if test "x$[xorg_testset_]CACHE_PREFIX[_unknown_warning_option]" = "xyes" ; then 10309 PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unknown-warning-option" 10310 fi 10311 PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unused-command-line-argument" 10312 AC_CACHE_CHECK([if ]COMPILER[ supports -Werror=unused-command-line-argument], 10313 [xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument], 10314 AC_COMPILE_IFELSE([AC_LANG_SOURCE([int i;])], 10315 [xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument=yes], 10316 [xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument=no])) 10317 [xorg_testset_]CACHE_PREFIX[_unused_command_line_argument]=$[xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument] 10318 PREFIX[FLAGS]="$[xorg_testset_save_]PREFIX[FLAGS]" 10319fi 10320 10321found="no" 10322m4_foreach([flag], m4_cdr($@), [ 10323 if test $found = "no" ; then 10324 if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then 10325 PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unknown-warning-option" 10326 fi 10327 10328 if test "x$xorg_testset_unused_command_line_argument" = "xyes" ; then 10329 PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unused-command-line-argument" 10330 fi 10331 10332 PREFIX[FLAGS]="$PREFIX[FLAGS] ]flag[" 10333 10334dnl Some hackery here since AC_CACHE_VAL can't handle a non-literal varname 10335 AC_MSG_CHECKING([if ]COMPILER[ supports]flag[]) 10336 cacheid=AS_TR_SH([xorg_cv_]CACHE_PREFIX[_flag_]flag[]) 10337 AC_CACHE_VAL($cacheid, 10338 [AC_LINK_IFELSE([AC_LANG_PROGRAM([int i;])], 10339 [eval $cacheid=yes], 10340 [eval $cacheid=no])]) 10341 10342 PREFIX[FLAGS]="$[xorg_testset_save_]PREFIX[FLAGS]" 10343 10344 eval supported=\$$cacheid 10345 AC_MSG_RESULT([$supported]) 10346 if test "$supported" = "yes" ; then 10347 $1="$$1 ]flag[" 10348 found="yes" 10349 fi 10350 fi 10351]) 10352]) # XORG_TESTSET_CFLAG 10353 10354# XORG_COMPILER_FLAGS 10355# --------------- 10356# Minimum version: 1.16.0 10357# 10358# Defines BASE_CFLAGS or BASE_CXXFLAGS to contain a set of command line 10359# arguments supported by the selected compiler which do NOT alter the generated 10360# code. These arguments will cause the compiler to print various warnings 10361# during compilation AND turn a conservative set of warnings into errors. 10362# 10363# The set of flags supported by BASE_CFLAGS and BASE_CXXFLAGS will grow in 10364# future versions of util-macros as options are added to new compilers. 10365# 10366AC_DEFUN([XORG_COMPILER_FLAGS], [ 10367AC_REQUIRE([XORG_COMPILER_BRAND]) 10368 10369AC_ARG_ENABLE(selective-werror, 10370 AS_HELP_STRING([--disable-selective-werror], 10371 [Turn off selective compiler errors. (default: enabled)]), 10372 [SELECTIVE_WERROR=$enableval], 10373 [SELECTIVE_WERROR=yes]) 10374 10375AC_LANG_CASE( 10376 [C], [ 10377 define([PREFIX], [C]) 10378 ], 10379 [C++], [ 10380 define([PREFIX], [CXX]) 10381 ] 10382) 10383# -v is too short to test reliably with XORG_TESTSET_CFLAG 10384if test "x$SUNCC" = "xyes"; then 10385 [BASE_]PREFIX[FLAGS]="-v" 10386else 10387 [BASE_]PREFIX[FLAGS]="" 10388fi 10389 10390# This chunk of warnings were those that existed in the legacy CWARNFLAGS 10391XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wall]) 10392XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wpointer-arith]) 10393XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-declarations]) 10394XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wformat=2], [-Wformat]) 10395 10396AC_LANG_CASE( 10397 [C], [ 10398 XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wstrict-prototypes]) 10399 XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-prototypes]) 10400 XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wnested-externs]) 10401 XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wbad-function-cast]) 10402 XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wold-style-definition]) 10403 XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wdeclaration-after-statement]) 10404 ] 10405) 10406 10407# This chunk adds additional warnings that could catch undesired effects. 10408XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wunused]) 10409XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wuninitialized]) 10410XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wshadow]) 10411XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wcast-qual]) 10412XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-noreturn]) 10413XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-format-attribute]) 10414XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wredundant-decls]) 10415 10416# These are currently disabled because they are noisy. They will be enabled 10417# in the future once the codebase is sufficiently modernized to silence 10418# them. For now, I don't want them to drown out the other warnings. 10419# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wlogical-op]) 10420# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wparentheses]) 10421# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wcast-align]) 10422 10423# Turn some warnings into errors, so we don't accidently get successful builds 10424# when there are problems that should be fixed. 10425 10426if test "x$SELECTIVE_WERROR" = "xyes" ; then 10427XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=implicit], [-errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED]) 10428XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=nonnull]) 10429XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=init-self]) 10430XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=main]) 10431XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=missing-braces]) 10432XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=sequence-point]) 10433XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=return-type], [-errwarn=E_FUNC_HAS_NO_RETURN_STMT]) 10434XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=trigraphs]) 10435XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=array-bounds]) 10436XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=write-strings]) 10437XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=address]) 10438XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=int-to-pointer-cast], [-errwarn=E_BAD_PTR_INT_COMBINATION]) 10439XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=pointer-to-int-cast]) # Also -errwarn=E_BAD_PTR_INT_COMBINATION 10440else 10441AC_MSG_WARN([You have chosen not to turn some select compiler warnings into errors. This should not be necessary. Please report why you needed to do so in a bug report at $PACKAGE_BUGREPORT]) 10442XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wimplicit]) 10443XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wnonnull]) 10444XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Winit-self]) 10445XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmain]) 10446XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-braces]) 10447XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wsequence-point]) 10448XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wreturn-type]) 10449XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wtrigraphs]) 10450XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Warray-bounds]) 10451XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wwrite-strings]) 10452XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Waddress]) 10453XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wint-to-pointer-cast]) 10454XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wpointer-to-int-cast]) 10455fi 10456 10457AC_SUBST([BASE_]PREFIX[FLAGS]) 10458]) # XORG_COMPILER_FLAGS 10459 10460# XORG_CWARNFLAGS 10461# --------------- 10462# Minimum version: 1.2.0 10463# Deprecated since: 1.16.0 (Use XORG_COMPILER_FLAGS instead) 10464# 10465# Defines CWARNFLAGS to enable C compiler warnings. 10466# 10467# This function is deprecated because it defines -fno-strict-aliasing 10468# which alters the code generated by the compiler. If -fno-strict-aliasing 10469# is needed, then it should be added explicitly in the module when 10470# it is updated to use BASE_CFLAGS. 10471# 10472AC_DEFUN([XORG_CWARNFLAGS], [ 10473AC_REQUIRE([XORG_COMPILER_FLAGS]) 10474AC_REQUIRE([XORG_COMPILER_BRAND]) 10475AC_LANG_CASE( 10476 [C], [ 10477 CWARNFLAGS="$BASE_CFLAGS" 10478 if test "x$GCC" = xyes ; then 10479 CWARNFLAGS="$CWARNFLAGS -fno-strict-aliasing" 10480 fi 10481 AC_SUBST(CWARNFLAGS) 10482 ] 10483) 10484]) # XORG_CWARNFLAGS 10485 10486# XORG_STRICT_OPTION 10487# ----------------------- 10488# Minimum version: 1.3.0 10489# 10490# Add configure option to enable strict compilation flags, such as treating 10491# warnings as fatal errors. 10492# If --enable-strict-compilation is passed to configure, adds strict flags to 10493# $BASE_CFLAGS or $BASE_CXXFLAGS and the deprecated $CWARNFLAGS. 10494# 10495# Starting in 1.14.0 also exports $STRICT_CFLAGS for use in other tests or 10496# when strict compilation is unconditionally desired. 10497AC_DEFUN([XORG_STRICT_OPTION], [ 10498AC_REQUIRE([XORG_CWARNFLAGS]) 10499AC_REQUIRE([XORG_COMPILER_FLAGS]) 10500 10501AC_ARG_ENABLE(strict-compilation, 10502 AS_HELP_STRING([--enable-strict-compilation], 10503 [Enable all warnings from compiler and make them errors (default: disabled)]), 10504 [STRICT_COMPILE=$enableval], [STRICT_COMPILE=no]) 10505 10506AC_LANG_CASE( 10507 [C], [ 10508 define([PREFIX], [C]) 10509 ], 10510 [C++], [ 10511 define([PREFIX], [CXX]) 10512 ] 10513) 10514 10515[STRICT_]PREFIX[FLAGS]="" 10516XORG_TESTSET_CFLAG([[STRICT_]PREFIX[FLAGS]], [-pedantic]) 10517XORG_TESTSET_CFLAG([[STRICT_]PREFIX[FLAGS]], [-Werror], [-errwarn]) 10518 10519# Earlier versions of gcc (eg: 4.2) support -Werror=attributes, but do not 10520# activate it with -Werror, so we add it here explicitly. 10521XORG_TESTSET_CFLAG([[STRICT_]PREFIX[FLAGS]], [-Werror=attributes]) 10522 10523if test "x$STRICT_COMPILE" = "xyes"; then 10524 [BASE_]PREFIX[FLAGS]="$[BASE_]PREFIX[FLAGS] $[STRICT_]PREFIX[FLAGS]" 10525 AC_LANG_CASE([C], [CWARNFLAGS="$CWARNFLAGS $STRICT_CFLAGS"]) 10526fi 10527AC_SUBST([STRICT_]PREFIX[FLAGS]) 10528AC_SUBST([BASE_]PREFIX[FLAGS]) 10529AC_LANG_CASE([C], AC_SUBST([CWARNFLAGS])) 10530]) # XORG_STRICT_OPTION 10531 10532# XORG_DEFAULT_OPTIONS 10533# -------------------- 10534# Minimum version: 1.3.0 10535# 10536# Defines default options for X.Org modules. 10537# 10538AC_DEFUN([XORG_DEFAULT_OPTIONS], [ 10539AC_REQUIRE([AC_PROG_INSTALL]) 10540XORG_COMPILER_FLAGS 10541XORG_CWARNFLAGS 10542XORG_STRICT_OPTION 10543XORG_RELEASE_VERSION 10544XORG_CHANGELOG 10545XORG_INSTALL 10546XORG_MANPAGE_SECTIONS 10547m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])], 10548 [AC_SUBST([AM_DEFAULT_VERBOSITY], [1])]) 10549]) # XORG_DEFAULT_OPTIONS 10550 10551# XORG_INSTALL() 10552# ---------------- 10553# Minimum version: 1.4.0 10554# 10555# Defines the variable INSTALL_CMD as the command to copy 10556# INSTALL from $prefix/share/util-macros. 10557# 10558AC_DEFUN([XORG_INSTALL], [ 10559AC_REQUIRE([PKG_PROG_PKG_CONFIG]) 10560macros_datadir=`$PKG_CONFIG --print-errors --variable=pkgdatadir xorg-macros` 10561INSTALL_CMD="(cp -f "$macros_datadir/INSTALL" \$(top_srcdir)/.INSTALL.tmp && \ 10562mv \$(top_srcdir)/.INSTALL.tmp \$(top_srcdir)/INSTALL) \ 10563|| (rm -f \$(top_srcdir)/.INSTALL.tmp; touch \$(top_srcdir)/INSTALL; \ 10564echo 'util-macros \"pkgdatadir\" from xorg-macros.pc not found: installing possibly empty INSTALL.' >&2)" 10565AC_SUBST([INSTALL_CMD]) 10566]) # XORG_INSTALL 10567dnl Copyright 2005 Red Hat, Inc 10568dnl 10569dnl Permission to use, copy, modify, distribute, and sell this software and its 10570dnl documentation for any purpose is hereby granted without fee, provided that 10571dnl the above copyright notice appear in all copies and that both that 10572dnl copyright notice and this permission notice appear in supporting 10573dnl documentation. 10574dnl 10575dnl The above copyright notice and this permission notice shall be included 10576dnl in all copies or substantial portions of the Software. 10577dnl 10578dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 10579dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 10580dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 10581dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR 10582dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 10583dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 10584dnl OTHER DEALINGS IN THE SOFTWARE. 10585dnl 10586dnl Except as contained in this notice, the name of the copyright holders shall 10587dnl not be used in advertising or otherwise to promote the sale, use or 10588dnl other dealings in this Software without prior written authorization 10589dnl from the copyright holders. 10590dnl 10591 10592# XORG_RELEASE_VERSION 10593# -------------------- 10594# Defines PACKAGE_VERSION_{MAJOR,MINOR,PATCHLEVEL} for modules to use. 10595 10596AC_DEFUN([XORG_RELEASE_VERSION],[ 10597 AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MAJOR], 10598 [`echo $PACKAGE_VERSION | cut -d . -f 1`], 10599 [Major version of this package]) 10600 PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1` 10601 if test "x$PVM" = "x"; then 10602 PVM="0" 10603 fi 10604 AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MINOR], 10605 [$PVM], 10606 [Minor version of this package]) 10607 PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1` 10608 if test "x$PVP" = "x"; then 10609 PVP="0" 10610 fi 10611 AC_DEFINE_UNQUOTED([PACKAGE_VERSION_PATCHLEVEL], 10612 [$PVP], 10613 [Patch version of this package]) 10614]) 10615 10616# XORG_CHANGELOG() 10617# ---------------- 10618# Minimum version: 1.2.0 10619# 10620# Defines the variable CHANGELOG_CMD as the command to generate 10621# ChangeLog from git. 10622# 10623# 10624AC_DEFUN([XORG_CHANGELOG], [ 10625CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > \$(top_srcdir)/.changelog.tmp && \ 10626mv \$(top_srcdir)/.changelog.tmp \$(top_srcdir)/ChangeLog) \ 10627|| (rm -f \$(top_srcdir)/.changelog.tmp; touch \$(top_srcdir)/ChangeLog; \ 10628echo 'git directory not found: installing possibly empty changelog.' >&2)" 10629AC_SUBST([CHANGELOG_CMD]) 10630]) # XORG_CHANGELOG 10631 10632dnl Copyright 2005 Red Hat, Inc 10633dnl 10634dnl Permission to use, copy, modify, distribute, and sell this software and its 10635dnl documentation for any purpose is hereby granted without fee, provided that 10636dnl the above copyright notice appear in all copies and that both that 10637dnl copyright notice and this permission notice appear in supporting 10638dnl documentation. 10639dnl 10640dnl The above copyright notice and this permission notice shall be included 10641dnl in all copies or substantial portions of the Software. 10642dnl 10643dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 10644dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 10645dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 10646dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR 10647dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 10648dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 10649dnl OTHER DEALINGS IN THE SOFTWARE. 10650dnl 10651dnl Except as contained in this notice, the name of the copyright holders shall 10652dnl not be used in advertising or otherwise to promote the sale, use or 10653dnl other dealings in this Software without prior written authorization 10654dnl from the copyright holders. 10655dnl 10656 10657# XORG_DRIVER_CHECK_EXT() 10658# -------------------------- 10659# Checks for the $1 define in xorg-server.h (from the sdk). If it 10660# is defined, then add $1 to $REQUIRED_MODULES. 10661 10662AC_DEFUN([XORG_DRIVER_CHECK_EXT],[ 10663 AC_REQUIRE([PKG_PROG_PKG_CONFIG]) 10664 SAVE_CFLAGS="$CFLAGS" 10665 CFLAGS="$CFLAGS -I`$PKG_CONFIG --variable=sdkdir xorg-server`" 10666 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ 10667#include "xorg-server.h" 10668#if !defined $1 10669#error $1 not defined 10670#endif 10671 ]])], 10672 [_EXT_CHECK=yes], 10673 [_EXT_CHECK=no]) 10674 CFLAGS="$SAVE_CFLAGS" 10675 AC_MSG_CHECKING([if $1 is defined]) 10676 AC_MSG_RESULT([$_EXT_CHECK]) 10677 if test "$_EXT_CHECK" != no; then 10678 REQUIRED_MODULES="$REQUIRED_MODULES $2" 10679 fi 10680]) 10681 10682# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008, 2011 Free Software 10683# Foundation, Inc. 10684# 10685# This file is free software; the Free Software Foundation 10686# gives unlimited permission to copy and/or distribute it, 10687# with or without modifications, as long as this notice is preserved. 10688 10689# serial 1 10690 10691# AM_AUTOMAKE_VERSION(VERSION) 10692# ---------------------------- 10693# Automake X.Y traces this macro to ensure aclocal.m4 has been 10694# generated from the m4 files accompanying Automake X.Y. 10695# (This private macro should not be called outside this file.) 10696AC_DEFUN([AM_AUTOMAKE_VERSION], 10697[am__api_version='1.11' 10698dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to 10699dnl require some minimum version. Point them to the right macro. 10700m4_if([$1], [1.11.6], [], 10701 [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl 10702]) 10703 10704# _AM_AUTOCONF_VERSION(VERSION) 10705# ----------------------------- 10706# aclocal traces this macro to find the Autoconf version. 10707# This is a private macro too. Using m4_define simplifies 10708# the logic in aclocal, which can simply ignore this definition. 10709m4_define([_AM_AUTOCONF_VERSION], []) 10710 10711# AM_SET_CURRENT_AUTOMAKE_VERSION 10712# ------------------------------- 10713# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. 10714# This function is AC_REQUIREd by AM_INIT_AUTOMAKE. 10715AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], 10716[AM_AUTOMAKE_VERSION([1.11.6])dnl 10717m4_ifndef([AC_AUTOCONF_VERSION], 10718 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl 10719_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) 10720 10721# AM_AUX_DIR_EXPAND -*- Autoconf -*- 10722 10723# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc. 10724# 10725# This file is free software; the Free Software Foundation 10726# gives unlimited permission to copy and/or distribute it, 10727# with or without modifications, as long as this notice is preserved. 10728 10729# serial 1 10730 10731# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets 10732# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to 10733# `$srcdir', `$srcdir/..', or `$srcdir/../..'. 10734# 10735# Of course, Automake must honor this variable whenever it calls a 10736# tool from the auxiliary directory. The problem is that $srcdir (and 10737# therefore $ac_aux_dir as well) can be either absolute or relative, 10738# depending on how configure is run. This is pretty annoying, since 10739# it makes $ac_aux_dir quite unusable in subdirectories: in the top 10740# source directory, any form will work fine, but in subdirectories a 10741# relative path needs to be adjusted first. 10742# 10743# $ac_aux_dir/missing 10744# fails when called from a subdirectory if $ac_aux_dir is relative 10745# $top_srcdir/$ac_aux_dir/missing 10746# fails if $ac_aux_dir is absolute, 10747# fails when called from a subdirectory in a VPATH build with 10748# a relative $ac_aux_dir 10749# 10750# The reason of the latter failure is that $top_srcdir and $ac_aux_dir 10751# are both prefixed by $srcdir. In an in-source build this is usually 10752# harmless because $srcdir is `.', but things will broke when you 10753# start a VPATH build or use an absolute $srcdir. 10754# 10755# So we could use something similar to $top_srcdir/$ac_aux_dir/missing, 10756# iff we strip the leading $srcdir from $ac_aux_dir. That would be: 10757# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` 10758# and then we would define $MISSING as 10759# MISSING="\${SHELL} $am_aux_dir/missing" 10760# This will work as long as MISSING is not called from configure, because 10761# unfortunately $(top_srcdir) has no meaning in configure. 10762# However there are other variables, like CC, which are often used in 10763# configure, and could therefore not use this "fixed" $ac_aux_dir. 10764# 10765# Another solution, used here, is to always expand $ac_aux_dir to an 10766# absolute PATH. The drawback is that using absolute paths prevent a 10767# configured tree to be moved without reconfiguration. 10768 10769AC_DEFUN([AM_AUX_DIR_EXPAND], 10770[dnl Rely on autoconf to set up CDPATH properly. 10771AC_PREREQ([2.50])dnl 10772# expand $ac_aux_dir to an absolute path 10773am_aux_dir=`cd $ac_aux_dir && pwd` 10774]) 10775 10776# AM_CONDITIONAL -*- Autoconf -*- 10777 10778# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008 10779# Free Software Foundation, Inc. 10780# 10781# This file is free software; the Free Software Foundation 10782# gives unlimited permission to copy and/or distribute it, 10783# with or without modifications, as long as this notice is preserved. 10784 10785# serial 9 10786 10787# AM_CONDITIONAL(NAME, SHELL-CONDITION) 10788# ------------------------------------- 10789# Define a conditional. 10790AC_DEFUN([AM_CONDITIONAL], 10791[AC_PREREQ(2.52)dnl 10792 ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], 10793 [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl 10794AC_SUBST([$1_TRUE])dnl 10795AC_SUBST([$1_FALSE])dnl 10796_AM_SUBST_NOTMAKE([$1_TRUE])dnl 10797_AM_SUBST_NOTMAKE([$1_FALSE])dnl 10798m4_define([_AM_COND_VALUE_$1], [$2])dnl 10799if $2; then 10800 $1_TRUE= 10801 $1_FALSE='#' 10802else 10803 $1_TRUE='#' 10804 $1_FALSE= 10805fi 10806AC_CONFIG_COMMANDS_PRE( 10807[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then 10808 AC_MSG_ERROR([[conditional "$1" was never defined. 10809Usually this means the macro was only invoked conditionally.]]) 10810fi])]) 10811 10812# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009, 10813# 2010, 2011 Free Software Foundation, Inc. 10814# 10815# This file is free software; the Free Software Foundation 10816# gives unlimited permission to copy and/or distribute it, 10817# with or without modifications, as long as this notice is preserved. 10818 10819# serial 12 10820 10821# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be 10822# written in clear, in which case automake, when reading aclocal.m4, 10823# will think it sees a *use*, and therefore will trigger all it's 10824# C support machinery. Also note that it means that autoscan, seeing 10825# CC etc. in the Makefile, will ask for an AC_PROG_CC use... 10826 10827 10828# _AM_DEPENDENCIES(NAME) 10829# ---------------------- 10830# See how the compiler implements dependency checking. 10831# NAME is "CC", "CXX", "GCJ", or "OBJC". 10832# We try a few techniques and use that to set a single cache variable. 10833# 10834# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was 10835# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular 10836# dependency, and given that the user is not expected to run this macro, 10837# just rely on AC_PROG_CC. 10838AC_DEFUN([_AM_DEPENDENCIES], 10839[AC_REQUIRE([AM_SET_DEPDIR])dnl 10840AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl 10841AC_REQUIRE([AM_MAKE_INCLUDE])dnl 10842AC_REQUIRE([AM_DEP_TRACK])dnl 10843 10844ifelse([$1], CC, [depcc="$CC" am_compiler_list=], 10845 [$1], CXX, [depcc="$CXX" am_compiler_list=], 10846 [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'], 10847 [$1], UPC, [depcc="$UPC" am_compiler_list=], 10848 [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'], 10849 [depcc="$$1" am_compiler_list=]) 10850 10851AC_CACHE_CHECK([dependency style of $depcc], 10852 [am_cv_$1_dependencies_compiler_type], 10853[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then 10854 # We make a subdir and do the tests there. Otherwise we can end up 10855 # making bogus files that we don't know about and never remove. For 10856 # instance it was reported that on HP-UX the gcc test will end up 10857 # making a dummy file named `D' -- because `-MD' means `put the output 10858 # in D'. 10859 rm -rf conftest.dir 10860 mkdir conftest.dir 10861 # Copy depcomp to subdir because otherwise we won't find it if we're 10862 # using a relative directory. 10863 cp "$am_depcomp" conftest.dir 10864 cd conftest.dir 10865 # We will build objects and dependencies in a subdirectory because 10866 # it helps to detect inapplicable dependency modes. For instance 10867 # both Tru64's cc and ICC support -MD to output dependencies as a 10868 # side effect of compilation, but ICC will put the dependencies in 10869 # the current directory while Tru64 will put them in the object 10870 # directory. 10871 mkdir sub 10872 10873 am_cv_$1_dependencies_compiler_type=none 10874 if test "$am_compiler_list" = ""; then 10875 am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` 10876 fi 10877 am__universal=false 10878 m4_case([$1], [CC], 10879 [case " $depcc " in #( 10880 *\ -arch\ *\ -arch\ *) am__universal=true ;; 10881 esac], 10882 [CXX], 10883 [case " $depcc " in #( 10884 *\ -arch\ *\ -arch\ *) am__universal=true ;; 10885 esac]) 10886 10887 for depmode in $am_compiler_list; do 10888 # Setup a source with many dependencies, because some compilers 10889 # like to wrap large dependency lists on column 80 (with \), and 10890 # we should not choose a depcomp mode which is confused by this. 10891 # 10892 # We need to recreate these files for each test, as the compiler may 10893 # overwrite some of them when testing with obscure command lines. 10894 # This happens at least with the AIX C compiler. 10895 : > sub/conftest.c 10896 for i in 1 2 3 4 5 6; do 10897 echo '#include "conftst'$i'.h"' >> sub/conftest.c 10898 # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with 10899 # Solaris 8's {/usr,}/bin/sh. 10900 touch sub/conftst$i.h 10901 done 10902 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf 10903 10904 # We check with `-c' and `-o' for the sake of the "dashmstdout" 10905 # mode. It turns out that the SunPro C++ compiler does not properly 10906 # handle `-M -o', and we need to detect this. Also, some Intel 10907 # versions had trouble with output in subdirs 10908 am__obj=sub/conftest.${OBJEXT-o} 10909 am__minus_obj="-o $am__obj" 10910 case $depmode in 10911 gcc) 10912 # This depmode causes a compiler race in universal mode. 10913 test "$am__universal" = false || continue 10914 ;; 10915 nosideeffect) 10916 # after this tag, mechanisms are not by side-effect, so they'll 10917 # only be used when explicitly requested 10918 if test "x$enable_dependency_tracking" = xyes; then 10919 continue 10920 else 10921 break 10922 fi 10923 ;; 10924 msvc7 | msvc7msys | msvisualcpp | msvcmsys) 10925 # This compiler won't grok `-c -o', but also, the minuso test has 10926 # not run yet. These depmodes are late enough in the game, and 10927 # so weak that their functioning should not be impacted. 10928 am__obj=conftest.${OBJEXT-o} 10929 am__minus_obj= 10930 ;; 10931 none) break ;; 10932 esac 10933 if depmode=$depmode \ 10934 source=sub/conftest.c object=$am__obj \ 10935 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ 10936 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ 10937 >/dev/null 2>conftest.err && 10938 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && 10939 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && 10940 grep $am__obj sub/conftest.Po > /dev/null 2>&1 && 10941 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then 10942 # icc doesn't choke on unknown options, it will just issue warnings 10943 # or remarks (even with -Werror). So we grep stderr for any message 10944 # that says an option was ignored or not supported. 10945 # When given -MP, icc 7.0 and 7.1 complain thusly: 10946 # icc: Command line warning: ignoring option '-M'; no argument required 10947 # The diagnosis changed in icc 8.0: 10948 # icc: Command line remark: option '-MP' not supported 10949 if (grep 'ignoring option' conftest.err || 10950 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else 10951 am_cv_$1_dependencies_compiler_type=$depmode 10952 break 10953 fi 10954 fi 10955 done 10956 10957 cd .. 10958 rm -rf conftest.dir 10959else 10960 am_cv_$1_dependencies_compiler_type=none 10961fi 10962]) 10963AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) 10964AM_CONDITIONAL([am__fastdep$1], [ 10965 test "x$enable_dependency_tracking" != xno \ 10966 && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) 10967]) 10968 10969 10970# AM_SET_DEPDIR 10971# ------------- 10972# Choose a directory name for dependency files. 10973# This macro is AC_REQUIREd in _AM_DEPENDENCIES 10974AC_DEFUN([AM_SET_DEPDIR], 10975[AC_REQUIRE([AM_SET_LEADING_DOT])dnl 10976AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl 10977]) 10978 10979 10980# AM_DEP_TRACK 10981# ------------ 10982AC_DEFUN([AM_DEP_TRACK], 10983[AC_ARG_ENABLE(dependency-tracking, 10984[ --disable-dependency-tracking speeds up one-time build 10985 --enable-dependency-tracking do not reject slow dependency extractors]) 10986if test "x$enable_dependency_tracking" != xno; then 10987 am_depcomp="$ac_aux_dir/depcomp" 10988 AMDEPBACKSLASH='\' 10989 am__nodep='_no' 10990fi 10991AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) 10992AC_SUBST([AMDEPBACKSLASH])dnl 10993_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl 10994AC_SUBST([am__nodep])dnl 10995_AM_SUBST_NOTMAKE([am__nodep])dnl 10996]) 10997 10998# Generate code to set up dependency tracking. -*- Autoconf -*- 10999 11000# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008 11001# Free Software Foundation, Inc. 11002# 11003# This file is free software; the Free Software Foundation 11004# gives unlimited permission to copy and/or distribute it, 11005# with or without modifications, as long as this notice is preserved. 11006 11007#serial 5 11008 11009# _AM_OUTPUT_DEPENDENCY_COMMANDS 11010# ------------------------------ 11011AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], 11012[{ 11013 # Autoconf 2.62 quotes --file arguments for eval, but not when files 11014 # are listed without --file. Let's play safe and only enable the eval 11015 # if we detect the quoting. 11016 case $CONFIG_FILES in 11017 *\'*) eval set x "$CONFIG_FILES" ;; 11018 *) set x $CONFIG_FILES ;; 11019 esac 11020 shift 11021 for mf 11022 do 11023 # Strip MF so we end up with the name of the file. 11024 mf=`echo "$mf" | sed -e 's/:.*$//'` 11025 # Check whether this is an Automake generated Makefile or not. 11026 # We used to match only the files named `Makefile.in', but 11027 # some people rename them; so instead we look at the file content. 11028 # Grep'ing the first line is not enough: some people post-process 11029 # each Makefile.in and add a new line on top of each file to say so. 11030 # Grep'ing the whole file is not good either: AIX grep has a line 11031 # limit of 2048, but all sed's we know have understand at least 4000. 11032 if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then 11033 dirpart=`AS_DIRNAME("$mf")` 11034 else 11035 continue 11036 fi 11037 # Extract the definition of DEPDIR, am__include, and am__quote 11038 # from the Makefile without running `make'. 11039 DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` 11040 test -z "$DEPDIR" && continue 11041 am__include=`sed -n 's/^am__include = //p' < "$mf"` 11042 test -z "am__include" && continue 11043 am__quote=`sed -n 's/^am__quote = //p' < "$mf"` 11044 # When using ansi2knr, U may be empty or an underscore; expand it 11045 U=`sed -n 's/^U = //p' < "$mf"` 11046 # Find all dependency output files, they are included files with 11047 # $(DEPDIR) in their names. We invoke sed twice because it is the 11048 # simplest approach to changing $(DEPDIR) to its actual value in the 11049 # expansion. 11050 for file in `sed -n " 11051 s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ 11052 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do 11053 # Make sure the directory exists. 11054 test -f "$dirpart/$file" && continue 11055 fdir=`AS_DIRNAME(["$file"])` 11056 AS_MKDIR_P([$dirpart/$fdir]) 11057 # echo "creating $dirpart/$file" 11058 echo '# dummy' > "$dirpart/$file" 11059 done 11060 done 11061} 11062])# _AM_OUTPUT_DEPENDENCY_COMMANDS 11063 11064 11065# AM_OUTPUT_DEPENDENCY_COMMANDS 11066# ----------------------------- 11067# This macro should only be invoked once -- use via AC_REQUIRE. 11068# 11069# This code is only required when automatic dependency tracking 11070# is enabled. FIXME. This creates each `.P' file that we will 11071# need in order to bootstrap the dependency handling code. 11072AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], 11073[AC_CONFIG_COMMANDS([depfiles], 11074 [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], 11075 [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) 11076]) 11077 11078# Do all the work for Automake. -*- Autoconf -*- 11079 11080# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 11081# 2005, 2006, 2008, 2009 Free Software Foundation, Inc. 11082# 11083# This file is free software; the Free Software Foundation 11084# gives unlimited permission to copy and/or distribute it, 11085# with or without modifications, as long as this notice is preserved. 11086 11087# serial 16 11088 11089# This macro actually does too much. Some checks are only needed if 11090# your package does certain things. But this isn't really a big deal. 11091 11092# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) 11093# AM_INIT_AUTOMAKE([OPTIONS]) 11094# ----------------------------------------------- 11095# The call with PACKAGE and VERSION arguments is the old style 11096# call (pre autoconf-2.50), which is being phased out. PACKAGE 11097# and VERSION should now be passed to AC_INIT and removed from 11098# the call to AM_INIT_AUTOMAKE. 11099# We support both call styles for the transition. After 11100# the next Automake release, Autoconf can make the AC_INIT 11101# arguments mandatory, and then we can depend on a new Autoconf 11102# release and drop the old call support. 11103AC_DEFUN([AM_INIT_AUTOMAKE], 11104[AC_PREREQ([2.62])dnl 11105dnl Autoconf wants to disallow AM_ names. We explicitly allow 11106dnl the ones we care about. 11107m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl 11108AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl 11109AC_REQUIRE([AC_PROG_INSTALL])dnl 11110if test "`cd $srcdir && pwd`" != "`pwd`"; then 11111 # Use -I$(srcdir) only when $(srcdir) != ., so that make's output 11112 # is not polluted with repeated "-I." 11113 AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl 11114 # test to see if srcdir already configured 11115 if test -f $srcdir/config.status; then 11116 AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) 11117 fi 11118fi 11119 11120# test whether we have cygpath 11121if test -z "$CYGPATH_W"; then 11122 if (cygpath --version) >/dev/null 2>/dev/null; then 11123 CYGPATH_W='cygpath -w' 11124 else 11125 CYGPATH_W=echo 11126 fi 11127fi 11128AC_SUBST([CYGPATH_W]) 11129 11130# Define the identity of the package. 11131dnl Distinguish between old-style and new-style calls. 11132m4_ifval([$2], 11133[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl 11134 AC_SUBST([PACKAGE], [$1])dnl 11135 AC_SUBST([VERSION], [$2])], 11136[_AM_SET_OPTIONS([$1])dnl 11137dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. 11138m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,, 11139 [m4_fatal([AC_INIT should be called with package and version arguments])])dnl 11140 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl 11141 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl 11142 11143_AM_IF_OPTION([no-define],, 11144[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) 11145 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl 11146 11147# Some tools Automake needs. 11148AC_REQUIRE([AM_SANITY_CHECK])dnl 11149AC_REQUIRE([AC_ARG_PROGRAM])dnl 11150AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}) 11151AM_MISSING_PROG(AUTOCONF, autoconf) 11152AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}) 11153AM_MISSING_PROG(AUTOHEADER, autoheader) 11154AM_MISSING_PROG(MAKEINFO, makeinfo) 11155AC_REQUIRE([AM_PROG_INSTALL_SH])dnl 11156AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl 11157AC_REQUIRE([AM_PROG_MKDIR_P])dnl 11158# We need awk for the "check" target. The system "awk" is bad on 11159# some platforms. 11160AC_REQUIRE([AC_PROG_AWK])dnl 11161AC_REQUIRE([AC_PROG_MAKE_SET])dnl 11162AC_REQUIRE([AM_SET_LEADING_DOT])dnl 11163_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], 11164 [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], 11165 [_AM_PROG_TAR([v7])])]) 11166_AM_IF_OPTION([no-dependencies],, 11167[AC_PROVIDE_IFELSE([AC_PROG_CC], 11168 [_AM_DEPENDENCIES(CC)], 11169 [define([AC_PROG_CC], 11170 defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl 11171AC_PROVIDE_IFELSE([AC_PROG_CXX], 11172 [_AM_DEPENDENCIES(CXX)], 11173 [define([AC_PROG_CXX], 11174 defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl 11175AC_PROVIDE_IFELSE([AC_PROG_OBJC], 11176 [_AM_DEPENDENCIES(OBJC)], 11177 [define([AC_PROG_OBJC], 11178 defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl 11179]) 11180_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl 11181dnl The `parallel-tests' driver may need to know about EXEEXT, so add the 11182dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro 11183dnl is hooked onto _AC_COMPILER_EXEEXT early, see below. 11184AC_CONFIG_COMMANDS_PRE(dnl 11185[m4_provide_if([_AM_COMPILER_EXEEXT], 11186 [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl 11187]) 11188 11189dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not 11190dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further 11191dnl mangled by Autoconf and run in a shell conditional statement. 11192m4_define([_AC_COMPILER_EXEEXT], 11193m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) 11194 11195 11196# When config.status generates a header, we must update the stamp-h file. 11197# This file resides in the same directory as the config header 11198# that is generated. The stamp files are numbered to have different names. 11199 11200# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the 11201# loop where config.status creates the headers, so we can generate 11202# our stamp files there. 11203AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], 11204[# Compute $1's index in $config_headers. 11205_am_arg=$1 11206_am_stamp_count=1 11207for _am_header in $config_headers :; do 11208 case $_am_header in 11209 $_am_arg | $_am_arg:* ) 11210 break ;; 11211 * ) 11212 _am_stamp_count=`expr $_am_stamp_count + 1` ;; 11213 esac 11214done 11215echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) 11216 11217# Copyright (C) 2001, 2003, 2005, 2008, 2011 Free Software Foundation, 11218# Inc. 11219# 11220# This file is free software; the Free Software Foundation 11221# gives unlimited permission to copy and/or distribute it, 11222# with or without modifications, as long as this notice is preserved. 11223 11224# serial 1 11225 11226# AM_PROG_INSTALL_SH 11227# ------------------ 11228# Define $install_sh. 11229AC_DEFUN([AM_PROG_INSTALL_SH], 11230[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl 11231if test x"${install_sh}" != xset; then 11232 case $am_aux_dir in 11233 *\ * | *\ *) 11234 install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; 11235 *) 11236 install_sh="\${SHELL} $am_aux_dir/install-sh" 11237 esac 11238fi 11239AC_SUBST(install_sh)]) 11240 11241# Copyright (C) 2003, 2005 Free Software Foundation, Inc. 11242# 11243# This file is free software; the Free Software Foundation 11244# gives unlimited permission to copy and/or distribute it, 11245# with or without modifications, as long as this notice is preserved. 11246 11247# serial 2 11248 11249# Check whether the underlying file-system supports filenames 11250# with a leading dot. For instance MS-DOS doesn't. 11251AC_DEFUN([AM_SET_LEADING_DOT], 11252[rm -rf .tst 2>/dev/null 11253mkdir .tst 2>/dev/null 11254if test -d .tst; then 11255 am__leading_dot=. 11256else 11257 am__leading_dot=_ 11258fi 11259rmdir .tst 2>/dev/null 11260AC_SUBST([am__leading_dot])]) 11261 11262# Add --enable-maintainer-mode option to configure. -*- Autoconf -*- 11263# From Jim Meyering 11264 11265# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008, 11266# 2011 Free Software Foundation, Inc. 11267# 11268# This file is free software; the Free Software Foundation 11269# gives unlimited permission to copy and/or distribute it, 11270# with or without modifications, as long as this notice is preserved. 11271 11272# serial 5 11273 11274# AM_MAINTAINER_MODE([DEFAULT-MODE]) 11275# ---------------------------------- 11276# Control maintainer-specific portions of Makefiles. 11277# Default is to disable them, unless `enable' is passed literally. 11278# For symmetry, `disable' may be passed as well. Anyway, the user 11279# can override the default with the --enable/--disable switch. 11280AC_DEFUN([AM_MAINTAINER_MODE], 11281[m4_case(m4_default([$1], [disable]), 11282 [enable], [m4_define([am_maintainer_other], [disable])], 11283 [disable], [m4_define([am_maintainer_other], [enable])], 11284 [m4_define([am_maintainer_other], [enable]) 11285 m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])]) 11286AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) 11287 dnl maintainer-mode's default is 'disable' unless 'enable' is passed 11288 AC_ARG_ENABLE([maintainer-mode], 11289[ --][am_maintainer_other][-maintainer-mode am_maintainer_other make rules and dependencies not useful 11290 (and sometimes confusing) to the casual installer], 11291 [USE_MAINTAINER_MODE=$enableval], 11292 [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes])) 11293 AC_MSG_RESULT([$USE_MAINTAINER_MODE]) 11294 AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes]) 11295 MAINT=$MAINTAINER_MODE_TRUE 11296 AC_SUBST([MAINT])dnl 11297] 11298) 11299 11300AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE]) 11301 11302# Check to see how 'make' treats includes. -*- Autoconf -*- 11303 11304# Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc. 11305# 11306# This file is free software; the Free Software Foundation 11307# gives unlimited permission to copy and/or distribute it, 11308# with or without modifications, as long as this notice is preserved. 11309 11310# serial 4 11311 11312# AM_MAKE_INCLUDE() 11313# ----------------- 11314# Check to see how make treats includes. 11315AC_DEFUN([AM_MAKE_INCLUDE], 11316[am_make=${MAKE-make} 11317cat > confinc << 'END' 11318am__doit: 11319 @echo this is the am__doit target 11320.PHONY: am__doit 11321END 11322# If we don't find an include directive, just comment out the code. 11323AC_MSG_CHECKING([for style of include used by $am_make]) 11324am__include="#" 11325am__quote= 11326_am_result=none 11327# First try GNU make style include. 11328echo "include confinc" > confmf 11329# Ignore all kinds of additional output from `make'. 11330case `$am_make -s -f confmf 2> /dev/null` in #( 11331*the\ am__doit\ target*) 11332 am__include=include 11333 am__quote= 11334 _am_result=GNU 11335 ;; 11336esac 11337# Now try BSD make style include. 11338if test "$am__include" = "#"; then 11339 echo '.include "confinc"' > confmf 11340 case `$am_make -s -f confmf 2> /dev/null` in #( 11341 *the\ am__doit\ target*) 11342 am__include=.include 11343 am__quote="\"" 11344 _am_result=BSD 11345 ;; 11346 esac 11347fi 11348AC_SUBST([am__include]) 11349AC_SUBST([am__quote]) 11350AC_MSG_RESULT([$_am_result]) 11351rm -f confinc confmf 11352]) 11353 11354# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- 11355 11356# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008 11357# Free Software Foundation, Inc. 11358# 11359# This file is free software; the Free Software Foundation 11360# gives unlimited permission to copy and/or distribute it, 11361# with or without modifications, as long as this notice is preserved. 11362 11363# serial 6 11364 11365# AM_MISSING_PROG(NAME, PROGRAM) 11366# ------------------------------ 11367AC_DEFUN([AM_MISSING_PROG], 11368[AC_REQUIRE([AM_MISSING_HAS_RUN]) 11369$1=${$1-"${am_missing_run}$2"} 11370AC_SUBST($1)]) 11371 11372 11373# AM_MISSING_HAS_RUN 11374# ------------------ 11375# Define MISSING if not defined so far and test if it supports --run. 11376# If it does, set am_missing_run to use it, otherwise, to nothing. 11377AC_DEFUN([AM_MISSING_HAS_RUN], 11378[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl 11379AC_REQUIRE_AUX_FILE([missing])dnl 11380if test x"${MISSING+set}" != xset; then 11381 case $am_aux_dir in 11382 *\ * | *\ *) 11383 MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; 11384 *) 11385 MISSING="\${SHELL} $am_aux_dir/missing" ;; 11386 esac 11387fi 11388# Use eval to expand $SHELL 11389if eval "$MISSING --run true"; then 11390 am_missing_run="$MISSING --run " 11391else 11392 am_missing_run= 11393 AC_MSG_WARN([`missing' script is too old or missing]) 11394fi 11395]) 11396 11397# Copyright (C) 2003, 2004, 2005, 2006, 2011 Free Software Foundation, 11398# Inc. 11399# 11400# This file is free software; the Free Software Foundation 11401# gives unlimited permission to copy and/or distribute it, 11402# with or without modifications, as long as this notice is preserved. 11403 11404# serial 1 11405 11406# AM_PROG_MKDIR_P 11407# --------------- 11408# Check for `mkdir -p'. 11409AC_DEFUN([AM_PROG_MKDIR_P], 11410[AC_PREREQ([2.60])dnl 11411AC_REQUIRE([AC_PROG_MKDIR_P])dnl 11412dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P, 11413dnl while keeping a definition of mkdir_p for backward compatibility. 11414dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile. 11415dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of 11416dnl Makefile.ins that do not define MKDIR_P, so we do our own 11417dnl adjustment using top_builddir (which is defined more often than 11418dnl MKDIR_P). 11419AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl 11420case $mkdir_p in 11421 [[\\/$]]* | ?:[[\\/]]*) ;; 11422 */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;; 11423esac 11424]) 11425 11426# Helper functions for option handling. -*- Autoconf -*- 11427 11428# Copyright (C) 2001, 2002, 2003, 2005, 2008, 2010 Free Software 11429# Foundation, Inc. 11430# 11431# This file is free software; the Free Software Foundation 11432# gives unlimited permission to copy and/or distribute it, 11433# with or without modifications, as long as this notice is preserved. 11434 11435# serial 5 11436 11437# _AM_MANGLE_OPTION(NAME) 11438# ----------------------- 11439AC_DEFUN([_AM_MANGLE_OPTION], 11440[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) 11441 11442# _AM_SET_OPTION(NAME) 11443# -------------------- 11444# Set option NAME. Presently that only means defining a flag for this option. 11445AC_DEFUN([_AM_SET_OPTION], 11446[m4_define(_AM_MANGLE_OPTION([$1]), 1)]) 11447 11448# _AM_SET_OPTIONS(OPTIONS) 11449# ------------------------ 11450# OPTIONS is a space-separated list of Automake options. 11451AC_DEFUN([_AM_SET_OPTIONS], 11452[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) 11453 11454# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) 11455# ------------------------------------------- 11456# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. 11457AC_DEFUN([_AM_IF_OPTION], 11458[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) 11459 11460# Check to make sure that the build environment is sane. -*- Autoconf -*- 11461 11462# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008 11463# Free Software Foundation, Inc. 11464# 11465# This file is free software; the Free Software Foundation 11466# gives unlimited permission to copy and/or distribute it, 11467# with or without modifications, as long as this notice is preserved. 11468 11469# serial 5 11470 11471# AM_SANITY_CHECK 11472# --------------- 11473AC_DEFUN([AM_SANITY_CHECK], 11474[AC_MSG_CHECKING([whether build environment is sane]) 11475# Just in case 11476sleep 1 11477echo timestamp > conftest.file 11478# Reject unsafe characters in $srcdir or the absolute working directory 11479# name. Accept space and tab only in the latter. 11480am_lf=' 11481' 11482case `pwd` in 11483 *[[\\\"\#\$\&\'\`$am_lf]]*) 11484 AC_MSG_ERROR([unsafe absolute working directory name]);; 11485esac 11486case $srcdir in 11487 *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) 11488 AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);; 11489esac 11490 11491# Do `set' in a subshell so we don't clobber the current shell's 11492# arguments. Must try -L first in case configure is actually a 11493# symlink; some systems play weird games with the mod time of symlinks 11494# (eg FreeBSD returns the mod time of the symlink's containing 11495# directory). 11496if ( 11497 set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` 11498 if test "$[*]" = "X"; then 11499 # -L didn't work. 11500 set X `ls -t "$srcdir/configure" conftest.file` 11501 fi 11502 rm -f conftest.file 11503 if test "$[*]" != "X $srcdir/configure conftest.file" \ 11504 && test "$[*]" != "X conftest.file $srcdir/configure"; then 11505 11506 # If neither matched, then we have a broken ls. This can happen 11507 # if, for instance, CONFIG_SHELL is bash and it inherits a 11508 # broken ls alias from the environment. This has actually 11509 # happened. Such a system could not be considered "sane". 11510 AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken 11511alias in your environment]) 11512 fi 11513 11514 test "$[2]" = conftest.file 11515 ) 11516then 11517 # Ok. 11518 : 11519else 11520 AC_MSG_ERROR([newly created file is older than distributed files! 11521Check your system clock]) 11522fi 11523AC_MSG_RESULT(yes)]) 11524 11525# Copyright (C) 2009, 2011 Free Software Foundation, Inc. 11526# 11527# This file is free software; the Free Software Foundation 11528# gives unlimited permission to copy and/or distribute it, 11529# with or without modifications, as long as this notice is preserved. 11530 11531# serial 2 11532 11533# AM_SILENT_RULES([DEFAULT]) 11534# -------------------------- 11535# Enable less verbose build rules; with the default set to DEFAULT 11536# (`yes' being less verbose, `no' or empty being verbose). 11537AC_DEFUN([AM_SILENT_RULES], 11538[AC_ARG_ENABLE([silent-rules], 11539[ --enable-silent-rules less verbose build output (undo: `make V=1') 11540 --disable-silent-rules verbose build output (undo: `make V=0')]) 11541case $enable_silent_rules in 11542yes) AM_DEFAULT_VERBOSITY=0;; 11543no) AM_DEFAULT_VERBOSITY=1;; 11544*) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; 11545esac 11546dnl 11547dnl A few `make' implementations (e.g., NonStop OS and NextStep) 11548dnl do not support nested variable expansions. 11549dnl See automake bug#9928 and bug#10237. 11550am_make=${MAKE-make} 11551AC_CACHE_CHECK([whether $am_make supports nested variables], 11552 [am_cv_make_support_nested_variables], 11553 [if AS_ECHO([['TRUE=$(BAR$(V)) 11554BAR0=false 11555BAR1=true 11556V=1 11557am__doit: 11558 @$(TRUE) 11559.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then 11560 am_cv_make_support_nested_variables=yes 11561else 11562 am_cv_make_support_nested_variables=no 11563fi]) 11564if test $am_cv_make_support_nested_variables = yes; then 11565 dnl Using `$V' instead of `$(V)' breaks IRIX make. 11566 AM_V='$(V)' 11567 AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' 11568else 11569 AM_V=$AM_DEFAULT_VERBOSITY 11570 AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY 11571fi 11572AC_SUBST([AM_V])dnl 11573AM_SUBST_NOTMAKE([AM_V])dnl 11574AC_SUBST([AM_DEFAULT_V])dnl 11575AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl 11576AC_SUBST([AM_DEFAULT_VERBOSITY])dnl 11577AM_BACKSLASH='\' 11578AC_SUBST([AM_BACKSLASH])dnl 11579_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl 11580]) 11581 11582# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc. 11583# 11584# This file is free software; the Free Software Foundation 11585# gives unlimited permission to copy and/or distribute it, 11586# with or without modifications, as long as this notice is preserved. 11587 11588# serial 1 11589 11590# AM_PROG_INSTALL_STRIP 11591# --------------------- 11592# One issue with vendor `install' (even GNU) is that you can't 11593# specify the program used to strip binaries. This is especially 11594# annoying in cross-compiling environments, where the build's strip 11595# is unlikely to handle the host's binaries. 11596# Fortunately install-sh will honor a STRIPPROG variable, so we 11597# always use install-sh in `make install-strip', and initialize 11598# STRIPPROG with the value of the STRIP variable (set by the user). 11599AC_DEFUN([AM_PROG_INSTALL_STRIP], 11600[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl 11601# Installed binaries are usually stripped using `strip' when the user 11602# run `make install-strip'. However `strip' might not be the right 11603# tool to use in cross-compilation environments, therefore Automake 11604# will honor the `STRIP' environment variable to overrule this program. 11605dnl Don't test for $cross_compiling = yes, because it might be `maybe'. 11606if test "$cross_compiling" != no; then 11607 AC_CHECK_TOOL([STRIP], [strip], :) 11608fi 11609INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" 11610AC_SUBST([INSTALL_STRIP_PROGRAM])]) 11611 11612# Copyright (C) 2006, 2008, 2010 Free Software Foundation, Inc. 11613# 11614# This file is free software; the Free Software Foundation 11615# gives unlimited permission to copy and/or distribute it, 11616# with or without modifications, as long as this notice is preserved. 11617 11618# serial 3 11619 11620# _AM_SUBST_NOTMAKE(VARIABLE) 11621# --------------------------- 11622# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. 11623# This macro is traced by Automake. 11624AC_DEFUN([_AM_SUBST_NOTMAKE]) 11625 11626# AM_SUBST_NOTMAKE(VARIABLE) 11627# -------------------------- 11628# Public sister of _AM_SUBST_NOTMAKE. 11629AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) 11630 11631# Check how to create a tarball. -*- Autoconf -*- 11632 11633# Copyright (C) 2004, 2005, 2012 Free Software Foundation, Inc. 11634# 11635# This file is free software; the Free Software Foundation 11636# gives unlimited permission to copy and/or distribute it, 11637# with or without modifications, as long as this notice is preserved. 11638 11639# serial 2 11640 11641# _AM_PROG_TAR(FORMAT) 11642# -------------------- 11643# Check how to create a tarball in format FORMAT. 11644# FORMAT should be one of `v7', `ustar', or `pax'. 11645# 11646# Substitute a variable $(am__tar) that is a command 11647# writing to stdout a FORMAT-tarball containing the directory 11648# $tardir. 11649# tardir=directory && $(am__tar) > result.tar 11650# 11651# Substitute a variable $(am__untar) that extract such 11652# a tarball read from stdin. 11653# $(am__untar) < result.tar 11654AC_DEFUN([_AM_PROG_TAR], 11655[# Always define AMTAR for backward compatibility. Yes, it's still used 11656# in the wild :-( We should find a proper way to deprecate it ... 11657AC_SUBST([AMTAR], ['$${TAR-tar}']) 11658m4_if([$1], [v7], 11659 [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'], 11660 [m4_case([$1], [ustar],, [pax],, 11661 [m4_fatal([Unknown tar format])]) 11662AC_MSG_CHECKING([how to create a $1 tar archive]) 11663# Loop over all known methods to create a tar archive until one works. 11664_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' 11665_am_tools=${am_cv_prog_tar_$1-$_am_tools} 11666# Do not fold the above two line into one, because Tru64 sh and 11667# Solaris sh will not grok spaces in the rhs of `-'. 11668for _am_tool in $_am_tools 11669do 11670 case $_am_tool in 11671 gnutar) 11672 for _am_tar in tar gnutar gtar; 11673 do 11674 AM_RUN_LOG([$_am_tar --version]) && break 11675 done 11676 am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' 11677 am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' 11678 am__untar="$_am_tar -xf -" 11679 ;; 11680 plaintar) 11681 # Must skip GNU tar: if it does not support --format= it doesn't create 11682 # ustar tarball either. 11683 (tar --version) >/dev/null 2>&1 && continue 11684 am__tar='tar chf - "$$tardir"' 11685 am__tar_='tar chf - "$tardir"' 11686 am__untar='tar xf -' 11687 ;; 11688 pax) 11689 am__tar='pax -L -x $1 -w "$$tardir"' 11690 am__tar_='pax -L -x $1 -w "$tardir"' 11691 am__untar='pax -r' 11692 ;; 11693 cpio) 11694 am__tar='find "$$tardir" -print | cpio -o -H $1 -L' 11695 am__tar_='find "$tardir" -print | cpio -o -H $1 -L' 11696 am__untar='cpio -i -H $1 -d' 11697 ;; 11698 none) 11699 am__tar=false 11700 am__tar_=false 11701 am__untar=false 11702 ;; 11703 esac 11704 11705 # If the value was cached, stop now. We just wanted to have am__tar 11706 # and am__untar set. 11707 test -n "${am_cv_prog_tar_$1}" && break 11708 11709 # tar/untar a dummy directory, and stop if the command works 11710 rm -rf conftest.dir 11711 mkdir conftest.dir 11712 echo GrepMe > conftest.dir/file 11713 AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) 11714 rm -rf conftest.dir 11715 if test -s conftest.tar; then 11716 AM_RUN_LOG([$am__untar <conftest.tar]) 11717 grep GrepMe conftest.dir/file >/dev/null 2>&1 && break 11718 fi 11719done 11720rm -rf conftest.dir 11721 11722AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) 11723AC_MSG_RESULT([$am_cv_prog_tar_$1])]) 11724AC_SUBST([am__tar]) 11725AC_SUBST([am__untar]) 11726]) # _AM_PROG_TAR 11727 11728