annotate src/fftw-3.3.3/m4/libtool.m4 @ 83:ae30d91d2ffe

Replace these with versions built using an older toolset (so as to avoid ABI compatibilities when linking on Ubuntu 14.04 for packaging purposes)
author Chris Cannam
date Fri, 07 Feb 2020 11:51:13 +0000
parents 37bf6b4a2645
children
rev   line source
Chris@10 1 # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
Chris@10 2 #
Chris@10 3 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
Chris@10 4 # 2006, 2007, 2008, 2009, 2010, 2011 Free Software
Chris@10 5 # Foundation, Inc.
Chris@10 6 # Written by Gordon Matzigkeit, 1996
Chris@10 7 #
Chris@10 8 # This file is free software; the Free Software Foundation gives
Chris@10 9 # unlimited permission to copy and/or distribute it, with or without
Chris@10 10 # modifications, as long as this notice is preserved.
Chris@10 11
Chris@10 12 m4_define([_LT_COPYING], [dnl
Chris@10 13 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
Chris@10 14 # 2006, 2007, 2008, 2009, 2010, 2011 Free Software
Chris@10 15 # Foundation, Inc.
Chris@10 16 # Written by Gordon Matzigkeit, 1996
Chris@10 17 #
Chris@10 18 # This file is part of GNU Libtool.
Chris@10 19 #
Chris@10 20 # GNU Libtool is free software; you can redistribute it and/or
Chris@10 21 # modify it under the terms of the GNU General Public License as
Chris@10 22 # published by the Free Software Foundation; either version 2 of
Chris@10 23 # the License, or (at your option) any later version.
Chris@10 24 #
Chris@10 25 # As a special exception to the GNU General Public License,
Chris@10 26 # if you distribute this file as part of a program or library that
Chris@10 27 # is built using GNU Libtool, you may include this file under the
Chris@10 28 # same distribution terms that you use for the rest of that program.
Chris@10 29 #
Chris@10 30 # GNU Libtool is distributed in the hope that it will be useful,
Chris@10 31 # but WITHOUT ANY WARRANTY; without even the implied warranty of
Chris@10 32 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
Chris@10 33 # GNU General Public License for more details.
Chris@10 34 #
Chris@10 35 # You should have received a copy of the GNU General Public License
Chris@10 36 # along with GNU Libtool; see the file COPYING. If not, a copy
Chris@10 37 # can be downloaded from http://www.gnu.org/licenses/gpl.html, or
Chris@10 38 # obtained by writing to the Free Software Foundation, Inc.,
Chris@10 39 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Chris@10 40 ])
Chris@10 41
Chris@10 42 # serial 57 LT_INIT
Chris@10 43
Chris@10 44
Chris@10 45 # LT_PREREQ(VERSION)
Chris@10 46 # ------------------
Chris@10 47 # Complain and exit if this libtool version is less that VERSION.
Chris@10 48 m4_defun([LT_PREREQ],
Chris@10 49 [m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
Chris@10 50 [m4_default([$3],
Chris@10 51 [m4_fatal([Libtool version $1 or higher is required],
Chris@10 52 63)])],
Chris@10 53 [$2])])
Chris@10 54
Chris@10 55
Chris@10 56 # _LT_CHECK_BUILDDIR
Chris@10 57 # ------------------
Chris@10 58 # Complain if the absolute build directory name contains unusual characters
Chris@10 59 m4_defun([_LT_CHECK_BUILDDIR],
Chris@10 60 [case `pwd` in
Chris@10 61 *\ * | *\ *)
Chris@10 62 AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
Chris@10 63 esac
Chris@10 64 ])
Chris@10 65
Chris@10 66
Chris@10 67 # LT_INIT([OPTIONS])
Chris@10 68 # ------------------
Chris@10 69 AC_DEFUN([LT_INIT],
Chris@10 70 [AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
Chris@10 71 AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
Chris@10 72 AC_BEFORE([$0], [LT_LANG])dnl
Chris@10 73 AC_BEFORE([$0], [LT_OUTPUT])dnl
Chris@10 74 AC_BEFORE([$0], [LTDL_INIT])dnl
Chris@10 75 m4_require([_LT_CHECK_BUILDDIR])dnl
Chris@10 76
Chris@10 77 dnl Autoconf doesn't catch unexpanded LT_ macros by default:
Chris@10 78 m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
Chris@10 79 m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
Chris@10 80 dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
Chris@10 81 dnl unless we require an AC_DEFUNed macro:
Chris@10 82 AC_REQUIRE([LTOPTIONS_VERSION])dnl
Chris@10 83 AC_REQUIRE([LTSUGAR_VERSION])dnl
Chris@10 84 AC_REQUIRE([LTVERSION_VERSION])dnl
Chris@10 85 AC_REQUIRE([LTOBSOLETE_VERSION])dnl
Chris@10 86 m4_require([_LT_PROG_LTMAIN])dnl
Chris@10 87
Chris@10 88 _LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
Chris@10 89
Chris@10 90 dnl Parse OPTIONS
Chris@10 91 _LT_SET_OPTIONS([$0], [$1])
Chris@10 92
Chris@10 93 # This can be used to rebuild libtool when needed
Chris@10 94 LIBTOOL_DEPS="$ltmain"
Chris@10 95
Chris@10 96 # Always use our own libtool.
Chris@10 97 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
Chris@10 98 AC_SUBST(LIBTOOL)dnl
Chris@10 99
Chris@10 100 _LT_SETUP
Chris@10 101
Chris@10 102 # Only expand once:
Chris@10 103 m4_define([LT_INIT])
Chris@10 104 ])# LT_INIT
Chris@10 105
Chris@10 106 # Old names:
Chris@10 107 AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
Chris@10 108 AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
Chris@10 109 dnl aclocal-1.4 backwards compatibility:
Chris@10 110 dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
Chris@10 111 dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
Chris@10 112
Chris@10 113
Chris@10 114 # _LT_CC_BASENAME(CC)
Chris@10 115 # -------------------
Chris@10 116 # Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
Chris@10 117 m4_defun([_LT_CC_BASENAME],
Chris@10 118 [for cc_temp in $1""; do
Chris@10 119 case $cc_temp in
Chris@10 120 compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
Chris@10 121 distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
Chris@10 122 \-*) ;;
Chris@10 123 *) break;;
Chris@10 124 esac
Chris@10 125 done
Chris@10 126 cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
Chris@10 127 ])
Chris@10 128
Chris@10 129
Chris@10 130 # _LT_FILEUTILS_DEFAULTS
Chris@10 131 # ----------------------
Chris@10 132 # It is okay to use these file commands and assume they have been set
Chris@10 133 # sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
Chris@10 134 m4_defun([_LT_FILEUTILS_DEFAULTS],
Chris@10 135 [: ${CP="cp -f"}
Chris@10 136 : ${MV="mv -f"}
Chris@10 137 : ${RM="rm -f"}
Chris@10 138 ])# _LT_FILEUTILS_DEFAULTS
Chris@10 139
Chris@10 140
Chris@10 141 # _LT_SETUP
Chris@10 142 # ---------
Chris@10 143 m4_defun([_LT_SETUP],
Chris@10 144 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
Chris@10 145 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
Chris@10 146 AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
Chris@10 147 AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
Chris@10 148
Chris@10 149 _LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
Chris@10 150 dnl
Chris@10 151 _LT_DECL([], [host_alias], [0], [The host system])dnl
Chris@10 152 _LT_DECL([], [host], [0])dnl
Chris@10 153 _LT_DECL([], [host_os], [0])dnl
Chris@10 154 dnl
Chris@10 155 _LT_DECL([], [build_alias], [0], [The build system])dnl
Chris@10 156 _LT_DECL([], [build], [0])dnl
Chris@10 157 _LT_DECL([], [build_os], [0])dnl
Chris@10 158 dnl
Chris@10 159 AC_REQUIRE([AC_PROG_CC])dnl
Chris@10 160 AC_REQUIRE([LT_PATH_LD])dnl
Chris@10 161 AC_REQUIRE([LT_PATH_NM])dnl
Chris@10 162 dnl
Chris@10 163 AC_REQUIRE([AC_PROG_LN_S])dnl
Chris@10 164 test -z "$LN_S" && LN_S="ln -s"
Chris@10 165 _LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
Chris@10 166 dnl
Chris@10 167 AC_REQUIRE([LT_CMD_MAX_LEN])dnl
Chris@10 168 _LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
Chris@10 169 _LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
Chris@10 170 dnl
Chris@10 171 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
Chris@10 172 m4_require([_LT_CHECK_SHELL_FEATURES])dnl
Chris@10 173 m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
Chris@10 174 m4_require([_LT_CMD_RELOAD])dnl
Chris@10 175 m4_require([_LT_CHECK_MAGIC_METHOD])dnl
Chris@10 176 m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
Chris@10 177 m4_require([_LT_CMD_OLD_ARCHIVE])dnl
Chris@10 178 m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
Chris@10 179 m4_require([_LT_WITH_SYSROOT])dnl
Chris@10 180
Chris@10 181 _LT_CONFIG_LIBTOOL_INIT([
Chris@10 182 # See if we are running on zsh, and set the options which allow our
Chris@10 183 # commands through without removal of \ escapes INIT.
Chris@10 184 if test -n "\${ZSH_VERSION+set}" ; then
Chris@10 185 setopt NO_GLOB_SUBST
Chris@10 186 fi
Chris@10 187 ])
Chris@10 188 if test -n "${ZSH_VERSION+set}" ; then
Chris@10 189 setopt NO_GLOB_SUBST
Chris@10 190 fi
Chris@10 191
Chris@10 192 _LT_CHECK_OBJDIR
Chris@10 193
Chris@10 194 m4_require([_LT_TAG_COMPILER])dnl
Chris@10 195
Chris@10 196 case $host_os in
Chris@10 197 aix3*)
Chris@10 198 # AIX sometimes has problems with the GCC collect2 program. For some
Chris@10 199 # reason, if we set the COLLECT_NAMES environment variable, the problems
Chris@10 200 # vanish in a puff of smoke.
Chris@10 201 if test "X${COLLECT_NAMES+set}" != Xset; then
Chris@10 202 COLLECT_NAMES=
Chris@10 203 export COLLECT_NAMES
Chris@10 204 fi
Chris@10 205 ;;
Chris@10 206 esac
Chris@10 207
Chris@10 208 # Global variables:
Chris@10 209 ofile=libtool
Chris@10 210 can_build_shared=yes
Chris@10 211
Chris@10 212 # All known linkers require a `.a' archive for static linking (except MSVC,
Chris@10 213 # which needs '.lib').
Chris@10 214 libext=a
Chris@10 215
Chris@10 216 with_gnu_ld="$lt_cv_prog_gnu_ld"
Chris@10 217
Chris@10 218 old_CC="$CC"
Chris@10 219 old_CFLAGS="$CFLAGS"
Chris@10 220
Chris@10 221 # Set sane defaults for various variables
Chris@10 222 test -z "$CC" && CC=cc
Chris@10 223 test -z "$LTCC" && LTCC=$CC
Chris@10 224 test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
Chris@10 225 test -z "$LD" && LD=ld
Chris@10 226 test -z "$ac_objext" && ac_objext=o
Chris@10 227
Chris@10 228 _LT_CC_BASENAME([$compiler])
Chris@10 229
Chris@10 230 # Only perform the check for file, if the check method requires it
Chris@10 231 test -z "$MAGIC_CMD" && MAGIC_CMD=file
Chris@10 232 case $deplibs_check_method in
Chris@10 233 file_magic*)
Chris@10 234 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
Chris@10 235 _LT_PATH_MAGIC
Chris@10 236 fi
Chris@10 237 ;;
Chris@10 238 esac
Chris@10 239
Chris@10 240 # Use C for the default configuration in the libtool script
Chris@10 241 LT_SUPPORTED_TAG([CC])
Chris@10 242 _LT_LANG_C_CONFIG
Chris@10 243 _LT_LANG_DEFAULT_CONFIG
Chris@10 244 _LT_CONFIG_COMMANDS
Chris@10 245 ])# _LT_SETUP
Chris@10 246
Chris@10 247
Chris@10 248 # _LT_PREPARE_SED_QUOTE_VARS
Chris@10 249 # --------------------------
Chris@10 250 # Define a few sed substitution that help us do robust quoting.
Chris@10 251 m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
Chris@10 252 [# Backslashify metacharacters that are still active within
Chris@10 253 # double-quoted strings.
Chris@10 254 sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
Chris@10 255
Chris@10 256 # Same as above, but do not quote variable references.
Chris@10 257 double_quote_subst='s/\([["`\\]]\)/\\\1/g'
Chris@10 258
Chris@10 259 # Sed substitution to delay expansion of an escaped shell variable in a
Chris@10 260 # double_quote_subst'ed string.
Chris@10 261 delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
Chris@10 262
Chris@10 263 # Sed substitution to delay expansion of an escaped single quote.
Chris@10 264 delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
Chris@10 265
Chris@10 266 # Sed substitution to avoid accidental globbing in evaled expressions
Chris@10 267 no_glob_subst='s/\*/\\\*/g'
Chris@10 268 ])
Chris@10 269
Chris@10 270 # _LT_PROG_LTMAIN
Chris@10 271 # ---------------
Chris@10 272 # Note that this code is called both from `configure', and `config.status'
Chris@10 273 # now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
Chris@10 274 # `config.status' has no value for ac_aux_dir unless we are using Automake,
Chris@10 275 # so we pass a copy along to make sure it has a sensible value anyway.
Chris@10 276 m4_defun([_LT_PROG_LTMAIN],
Chris@10 277 [m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
Chris@10 278 _LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
Chris@10 279 ltmain="$ac_aux_dir/ltmain.sh"
Chris@10 280 ])# _LT_PROG_LTMAIN
Chris@10 281
Chris@10 282
Chris@10 283 ## ------------------------------------- ##
Chris@10 284 ## Accumulate code for creating libtool. ##
Chris@10 285 ## ------------------------------------- ##
Chris@10 286
Chris@10 287 # So that we can recreate a full libtool script including additional
Chris@10 288 # tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
Chris@10 289 # in macros and then make a single call at the end using the `libtool'
Chris@10 290 # label.
Chris@10 291
Chris@10 292
Chris@10 293 # _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
Chris@10 294 # ----------------------------------------
Chris@10 295 # Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
Chris@10 296 m4_define([_LT_CONFIG_LIBTOOL_INIT],
Chris@10 297 [m4_ifval([$1],
Chris@10 298 [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
Chris@10 299 [$1
Chris@10 300 ])])])
Chris@10 301
Chris@10 302 # Initialize.
Chris@10 303 m4_define([_LT_OUTPUT_LIBTOOL_INIT])
Chris@10 304
Chris@10 305
Chris@10 306 # _LT_CONFIG_LIBTOOL([COMMANDS])
Chris@10 307 # ------------------------------
Chris@10 308 # Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
Chris@10 309 m4_define([_LT_CONFIG_LIBTOOL],
Chris@10 310 [m4_ifval([$1],
Chris@10 311 [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
Chris@10 312 [$1
Chris@10 313 ])])])
Chris@10 314
Chris@10 315 # Initialize.
Chris@10 316 m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
Chris@10 317
Chris@10 318
Chris@10 319 # _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
Chris@10 320 # -----------------------------------------------------
Chris@10 321 m4_defun([_LT_CONFIG_SAVE_COMMANDS],
Chris@10 322 [_LT_CONFIG_LIBTOOL([$1])
Chris@10 323 _LT_CONFIG_LIBTOOL_INIT([$2])
Chris@10 324 ])
Chris@10 325
Chris@10 326
Chris@10 327 # _LT_FORMAT_COMMENT([COMMENT])
Chris@10 328 # -----------------------------
Chris@10 329 # Add leading comment marks to the start of each line, and a trailing
Chris@10 330 # full-stop to the whole comment if one is not present already.
Chris@10 331 m4_define([_LT_FORMAT_COMMENT],
Chris@10 332 [m4_ifval([$1], [
Chris@10 333 m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
Chris@10 334 [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
Chris@10 335 )])
Chris@10 336
Chris@10 337
Chris@10 338
Chris@10 339 ## ------------------------ ##
Chris@10 340 ## FIXME: Eliminate VARNAME ##
Chris@10 341 ## ------------------------ ##
Chris@10 342
Chris@10 343
Chris@10 344 # _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
Chris@10 345 # -------------------------------------------------------------------
Chris@10 346 # CONFIGNAME is the name given to the value in the libtool script.
Chris@10 347 # VARNAME is the (base) name used in the configure script.
Chris@10 348 # VALUE may be 0, 1 or 2 for a computed quote escaped value based on
Chris@10 349 # VARNAME. Any other value will be used directly.
Chris@10 350 m4_define([_LT_DECL],
Chris@10 351 [lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
Chris@10 352 [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
Chris@10 353 [m4_ifval([$1], [$1], [$2])])
Chris@10 354 lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
Chris@10 355 m4_ifval([$4],
Chris@10 356 [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
Chris@10 357 lt_dict_add_subkey([lt_decl_dict], [$2],
Chris@10 358 [tagged?], [m4_ifval([$5], [yes], [no])])])
Chris@10 359 ])
Chris@10 360
Chris@10 361
Chris@10 362 # _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
Chris@10 363 # --------------------------------------------------------
Chris@10 364 m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
Chris@10 365
Chris@10 366
Chris@10 367 # lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
Chris@10 368 # ------------------------------------------------
Chris@10 369 m4_define([lt_decl_tag_varnames],
Chris@10 370 [_lt_decl_filter([tagged?], [yes], $@)])
Chris@10 371
Chris@10 372
Chris@10 373 # _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
Chris@10 374 # ---------------------------------------------------------
Chris@10 375 m4_define([_lt_decl_filter],
Chris@10 376 [m4_case([$#],
Chris@10 377 [0], [m4_fatal([$0: too few arguments: $#])],
Chris@10 378 [1], [m4_fatal([$0: too few arguments: $#: $1])],
Chris@10 379 [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
Chris@10 380 [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
Chris@10 381 [lt_dict_filter([lt_decl_dict], $@)])[]dnl
Chris@10 382 ])
Chris@10 383
Chris@10 384
Chris@10 385 # lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
Chris@10 386 # --------------------------------------------------
Chris@10 387 m4_define([lt_decl_quote_varnames],
Chris@10 388 [_lt_decl_filter([value], [1], $@)])
Chris@10 389
Chris@10 390
Chris@10 391 # lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
Chris@10 392 # ---------------------------------------------------
Chris@10 393 m4_define([lt_decl_dquote_varnames],
Chris@10 394 [_lt_decl_filter([value], [2], $@)])
Chris@10 395
Chris@10 396
Chris@10 397 # lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
Chris@10 398 # ---------------------------------------------------
Chris@10 399 m4_define([lt_decl_varnames_tagged],
Chris@10 400 [m4_assert([$# <= 2])dnl
Chris@10 401 _$0(m4_quote(m4_default([$1], [[, ]])),
Chris@10 402 m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
Chris@10 403 m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
Chris@10 404 m4_define([_lt_decl_varnames_tagged],
Chris@10 405 [m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
Chris@10 406
Chris@10 407
Chris@10 408 # lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
Chris@10 409 # ------------------------------------------------
Chris@10 410 m4_define([lt_decl_all_varnames],
Chris@10 411 [_$0(m4_quote(m4_default([$1], [[, ]])),
Chris@10 412 m4_if([$2], [],
Chris@10 413 m4_quote(lt_decl_varnames),
Chris@10 414 m4_quote(m4_shift($@))))[]dnl
Chris@10 415 ])
Chris@10 416 m4_define([_lt_decl_all_varnames],
Chris@10 417 [lt_join($@, lt_decl_varnames_tagged([$1],
Chris@10 418 lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
Chris@10 419 ])
Chris@10 420
Chris@10 421
Chris@10 422 # _LT_CONFIG_STATUS_DECLARE([VARNAME])
Chris@10 423 # ------------------------------------
Chris@10 424 # Quote a variable value, and forward it to `config.status' so that its
Chris@10 425 # declaration there will have the same value as in `configure'. VARNAME
Chris@10 426 # must have a single quote delimited value for this to work.
Chris@10 427 m4_define([_LT_CONFIG_STATUS_DECLARE],
Chris@10 428 [$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
Chris@10 429
Chris@10 430
Chris@10 431 # _LT_CONFIG_STATUS_DECLARATIONS
Chris@10 432 # ------------------------------
Chris@10 433 # We delimit libtool config variables with single quotes, so when
Chris@10 434 # we write them to config.status, we have to be sure to quote all
Chris@10 435 # embedded single quotes properly. In configure, this macro expands
Chris@10 436 # each variable declared with _LT_DECL (and _LT_TAGDECL) into:
Chris@10 437 #
Chris@10 438 # <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
Chris@10 439 m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
Chris@10 440 [m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
Chris@10 441 [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
Chris@10 442
Chris@10 443
Chris@10 444 # _LT_LIBTOOL_TAGS
Chris@10 445 # ----------------
Chris@10 446 # Output comment and list of tags supported by the script
Chris@10 447 m4_defun([_LT_LIBTOOL_TAGS],
Chris@10 448 [_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
Chris@10 449 available_tags="_LT_TAGS"dnl
Chris@10 450 ])
Chris@10 451
Chris@10 452
Chris@10 453 # _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
Chris@10 454 # -----------------------------------
Chris@10 455 # Extract the dictionary values for VARNAME (optionally with TAG) and
Chris@10 456 # expand to a commented shell variable setting:
Chris@10 457 #
Chris@10 458 # # Some comment about what VAR is for.
Chris@10 459 # visible_name=$lt_internal_name
Chris@10 460 m4_define([_LT_LIBTOOL_DECLARE],
Chris@10 461 [_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
Chris@10 462 [description])))[]dnl
Chris@10 463 m4_pushdef([_libtool_name],
Chris@10 464 m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
Chris@10 465 m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
Chris@10 466 [0], [_libtool_name=[$]$1],
Chris@10 467 [1], [_libtool_name=$lt_[]$1],
Chris@10 468 [2], [_libtool_name=$lt_[]$1],
Chris@10 469 [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
Chris@10 470 m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
Chris@10 471 ])
Chris@10 472
Chris@10 473
Chris@10 474 # _LT_LIBTOOL_CONFIG_VARS
Chris@10 475 # -----------------------
Chris@10 476 # Produce commented declarations of non-tagged libtool config variables
Chris@10 477 # suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
Chris@10 478 # script. Tagged libtool config variables (even for the LIBTOOL CONFIG
Chris@10 479 # section) are produced by _LT_LIBTOOL_TAG_VARS.
Chris@10 480 m4_defun([_LT_LIBTOOL_CONFIG_VARS],
Chris@10 481 [m4_foreach([_lt_var],
Chris@10 482 m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
Chris@10 483 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
Chris@10 484
Chris@10 485
Chris@10 486 # _LT_LIBTOOL_TAG_VARS(TAG)
Chris@10 487 # -------------------------
Chris@10 488 m4_define([_LT_LIBTOOL_TAG_VARS],
Chris@10 489 [m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
Chris@10 490 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
Chris@10 491
Chris@10 492
Chris@10 493 # _LT_TAGVAR(VARNAME, [TAGNAME])
Chris@10 494 # ------------------------------
Chris@10 495 m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
Chris@10 496
Chris@10 497
Chris@10 498 # _LT_CONFIG_COMMANDS
Chris@10 499 # -------------------
Chris@10 500 # Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
Chris@10 501 # variables for single and double quote escaping we saved from calls
Chris@10 502 # to _LT_DECL, we can put quote escaped variables declarations
Chris@10 503 # into `config.status', and then the shell code to quote escape them in
Chris@10 504 # for loops in `config.status'. Finally, any additional code accumulated
Chris@10 505 # from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
Chris@10 506 m4_defun([_LT_CONFIG_COMMANDS],
Chris@10 507 [AC_PROVIDE_IFELSE([LT_OUTPUT],
Chris@10 508 dnl If the libtool generation code has been placed in $CONFIG_LT,
Chris@10 509 dnl instead of duplicating it all over again into config.status,
Chris@10 510 dnl then we will have config.status run $CONFIG_LT later, so it
Chris@10 511 dnl needs to know what name is stored there:
Chris@10 512 [AC_CONFIG_COMMANDS([libtool],
Chris@10 513 [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
Chris@10 514 dnl If the libtool generation code is destined for config.status,
Chris@10 515 dnl expand the accumulated commands and init code now:
Chris@10 516 [AC_CONFIG_COMMANDS([libtool],
Chris@10 517 [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
Chris@10 518 ])#_LT_CONFIG_COMMANDS
Chris@10 519
Chris@10 520
Chris@10 521 # Initialize.
Chris@10 522 m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
Chris@10 523 [
Chris@10 524
Chris@10 525 # The HP-UX ksh and POSIX shell print the target directory to stdout
Chris@10 526 # if CDPATH is set.
Chris@10 527 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
Chris@10 528
Chris@10 529 sed_quote_subst='$sed_quote_subst'
Chris@10 530 double_quote_subst='$double_quote_subst'
Chris@10 531 delay_variable_subst='$delay_variable_subst'
Chris@10 532 _LT_CONFIG_STATUS_DECLARATIONS
Chris@10 533 LTCC='$LTCC'
Chris@10 534 LTCFLAGS='$LTCFLAGS'
Chris@10 535 compiler='$compiler_DEFAULT'
Chris@10 536
Chris@10 537 # A function that is used when there is no print builtin or printf.
Chris@10 538 func_fallback_echo ()
Chris@10 539 {
Chris@10 540 eval 'cat <<_LTECHO_EOF
Chris@10 541 \$[]1
Chris@10 542 _LTECHO_EOF'
Chris@10 543 }
Chris@10 544
Chris@10 545 # Quote evaled strings.
Chris@10 546 for var in lt_decl_all_varnames([[ \
Chris@10 547 ]], lt_decl_quote_varnames); do
Chris@10 548 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
Chris@10 549 *[[\\\\\\\`\\"\\\$]]*)
Chris@10 550 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
Chris@10 551 ;;
Chris@10 552 *)
Chris@10 553 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
Chris@10 554 ;;
Chris@10 555 esac
Chris@10 556 done
Chris@10 557
Chris@10 558 # Double-quote double-evaled strings.
Chris@10 559 for var in lt_decl_all_varnames([[ \
Chris@10 560 ]], lt_decl_dquote_varnames); do
Chris@10 561 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
Chris@10 562 *[[\\\\\\\`\\"\\\$]]*)
Chris@10 563 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
Chris@10 564 ;;
Chris@10 565 *)
Chris@10 566 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
Chris@10 567 ;;
Chris@10 568 esac
Chris@10 569 done
Chris@10 570
Chris@10 571 _LT_OUTPUT_LIBTOOL_INIT
Chris@10 572 ])
Chris@10 573
Chris@10 574 # _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
Chris@10 575 # ------------------------------------
Chris@10 576 # Generate a child script FILE with all initialization necessary to
Chris@10 577 # reuse the environment learned by the parent script, and make the
Chris@10 578 # file executable. If COMMENT is supplied, it is inserted after the
Chris@10 579 # `#!' sequence but before initialization text begins. After this
Chris@10 580 # macro, additional text can be appended to FILE to form the body of
Chris@10 581 # the child script. The macro ends with non-zero status if the
Chris@10 582 # file could not be fully written (such as if the disk is full).
Chris@10 583 m4_ifdef([AS_INIT_GENERATED],
Chris@10 584 [m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
Chris@10 585 [m4_defun([_LT_GENERATED_FILE_INIT],
Chris@10 586 [m4_require([AS_PREPARE])]dnl
Chris@10 587 [m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
Chris@10 588 [lt_write_fail=0
Chris@10 589 cat >$1 <<_ASEOF || lt_write_fail=1
Chris@10 590 #! $SHELL
Chris@10 591 # Generated by $as_me.
Chris@10 592 $2
Chris@10 593 SHELL=\${CONFIG_SHELL-$SHELL}
Chris@10 594 export SHELL
Chris@10 595 _ASEOF
Chris@10 596 cat >>$1 <<\_ASEOF || lt_write_fail=1
Chris@10 597 AS_SHELL_SANITIZE
Chris@10 598 _AS_PREPARE
Chris@10 599 exec AS_MESSAGE_FD>&1
Chris@10 600 _ASEOF
Chris@10 601 test $lt_write_fail = 0 && chmod +x $1[]dnl
Chris@10 602 m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
Chris@10 603
Chris@10 604 # LT_OUTPUT
Chris@10 605 # ---------
Chris@10 606 # This macro allows early generation of the libtool script (before
Chris@10 607 # AC_OUTPUT is called), incase it is used in configure for compilation
Chris@10 608 # tests.
Chris@10 609 AC_DEFUN([LT_OUTPUT],
Chris@10 610 [: ${CONFIG_LT=./config.lt}
Chris@10 611 AC_MSG_NOTICE([creating $CONFIG_LT])
Chris@10 612 _LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
Chris@10 613 [# Run this file to recreate a libtool stub with the current configuration.])
Chris@10 614
Chris@10 615 cat >>"$CONFIG_LT" <<\_LTEOF
Chris@10 616 lt_cl_silent=false
Chris@10 617 exec AS_MESSAGE_LOG_FD>>config.log
Chris@10 618 {
Chris@10 619 echo
Chris@10 620 AS_BOX([Running $as_me.])
Chris@10 621 } >&AS_MESSAGE_LOG_FD
Chris@10 622
Chris@10 623 lt_cl_help="\
Chris@10 624 \`$as_me' creates a local libtool stub from the current configuration,
Chris@10 625 for use in further configure time tests before the real libtool is
Chris@10 626 generated.
Chris@10 627
Chris@10 628 Usage: $[0] [[OPTIONS]]
Chris@10 629
Chris@10 630 -h, --help print this help, then exit
Chris@10 631 -V, --version print version number, then exit
Chris@10 632 -q, --quiet do not print progress messages
Chris@10 633 -d, --debug don't remove temporary files
Chris@10 634
Chris@10 635 Report bugs to <bug-libtool@gnu.org>."
Chris@10 636
Chris@10 637 lt_cl_version="\
Chris@10 638 m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
Chris@10 639 m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
Chris@10 640 configured by $[0], generated by m4_PACKAGE_STRING.
Chris@10 641
Chris@10 642 Copyright (C) 2011 Free Software Foundation, Inc.
Chris@10 643 This config.lt script is free software; the Free Software Foundation
Chris@10 644 gives unlimited permision to copy, distribute and modify it."
Chris@10 645
Chris@10 646 while test $[#] != 0
Chris@10 647 do
Chris@10 648 case $[1] in
Chris@10 649 --version | --v* | -V )
Chris@10 650 echo "$lt_cl_version"; exit 0 ;;
Chris@10 651 --help | --h* | -h )
Chris@10 652 echo "$lt_cl_help"; exit 0 ;;
Chris@10 653 --debug | --d* | -d )
Chris@10 654 debug=: ;;
Chris@10 655 --quiet | --q* | --silent | --s* | -q )
Chris@10 656 lt_cl_silent=: ;;
Chris@10 657
Chris@10 658 -*) AC_MSG_ERROR([unrecognized option: $[1]
Chris@10 659 Try \`$[0] --help' for more information.]) ;;
Chris@10 660
Chris@10 661 *) AC_MSG_ERROR([unrecognized argument: $[1]
Chris@10 662 Try \`$[0] --help' for more information.]) ;;
Chris@10 663 esac
Chris@10 664 shift
Chris@10 665 done
Chris@10 666
Chris@10 667 if $lt_cl_silent; then
Chris@10 668 exec AS_MESSAGE_FD>/dev/null
Chris@10 669 fi
Chris@10 670 _LTEOF
Chris@10 671
Chris@10 672 cat >>"$CONFIG_LT" <<_LTEOF
Chris@10 673 _LT_OUTPUT_LIBTOOL_COMMANDS_INIT
Chris@10 674 _LTEOF
Chris@10 675
Chris@10 676 cat >>"$CONFIG_LT" <<\_LTEOF
Chris@10 677 AC_MSG_NOTICE([creating $ofile])
Chris@10 678 _LT_OUTPUT_LIBTOOL_COMMANDS
Chris@10 679 AS_EXIT(0)
Chris@10 680 _LTEOF
Chris@10 681 chmod +x "$CONFIG_LT"
Chris@10 682
Chris@10 683 # configure is writing to config.log, but config.lt does its own redirection,
Chris@10 684 # appending to config.log, which fails on DOS, as config.log is still kept
Chris@10 685 # open by configure. Here we exec the FD to /dev/null, effectively closing
Chris@10 686 # config.log, so it can be properly (re)opened and appended to by config.lt.
Chris@10 687 lt_cl_success=:
Chris@10 688 test "$silent" = yes &&
Chris@10 689 lt_config_lt_args="$lt_config_lt_args --quiet"
Chris@10 690 exec AS_MESSAGE_LOG_FD>/dev/null
Chris@10 691 $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
Chris@10 692 exec AS_MESSAGE_LOG_FD>>config.log
Chris@10 693 $lt_cl_success || AS_EXIT(1)
Chris@10 694 ])# LT_OUTPUT
Chris@10 695
Chris@10 696
Chris@10 697 # _LT_CONFIG(TAG)
Chris@10 698 # ---------------
Chris@10 699 # If TAG is the built-in tag, create an initial libtool script with a
Chris@10 700 # default configuration from the untagged config vars. Otherwise add code
Chris@10 701 # to config.status for appending the configuration named by TAG from the
Chris@10 702 # matching tagged config vars.
Chris@10 703 m4_defun([_LT_CONFIG],
Chris@10 704 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
Chris@10 705 _LT_CONFIG_SAVE_COMMANDS([
Chris@10 706 m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
Chris@10 707 m4_if(_LT_TAG, [C], [
Chris@10 708 # See if we are running on zsh, and set the options which allow our
Chris@10 709 # commands through without removal of \ escapes.
Chris@10 710 if test -n "${ZSH_VERSION+set}" ; then
Chris@10 711 setopt NO_GLOB_SUBST
Chris@10 712 fi
Chris@10 713
Chris@10 714 cfgfile="${ofile}T"
Chris@10 715 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
Chris@10 716 $RM "$cfgfile"
Chris@10 717
Chris@10 718 cat <<_LT_EOF >> "$cfgfile"
Chris@10 719 #! $SHELL
Chris@10 720
Chris@10 721 # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
Chris@10 722 # Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
Chris@10 723 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
Chris@10 724 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
Chris@10 725 #
Chris@10 726 _LT_COPYING
Chris@10 727 _LT_LIBTOOL_TAGS
Chris@10 728
Chris@10 729 # ### BEGIN LIBTOOL CONFIG
Chris@10 730 _LT_LIBTOOL_CONFIG_VARS
Chris@10 731 _LT_LIBTOOL_TAG_VARS
Chris@10 732 # ### END LIBTOOL CONFIG
Chris@10 733
Chris@10 734 _LT_EOF
Chris@10 735
Chris@10 736 case $host_os in
Chris@10 737 aix3*)
Chris@10 738 cat <<\_LT_EOF >> "$cfgfile"
Chris@10 739 # AIX sometimes has problems with the GCC collect2 program. For some
Chris@10 740 # reason, if we set the COLLECT_NAMES environment variable, the problems
Chris@10 741 # vanish in a puff of smoke.
Chris@10 742 if test "X${COLLECT_NAMES+set}" != Xset; then
Chris@10 743 COLLECT_NAMES=
Chris@10 744 export COLLECT_NAMES
Chris@10 745 fi
Chris@10 746 _LT_EOF
Chris@10 747 ;;
Chris@10 748 esac
Chris@10 749
Chris@10 750 _LT_PROG_LTMAIN
Chris@10 751
Chris@10 752 # We use sed instead of cat because bash on DJGPP gets confused if
Chris@10 753 # if finds mixed CR/LF and LF-only lines. Since sed operates in
Chris@10 754 # text mode, it properly converts lines to CR/LF. This bash problem
Chris@10 755 # is reportedly fixed, but why not run on old versions too?
Chris@10 756 sed '$q' "$ltmain" >> "$cfgfile" \
Chris@10 757 || (rm -f "$cfgfile"; exit 1)
Chris@10 758
Chris@10 759 _LT_PROG_REPLACE_SHELLFNS
Chris@10 760
Chris@10 761 mv -f "$cfgfile" "$ofile" ||
Chris@10 762 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
Chris@10 763 chmod +x "$ofile"
Chris@10 764 ],
Chris@10 765 [cat <<_LT_EOF >> "$ofile"
Chris@10 766
Chris@10 767 dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
Chris@10 768 dnl in a comment (ie after a #).
Chris@10 769 # ### BEGIN LIBTOOL TAG CONFIG: $1
Chris@10 770 _LT_LIBTOOL_TAG_VARS(_LT_TAG)
Chris@10 771 # ### END LIBTOOL TAG CONFIG: $1
Chris@10 772 _LT_EOF
Chris@10 773 ])dnl /m4_if
Chris@10 774 ],
Chris@10 775 [m4_if([$1], [], [
Chris@10 776 PACKAGE='$PACKAGE'
Chris@10 777 VERSION='$VERSION'
Chris@10 778 TIMESTAMP='$TIMESTAMP'
Chris@10 779 RM='$RM'
Chris@10 780 ofile='$ofile'], [])
Chris@10 781 ])dnl /_LT_CONFIG_SAVE_COMMANDS
Chris@10 782 ])# _LT_CONFIG
Chris@10 783
Chris@10 784
Chris@10 785 # LT_SUPPORTED_TAG(TAG)
Chris@10 786 # ---------------------
Chris@10 787 # Trace this macro to discover what tags are supported by the libtool
Chris@10 788 # --tag option, using:
Chris@10 789 # autoconf --trace 'LT_SUPPORTED_TAG:$1'
Chris@10 790 AC_DEFUN([LT_SUPPORTED_TAG], [])
Chris@10 791
Chris@10 792
Chris@10 793 # C support is built-in for now
Chris@10 794 m4_define([_LT_LANG_C_enabled], [])
Chris@10 795 m4_define([_LT_TAGS], [])
Chris@10 796
Chris@10 797
Chris@10 798 # LT_LANG(LANG)
Chris@10 799 # -------------
Chris@10 800 # Enable libtool support for the given language if not already enabled.
Chris@10 801 AC_DEFUN([LT_LANG],
Chris@10 802 [AC_BEFORE([$0], [LT_OUTPUT])dnl
Chris@10 803 m4_case([$1],
Chris@10 804 [C], [_LT_LANG(C)],
Chris@10 805 [C++], [_LT_LANG(CXX)],
Chris@10 806 [Go], [_LT_LANG(GO)],
Chris@10 807 [Java], [_LT_LANG(GCJ)],
Chris@10 808 [Fortran 77], [_LT_LANG(F77)],
Chris@10 809 [Fortran], [_LT_LANG(FC)],
Chris@10 810 [Windows Resource], [_LT_LANG(RC)],
Chris@10 811 [m4_ifdef([_LT_LANG_]$1[_CONFIG],
Chris@10 812 [_LT_LANG($1)],
Chris@10 813 [m4_fatal([$0: unsupported language: "$1"])])])dnl
Chris@10 814 ])# LT_LANG
Chris@10 815
Chris@10 816
Chris@10 817 # _LT_LANG(LANGNAME)
Chris@10 818 # ------------------
Chris@10 819 m4_defun([_LT_LANG],
Chris@10 820 [m4_ifdef([_LT_LANG_]$1[_enabled], [],
Chris@10 821 [LT_SUPPORTED_TAG([$1])dnl
Chris@10 822 m4_append([_LT_TAGS], [$1 ])dnl
Chris@10 823 m4_define([_LT_LANG_]$1[_enabled], [])dnl
Chris@10 824 _LT_LANG_$1_CONFIG($1)])dnl
Chris@10 825 ])# _LT_LANG
Chris@10 826
Chris@10 827
Chris@10 828 m4_ifndef([AC_PROG_GO], [
Chris@10 829 ############################################################
Chris@10 830 # NOTE: This macro has been submitted for inclusion into #
Chris@10 831 # GNU Autoconf as AC_PROG_GO. When it is available in #
Chris@10 832 # a released version of Autoconf we should remove this #
Chris@10 833 # macro and use it instead. #
Chris@10 834 ############################################################
Chris@10 835 m4_defun([AC_PROG_GO],
Chris@10 836 [AC_LANG_PUSH(Go)dnl
Chris@10 837 AC_ARG_VAR([GOC], [Go compiler command])dnl
Chris@10 838 AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
Chris@10 839 _AC_ARG_VAR_LDFLAGS()dnl
Chris@10 840 AC_CHECK_TOOL(GOC, gccgo)
Chris@10 841 if test -z "$GOC"; then
Chris@10 842 if test -n "$ac_tool_prefix"; then
Chris@10 843 AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
Chris@10 844 fi
Chris@10 845 fi
Chris@10 846 if test -z "$GOC"; then
Chris@10 847 AC_CHECK_PROG(GOC, gccgo, gccgo, false)
Chris@10 848 fi
Chris@10 849 ])#m4_defun
Chris@10 850 ])#m4_ifndef
Chris@10 851
Chris@10 852
Chris@10 853 # _LT_LANG_DEFAULT_CONFIG
Chris@10 854 # -----------------------
Chris@10 855 m4_defun([_LT_LANG_DEFAULT_CONFIG],
Chris@10 856 [AC_PROVIDE_IFELSE([AC_PROG_CXX],
Chris@10 857 [LT_LANG(CXX)],
Chris@10 858 [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
Chris@10 859
Chris@10 860 AC_PROVIDE_IFELSE([AC_PROG_F77],
Chris@10 861 [LT_LANG(F77)],
Chris@10 862 [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
Chris@10 863
Chris@10 864 AC_PROVIDE_IFELSE([AC_PROG_FC],
Chris@10 865 [LT_LANG(FC)],
Chris@10 866 [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
Chris@10 867
Chris@10 868 dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
Chris@10 869 dnl pulling things in needlessly.
Chris@10 870 AC_PROVIDE_IFELSE([AC_PROG_GCJ],
Chris@10 871 [LT_LANG(GCJ)],
Chris@10 872 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
Chris@10 873 [LT_LANG(GCJ)],
Chris@10 874 [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
Chris@10 875 [LT_LANG(GCJ)],
Chris@10 876 [m4_ifdef([AC_PROG_GCJ],
Chris@10 877 [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
Chris@10 878 m4_ifdef([A][M_PROG_GCJ],
Chris@10 879 [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
Chris@10 880 m4_ifdef([LT_PROG_GCJ],
Chris@10 881 [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
Chris@10 882
Chris@10 883 AC_PROVIDE_IFELSE([AC_PROG_GO],
Chris@10 884 [LT_LANG(GO)],
Chris@10 885 [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
Chris@10 886
Chris@10 887 AC_PROVIDE_IFELSE([LT_PROG_RC],
Chris@10 888 [LT_LANG(RC)],
Chris@10 889 [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
Chris@10 890 ])# _LT_LANG_DEFAULT_CONFIG
Chris@10 891
Chris@10 892 # Obsolete macros:
Chris@10 893 AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
Chris@10 894 AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
Chris@10 895 AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
Chris@10 896 AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
Chris@10 897 AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
Chris@10 898 dnl aclocal-1.4 backwards compatibility:
Chris@10 899 dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
Chris@10 900 dnl AC_DEFUN([AC_LIBTOOL_F77], [])
Chris@10 901 dnl AC_DEFUN([AC_LIBTOOL_FC], [])
Chris@10 902 dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
Chris@10 903 dnl AC_DEFUN([AC_LIBTOOL_RC], [])
Chris@10 904
Chris@10 905
Chris@10 906 # _LT_TAG_COMPILER
Chris@10 907 # ----------------
Chris@10 908 m4_defun([_LT_TAG_COMPILER],
Chris@10 909 [AC_REQUIRE([AC_PROG_CC])dnl
Chris@10 910
Chris@10 911 _LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
Chris@10 912 _LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
Chris@10 913 _LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
Chris@10 914 _LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
Chris@10 915
Chris@10 916 # If no C compiler was specified, use CC.
Chris@10 917 LTCC=${LTCC-"$CC"}
Chris@10 918
Chris@10 919 # If no C compiler flags were specified, use CFLAGS.
Chris@10 920 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
Chris@10 921
Chris@10 922 # Allow CC to be a program name with arguments.
Chris@10 923 compiler=$CC
Chris@10 924 ])# _LT_TAG_COMPILER
Chris@10 925
Chris@10 926
Chris@10 927 # _LT_COMPILER_BOILERPLATE
Chris@10 928 # ------------------------
Chris@10 929 # Check for compiler boilerplate output or warnings with
Chris@10 930 # the simple compiler test code.
Chris@10 931 m4_defun([_LT_COMPILER_BOILERPLATE],
Chris@10 932 [m4_require([_LT_DECL_SED])dnl
Chris@10 933 ac_outfile=conftest.$ac_objext
Chris@10 934 echo "$lt_simple_compile_test_code" >conftest.$ac_ext
Chris@10 935 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
Chris@10 936 _lt_compiler_boilerplate=`cat conftest.err`
Chris@10 937 $RM conftest*
Chris@10 938 ])# _LT_COMPILER_BOILERPLATE
Chris@10 939
Chris@10 940
Chris@10 941 # _LT_LINKER_BOILERPLATE
Chris@10 942 # ----------------------
Chris@10 943 # Check for linker boilerplate output or warnings with
Chris@10 944 # the simple link test code.
Chris@10 945 m4_defun([_LT_LINKER_BOILERPLATE],
Chris@10 946 [m4_require([_LT_DECL_SED])dnl
Chris@10 947 ac_outfile=conftest.$ac_objext
Chris@10 948 echo "$lt_simple_link_test_code" >conftest.$ac_ext
Chris@10 949 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
Chris@10 950 _lt_linker_boilerplate=`cat conftest.err`
Chris@10 951 $RM -r conftest*
Chris@10 952 ])# _LT_LINKER_BOILERPLATE
Chris@10 953
Chris@10 954 # _LT_REQUIRED_DARWIN_CHECKS
Chris@10 955 # -------------------------
Chris@10 956 m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
Chris@10 957 case $host_os in
Chris@10 958 rhapsody* | darwin*)
Chris@10 959 AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
Chris@10 960 AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
Chris@10 961 AC_CHECK_TOOL([LIPO], [lipo], [:])
Chris@10 962 AC_CHECK_TOOL([OTOOL], [otool], [:])
Chris@10 963 AC_CHECK_TOOL([OTOOL64], [otool64], [:])
Chris@10 964 _LT_DECL([], [DSYMUTIL], [1],
Chris@10 965 [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
Chris@10 966 _LT_DECL([], [NMEDIT], [1],
Chris@10 967 [Tool to change global to local symbols on Mac OS X])
Chris@10 968 _LT_DECL([], [LIPO], [1],
Chris@10 969 [Tool to manipulate fat objects and archives on Mac OS X])
Chris@10 970 _LT_DECL([], [OTOOL], [1],
Chris@10 971 [ldd/readelf like tool for Mach-O binaries on Mac OS X])
Chris@10 972 _LT_DECL([], [OTOOL64], [1],
Chris@10 973 [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
Chris@10 974
Chris@10 975 AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
Chris@10 976 [lt_cv_apple_cc_single_mod=no
Chris@10 977 if test -z "${LT_MULTI_MODULE}"; then
Chris@10 978 # By default we will add the -single_module flag. You can override
Chris@10 979 # by either setting the environment variable LT_MULTI_MODULE
Chris@10 980 # non-empty at configure time, or by adding -multi_module to the
Chris@10 981 # link flags.
Chris@10 982 rm -rf libconftest.dylib*
Chris@10 983 echo "int foo(void){return 1;}" > conftest.c
Chris@10 984 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
Chris@10 985 -dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
Chris@10 986 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
Chris@10 987 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
Chris@10 988 _lt_result=$?
Chris@10 989 # If there is a non-empty error log, and "single_module"
Chris@10 990 # appears in it, assume the flag caused a linker warning
Chris@10 991 if test -s conftest.err && $GREP single_module conftest.err; then
Chris@10 992 cat conftest.err >&AS_MESSAGE_LOG_FD
Chris@10 993 # Otherwise, if the output was created with a 0 exit code from
Chris@10 994 # the compiler, it worked.
Chris@10 995 elif test -f libconftest.dylib && test $_lt_result -eq 0; then
Chris@10 996 lt_cv_apple_cc_single_mod=yes
Chris@10 997 else
Chris@10 998 cat conftest.err >&AS_MESSAGE_LOG_FD
Chris@10 999 fi
Chris@10 1000 rm -rf libconftest.dylib*
Chris@10 1001 rm -f conftest.*
Chris@10 1002 fi])
Chris@10 1003
Chris@10 1004 AC_CACHE_CHECK([for -exported_symbols_list linker flag],
Chris@10 1005 [lt_cv_ld_exported_symbols_list],
Chris@10 1006 [lt_cv_ld_exported_symbols_list=no
Chris@10 1007 save_LDFLAGS=$LDFLAGS
Chris@10 1008 echo "_main" > conftest.sym
Chris@10 1009 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
Chris@10 1010 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
Chris@10 1011 [lt_cv_ld_exported_symbols_list=yes],
Chris@10 1012 [lt_cv_ld_exported_symbols_list=no])
Chris@10 1013 LDFLAGS="$save_LDFLAGS"
Chris@10 1014 ])
Chris@10 1015
Chris@10 1016 AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
Chris@10 1017 [lt_cv_ld_force_load=no
Chris@10 1018 cat > conftest.c << _LT_EOF
Chris@10 1019 int forced_loaded() { return 2;}
Chris@10 1020 _LT_EOF
Chris@10 1021 echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
Chris@10 1022 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
Chris@10 1023 echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
Chris@10 1024 $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
Chris@10 1025 echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
Chris@10 1026 $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
Chris@10 1027 cat > conftest.c << _LT_EOF
Chris@10 1028 int main() { return 0;}
Chris@10 1029 _LT_EOF
Chris@10 1030 echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
Chris@10 1031 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
Chris@10 1032 _lt_result=$?
Chris@10 1033 if test -s conftest.err && $GREP force_load conftest.err; then
Chris@10 1034 cat conftest.err >&AS_MESSAGE_LOG_FD
Chris@10 1035 elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then
Chris@10 1036 lt_cv_ld_force_load=yes
Chris@10 1037 else
Chris@10 1038 cat conftest.err >&AS_MESSAGE_LOG_FD
Chris@10 1039 fi
Chris@10 1040 rm -f conftest.err libconftest.a conftest conftest.c
Chris@10 1041 rm -rf conftest.dSYM
Chris@10 1042 ])
Chris@10 1043 case $host_os in
Chris@10 1044 rhapsody* | darwin1.[[012]])
Chris@10 1045 _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
Chris@10 1046 darwin1.*)
Chris@10 1047 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
Chris@10 1048 darwin*) # darwin 5.x on
Chris@10 1049 # if running on 10.5 or later, the deployment target defaults
Chris@10 1050 # to the OS version, if on x86, and 10.4, the deployment
Chris@10 1051 # target defaults to 10.4. Don't you love it?
Chris@10 1052 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
Chris@10 1053 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
Chris@10 1054 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
Chris@10 1055 10.[[012]]*)
Chris@10 1056 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
Chris@10 1057 10.*)
Chris@10 1058 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
Chris@10 1059 esac
Chris@10 1060 ;;
Chris@10 1061 esac
Chris@10 1062 if test "$lt_cv_apple_cc_single_mod" = "yes"; then
Chris@10 1063 _lt_dar_single_mod='$single_module'
Chris@10 1064 fi
Chris@10 1065 if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
Chris@10 1066 _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
Chris@10 1067 else
Chris@10 1068 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
Chris@10 1069 fi
Chris@10 1070 if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
Chris@10 1071 _lt_dsymutil='~$DSYMUTIL $lib || :'
Chris@10 1072 else
Chris@10 1073 _lt_dsymutil=
Chris@10 1074 fi
Chris@10 1075 ;;
Chris@10 1076 esac
Chris@10 1077 ])
Chris@10 1078
Chris@10 1079
Chris@10 1080 # _LT_DARWIN_LINKER_FEATURES([TAG])
Chris@10 1081 # ---------------------------------
Chris@10 1082 # Checks for linker and compiler features on darwin
Chris@10 1083 m4_defun([_LT_DARWIN_LINKER_FEATURES],
Chris@10 1084 [
Chris@10 1085 m4_require([_LT_REQUIRED_DARWIN_CHECKS])
Chris@10 1086 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
Chris@10 1087 _LT_TAGVAR(hardcode_direct, $1)=no
Chris@10 1088 _LT_TAGVAR(hardcode_automatic, $1)=yes
Chris@10 1089 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
Chris@10 1090 if test "$lt_cv_ld_force_load" = "yes"; then
Chris@10 1091 _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\"`'
Chris@10 1092 m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
Chris@10 1093 [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes])
Chris@10 1094 else
Chris@10 1095 _LT_TAGVAR(whole_archive_flag_spec, $1)=''
Chris@10 1096 fi
Chris@10 1097 _LT_TAGVAR(link_all_deplibs, $1)=yes
Chris@10 1098 _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
Chris@10 1099 case $cc_basename in
Chris@10 1100 ifort*) _lt_dar_can_shared=yes ;;
Chris@10 1101 *) _lt_dar_can_shared=$GCC ;;
Chris@10 1102 esac
Chris@10 1103 if test "$_lt_dar_can_shared" = "yes"; then
Chris@10 1104 output_verbose_link_cmd=func_echo_all
Chris@10 1105 _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}"
Chris@10 1106 _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
Chris@10 1107 _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}"
Chris@10 1108 _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}"
Chris@10 1109 m4_if([$1], [CXX],
Chris@10 1110 [ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
Chris@10 1111 _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}"
Chris@10 1112 _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}"
Chris@10 1113 fi
Chris@10 1114 ],[])
Chris@10 1115 else
Chris@10 1116 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 1117 fi
Chris@10 1118 ])
Chris@10 1119
Chris@10 1120 # _LT_SYS_MODULE_PATH_AIX([TAGNAME])
Chris@10 1121 # ----------------------------------
Chris@10 1122 # Links a minimal program and checks the executable
Chris@10 1123 # for the system default hardcoded library path. In most cases,
Chris@10 1124 # this is /usr/lib:/lib, but when the MPI compilers are used
Chris@10 1125 # the location of the communication and MPI libs are included too.
Chris@10 1126 # If we don't find anything, use the default library path according
Chris@10 1127 # to the aix ld manual.
Chris@10 1128 # Store the results from the different compilers for each TAGNAME.
Chris@10 1129 # Allow to override them for all tags through lt_cv_aix_libpath.
Chris@10 1130 m4_defun([_LT_SYS_MODULE_PATH_AIX],
Chris@10 1131 [m4_require([_LT_DECL_SED])dnl
Chris@10 1132 if test "${lt_cv_aix_libpath+set}" = set; then
Chris@10 1133 aix_libpath=$lt_cv_aix_libpath
Chris@10 1134 else
Chris@10 1135 AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
Chris@10 1136 [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
Chris@10 1137 lt_aix_libpath_sed='[
Chris@10 1138 /Import File Strings/,/^$/ {
Chris@10 1139 /^0/ {
Chris@10 1140 s/^0 *\([^ ]*\) *$/\1/
Chris@10 1141 p
Chris@10 1142 }
Chris@10 1143 }]'
Chris@10 1144 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
Chris@10 1145 # Check for a 64-bit object if we didn't find anything.
Chris@10 1146 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
Chris@10 1147 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
Chris@10 1148 fi],[])
Chris@10 1149 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
Chris@10 1150 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
Chris@10 1151 fi
Chris@10 1152 ])
Chris@10 1153 aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
Chris@10 1154 fi
Chris@10 1155 ])# _LT_SYS_MODULE_PATH_AIX
Chris@10 1156
Chris@10 1157
Chris@10 1158 # _LT_SHELL_INIT(ARG)
Chris@10 1159 # -------------------
Chris@10 1160 m4_define([_LT_SHELL_INIT],
Chris@10 1161 [m4_divert_text([M4SH-INIT], [$1
Chris@10 1162 ])])# _LT_SHELL_INIT
Chris@10 1163
Chris@10 1164
Chris@10 1165
Chris@10 1166 # _LT_PROG_ECHO_BACKSLASH
Chris@10 1167 # -----------------------
Chris@10 1168 # Find how we can fake an echo command that does not interpret backslash.
Chris@10 1169 # In particular, with Autoconf 2.60 or later we add some code to the start
Chris@10 1170 # of the generated configure script which will find a shell with a builtin
Chris@10 1171 # printf (which we can use as an echo command).
Chris@10 1172 m4_defun([_LT_PROG_ECHO_BACKSLASH],
Chris@10 1173 [ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
Chris@10 1174 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
Chris@10 1175 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
Chris@10 1176
Chris@10 1177 AC_MSG_CHECKING([how to print strings])
Chris@10 1178 # Test print first, because it will be a builtin if present.
Chris@10 1179 if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
Chris@10 1180 test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
Chris@10 1181 ECHO='print -r --'
Chris@10 1182 elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
Chris@10 1183 ECHO='printf %s\n'
Chris@10 1184 else
Chris@10 1185 # Use this function as a fallback that always works.
Chris@10 1186 func_fallback_echo ()
Chris@10 1187 {
Chris@10 1188 eval 'cat <<_LTECHO_EOF
Chris@10 1189 $[]1
Chris@10 1190 _LTECHO_EOF'
Chris@10 1191 }
Chris@10 1192 ECHO='func_fallback_echo'
Chris@10 1193 fi
Chris@10 1194
Chris@10 1195 # func_echo_all arg...
Chris@10 1196 # Invoke $ECHO with all args, space-separated.
Chris@10 1197 func_echo_all ()
Chris@10 1198 {
Chris@10 1199 $ECHO "$*"
Chris@10 1200 }
Chris@10 1201
Chris@10 1202 case "$ECHO" in
Chris@10 1203 printf*) AC_MSG_RESULT([printf]) ;;
Chris@10 1204 print*) AC_MSG_RESULT([print -r]) ;;
Chris@10 1205 *) AC_MSG_RESULT([cat]) ;;
Chris@10 1206 esac
Chris@10 1207
Chris@10 1208 m4_ifdef([_AS_DETECT_SUGGESTED],
Chris@10 1209 [_AS_DETECT_SUGGESTED([
Chris@10 1210 test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
Chris@10 1211 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
Chris@10 1212 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
Chris@10 1213 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
Chris@10 1214 PATH=/empty FPATH=/empty; export PATH FPATH
Chris@10 1215 test "X`printf %s $ECHO`" = "X$ECHO" \
Chris@10 1216 || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
Chris@10 1217
Chris@10 1218 _LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
Chris@10 1219 _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
Chris@10 1220 ])# _LT_PROG_ECHO_BACKSLASH
Chris@10 1221
Chris@10 1222
Chris@10 1223 # _LT_WITH_SYSROOT
Chris@10 1224 # ----------------
Chris@10 1225 AC_DEFUN([_LT_WITH_SYSROOT],
Chris@10 1226 [AC_MSG_CHECKING([for sysroot])
Chris@10 1227 AC_ARG_WITH([sysroot],
Chris@10 1228 [ --with-sysroot[=DIR] Search for dependent libraries within DIR
Chris@10 1229 (or the compiler's sysroot if not specified).],
Chris@10 1230 [], [with_sysroot=no])
Chris@10 1231
Chris@10 1232 dnl lt_sysroot will always be passed unquoted. We quote it here
Chris@10 1233 dnl in case the user passed a directory name.
Chris@10 1234 lt_sysroot=
Chris@10 1235 case ${with_sysroot} in #(
Chris@10 1236 yes)
Chris@10 1237 if test "$GCC" = yes; then
Chris@10 1238 lt_sysroot=`$CC --print-sysroot 2>/dev/null`
Chris@10 1239 fi
Chris@10 1240 ;; #(
Chris@10 1241 /*)
Chris@10 1242 lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
Chris@10 1243 ;; #(
Chris@10 1244 no|'')
Chris@10 1245 ;; #(
Chris@10 1246 *)
Chris@10 1247 AC_MSG_RESULT([${with_sysroot}])
Chris@10 1248 AC_MSG_ERROR([The sysroot must be an absolute path.])
Chris@10 1249 ;;
Chris@10 1250 esac
Chris@10 1251
Chris@10 1252 AC_MSG_RESULT([${lt_sysroot:-no}])
Chris@10 1253 _LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
Chris@10 1254 [dependent libraries, and in which our libraries should be installed.])])
Chris@10 1255
Chris@10 1256 # _LT_ENABLE_LOCK
Chris@10 1257 # ---------------
Chris@10 1258 m4_defun([_LT_ENABLE_LOCK],
Chris@10 1259 [AC_ARG_ENABLE([libtool-lock],
Chris@10 1260 [AS_HELP_STRING([--disable-libtool-lock],
Chris@10 1261 [avoid locking (might break parallel builds)])])
Chris@10 1262 test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
Chris@10 1263
Chris@10 1264 # Some flags need to be propagated to the compiler or linker for good
Chris@10 1265 # libtool support.
Chris@10 1266 case $host in
Chris@10 1267 ia64-*-hpux*)
Chris@10 1268 # Find out which ABI we are using.
Chris@10 1269 echo 'int i;' > conftest.$ac_ext
Chris@10 1270 if AC_TRY_EVAL(ac_compile); then
Chris@10 1271 case `/usr/bin/file conftest.$ac_objext` in
Chris@10 1272 *ELF-32*)
Chris@10 1273 HPUX_IA64_MODE="32"
Chris@10 1274 ;;
Chris@10 1275 *ELF-64*)
Chris@10 1276 HPUX_IA64_MODE="64"
Chris@10 1277 ;;
Chris@10 1278 esac
Chris@10 1279 fi
Chris@10 1280 rm -rf conftest*
Chris@10 1281 ;;
Chris@10 1282 *-*-irix6*)
Chris@10 1283 # Find out which ABI we are using.
Chris@10 1284 echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
Chris@10 1285 if AC_TRY_EVAL(ac_compile); then
Chris@10 1286 if test "$lt_cv_prog_gnu_ld" = yes; then
Chris@10 1287 case `/usr/bin/file conftest.$ac_objext` in
Chris@10 1288 *32-bit*)
Chris@10 1289 LD="${LD-ld} -melf32bsmip"
Chris@10 1290 ;;
Chris@10 1291 *N32*)
Chris@10 1292 LD="${LD-ld} -melf32bmipn32"
Chris@10 1293 ;;
Chris@10 1294 *64-bit*)
Chris@10 1295 LD="${LD-ld} -melf64bmip"
Chris@10 1296 ;;
Chris@10 1297 esac
Chris@10 1298 else
Chris@10 1299 case `/usr/bin/file conftest.$ac_objext` in
Chris@10 1300 *32-bit*)
Chris@10 1301 LD="${LD-ld} -32"
Chris@10 1302 ;;
Chris@10 1303 *N32*)
Chris@10 1304 LD="${LD-ld} -n32"
Chris@10 1305 ;;
Chris@10 1306 *64-bit*)
Chris@10 1307 LD="${LD-ld} -64"
Chris@10 1308 ;;
Chris@10 1309 esac
Chris@10 1310 fi
Chris@10 1311 fi
Chris@10 1312 rm -rf conftest*
Chris@10 1313 ;;
Chris@10 1314
Chris@10 1315 x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
Chris@10 1316 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
Chris@10 1317 # Find out which ABI we are using.
Chris@10 1318 echo 'int i;' > conftest.$ac_ext
Chris@10 1319 if AC_TRY_EVAL(ac_compile); then
Chris@10 1320 case `/usr/bin/file conftest.o` in
Chris@10 1321 *32-bit*)
Chris@10 1322 case $host in
Chris@10 1323 x86_64-*kfreebsd*-gnu)
Chris@10 1324 LD="${LD-ld} -m elf_i386_fbsd"
Chris@10 1325 ;;
Chris@10 1326 x86_64-*linux*)
Chris@10 1327 LD="${LD-ld} -m elf_i386"
Chris@10 1328 ;;
Chris@10 1329 ppc64-*linux*|powerpc64-*linux*)
Chris@10 1330 LD="${LD-ld} -m elf32ppclinux"
Chris@10 1331 ;;
Chris@10 1332 s390x-*linux*)
Chris@10 1333 LD="${LD-ld} -m elf_s390"
Chris@10 1334 ;;
Chris@10 1335 sparc64-*linux*)
Chris@10 1336 LD="${LD-ld} -m elf32_sparc"
Chris@10 1337 ;;
Chris@10 1338 esac
Chris@10 1339 ;;
Chris@10 1340 *64-bit*)
Chris@10 1341 case $host in
Chris@10 1342 x86_64-*kfreebsd*-gnu)
Chris@10 1343 LD="${LD-ld} -m elf_x86_64_fbsd"
Chris@10 1344 ;;
Chris@10 1345 x86_64-*linux*)
Chris@10 1346 LD="${LD-ld} -m elf_x86_64"
Chris@10 1347 ;;
Chris@10 1348 ppc*-*linux*|powerpc*-*linux*)
Chris@10 1349 LD="${LD-ld} -m elf64ppc"
Chris@10 1350 ;;
Chris@10 1351 s390*-*linux*|s390*-*tpf*)
Chris@10 1352 LD="${LD-ld} -m elf64_s390"
Chris@10 1353 ;;
Chris@10 1354 sparc*-*linux*)
Chris@10 1355 LD="${LD-ld} -m elf64_sparc"
Chris@10 1356 ;;
Chris@10 1357 esac
Chris@10 1358 ;;
Chris@10 1359 esac
Chris@10 1360 fi
Chris@10 1361 rm -rf conftest*
Chris@10 1362 ;;
Chris@10 1363
Chris@10 1364 *-*-sco3.2v5*)
Chris@10 1365 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
Chris@10 1366 SAVE_CFLAGS="$CFLAGS"
Chris@10 1367 CFLAGS="$CFLAGS -belf"
Chris@10 1368 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
Chris@10 1369 [AC_LANG_PUSH(C)
Chris@10 1370 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
Chris@10 1371 AC_LANG_POP])
Chris@10 1372 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
Chris@10 1373 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
Chris@10 1374 CFLAGS="$SAVE_CFLAGS"
Chris@10 1375 fi
Chris@10 1376 ;;
Chris@10 1377 *-*solaris*)
Chris@10 1378 # Find out which ABI we are using.
Chris@10 1379 echo 'int i;' > conftest.$ac_ext
Chris@10 1380 if AC_TRY_EVAL(ac_compile); then
Chris@10 1381 case `/usr/bin/file conftest.o` in
Chris@10 1382 *64-bit*)
Chris@10 1383 case $lt_cv_prog_gnu_ld in
Chris@10 1384 yes*)
Chris@10 1385 case $host in
Chris@10 1386 i?86-*-solaris*)
Chris@10 1387 LD="${LD-ld} -m elf_x86_64"
Chris@10 1388 ;;
Chris@10 1389 sparc*-*-solaris*)
Chris@10 1390 LD="${LD-ld} -m elf64_sparc"
Chris@10 1391 ;;
Chris@10 1392 esac
Chris@10 1393 # GNU ld 2.21 introduced _sol2 emulations. Use them if available.
Chris@10 1394 if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
Chris@10 1395 LD="${LD-ld}_sol2"
Chris@10 1396 fi
Chris@10 1397 ;;
Chris@10 1398 *)
Chris@10 1399 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
Chris@10 1400 LD="${LD-ld} -64"
Chris@10 1401 fi
Chris@10 1402 ;;
Chris@10 1403 esac
Chris@10 1404 ;;
Chris@10 1405 esac
Chris@10 1406 fi
Chris@10 1407 rm -rf conftest*
Chris@10 1408 ;;
Chris@10 1409 esac
Chris@10 1410
Chris@10 1411 need_locks="$enable_libtool_lock"
Chris@10 1412 ])# _LT_ENABLE_LOCK
Chris@10 1413
Chris@10 1414
Chris@10 1415 # _LT_PROG_AR
Chris@10 1416 # -----------
Chris@10 1417 m4_defun([_LT_PROG_AR],
Chris@10 1418 [AC_CHECK_TOOLS(AR, [ar], false)
Chris@10 1419 : ${AR=ar}
Chris@10 1420 : ${AR_FLAGS=cru}
Chris@10 1421 _LT_DECL([], [AR], [1], [The archiver])
Chris@10 1422 _LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
Chris@10 1423
Chris@10 1424 AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
Chris@10 1425 [lt_cv_ar_at_file=no
Chris@10 1426 AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
Chris@10 1427 [echo conftest.$ac_objext > conftest.lst
Chris@10 1428 lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
Chris@10 1429 AC_TRY_EVAL([lt_ar_try])
Chris@10 1430 if test "$ac_status" -eq 0; then
Chris@10 1431 # Ensure the archiver fails upon bogus file names.
Chris@10 1432 rm -f conftest.$ac_objext libconftest.a
Chris@10 1433 AC_TRY_EVAL([lt_ar_try])
Chris@10 1434 if test "$ac_status" -ne 0; then
Chris@10 1435 lt_cv_ar_at_file=@
Chris@10 1436 fi
Chris@10 1437 fi
Chris@10 1438 rm -f conftest.* libconftest.a
Chris@10 1439 ])
Chris@10 1440 ])
Chris@10 1441
Chris@10 1442 if test "x$lt_cv_ar_at_file" = xno; then
Chris@10 1443 archiver_list_spec=
Chris@10 1444 else
Chris@10 1445 archiver_list_spec=$lt_cv_ar_at_file
Chris@10 1446 fi
Chris@10 1447 _LT_DECL([], [archiver_list_spec], [1],
Chris@10 1448 [How to feed a file listing to the archiver])
Chris@10 1449 ])# _LT_PROG_AR
Chris@10 1450
Chris@10 1451
Chris@10 1452 # _LT_CMD_OLD_ARCHIVE
Chris@10 1453 # -------------------
Chris@10 1454 m4_defun([_LT_CMD_OLD_ARCHIVE],
Chris@10 1455 [_LT_PROG_AR
Chris@10 1456
Chris@10 1457 AC_CHECK_TOOL(STRIP, strip, :)
Chris@10 1458 test -z "$STRIP" && STRIP=:
Chris@10 1459 _LT_DECL([], [STRIP], [1], [A symbol stripping program])
Chris@10 1460
Chris@10 1461 AC_CHECK_TOOL(RANLIB, ranlib, :)
Chris@10 1462 test -z "$RANLIB" && RANLIB=:
Chris@10 1463 _LT_DECL([], [RANLIB], [1],
Chris@10 1464 [Commands used to install an old-style archive])
Chris@10 1465
Chris@10 1466 # Determine commands to create old-style static archives.
Chris@10 1467 old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
Chris@10 1468 old_postinstall_cmds='chmod 644 $oldlib'
Chris@10 1469 old_postuninstall_cmds=
Chris@10 1470
Chris@10 1471 if test -n "$RANLIB"; then
Chris@10 1472 case $host_os in
Chris@10 1473 openbsd*)
Chris@10 1474 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
Chris@10 1475 ;;
Chris@10 1476 *)
Chris@10 1477 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
Chris@10 1478 ;;
Chris@10 1479 esac
Chris@10 1480 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
Chris@10 1481 fi
Chris@10 1482
Chris@10 1483 case $host_os in
Chris@10 1484 darwin*)
Chris@10 1485 lock_old_archive_extraction=yes ;;
Chris@10 1486 *)
Chris@10 1487 lock_old_archive_extraction=no ;;
Chris@10 1488 esac
Chris@10 1489 _LT_DECL([], [old_postinstall_cmds], [2])
Chris@10 1490 _LT_DECL([], [old_postuninstall_cmds], [2])
Chris@10 1491 _LT_TAGDECL([], [old_archive_cmds], [2],
Chris@10 1492 [Commands used to build an old-style archive])
Chris@10 1493 _LT_DECL([], [lock_old_archive_extraction], [0],
Chris@10 1494 [Whether to use a lock for old archive extraction])
Chris@10 1495 ])# _LT_CMD_OLD_ARCHIVE
Chris@10 1496
Chris@10 1497
Chris@10 1498 # _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
Chris@10 1499 # [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
Chris@10 1500 # ----------------------------------------------------------------
Chris@10 1501 # Check whether the given compiler option works
Chris@10 1502 AC_DEFUN([_LT_COMPILER_OPTION],
Chris@10 1503 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
Chris@10 1504 m4_require([_LT_DECL_SED])dnl
Chris@10 1505 AC_CACHE_CHECK([$1], [$2],
Chris@10 1506 [$2=no
Chris@10 1507 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
Chris@10 1508 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
Chris@10 1509 lt_compiler_flag="$3"
Chris@10 1510 # Insert the option either (1) after the last *FLAGS variable, or
Chris@10 1511 # (2) before a word containing "conftest.", or (3) at the end.
Chris@10 1512 # Note that $ac_compile itself does not contain backslashes and begins
Chris@10 1513 # with a dollar sign (not a hyphen), so the echo should work correctly.
Chris@10 1514 # The option is referenced via a variable to avoid confusing sed.
Chris@10 1515 lt_compile=`echo "$ac_compile" | $SED \
Chris@10 1516 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
Chris@10 1517 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
Chris@10 1518 -e 's:$: $lt_compiler_flag:'`
Chris@10 1519 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
Chris@10 1520 (eval "$lt_compile" 2>conftest.err)
Chris@10 1521 ac_status=$?
Chris@10 1522 cat conftest.err >&AS_MESSAGE_LOG_FD
Chris@10 1523 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
Chris@10 1524 if (exit $ac_status) && test -s "$ac_outfile"; then
Chris@10 1525 # The compiler can only warn and ignore the option if not recognized
Chris@10 1526 # So say no if there are warnings other than the usual output.
Chris@10 1527 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
Chris@10 1528 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
Chris@10 1529 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
Chris@10 1530 $2=yes
Chris@10 1531 fi
Chris@10 1532 fi
Chris@10 1533 $RM conftest*
Chris@10 1534 ])
Chris@10 1535
Chris@10 1536 if test x"[$]$2" = xyes; then
Chris@10 1537 m4_if([$5], , :, [$5])
Chris@10 1538 else
Chris@10 1539 m4_if([$6], , :, [$6])
Chris@10 1540 fi
Chris@10 1541 ])# _LT_COMPILER_OPTION
Chris@10 1542
Chris@10 1543 # Old name:
Chris@10 1544 AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
Chris@10 1545 dnl aclocal-1.4 backwards compatibility:
Chris@10 1546 dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
Chris@10 1547
Chris@10 1548
Chris@10 1549 # _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
Chris@10 1550 # [ACTION-SUCCESS], [ACTION-FAILURE])
Chris@10 1551 # ----------------------------------------------------
Chris@10 1552 # Check whether the given linker option works
Chris@10 1553 AC_DEFUN([_LT_LINKER_OPTION],
Chris@10 1554 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
Chris@10 1555 m4_require([_LT_DECL_SED])dnl
Chris@10 1556 AC_CACHE_CHECK([$1], [$2],
Chris@10 1557 [$2=no
Chris@10 1558 save_LDFLAGS="$LDFLAGS"
Chris@10 1559 LDFLAGS="$LDFLAGS $3"
Chris@10 1560 echo "$lt_simple_link_test_code" > conftest.$ac_ext
Chris@10 1561 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
Chris@10 1562 # The linker can only warn and ignore the option if not recognized
Chris@10 1563 # So say no if there are warnings
Chris@10 1564 if test -s conftest.err; then
Chris@10 1565 # Append any errors to the config.log.
Chris@10 1566 cat conftest.err 1>&AS_MESSAGE_LOG_FD
Chris@10 1567 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
Chris@10 1568 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
Chris@10 1569 if diff conftest.exp conftest.er2 >/dev/null; then
Chris@10 1570 $2=yes
Chris@10 1571 fi
Chris@10 1572 else
Chris@10 1573 $2=yes
Chris@10 1574 fi
Chris@10 1575 fi
Chris@10 1576 $RM -r conftest*
Chris@10 1577 LDFLAGS="$save_LDFLAGS"
Chris@10 1578 ])
Chris@10 1579
Chris@10 1580 if test x"[$]$2" = xyes; then
Chris@10 1581 m4_if([$4], , :, [$4])
Chris@10 1582 else
Chris@10 1583 m4_if([$5], , :, [$5])
Chris@10 1584 fi
Chris@10 1585 ])# _LT_LINKER_OPTION
Chris@10 1586
Chris@10 1587 # Old name:
Chris@10 1588 AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
Chris@10 1589 dnl aclocal-1.4 backwards compatibility:
Chris@10 1590 dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
Chris@10 1591
Chris@10 1592
Chris@10 1593 # LT_CMD_MAX_LEN
Chris@10 1594 #---------------
Chris@10 1595 AC_DEFUN([LT_CMD_MAX_LEN],
Chris@10 1596 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
Chris@10 1597 # find the maximum length of command line arguments
Chris@10 1598 AC_MSG_CHECKING([the maximum length of command line arguments])
Chris@10 1599 AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
Chris@10 1600 i=0
Chris@10 1601 teststring="ABCD"
Chris@10 1602
Chris@10 1603 case $build_os in
Chris@10 1604 msdosdjgpp*)
Chris@10 1605 # On DJGPP, this test can blow up pretty badly due to problems in libc
Chris@10 1606 # (any single argument exceeding 2000 bytes causes a buffer overrun
Chris@10 1607 # during glob expansion). Even if it were fixed, the result of this
Chris@10 1608 # check would be larger than it should be.
Chris@10 1609 lt_cv_sys_max_cmd_len=12288; # 12K is about right
Chris@10 1610 ;;
Chris@10 1611
Chris@10 1612 gnu*)
Chris@10 1613 # Under GNU Hurd, this test is not required because there is
Chris@10 1614 # no limit to the length of command line arguments.
Chris@10 1615 # Libtool will interpret -1 as no limit whatsoever
Chris@10 1616 lt_cv_sys_max_cmd_len=-1;
Chris@10 1617 ;;
Chris@10 1618
Chris@10 1619 cygwin* | mingw* | cegcc*)
Chris@10 1620 # On Win9x/ME, this test blows up -- it succeeds, but takes
Chris@10 1621 # about 5 minutes as the teststring grows exponentially.
Chris@10 1622 # Worse, since 9x/ME are not pre-emptively multitasking,
Chris@10 1623 # you end up with a "frozen" computer, even though with patience
Chris@10 1624 # the test eventually succeeds (with a max line length of 256k).
Chris@10 1625 # Instead, let's just punt: use the minimum linelength reported by
Chris@10 1626 # all of the supported platforms: 8192 (on NT/2K/XP).
Chris@10 1627 lt_cv_sys_max_cmd_len=8192;
Chris@10 1628 ;;
Chris@10 1629
Chris@10 1630 mint*)
Chris@10 1631 # On MiNT this can take a long time and run out of memory.
Chris@10 1632 lt_cv_sys_max_cmd_len=8192;
Chris@10 1633 ;;
Chris@10 1634
Chris@10 1635 amigaos*)
Chris@10 1636 # On AmigaOS with pdksh, this test takes hours, literally.
Chris@10 1637 # So we just punt and use a minimum line length of 8192.
Chris@10 1638 lt_cv_sys_max_cmd_len=8192;
Chris@10 1639 ;;
Chris@10 1640
Chris@10 1641 netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
Chris@10 1642 # This has been around since 386BSD, at least. Likely further.
Chris@10 1643 if test -x /sbin/sysctl; then
Chris@10 1644 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
Chris@10 1645 elif test -x /usr/sbin/sysctl; then
Chris@10 1646 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
Chris@10 1647 else
Chris@10 1648 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
Chris@10 1649 fi
Chris@10 1650 # And add a safety zone
Chris@10 1651 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
Chris@10 1652 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
Chris@10 1653 ;;
Chris@10 1654
Chris@10 1655 interix*)
Chris@10 1656 # We know the value 262144 and hardcode it with a safety zone (like BSD)
Chris@10 1657 lt_cv_sys_max_cmd_len=196608
Chris@10 1658 ;;
Chris@10 1659
Chris@10 1660 os2*)
Chris@10 1661 # The test takes a long time on OS/2.
Chris@10 1662 lt_cv_sys_max_cmd_len=8192
Chris@10 1663 ;;
Chris@10 1664
Chris@10 1665 osf*)
Chris@10 1666 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
Chris@10 1667 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
Chris@10 1668 # nice to cause kernel panics so lets avoid the loop below.
Chris@10 1669 # First set a reasonable default.
Chris@10 1670 lt_cv_sys_max_cmd_len=16384
Chris@10 1671 #
Chris@10 1672 if test -x /sbin/sysconfig; then
Chris@10 1673 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
Chris@10 1674 *1*) lt_cv_sys_max_cmd_len=-1 ;;
Chris@10 1675 esac
Chris@10 1676 fi
Chris@10 1677 ;;
Chris@10 1678 sco3.2v5*)
Chris@10 1679 lt_cv_sys_max_cmd_len=102400
Chris@10 1680 ;;
Chris@10 1681 sysv5* | sco5v6* | sysv4.2uw2*)
Chris@10 1682 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
Chris@10 1683 if test -n "$kargmax"; then
Chris@10 1684 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
Chris@10 1685 else
Chris@10 1686 lt_cv_sys_max_cmd_len=32768
Chris@10 1687 fi
Chris@10 1688 ;;
Chris@10 1689 *)
Chris@10 1690 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
Chris@10 1691 if test -n "$lt_cv_sys_max_cmd_len"; then
Chris@10 1692 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
Chris@10 1693 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
Chris@10 1694 else
Chris@10 1695 # Make teststring a little bigger before we do anything with it.
Chris@10 1696 # a 1K string should be a reasonable start.
Chris@10 1697 for i in 1 2 3 4 5 6 7 8 ; do
Chris@10 1698 teststring=$teststring$teststring
Chris@10 1699 done
Chris@10 1700 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
Chris@10 1701 # If test is not a shell built-in, we'll probably end up computing a
Chris@10 1702 # maximum length that is only half of the actual maximum length, but
Chris@10 1703 # we can't tell.
Chris@10 1704 while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \
Chris@10 1705 = "X$teststring$teststring"; } >/dev/null 2>&1 &&
Chris@10 1706 test $i != 17 # 1/2 MB should be enough
Chris@10 1707 do
Chris@10 1708 i=`expr $i + 1`
Chris@10 1709 teststring=$teststring$teststring
Chris@10 1710 done
Chris@10 1711 # Only check the string length outside the loop.
Chris@10 1712 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
Chris@10 1713 teststring=
Chris@10 1714 # Add a significant safety factor because C++ compilers can tack on
Chris@10 1715 # massive amounts of additional arguments before passing them to the
Chris@10 1716 # linker. It appears as though 1/2 is a usable value.
Chris@10 1717 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
Chris@10 1718 fi
Chris@10 1719 ;;
Chris@10 1720 esac
Chris@10 1721 ])
Chris@10 1722 if test -n $lt_cv_sys_max_cmd_len ; then
Chris@10 1723 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
Chris@10 1724 else
Chris@10 1725 AC_MSG_RESULT(none)
Chris@10 1726 fi
Chris@10 1727 max_cmd_len=$lt_cv_sys_max_cmd_len
Chris@10 1728 _LT_DECL([], [max_cmd_len], [0],
Chris@10 1729 [What is the maximum length of a command?])
Chris@10 1730 ])# LT_CMD_MAX_LEN
Chris@10 1731
Chris@10 1732 # Old name:
Chris@10 1733 AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
Chris@10 1734 dnl aclocal-1.4 backwards compatibility:
Chris@10 1735 dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
Chris@10 1736
Chris@10 1737
Chris@10 1738 # _LT_HEADER_DLFCN
Chris@10 1739 # ----------------
Chris@10 1740 m4_defun([_LT_HEADER_DLFCN],
Chris@10 1741 [AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
Chris@10 1742 ])# _LT_HEADER_DLFCN
Chris@10 1743
Chris@10 1744
Chris@10 1745 # _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
Chris@10 1746 # ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
Chris@10 1747 # ----------------------------------------------------------------
Chris@10 1748 m4_defun([_LT_TRY_DLOPEN_SELF],
Chris@10 1749 [m4_require([_LT_HEADER_DLFCN])dnl
Chris@10 1750 if test "$cross_compiling" = yes; then :
Chris@10 1751 [$4]
Chris@10 1752 else
Chris@10 1753 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
Chris@10 1754 lt_status=$lt_dlunknown
Chris@10 1755 cat > conftest.$ac_ext <<_LT_EOF
Chris@10 1756 [#line $LINENO "configure"
Chris@10 1757 #include "confdefs.h"
Chris@10 1758
Chris@10 1759 #if HAVE_DLFCN_H
Chris@10 1760 #include <dlfcn.h>
Chris@10 1761 #endif
Chris@10 1762
Chris@10 1763 #include <stdio.h>
Chris@10 1764
Chris@10 1765 #ifdef RTLD_GLOBAL
Chris@10 1766 # define LT_DLGLOBAL RTLD_GLOBAL
Chris@10 1767 #else
Chris@10 1768 # ifdef DL_GLOBAL
Chris@10 1769 # define LT_DLGLOBAL DL_GLOBAL
Chris@10 1770 # else
Chris@10 1771 # define LT_DLGLOBAL 0
Chris@10 1772 # endif
Chris@10 1773 #endif
Chris@10 1774
Chris@10 1775 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we
Chris@10 1776 find out it does not work in some platform. */
Chris@10 1777 #ifndef LT_DLLAZY_OR_NOW
Chris@10 1778 # ifdef RTLD_LAZY
Chris@10 1779 # define LT_DLLAZY_OR_NOW RTLD_LAZY
Chris@10 1780 # else
Chris@10 1781 # ifdef DL_LAZY
Chris@10 1782 # define LT_DLLAZY_OR_NOW DL_LAZY
Chris@10 1783 # else
Chris@10 1784 # ifdef RTLD_NOW
Chris@10 1785 # define LT_DLLAZY_OR_NOW RTLD_NOW
Chris@10 1786 # else
Chris@10 1787 # ifdef DL_NOW
Chris@10 1788 # define LT_DLLAZY_OR_NOW DL_NOW
Chris@10 1789 # else
Chris@10 1790 # define LT_DLLAZY_OR_NOW 0
Chris@10 1791 # endif
Chris@10 1792 # endif
Chris@10 1793 # endif
Chris@10 1794 # endif
Chris@10 1795 #endif
Chris@10 1796
Chris@10 1797 /* When -fvisbility=hidden is used, assume the code has been annotated
Chris@10 1798 correspondingly for the symbols needed. */
Chris@10 1799 #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
Chris@10 1800 int fnord () __attribute__((visibility("default")));
Chris@10 1801 #endif
Chris@10 1802
Chris@10 1803 int fnord () { return 42; }
Chris@10 1804 int main ()
Chris@10 1805 {
Chris@10 1806 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
Chris@10 1807 int status = $lt_dlunknown;
Chris@10 1808
Chris@10 1809 if (self)
Chris@10 1810 {
Chris@10 1811 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
Chris@10 1812 else
Chris@10 1813 {
Chris@10 1814 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
Chris@10 1815 else puts (dlerror ());
Chris@10 1816 }
Chris@10 1817 /* dlclose (self); */
Chris@10 1818 }
Chris@10 1819 else
Chris@10 1820 puts (dlerror ());
Chris@10 1821
Chris@10 1822 return status;
Chris@10 1823 }]
Chris@10 1824 _LT_EOF
Chris@10 1825 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
Chris@10 1826 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
Chris@10 1827 lt_status=$?
Chris@10 1828 case x$lt_status in
Chris@10 1829 x$lt_dlno_uscore) $1 ;;
Chris@10 1830 x$lt_dlneed_uscore) $2 ;;
Chris@10 1831 x$lt_dlunknown|x*) $3 ;;
Chris@10 1832 esac
Chris@10 1833 else :
Chris@10 1834 # compilation failed
Chris@10 1835 $3
Chris@10 1836 fi
Chris@10 1837 fi
Chris@10 1838 rm -fr conftest*
Chris@10 1839 ])# _LT_TRY_DLOPEN_SELF
Chris@10 1840
Chris@10 1841
Chris@10 1842 # LT_SYS_DLOPEN_SELF
Chris@10 1843 # ------------------
Chris@10 1844 AC_DEFUN([LT_SYS_DLOPEN_SELF],
Chris@10 1845 [m4_require([_LT_HEADER_DLFCN])dnl
Chris@10 1846 if test "x$enable_dlopen" != xyes; then
Chris@10 1847 enable_dlopen=unknown
Chris@10 1848 enable_dlopen_self=unknown
Chris@10 1849 enable_dlopen_self_static=unknown
Chris@10 1850 else
Chris@10 1851 lt_cv_dlopen=no
Chris@10 1852 lt_cv_dlopen_libs=
Chris@10 1853
Chris@10 1854 case $host_os in
Chris@10 1855 beos*)
Chris@10 1856 lt_cv_dlopen="load_add_on"
Chris@10 1857 lt_cv_dlopen_libs=
Chris@10 1858 lt_cv_dlopen_self=yes
Chris@10 1859 ;;
Chris@10 1860
Chris@10 1861 mingw* | pw32* | cegcc*)
Chris@10 1862 lt_cv_dlopen="LoadLibrary"
Chris@10 1863 lt_cv_dlopen_libs=
Chris@10 1864 ;;
Chris@10 1865
Chris@10 1866 cygwin*)
Chris@10 1867 lt_cv_dlopen="dlopen"
Chris@10 1868 lt_cv_dlopen_libs=
Chris@10 1869 ;;
Chris@10 1870
Chris@10 1871 darwin*)
Chris@10 1872 # if libdl is installed we need to link against it
Chris@10 1873 AC_CHECK_LIB([dl], [dlopen],
Chris@10 1874 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
Chris@10 1875 lt_cv_dlopen="dyld"
Chris@10 1876 lt_cv_dlopen_libs=
Chris@10 1877 lt_cv_dlopen_self=yes
Chris@10 1878 ])
Chris@10 1879 ;;
Chris@10 1880
Chris@10 1881 *)
Chris@10 1882 AC_CHECK_FUNC([shl_load],
Chris@10 1883 [lt_cv_dlopen="shl_load"],
Chris@10 1884 [AC_CHECK_LIB([dld], [shl_load],
Chris@10 1885 [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
Chris@10 1886 [AC_CHECK_FUNC([dlopen],
Chris@10 1887 [lt_cv_dlopen="dlopen"],
Chris@10 1888 [AC_CHECK_LIB([dl], [dlopen],
Chris@10 1889 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
Chris@10 1890 [AC_CHECK_LIB([svld], [dlopen],
Chris@10 1891 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
Chris@10 1892 [AC_CHECK_LIB([dld], [dld_link],
Chris@10 1893 [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
Chris@10 1894 ])
Chris@10 1895 ])
Chris@10 1896 ])
Chris@10 1897 ])
Chris@10 1898 ])
Chris@10 1899 ;;
Chris@10 1900 esac
Chris@10 1901
Chris@10 1902 if test "x$lt_cv_dlopen" != xno; then
Chris@10 1903 enable_dlopen=yes
Chris@10 1904 else
Chris@10 1905 enable_dlopen=no
Chris@10 1906 fi
Chris@10 1907
Chris@10 1908 case $lt_cv_dlopen in
Chris@10 1909 dlopen)
Chris@10 1910 save_CPPFLAGS="$CPPFLAGS"
Chris@10 1911 test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
Chris@10 1912
Chris@10 1913 save_LDFLAGS="$LDFLAGS"
Chris@10 1914 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
Chris@10 1915
Chris@10 1916 save_LIBS="$LIBS"
Chris@10 1917 LIBS="$lt_cv_dlopen_libs $LIBS"
Chris@10 1918
Chris@10 1919 AC_CACHE_CHECK([whether a program can dlopen itself],
Chris@10 1920 lt_cv_dlopen_self, [dnl
Chris@10 1921 _LT_TRY_DLOPEN_SELF(
Chris@10 1922 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
Chris@10 1923 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
Chris@10 1924 ])
Chris@10 1925
Chris@10 1926 if test "x$lt_cv_dlopen_self" = xyes; then
Chris@10 1927 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
Chris@10 1928 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
Chris@10 1929 lt_cv_dlopen_self_static, [dnl
Chris@10 1930 _LT_TRY_DLOPEN_SELF(
Chris@10 1931 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
Chris@10 1932 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
Chris@10 1933 ])
Chris@10 1934 fi
Chris@10 1935
Chris@10 1936 CPPFLAGS="$save_CPPFLAGS"
Chris@10 1937 LDFLAGS="$save_LDFLAGS"
Chris@10 1938 LIBS="$save_LIBS"
Chris@10 1939 ;;
Chris@10 1940 esac
Chris@10 1941
Chris@10 1942 case $lt_cv_dlopen_self in
Chris@10 1943 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
Chris@10 1944 *) enable_dlopen_self=unknown ;;
Chris@10 1945 esac
Chris@10 1946
Chris@10 1947 case $lt_cv_dlopen_self_static in
Chris@10 1948 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
Chris@10 1949 *) enable_dlopen_self_static=unknown ;;
Chris@10 1950 esac
Chris@10 1951 fi
Chris@10 1952 _LT_DECL([dlopen_support], [enable_dlopen], [0],
Chris@10 1953 [Whether dlopen is supported])
Chris@10 1954 _LT_DECL([dlopen_self], [enable_dlopen_self], [0],
Chris@10 1955 [Whether dlopen of programs is supported])
Chris@10 1956 _LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
Chris@10 1957 [Whether dlopen of statically linked programs is supported])
Chris@10 1958 ])# LT_SYS_DLOPEN_SELF
Chris@10 1959
Chris@10 1960 # Old name:
Chris@10 1961 AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
Chris@10 1962 dnl aclocal-1.4 backwards compatibility:
Chris@10 1963 dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
Chris@10 1964
Chris@10 1965
Chris@10 1966 # _LT_COMPILER_C_O([TAGNAME])
Chris@10 1967 # ---------------------------
Chris@10 1968 # Check to see if options -c and -o are simultaneously supported by compiler.
Chris@10 1969 # This macro does not hard code the compiler like AC_PROG_CC_C_O.
Chris@10 1970 m4_defun([_LT_COMPILER_C_O],
Chris@10 1971 [m4_require([_LT_DECL_SED])dnl
Chris@10 1972 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
Chris@10 1973 m4_require([_LT_TAG_COMPILER])dnl
Chris@10 1974 AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
Chris@10 1975 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
Chris@10 1976 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
Chris@10 1977 $RM -r conftest 2>/dev/null
Chris@10 1978 mkdir conftest
Chris@10 1979 cd conftest
Chris@10 1980 mkdir out
Chris@10 1981 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
Chris@10 1982
Chris@10 1983 lt_compiler_flag="-o out/conftest2.$ac_objext"
Chris@10 1984 # Insert the option either (1) after the last *FLAGS variable, or
Chris@10 1985 # (2) before a word containing "conftest.", or (3) at the end.
Chris@10 1986 # Note that $ac_compile itself does not contain backslashes and begins
Chris@10 1987 # with a dollar sign (not a hyphen), so the echo should work correctly.
Chris@10 1988 lt_compile=`echo "$ac_compile" | $SED \
Chris@10 1989 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
Chris@10 1990 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
Chris@10 1991 -e 's:$: $lt_compiler_flag:'`
Chris@10 1992 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
Chris@10 1993 (eval "$lt_compile" 2>out/conftest.err)
Chris@10 1994 ac_status=$?
Chris@10 1995 cat out/conftest.err >&AS_MESSAGE_LOG_FD
Chris@10 1996 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
Chris@10 1997 if (exit $ac_status) && test -s out/conftest2.$ac_objext
Chris@10 1998 then
Chris@10 1999 # The compiler can only warn and ignore the option if not recognized
Chris@10 2000 # So say no if there are warnings
Chris@10 2001 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
Chris@10 2002 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
Chris@10 2003 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
Chris@10 2004 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
Chris@10 2005 fi
Chris@10 2006 fi
Chris@10 2007 chmod u+w . 2>&AS_MESSAGE_LOG_FD
Chris@10 2008 $RM conftest*
Chris@10 2009 # SGI C++ compiler will create directory out/ii_files/ for
Chris@10 2010 # template instantiation
Chris@10 2011 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
Chris@10 2012 $RM out/* && rmdir out
Chris@10 2013 cd ..
Chris@10 2014 $RM -r conftest
Chris@10 2015 $RM conftest*
Chris@10 2016 ])
Chris@10 2017 _LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
Chris@10 2018 [Does compiler simultaneously support -c and -o options?])
Chris@10 2019 ])# _LT_COMPILER_C_O
Chris@10 2020
Chris@10 2021
Chris@10 2022 # _LT_COMPILER_FILE_LOCKS([TAGNAME])
Chris@10 2023 # ----------------------------------
Chris@10 2024 # Check to see if we can do hard links to lock some files if needed
Chris@10 2025 m4_defun([_LT_COMPILER_FILE_LOCKS],
Chris@10 2026 [m4_require([_LT_ENABLE_LOCK])dnl
Chris@10 2027 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
Chris@10 2028 _LT_COMPILER_C_O([$1])
Chris@10 2029
Chris@10 2030 hard_links="nottested"
Chris@10 2031 if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
Chris@10 2032 # do not overwrite the value of need_locks provided by the user
Chris@10 2033 AC_MSG_CHECKING([if we can lock with hard links])
Chris@10 2034 hard_links=yes
Chris@10 2035 $RM conftest*
Chris@10 2036 ln conftest.a conftest.b 2>/dev/null && hard_links=no
Chris@10 2037 touch conftest.a
Chris@10 2038 ln conftest.a conftest.b 2>&5 || hard_links=no
Chris@10 2039 ln conftest.a conftest.b 2>/dev/null && hard_links=no
Chris@10 2040 AC_MSG_RESULT([$hard_links])
Chris@10 2041 if test "$hard_links" = no; then
Chris@10 2042 AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
Chris@10 2043 need_locks=warn
Chris@10 2044 fi
Chris@10 2045 else
Chris@10 2046 need_locks=no
Chris@10 2047 fi
Chris@10 2048 _LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
Chris@10 2049 ])# _LT_COMPILER_FILE_LOCKS
Chris@10 2050
Chris@10 2051
Chris@10 2052 # _LT_CHECK_OBJDIR
Chris@10 2053 # ----------------
Chris@10 2054 m4_defun([_LT_CHECK_OBJDIR],
Chris@10 2055 [AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
Chris@10 2056 [rm -f .libs 2>/dev/null
Chris@10 2057 mkdir .libs 2>/dev/null
Chris@10 2058 if test -d .libs; then
Chris@10 2059 lt_cv_objdir=.libs
Chris@10 2060 else
Chris@10 2061 # MS-DOS does not allow filenames that begin with a dot.
Chris@10 2062 lt_cv_objdir=_libs
Chris@10 2063 fi
Chris@10 2064 rmdir .libs 2>/dev/null])
Chris@10 2065 objdir=$lt_cv_objdir
Chris@10 2066 _LT_DECL([], [objdir], [0],
Chris@10 2067 [The name of the directory that contains temporary libtool files])dnl
Chris@10 2068 m4_pattern_allow([LT_OBJDIR])dnl
Chris@10 2069 AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
Chris@10 2070 [Define to the sub-directory in which libtool stores uninstalled libraries.])
Chris@10 2071 ])# _LT_CHECK_OBJDIR
Chris@10 2072
Chris@10 2073
Chris@10 2074 # _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
Chris@10 2075 # --------------------------------------
Chris@10 2076 # Check hardcoding attributes.
Chris@10 2077 m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
Chris@10 2078 [AC_MSG_CHECKING([how to hardcode library paths into programs])
Chris@10 2079 _LT_TAGVAR(hardcode_action, $1)=
Chris@10 2080 if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
Chris@10 2081 test -n "$_LT_TAGVAR(runpath_var, $1)" ||
Chris@10 2082 test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
Chris@10 2083
Chris@10 2084 # We can hardcode non-existent directories.
Chris@10 2085 if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
Chris@10 2086 # If the only mechanism to avoid hardcoding is shlibpath_var, we
Chris@10 2087 # have to relink, otherwise we might link with an installed library
Chris@10 2088 # when we should be linking with a yet-to-be-installed one
Chris@10 2089 ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
Chris@10 2090 test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
Chris@10 2091 # Linking always hardcodes the temporary library directory.
Chris@10 2092 _LT_TAGVAR(hardcode_action, $1)=relink
Chris@10 2093 else
Chris@10 2094 # We can link without hardcoding, and we can hardcode nonexisting dirs.
Chris@10 2095 _LT_TAGVAR(hardcode_action, $1)=immediate
Chris@10 2096 fi
Chris@10 2097 else
Chris@10 2098 # We cannot hardcode anything, or else we can only hardcode existing
Chris@10 2099 # directories.
Chris@10 2100 _LT_TAGVAR(hardcode_action, $1)=unsupported
Chris@10 2101 fi
Chris@10 2102 AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
Chris@10 2103
Chris@10 2104 if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
Chris@10 2105 test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
Chris@10 2106 # Fast installation is not supported
Chris@10 2107 enable_fast_install=no
Chris@10 2108 elif test "$shlibpath_overrides_runpath" = yes ||
Chris@10 2109 test "$enable_shared" = no; then
Chris@10 2110 # Fast installation is not necessary
Chris@10 2111 enable_fast_install=needless
Chris@10 2112 fi
Chris@10 2113 _LT_TAGDECL([], [hardcode_action], [0],
Chris@10 2114 [How to hardcode a shared library path into an executable])
Chris@10 2115 ])# _LT_LINKER_HARDCODE_LIBPATH
Chris@10 2116
Chris@10 2117
Chris@10 2118 # _LT_CMD_STRIPLIB
Chris@10 2119 # ----------------
Chris@10 2120 m4_defun([_LT_CMD_STRIPLIB],
Chris@10 2121 [m4_require([_LT_DECL_EGREP])
Chris@10 2122 striplib=
Chris@10 2123 old_striplib=
Chris@10 2124 AC_MSG_CHECKING([whether stripping libraries is possible])
Chris@10 2125 if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
Chris@10 2126 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
Chris@10 2127 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
Chris@10 2128 AC_MSG_RESULT([yes])
Chris@10 2129 else
Chris@10 2130 # FIXME - insert some real tests, host_os isn't really good enough
Chris@10 2131 case $host_os in
Chris@10 2132 darwin*)
Chris@10 2133 if test -n "$STRIP" ; then
Chris@10 2134 striplib="$STRIP -x"
Chris@10 2135 old_striplib="$STRIP -S"
Chris@10 2136 AC_MSG_RESULT([yes])
Chris@10 2137 else
Chris@10 2138 AC_MSG_RESULT([no])
Chris@10 2139 fi
Chris@10 2140 ;;
Chris@10 2141 *)
Chris@10 2142 AC_MSG_RESULT([no])
Chris@10 2143 ;;
Chris@10 2144 esac
Chris@10 2145 fi
Chris@10 2146 _LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
Chris@10 2147 _LT_DECL([], [striplib], [1])
Chris@10 2148 ])# _LT_CMD_STRIPLIB
Chris@10 2149
Chris@10 2150
Chris@10 2151 # _LT_SYS_DYNAMIC_LINKER([TAG])
Chris@10 2152 # -----------------------------
Chris@10 2153 # PORTME Fill in your ld.so characteristics
Chris@10 2154 m4_defun([_LT_SYS_DYNAMIC_LINKER],
Chris@10 2155 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
Chris@10 2156 m4_require([_LT_DECL_EGREP])dnl
Chris@10 2157 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
Chris@10 2158 m4_require([_LT_DECL_OBJDUMP])dnl
Chris@10 2159 m4_require([_LT_DECL_SED])dnl
Chris@10 2160 m4_require([_LT_CHECK_SHELL_FEATURES])dnl
Chris@10 2161 AC_MSG_CHECKING([dynamic linker characteristics])
Chris@10 2162 m4_if([$1],
Chris@10 2163 [], [
Chris@10 2164 if test "$GCC" = yes; then
Chris@10 2165 case $host_os in
Chris@10 2166 darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
Chris@10 2167 *) lt_awk_arg="/^libraries:/" ;;
Chris@10 2168 esac
Chris@10 2169 case $host_os in
Chris@10 2170 mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
Chris@10 2171 *) lt_sed_strip_eq="s,=/,/,g" ;;
Chris@10 2172 esac
Chris@10 2173 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
Chris@10 2174 case $lt_search_path_spec in
Chris@10 2175 *\;*)
Chris@10 2176 # if the path contains ";" then we assume it to be the separator
Chris@10 2177 # otherwise default to the standard path separator (i.e. ":") - it is
Chris@10 2178 # assumed that no part of a normal pathname contains ";" but that should
Chris@10 2179 # okay in the real world where ";" in dirpaths is itself problematic.
Chris@10 2180 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
Chris@10 2181 ;;
Chris@10 2182 *)
Chris@10 2183 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
Chris@10 2184 ;;
Chris@10 2185 esac
Chris@10 2186 # Ok, now we have the path, separated by spaces, we can step through it
Chris@10 2187 # and add multilib dir if necessary.
Chris@10 2188 lt_tmp_lt_search_path_spec=
Chris@10 2189 lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
Chris@10 2190 for lt_sys_path in $lt_search_path_spec; do
Chris@10 2191 if test -d "$lt_sys_path/$lt_multi_os_dir"; then
Chris@10 2192 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
Chris@10 2193 else
Chris@10 2194 test -d "$lt_sys_path" && \
Chris@10 2195 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
Chris@10 2196 fi
Chris@10 2197 done
Chris@10 2198 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
Chris@10 2199 BEGIN {RS=" "; FS="/|\n";} {
Chris@10 2200 lt_foo="";
Chris@10 2201 lt_count=0;
Chris@10 2202 for (lt_i = NF; lt_i > 0; lt_i--) {
Chris@10 2203 if ($lt_i != "" && $lt_i != ".") {
Chris@10 2204 if ($lt_i == "..") {
Chris@10 2205 lt_count++;
Chris@10 2206 } else {
Chris@10 2207 if (lt_count == 0) {
Chris@10 2208 lt_foo="/" $lt_i lt_foo;
Chris@10 2209 } else {
Chris@10 2210 lt_count--;
Chris@10 2211 }
Chris@10 2212 }
Chris@10 2213 }
Chris@10 2214 }
Chris@10 2215 if (lt_foo != "") { lt_freq[[lt_foo]]++; }
Chris@10 2216 if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
Chris@10 2217 }'`
Chris@10 2218 # AWK program above erroneously prepends '/' to C:/dos/paths
Chris@10 2219 # for these hosts.
Chris@10 2220 case $host_os in
Chris@10 2221 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
Chris@10 2222 $SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
Chris@10 2223 esac
Chris@10 2224 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
Chris@10 2225 else
Chris@10 2226 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
Chris@10 2227 fi])
Chris@10 2228 library_names_spec=
Chris@10 2229 libname_spec='lib$name'
Chris@10 2230 soname_spec=
Chris@10 2231 shrext_cmds=".so"
Chris@10 2232 postinstall_cmds=
Chris@10 2233 postuninstall_cmds=
Chris@10 2234 finish_cmds=
Chris@10 2235 finish_eval=
Chris@10 2236 shlibpath_var=
Chris@10 2237 shlibpath_overrides_runpath=unknown
Chris@10 2238 version_type=none
Chris@10 2239 dynamic_linker="$host_os ld.so"
Chris@10 2240 sys_lib_dlsearch_path_spec="/lib /usr/lib"
Chris@10 2241 need_lib_prefix=unknown
Chris@10 2242 hardcode_into_libs=no
Chris@10 2243
Chris@10 2244 # when you set need_version to no, make sure it does not cause -set_version
Chris@10 2245 # flags to be left without arguments
Chris@10 2246 need_version=unknown
Chris@10 2247
Chris@10 2248 case $host_os in
Chris@10 2249 aix3*)
Chris@10 2250 version_type=linux # correct to gnu/linux during the next big refactor
Chris@10 2251 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
Chris@10 2252 shlibpath_var=LIBPATH
Chris@10 2253
Chris@10 2254 # AIX 3 has no versioning support, so we append a major version to the name.
Chris@10 2255 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2256 ;;
Chris@10 2257
Chris@10 2258 aix[[4-9]]*)
Chris@10 2259 version_type=linux # correct to gnu/linux during the next big refactor
Chris@10 2260 need_lib_prefix=no
Chris@10 2261 need_version=no
Chris@10 2262 hardcode_into_libs=yes
Chris@10 2263 if test "$host_cpu" = ia64; then
Chris@10 2264 # AIX 5 supports IA64
Chris@10 2265 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
Chris@10 2266 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2267 else
Chris@10 2268 # With GCC up to 2.95.x, collect2 would create an import file
Chris@10 2269 # for dependence libraries. The import file would start with
Chris@10 2270 # the line `#! .'. This would cause the generated library to
Chris@10 2271 # depend on `.', always an invalid library. This was fixed in
Chris@10 2272 # development snapshots of GCC prior to 3.0.
Chris@10 2273 case $host_os in
Chris@10 2274 aix4 | aix4.[[01]] | aix4.[[01]].*)
Chris@10 2275 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
Chris@10 2276 echo ' yes '
Chris@10 2277 echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
Chris@10 2278 :
Chris@10 2279 else
Chris@10 2280 can_build_shared=no
Chris@10 2281 fi
Chris@10 2282 ;;
Chris@10 2283 esac
Chris@10 2284 # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
Chris@10 2285 # soname into executable. Probably we can add versioning support to
Chris@10 2286 # collect2, so additional links can be useful in future.
Chris@10 2287 if test "$aix_use_runtimelinking" = yes; then
Chris@10 2288 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
Chris@10 2289 # instead of lib<name>.a to let people know that these are not
Chris@10 2290 # typical AIX shared libraries.
Chris@10 2291 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
Chris@10 2292 else
Chris@10 2293 # We preserve .a as extension for shared libraries through AIX4.2
Chris@10 2294 # and later when we are not doing run time linking.
Chris@10 2295 library_names_spec='${libname}${release}.a $libname.a'
Chris@10 2296 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2297 fi
Chris@10 2298 shlibpath_var=LIBPATH
Chris@10 2299 fi
Chris@10 2300 ;;
Chris@10 2301
Chris@10 2302 amigaos*)
Chris@10 2303 case $host_cpu in
Chris@10 2304 powerpc)
Chris@10 2305 # Since July 2007 AmigaOS4 officially supports .so libraries.
Chris@10 2306 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
Chris@10 2307 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
Chris@10 2308 ;;
Chris@10 2309 m68k)
Chris@10 2310 library_names_spec='$libname.ixlibrary $libname.a'
Chris@10 2311 # Create ${libname}_ixlibrary.a entries in /sys/libs.
Chris@10 2312 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'
Chris@10 2313 ;;
Chris@10 2314 esac
Chris@10 2315 ;;
Chris@10 2316
Chris@10 2317 beos*)
Chris@10 2318 library_names_spec='${libname}${shared_ext}'
Chris@10 2319 dynamic_linker="$host_os ld.so"
Chris@10 2320 shlibpath_var=LIBRARY_PATH
Chris@10 2321 ;;
Chris@10 2322
Chris@10 2323 bsdi[[45]]*)
Chris@10 2324 version_type=linux # correct to gnu/linux during the next big refactor
Chris@10 2325 need_version=no
Chris@10 2326 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
Chris@10 2327 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2328 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
Chris@10 2329 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2330 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
Chris@10 2331 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
Chris@10 2332 # the default ld.so.conf also contains /usr/contrib/lib and
Chris@10 2333 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
Chris@10 2334 # libtool to hard-code these into programs
Chris@10 2335 ;;
Chris@10 2336
Chris@10 2337 cygwin* | mingw* | pw32* | cegcc*)
Chris@10 2338 version_type=windows
Chris@10 2339 shrext_cmds=".dll"
Chris@10 2340 need_version=no
Chris@10 2341 need_lib_prefix=no
Chris@10 2342
Chris@10 2343 case $GCC,$cc_basename in
Chris@10 2344 yes,*)
Chris@10 2345 # gcc
Chris@10 2346 library_names_spec='$libname.dll.a'
Chris@10 2347 # DLL is installed to $(libdir)/../bin by postinstall_cmds
Chris@10 2348 postinstall_cmds='base_file=`basename \${file}`~
Chris@10 2349 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
Chris@10 2350 dldir=$destdir/`dirname \$dlpath`~
Chris@10 2351 test -d \$dldir || mkdir -p \$dldir~
Chris@10 2352 $install_prog $dir/$dlname \$dldir/$dlname~
Chris@10 2353 chmod a+x \$dldir/$dlname~
Chris@10 2354 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
Chris@10 2355 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
Chris@10 2356 fi'
Chris@10 2357 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
Chris@10 2358 dlpath=$dir/\$dldll~
Chris@10 2359 $RM \$dlpath'
Chris@10 2360 shlibpath_overrides_runpath=yes
Chris@10 2361
Chris@10 2362 case $host_os in
Chris@10 2363 cygwin*)
Chris@10 2364 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
Chris@10 2365 soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
Chris@10 2366 m4_if([$1], [],[
Chris@10 2367 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
Chris@10 2368 ;;
Chris@10 2369 mingw* | cegcc*)
Chris@10 2370 # MinGW DLLs use traditional 'lib' prefix
Chris@10 2371 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
Chris@10 2372 ;;
Chris@10 2373 pw32*)
Chris@10 2374 # pw32 DLLs use 'pw' prefix rather than 'lib'
Chris@10 2375 library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
Chris@10 2376 ;;
Chris@10 2377 esac
Chris@10 2378 dynamic_linker='Win32 ld.exe'
Chris@10 2379 ;;
Chris@10 2380
Chris@10 2381 *,cl*)
Chris@10 2382 # Native MSVC
Chris@10 2383 libname_spec='$name'
Chris@10 2384 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
Chris@10 2385 library_names_spec='${libname}.dll.lib'
Chris@10 2386
Chris@10 2387 case $build_os in
Chris@10 2388 mingw*)
Chris@10 2389 sys_lib_search_path_spec=
Chris@10 2390 lt_save_ifs=$IFS
Chris@10 2391 IFS=';'
Chris@10 2392 for lt_path in $LIB
Chris@10 2393 do
Chris@10 2394 IFS=$lt_save_ifs
Chris@10 2395 # Let DOS variable expansion print the short 8.3 style file name.
Chris@10 2396 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
Chris@10 2397 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
Chris@10 2398 done
Chris@10 2399 IFS=$lt_save_ifs
Chris@10 2400 # Convert to MSYS style.
Chris@10 2401 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
Chris@10 2402 ;;
Chris@10 2403 cygwin*)
Chris@10 2404 # Convert to unix form, then to dos form, then back to unix form
Chris@10 2405 # but this time dos style (no spaces!) so that the unix form looks
Chris@10 2406 # like /cygdrive/c/PROGRA~1:/cygdr...
Chris@10 2407 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
Chris@10 2408 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
Chris@10 2409 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
Chris@10 2410 ;;
Chris@10 2411 *)
Chris@10 2412 sys_lib_search_path_spec="$LIB"
Chris@10 2413 if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
Chris@10 2414 # It is most probably a Windows format PATH.
Chris@10 2415 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
Chris@10 2416 else
Chris@10 2417 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
Chris@10 2418 fi
Chris@10 2419 # FIXME: find the short name or the path components, as spaces are
Chris@10 2420 # common. (e.g. "Program Files" -> "PROGRA~1")
Chris@10 2421 ;;
Chris@10 2422 esac
Chris@10 2423
Chris@10 2424 # DLL is installed to $(libdir)/../bin by postinstall_cmds
Chris@10 2425 postinstall_cmds='base_file=`basename \${file}`~
Chris@10 2426 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
Chris@10 2427 dldir=$destdir/`dirname \$dlpath`~
Chris@10 2428 test -d \$dldir || mkdir -p \$dldir~
Chris@10 2429 $install_prog $dir/$dlname \$dldir/$dlname'
Chris@10 2430 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
Chris@10 2431 dlpath=$dir/\$dldll~
Chris@10 2432 $RM \$dlpath'
Chris@10 2433 shlibpath_overrides_runpath=yes
Chris@10 2434 dynamic_linker='Win32 link.exe'
Chris@10 2435 ;;
Chris@10 2436
Chris@10 2437 *)
Chris@10 2438 # Assume MSVC wrapper
Chris@10 2439 library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
Chris@10 2440 dynamic_linker='Win32 ld.exe'
Chris@10 2441 ;;
Chris@10 2442 esac
Chris@10 2443 # FIXME: first we should search . and the directory the executable is in
Chris@10 2444 shlibpath_var=PATH
Chris@10 2445 ;;
Chris@10 2446
Chris@10 2447 darwin* | rhapsody*)
Chris@10 2448 dynamic_linker="$host_os dyld"
Chris@10 2449 version_type=darwin
Chris@10 2450 need_lib_prefix=no
Chris@10 2451 need_version=no
Chris@10 2452 library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
Chris@10 2453 soname_spec='${libname}${release}${major}$shared_ext'
Chris@10 2454 shlibpath_overrides_runpath=yes
Chris@10 2455 shlibpath_var=DYLD_LIBRARY_PATH
Chris@10 2456 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
Chris@10 2457 m4_if([$1], [],[
Chris@10 2458 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
Chris@10 2459 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
Chris@10 2460 ;;
Chris@10 2461
Chris@10 2462 dgux*)
Chris@10 2463 version_type=linux # correct to gnu/linux during the next big refactor
Chris@10 2464 need_lib_prefix=no
Chris@10 2465 need_version=no
Chris@10 2466 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
Chris@10 2467 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2468 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2469 ;;
Chris@10 2470
Chris@10 2471 freebsd* | dragonfly*)
Chris@10 2472 # DragonFly does not have aout. When/if they implement a new
Chris@10 2473 # versioning mechanism, adjust this.
Chris@10 2474 if test -x /usr/bin/objformat; then
Chris@10 2475 objformat=`/usr/bin/objformat`
Chris@10 2476 else
Chris@10 2477 case $host_os in
Chris@10 2478 freebsd[[23]].*) objformat=aout ;;
Chris@10 2479 *) objformat=elf ;;
Chris@10 2480 esac
Chris@10 2481 fi
Chris@10 2482 version_type=freebsd-$objformat
Chris@10 2483 case $version_type in
Chris@10 2484 freebsd-elf*)
Chris@10 2485 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
Chris@10 2486 need_version=no
Chris@10 2487 need_lib_prefix=no
Chris@10 2488 ;;
Chris@10 2489 freebsd-*)
Chris@10 2490 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
Chris@10 2491 need_version=yes
Chris@10 2492 ;;
Chris@10 2493 esac
Chris@10 2494 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2495 case $host_os in
Chris@10 2496 freebsd2.*)
Chris@10 2497 shlibpath_overrides_runpath=yes
Chris@10 2498 ;;
Chris@10 2499 freebsd3.[[01]]* | freebsdelf3.[[01]]*)
Chris@10 2500 shlibpath_overrides_runpath=yes
Chris@10 2501 hardcode_into_libs=yes
Chris@10 2502 ;;
Chris@10 2503 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
Chris@10 2504 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
Chris@10 2505 shlibpath_overrides_runpath=no
Chris@10 2506 hardcode_into_libs=yes
Chris@10 2507 ;;
Chris@10 2508 *) # from 4.6 on, and DragonFly
Chris@10 2509 shlibpath_overrides_runpath=yes
Chris@10 2510 hardcode_into_libs=yes
Chris@10 2511 ;;
Chris@10 2512 esac
Chris@10 2513 ;;
Chris@10 2514
Chris@10 2515 haiku*)
Chris@10 2516 version_type=linux # correct to gnu/linux during the next big refactor
Chris@10 2517 need_lib_prefix=no
Chris@10 2518 need_version=no
Chris@10 2519 dynamic_linker="$host_os runtime_loader"
Chris@10 2520 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
Chris@10 2521 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2522 shlibpath_var=LIBRARY_PATH
Chris@10 2523 shlibpath_overrides_runpath=yes
Chris@10 2524 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
Chris@10 2525 hardcode_into_libs=yes
Chris@10 2526 ;;
Chris@10 2527
Chris@10 2528 hpux9* | hpux10* | hpux11*)
Chris@10 2529 # Give a soname corresponding to the major version so that dld.sl refuses to
Chris@10 2530 # link against other versions.
Chris@10 2531 version_type=sunos
Chris@10 2532 need_lib_prefix=no
Chris@10 2533 need_version=no
Chris@10 2534 case $host_cpu in
Chris@10 2535 ia64*)
Chris@10 2536 shrext_cmds='.so'
Chris@10 2537 hardcode_into_libs=yes
Chris@10 2538 dynamic_linker="$host_os dld.so"
Chris@10 2539 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2540 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
Chris@10 2541 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
Chris@10 2542 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2543 if test "X$HPUX_IA64_MODE" = X32; then
Chris@10 2544 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
Chris@10 2545 else
Chris@10 2546 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
Chris@10 2547 fi
Chris@10 2548 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
Chris@10 2549 ;;
Chris@10 2550 hppa*64*)
Chris@10 2551 shrext_cmds='.sl'
Chris@10 2552 hardcode_into_libs=yes
Chris@10 2553 dynamic_linker="$host_os dld.sl"
Chris@10 2554 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
Chris@10 2555 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
Chris@10 2556 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
Chris@10 2557 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2558 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
Chris@10 2559 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
Chris@10 2560 ;;
Chris@10 2561 *)
Chris@10 2562 shrext_cmds='.sl'
Chris@10 2563 dynamic_linker="$host_os dld.sl"
Chris@10 2564 shlibpath_var=SHLIB_PATH
Chris@10 2565 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
Chris@10 2566 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
Chris@10 2567 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2568 ;;
Chris@10 2569 esac
Chris@10 2570 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
Chris@10 2571 postinstall_cmds='chmod 555 $lib'
Chris@10 2572 # or fails outright, so override atomically:
Chris@10 2573 install_override_mode=555
Chris@10 2574 ;;
Chris@10 2575
Chris@10 2576 interix[[3-9]]*)
Chris@10 2577 version_type=linux # correct to gnu/linux during the next big refactor
Chris@10 2578 need_lib_prefix=no
Chris@10 2579 need_version=no
Chris@10 2580 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
Chris@10 2581 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2582 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
Chris@10 2583 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2584 shlibpath_overrides_runpath=no
Chris@10 2585 hardcode_into_libs=yes
Chris@10 2586 ;;
Chris@10 2587
Chris@10 2588 irix5* | irix6* | nonstopux*)
Chris@10 2589 case $host_os in
Chris@10 2590 nonstopux*) version_type=nonstopux ;;
Chris@10 2591 *)
Chris@10 2592 if test "$lt_cv_prog_gnu_ld" = yes; then
Chris@10 2593 version_type=linux # correct to gnu/linux during the next big refactor
Chris@10 2594 else
Chris@10 2595 version_type=irix
Chris@10 2596 fi ;;
Chris@10 2597 esac
Chris@10 2598 need_lib_prefix=no
Chris@10 2599 need_version=no
Chris@10 2600 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2601 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
Chris@10 2602 case $host_os in
Chris@10 2603 irix5* | nonstopux*)
Chris@10 2604 libsuff= shlibsuff=
Chris@10 2605 ;;
Chris@10 2606 *)
Chris@10 2607 case $LD in # libtool.m4 will add one of these switches to LD
Chris@10 2608 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
Chris@10 2609 libsuff= shlibsuff= libmagic=32-bit;;
Chris@10 2610 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
Chris@10 2611 libsuff=32 shlibsuff=N32 libmagic=N32;;
Chris@10 2612 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
Chris@10 2613 libsuff=64 shlibsuff=64 libmagic=64-bit;;
Chris@10 2614 *) libsuff= shlibsuff= libmagic=never-match;;
Chris@10 2615 esac
Chris@10 2616 ;;
Chris@10 2617 esac
Chris@10 2618 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
Chris@10 2619 shlibpath_overrides_runpath=no
Chris@10 2620 sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
Chris@10 2621 sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
Chris@10 2622 hardcode_into_libs=yes
Chris@10 2623 ;;
Chris@10 2624
Chris@10 2625 # No shared lib support for Linux oldld, aout, or coff.
Chris@10 2626 linux*oldld* | linux*aout* | linux*coff*)
Chris@10 2627 dynamic_linker=no
Chris@10 2628 ;;
Chris@10 2629
Chris@10 2630 # This must be glibc/ELF.
Chris@10 2631 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
Chris@10 2632 version_type=linux # correct to gnu/linux during the next big refactor
Chris@10 2633 need_lib_prefix=no
Chris@10 2634 need_version=no
Chris@10 2635 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
Chris@10 2636 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2637 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
Chris@10 2638 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2639 shlibpath_overrides_runpath=no
Chris@10 2640
Chris@10 2641 # Some binutils ld are patched to set DT_RUNPATH
Chris@10 2642 AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
Chris@10 2643 [lt_cv_shlibpath_overrides_runpath=no
Chris@10 2644 save_LDFLAGS=$LDFLAGS
Chris@10 2645 save_libdir=$libdir
Chris@10 2646 eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
Chris@10 2647 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
Chris@10 2648 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
Chris@10 2649 [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
Chris@10 2650 [lt_cv_shlibpath_overrides_runpath=yes])])
Chris@10 2651 LDFLAGS=$save_LDFLAGS
Chris@10 2652 libdir=$save_libdir
Chris@10 2653 ])
Chris@10 2654 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
Chris@10 2655
Chris@10 2656 # This implies no fast_install, which is unacceptable.
Chris@10 2657 # Some rework will be needed to allow for fast_install
Chris@10 2658 # before this can be enabled.
Chris@10 2659 hardcode_into_libs=yes
Chris@10 2660
Chris@10 2661 # Append ld.so.conf contents to the search path
Chris@10 2662 if test -f /etc/ld.so.conf; then
Chris@10 2663 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' ' '`
Chris@10 2664 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
Chris@10 2665 fi
Chris@10 2666
Chris@10 2667 # We used to test for /lib/ld.so.1 and disable shared libraries on
Chris@10 2668 # powerpc, because MkLinux only supported shared libraries with the
Chris@10 2669 # GNU dynamic linker. Since this was broken with cross compilers,
Chris@10 2670 # most powerpc-linux boxes support dynamic linking these days and
Chris@10 2671 # people can always --disable-shared, the test was removed, and we
Chris@10 2672 # assume the GNU/Linux dynamic linker is in use.
Chris@10 2673 dynamic_linker='GNU/Linux ld.so'
Chris@10 2674 ;;
Chris@10 2675
Chris@10 2676 netbsdelf*-gnu)
Chris@10 2677 version_type=linux
Chris@10 2678 need_lib_prefix=no
Chris@10 2679 need_version=no
Chris@10 2680 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
Chris@10 2681 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2682 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2683 shlibpath_overrides_runpath=no
Chris@10 2684 hardcode_into_libs=yes
Chris@10 2685 dynamic_linker='NetBSD ld.elf_so'
Chris@10 2686 ;;
Chris@10 2687
Chris@10 2688 netbsd*)
Chris@10 2689 version_type=sunos
Chris@10 2690 need_lib_prefix=no
Chris@10 2691 need_version=no
Chris@10 2692 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
Chris@10 2693 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
Chris@10 2694 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
Chris@10 2695 dynamic_linker='NetBSD (a.out) ld.so'
Chris@10 2696 else
Chris@10 2697 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
Chris@10 2698 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2699 dynamic_linker='NetBSD ld.elf_so'
Chris@10 2700 fi
Chris@10 2701 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2702 shlibpath_overrides_runpath=yes
Chris@10 2703 hardcode_into_libs=yes
Chris@10 2704 ;;
Chris@10 2705
Chris@10 2706 newsos6)
Chris@10 2707 version_type=linux # correct to gnu/linux during the next big refactor
Chris@10 2708 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
Chris@10 2709 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2710 shlibpath_overrides_runpath=yes
Chris@10 2711 ;;
Chris@10 2712
Chris@10 2713 *nto* | *qnx*)
Chris@10 2714 version_type=qnx
Chris@10 2715 need_lib_prefix=no
Chris@10 2716 need_version=no
Chris@10 2717 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
Chris@10 2718 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2719 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2720 shlibpath_overrides_runpath=no
Chris@10 2721 hardcode_into_libs=yes
Chris@10 2722 dynamic_linker='ldqnx.so'
Chris@10 2723 ;;
Chris@10 2724
Chris@10 2725 openbsd*)
Chris@10 2726 version_type=sunos
Chris@10 2727 sys_lib_dlsearch_path_spec="/usr/lib"
Chris@10 2728 need_lib_prefix=no
Chris@10 2729 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
Chris@10 2730 case $host_os in
Chris@10 2731 openbsd3.3 | openbsd3.3.*) need_version=yes ;;
Chris@10 2732 *) need_version=no ;;
Chris@10 2733 esac
Chris@10 2734 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
Chris@10 2735 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
Chris@10 2736 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2737 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
Chris@10 2738 case $host_os in
Chris@10 2739 openbsd2.[[89]] | openbsd2.[[89]].*)
Chris@10 2740 shlibpath_overrides_runpath=no
Chris@10 2741 ;;
Chris@10 2742 *)
Chris@10 2743 shlibpath_overrides_runpath=yes
Chris@10 2744 ;;
Chris@10 2745 esac
Chris@10 2746 else
Chris@10 2747 shlibpath_overrides_runpath=yes
Chris@10 2748 fi
Chris@10 2749 ;;
Chris@10 2750
Chris@10 2751 os2*)
Chris@10 2752 libname_spec='$name'
Chris@10 2753 shrext_cmds=".dll"
Chris@10 2754 need_lib_prefix=no
Chris@10 2755 library_names_spec='$libname${shared_ext} $libname.a'
Chris@10 2756 dynamic_linker='OS/2 ld.exe'
Chris@10 2757 shlibpath_var=LIBPATH
Chris@10 2758 ;;
Chris@10 2759
Chris@10 2760 osf3* | osf4* | osf5*)
Chris@10 2761 version_type=osf
Chris@10 2762 need_lib_prefix=no
Chris@10 2763 need_version=no
Chris@10 2764 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2765 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
Chris@10 2766 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2767 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
Chris@10 2768 sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
Chris@10 2769 ;;
Chris@10 2770
Chris@10 2771 rdos*)
Chris@10 2772 dynamic_linker=no
Chris@10 2773 ;;
Chris@10 2774
Chris@10 2775 solaris*)
Chris@10 2776 version_type=linux # correct to gnu/linux during the next big refactor
Chris@10 2777 need_lib_prefix=no
Chris@10 2778 need_version=no
Chris@10 2779 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
Chris@10 2780 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2781 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2782 shlibpath_overrides_runpath=yes
Chris@10 2783 hardcode_into_libs=yes
Chris@10 2784 # ldd complains unless libraries are executable
Chris@10 2785 postinstall_cmds='chmod +x $lib'
Chris@10 2786 ;;
Chris@10 2787
Chris@10 2788 sunos4*)
Chris@10 2789 version_type=sunos
Chris@10 2790 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
Chris@10 2791 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
Chris@10 2792 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2793 shlibpath_overrides_runpath=yes
Chris@10 2794 if test "$with_gnu_ld" = yes; then
Chris@10 2795 need_lib_prefix=no
Chris@10 2796 fi
Chris@10 2797 need_version=yes
Chris@10 2798 ;;
Chris@10 2799
Chris@10 2800 sysv4 | sysv4.3*)
Chris@10 2801 version_type=linux # correct to gnu/linux during the next big refactor
Chris@10 2802 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
Chris@10 2803 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2804 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2805 case $host_vendor in
Chris@10 2806 sni)
Chris@10 2807 shlibpath_overrides_runpath=no
Chris@10 2808 need_lib_prefix=no
Chris@10 2809 runpath_var=LD_RUN_PATH
Chris@10 2810 ;;
Chris@10 2811 siemens)
Chris@10 2812 need_lib_prefix=no
Chris@10 2813 ;;
Chris@10 2814 motorola)
Chris@10 2815 need_lib_prefix=no
Chris@10 2816 need_version=no
Chris@10 2817 shlibpath_overrides_runpath=no
Chris@10 2818 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
Chris@10 2819 ;;
Chris@10 2820 esac
Chris@10 2821 ;;
Chris@10 2822
Chris@10 2823 sysv4*MP*)
Chris@10 2824 if test -d /usr/nec ;then
Chris@10 2825 version_type=linux # correct to gnu/linux during the next big refactor
Chris@10 2826 library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
Chris@10 2827 soname_spec='$libname${shared_ext}.$major'
Chris@10 2828 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2829 fi
Chris@10 2830 ;;
Chris@10 2831
Chris@10 2832 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
Chris@10 2833 version_type=freebsd-elf
Chris@10 2834 need_lib_prefix=no
Chris@10 2835 need_version=no
Chris@10 2836 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
Chris@10 2837 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2838 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2839 shlibpath_overrides_runpath=yes
Chris@10 2840 hardcode_into_libs=yes
Chris@10 2841 if test "$with_gnu_ld" = yes; then
Chris@10 2842 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
Chris@10 2843 else
Chris@10 2844 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
Chris@10 2845 case $host_os in
Chris@10 2846 sco3.2v5*)
Chris@10 2847 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
Chris@10 2848 ;;
Chris@10 2849 esac
Chris@10 2850 fi
Chris@10 2851 sys_lib_dlsearch_path_spec='/usr/lib'
Chris@10 2852 ;;
Chris@10 2853
Chris@10 2854 tpf*)
Chris@10 2855 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
Chris@10 2856 version_type=linux # correct to gnu/linux during the next big refactor
Chris@10 2857 need_lib_prefix=no
Chris@10 2858 need_version=no
Chris@10 2859 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
Chris@10 2860 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2861 shlibpath_overrides_runpath=no
Chris@10 2862 hardcode_into_libs=yes
Chris@10 2863 ;;
Chris@10 2864
Chris@10 2865 uts4*)
Chris@10 2866 version_type=linux # correct to gnu/linux during the next big refactor
Chris@10 2867 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
Chris@10 2868 soname_spec='${libname}${release}${shared_ext}$major'
Chris@10 2869 shlibpath_var=LD_LIBRARY_PATH
Chris@10 2870 ;;
Chris@10 2871
Chris@10 2872 *)
Chris@10 2873 dynamic_linker=no
Chris@10 2874 ;;
Chris@10 2875 esac
Chris@10 2876 AC_MSG_RESULT([$dynamic_linker])
Chris@10 2877 test "$dynamic_linker" = no && can_build_shared=no
Chris@10 2878
Chris@10 2879 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
Chris@10 2880 if test "$GCC" = yes; then
Chris@10 2881 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
Chris@10 2882 fi
Chris@10 2883
Chris@10 2884 if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
Chris@10 2885 sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
Chris@10 2886 fi
Chris@10 2887 if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
Chris@10 2888 sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
Chris@10 2889 fi
Chris@10 2890
Chris@10 2891 _LT_DECL([], [variables_saved_for_relink], [1],
Chris@10 2892 [Variables whose values should be saved in libtool wrapper scripts and
Chris@10 2893 restored at link time])
Chris@10 2894 _LT_DECL([], [need_lib_prefix], [0],
Chris@10 2895 [Do we need the "lib" prefix for modules?])
Chris@10 2896 _LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
Chris@10 2897 _LT_DECL([], [version_type], [0], [Library versioning type])
Chris@10 2898 _LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
Chris@10 2899 _LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
Chris@10 2900 _LT_DECL([], [shlibpath_overrides_runpath], [0],
Chris@10 2901 [Is shlibpath searched before the hard-coded library search path?])
Chris@10 2902 _LT_DECL([], [libname_spec], [1], [Format of library name prefix])
Chris@10 2903 _LT_DECL([], [library_names_spec], [1],
Chris@10 2904 [[List of archive names. First name is the real one, the rest are links.
Chris@10 2905 The last name is the one that the linker finds with -lNAME]])
Chris@10 2906 _LT_DECL([], [soname_spec], [1],
Chris@10 2907 [[The coded name of the library, if different from the real name]])
Chris@10 2908 _LT_DECL([], [install_override_mode], [1],
Chris@10 2909 [Permission mode override for installation of shared libraries])
Chris@10 2910 _LT_DECL([], [postinstall_cmds], [2],
Chris@10 2911 [Command to use after installation of a shared archive])
Chris@10 2912 _LT_DECL([], [postuninstall_cmds], [2],
Chris@10 2913 [Command to use after uninstallation of a shared archive])
Chris@10 2914 _LT_DECL([], [finish_cmds], [2],
Chris@10 2915 [Commands used to finish a libtool library installation in a directory])
Chris@10 2916 _LT_DECL([], [finish_eval], [1],
Chris@10 2917 [[As "finish_cmds", except a single script fragment to be evaled but
Chris@10 2918 not shown]])
Chris@10 2919 _LT_DECL([], [hardcode_into_libs], [0],
Chris@10 2920 [Whether we should hardcode library paths into libraries])
Chris@10 2921 _LT_DECL([], [sys_lib_search_path_spec], [2],
Chris@10 2922 [Compile-time system search path for libraries])
Chris@10 2923 _LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
Chris@10 2924 [Run-time system search path for libraries])
Chris@10 2925 ])# _LT_SYS_DYNAMIC_LINKER
Chris@10 2926
Chris@10 2927
Chris@10 2928 # _LT_PATH_TOOL_PREFIX(TOOL)
Chris@10 2929 # --------------------------
Chris@10 2930 # find a file program which can recognize shared library
Chris@10 2931 AC_DEFUN([_LT_PATH_TOOL_PREFIX],
Chris@10 2932 [m4_require([_LT_DECL_EGREP])dnl
Chris@10 2933 AC_MSG_CHECKING([for $1])
Chris@10 2934 AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
Chris@10 2935 [case $MAGIC_CMD in
Chris@10 2936 [[\\/*] | ?:[\\/]*])
Chris@10 2937 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
Chris@10 2938 ;;
Chris@10 2939 *)
Chris@10 2940 lt_save_MAGIC_CMD="$MAGIC_CMD"
Chris@10 2941 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
Chris@10 2942 dnl $ac_dummy forces splitting on constant user-supplied paths.
Chris@10 2943 dnl POSIX.2 word splitting is done only on the output of word expansions,
Chris@10 2944 dnl not every word. This closes a longstanding sh security hole.
Chris@10 2945 ac_dummy="m4_if([$2], , $PATH, [$2])"
Chris@10 2946 for ac_dir in $ac_dummy; do
Chris@10 2947 IFS="$lt_save_ifs"
Chris@10 2948 test -z "$ac_dir" && ac_dir=.
Chris@10 2949 if test -f $ac_dir/$1; then
Chris@10 2950 lt_cv_path_MAGIC_CMD="$ac_dir/$1"
Chris@10 2951 if test -n "$file_magic_test_file"; then
Chris@10 2952 case $deplibs_check_method in
Chris@10 2953 "file_magic "*)
Chris@10 2954 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
Chris@10 2955 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
Chris@10 2956 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
Chris@10 2957 $EGREP "$file_magic_regex" > /dev/null; then
Chris@10 2958 :
Chris@10 2959 else
Chris@10 2960 cat <<_LT_EOF 1>&2
Chris@10 2961
Chris@10 2962 *** Warning: the command libtool uses to detect shared libraries,
Chris@10 2963 *** $file_magic_cmd, produces output that libtool cannot recognize.
Chris@10 2964 *** The result is that libtool may fail to recognize shared libraries
Chris@10 2965 *** as such. This will affect the creation of libtool libraries that
Chris@10 2966 *** depend on shared libraries, but programs linked with such libtool
Chris@10 2967 *** libraries will work regardless of this problem. Nevertheless, you
Chris@10 2968 *** may want to report the problem to your system manager and/or to
Chris@10 2969 *** bug-libtool@gnu.org
Chris@10 2970
Chris@10 2971 _LT_EOF
Chris@10 2972 fi ;;
Chris@10 2973 esac
Chris@10 2974 fi
Chris@10 2975 break
Chris@10 2976 fi
Chris@10 2977 done
Chris@10 2978 IFS="$lt_save_ifs"
Chris@10 2979 MAGIC_CMD="$lt_save_MAGIC_CMD"
Chris@10 2980 ;;
Chris@10 2981 esac])
Chris@10 2982 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
Chris@10 2983 if test -n "$MAGIC_CMD"; then
Chris@10 2984 AC_MSG_RESULT($MAGIC_CMD)
Chris@10 2985 else
Chris@10 2986 AC_MSG_RESULT(no)
Chris@10 2987 fi
Chris@10 2988 _LT_DECL([], [MAGIC_CMD], [0],
Chris@10 2989 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
Chris@10 2990 ])# _LT_PATH_TOOL_PREFIX
Chris@10 2991
Chris@10 2992 # Old name:
Chris@10 2993 AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
Chris@10 2994 dnl aclocal-1.4 backwards compatibility:
Chris@10 2995 dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
Chris@10 2996
Chris@10 2997
Chris@10 2998 # _LT_PATH_MAGIC
Chris@10 2999 # --------------
Chris@10 3000 # find a file program which can recognize a shared library
Chris@10 3001 m4_defun([_LT_PATH_MAGIC],
Chris@10 3002 [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
Chris@10 3003 if test -z "$lt_cv_path_MAGIC_CMD"; then
Chris@10 3004 if test -n "$ac_tool_prefix"; then
Chris@10 3005 _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
Chris@10 3006 else
Chris@10 3007 MAGIC_CMD=:
Chris@10 3008 fi
Chris@10 3009 fi
Chris@10 3010 ])# _LT_PATH_MAGIC
Chris@10 3011
Chris@10 3012
Chris@10 3013 # LT_PATH_LD
Chris@10 3014 # ----------
Chris@10 3015 # find the pathname to the GNU or non-GNU linker
Chris@10 3016 AC_DEFUN([LT_PATH_LD],
Chris@10 3017 [AC_REQUIRE([AC_PROG_CC])dnl
Chris@10 3018 AC_REQUIRE([AC_CANONICAL_HOST])dnl
Chris@10 3019 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
Chris@10 3020 m4_require([_LT_DECL_SED])dnl
Chris@10 3021 m4_require([_LT_DECL_EGREP])dnl
Chris@10 3022 m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
Chris@10 3023
Chris@10 3024 AC_ARG_WITH([gnu-ld],
Chris@10 3025 [AS_HELP_STRING([--with-gnu-ld],
Chris@10 3026 [assume the C compiler uses GNU ld @<:@default=no@:>@])],
Chris@10 3027 [test "$withval" = no || with_gnu_ld=yes],
Chris@10 3028 [with_gnu_ld=no])dnl
Chris@10 3029
Chris@10 3030 ac_prog=ld
Chris@10 3031 if test "$GCC" = yes; then
Chris@10 3032 # Check if gcc -print-prog-name=ld gives a path.
Chris@10 3033 AC_MSG_CHECKING([for ld used by $CC])
Chris@10 3034 case $host in
Chris@10 3035 *-*-mingw*)
Chris@10 3036 # gcc leaves a trailing carriage return which upsets mingw
Chris@10 3037 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
Chris@10 3038 *)
Chris@10 3039 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
Chris@10 3040 esac
Chris@10 3041 case $ac_prog in
Chris@10 3042 # Accept absolute paths.
Chris@10 3043 [[\\/]]* | ?:[[\\/]]*)
Chris@10 3044 re_direlt='/[[^/]][[^/]]*/\.\./'
Chris@10 3045 # Canonicalize the pathname of ld
Chris@10 3046 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
Chris@10 3047 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
Chris@10 3048 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
Chris@10 3049 done
Chris@10 3050 test -z "$LD" && LD="$ac_prog"
Chris@10 3051 ;;
Chris@10 3052 "")
Chris@10 3053 # If it fails, then pretend we aren't using GCC.
Chris@10 3054 ac_prog=ld
Chris@10 3055 ;;
Chris@10 3056 *)
Chris@10 3057 # If it is relative, then search for the first ld in PATH.
Chris@10 3058 with_gnu_ld=unknown
Chris@10 3059 ;;
Chris@10 3060 esac
Chris@10 3061 elif test "$with_gnu_ld" = yes; then
Chris@10 3062 AC_MSG_CHECKING([for GNU ld])
Chris@10 3063 else
Chris@10 3064 AC_MSG_CHECKING([for non-GNU ld])
Chris@10 3065 fi
Chris@10 3066 AC_CACHE_VAL(lt_cv_path_LD,
Chris@10 3067 [if test -z "$LD"; then
Chris@10 3068 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
Chris@10 3069 for ac_dir in $PATH; do
Chris@10 3070 IFS="$lt_save_ifs"
Chris@10 3071 test -z "$ac_dir" && ac_dir=.
Chris@10 3072 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
Chris@10 3073 lt_cv_path_LD="$ac_dir/$ac_prog"
Chris@10 3074 # Check to see if the program is GNU ld. I'd rather use --version,
Chris@10 3075 # but apparently some variants of GNU ld only accept -v.
Chris@10 3076 # Break only if it was the GNU/non-GNU ld that we prefer.
Chris@10 3077 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
Chris@10 3078 *GNU* | *'with BFD'*)
Chris@10 3079 test "$with_gnu_ld" != no && break
Chris@10 3080 ;;
Chris@10 3081 *)
Chris@10 3082 test "$with_gnu_ld" != yes && break
Chris@10 3083 ;;
Chris@10 3084 esac
Chris@10 3085 fi
Chris@10 3086 done
Chris@10 3087 IFS="$lt_save_ifs"
Chris@10 3088 else
Chris@10 3089 lt_cv_path_LD="$LD" # Let the user override the test with a path.
Chris@10 3090 fi])
Chris@10 3091 LD="$lt_cv_path_LD"
Chris@10 3092 if test -n "$LD"; then
Chris@10 3093 AC_MSG_RESULT($LD)
Chris@10 3094 else
Chris@10 3095 AC_MSG_RESULT(no)
Chris@10 3096 fi
Chris@10 3097 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
Chris@10 3098 _LT_PATH_LD_GNU
Chris@10 3099 AC_SUBST([LD])
Chris@10 3100
Chris@10 3101 _LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
Chris@10 3102 ])# LT_PATH_LD
Chris@10 3103
Chris@10 3104 # Old names:
Chris@10 3105 AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
Chris@10 3106 AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
Chris@10 3107 dnl aclocal-1.4 backwards compatibility:
Chris@10 3108 dnl AC_DEFUN([AM_PROG_LD], [])
Chris@10 3109 dnl AC_DEFUN([AC_PROG_LD], [])
Chris@10 3110
Chris@10 3111
Chris@10 3112 # _LT_PATH_LD_GNU
Chris@10 3113 #- --------------
Chris@10 3114 m4_defun([_LT_PATH_LD_GNU],
Chris@10 3115 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
Chris@10 3116 [# I'd rather use --version here, but apparently some GNU lds only accept -v.
Chris@10 3117 case `$LD -v 2>&1 </dev/null` in
Chris@10 3118 *GNU* | *'with BFD'*)
Chris@10 3119 lt_cv_prog_gnu_ld=yes
Chris@10 3120 ;;
Chris@10 3121 *)
Chris@10 3122 lt_cv_prog_gnu_ld=no
Chris@10 3123 ;;
Chris@10 3124 esac])
Chris@10 3125 with_gnu_ld=$lt_cv_prog_gnu_ld
Chris@10 3126 ])# _LT_PATH_LD_GNU
Chris@10 3127
Chris@10 3128
Chris@10 3129 # _LT_CMD_RELOAD
Chris@10 3130 # --------------
Chris@10 3131 # find reload flag for linker
Chris@10 3132 # -- PORTME Some linkers may need a different reload flag.
Chris@10 3133 m4_defun([_LT_CMD_RELOAD],
Chris@10 3134 [AC_CACHE_CHECK([for $LD option to reload object files],
Chris@10 3135 lt_cv_ld_reload_flag,
Chris@10 3136 [lt_cv_ld_reload_flag='-r'])
Chris@10 3137 reload_flag=$lt_cv_ld_reload_flag
Chris@10 3138 case $reload_flag in
Chris@10 3139 "" | " "*) ;;
Chris@10 3140 *) reload_flag=" $reload_flag" ;;
Chris@10 3141 esac
Chris@10 3142 reload_cmds='$LD$reload_flag -o $output$reload_objs'
Chris@10 3143 case $host_os in
Chris@10 3144 cygwin* | mingw* | pw32* | cegcc*)
Chris@10 3145 if test "$GCC" != yes; then
Chris@10 3146 reload_cmds=false
Chris@10 3147 fi
Chris@10 3148 ;;
Chris@10 3149 darwin*)
Chris@10 3150 if test "$GCC" = yes; then
Chris@10 3151 reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
Chris@10 3152 else
Chris@10 3153 reload_cmds='$LD$reload_flag -o $output$reload_objs'
Chris@10 3154 fi
Chris@10 3155 ;;
Chris@10 3156 esac
Chris@10 3157 _LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
Chris@10 3158 _LT_TAGDECL([], [reload_cmds], [2])dnl
Chris@10 3159 ])# _LT_CMD_RELOAD
Chris@10 3160
Chris@10 3161
Chris@10 3162 # _LT_CHECK_MAGIC_METHOD
Chris@10 3163 # ----------------------
Chris@10 3164 # how to check for library dependencies
Chris@10 3165 # -- PORTME fill in with the dynamic library characteristics
Chris@10 3166 m4_defun([_LT_CHECK_MAGIC_METHOD],
Chris@10 3167 [m4_require([_LT_DECL_EGREP])
Chris@10 3168 m4_require([_LT_DECL_OBJDUMP])
Chris@10 3169 AC_CACHE_CHECK([how to recognize dependent libraries],
Chris@10 3170 lt_cv_deplibs_check_method,
Chris@10 3171 [lt_cv_file_magic_cmd='$MAGIC_CMD'
Chris@10 3172 lt_cv_file_magic_test_file=
Chris@10 3173 lt_cv_deplibs_check_method='unknown'
Chris@10 3174 # Need to set the preceding variable on all platforms that support
Chris@10 3175 # interlibrary dependencies.
Chris@10 3176 # 'none' -- dependencies not supported.
Chris@10 3177 # `unknown' -- same as none, but documents that we really don't know.
Chris@10 3178 # 'pass_all' -- all dependencies passed with no checks.
Chris@10 3179 # 'test_compile' -- check by making test program.
Chris@10 3180 # 'file_magic [[regex]]' -- check by looking for files in library path
Chris@10 3181 # which responds to the $file_magic_cmd with a given extended regex.
Chris@10 3182 # If you have `file' or equivalent on your system and you're not sure
Chris@10 3183 # whether `pass_all' will *always* work, you probably want this one.
Chris@10 3184
Chris@10 3185 case $host_os in
Chris@10 3186 aix[[4-9]]*)
Chris@10 3187 lt_cv_deplibs_check_method=pass_all
Chris@10 3188 ;;
Chris@10 3189
Chris@10 3190 beos*)
Chris@10 3191 lt_cv_deplibs_check_method=pass_all
Chris@10 3192 ;;
Chris@10 3193
Chris@10 3194 bsdi[[45]]*)
Chris@10 3195 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
Chris@10 3196 lt_cv_file_magic_cmd='/usr/bin/file -L'
Chris@10 3197 lt_cv_file_magic_test_file=/shlib/libc.so
Chris@10 3198 ;;
Chris@10 3199
Chris@10 3200 cygwin*)
Chris@10 3201 # func_win32_libid is a shell function defined in ltmain.sh
Chris@10 3202 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
Chris@10 3203 lt_cv_file_magic_cmd='func_win32_libid'
Chris@10 3204 ;;
Chris@10 3205
Chris@10 3206 mingw* | pw32*)
Chris@10 3207 # Base MSYS/MinGW do not provide the 'file' command needed by
Chris@10 3208 # func_win32_libid shell function, so use a weaker test based on 'objdump',
Chris@10 3209 # unless we find 'file', for example because we are cross-compiling.
Chris@10 3210 # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
Chris@10 3211 if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
Chris@10 3212 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
Chris@10 3213 lt_cv_file_magic_cmd='func_win32_libid'
Chris@10 3214 else
Chris@10 3215 # Keep this pattern in sync with the one in func_win32_libid.
Chris@10 3216 lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
Chris@10 3217 lt_cv_file_magic_cmd='$OBJDUMP -f'
Chris@10 3218 fi
Chris@10 3219 ;;
Chris@10 3220
Chris@10 3221 cegcc*)
Chris@10 3222 # use the weaker test based on 'objdump'. See mingw*.
Chris@10 3223 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
Chris@10 3224 lt_cv_file_magic_cmd='$OBJDUMP -f'
Chris@10 3225 ;;
Chris@10 3226
Chris@10 3227 darwin* | rhapsody*)
Chris@10 3228 lt_cv_deplibs_check_method=pass_all
Chris@10 3229 ;;
Chris@10 3230
Chris@10 3231 freebsd* | dragonfly*)
Chris@10 3232 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
Chris@10 3233 case $host_cpu in
Chris@10 3234 i*86 )
Chris@10 3235 # Not sure whether the presence of OpenBSD here was a mistake.
Chris@10 3236 # Let's accept both of them until this is cleared up.
Chris@10 3237 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
Chris@10 3238 lt_cv_file_magic_cmd=/usr/bin/file
Chris@10 3239 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
Chris@10 3240 ;;
Chris@10 3241 esac
Chris@10 3242 else
Chris@10 3243 lt_cv_deplibs_check_method=pass_all
Chris@10 3244 fi
Chris@10 3245 ;;
Chris@10 3246
Chris@10 3247 haiku*)
Chris@10 3248 lt_cv_deplibs_check_method=pass_all
Chris@10 3249 ;;
Chris@10 3250
Chris@10 3251 hpux10.20* | hpux11*)
Chris@10 3252 lt_cv_file_magic_cmd=/usr/bin/file
Chris@10 3253 case $host_cpu in
Chris@10 3254 ia64*)
Chris@10 3255 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
Chris@10 3256 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
Chris@10 3257 ;;
Chris@10 3258 hppa*64*)
Chris@10 3259 [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]']
Chris@10 3260 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
Chris@10 3261 ;;
Chris@10 3262 *)
Chris@10 3263 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
Chris@10 3264 lt_cv_file_magic_test_file=/usr/lib/libc.sl
Chris@10 3265 ;;
Chris@10 3266 esac
Chris@10 3267 ;;
Chris@10 3268
Chris@10 3269 interix[[3-9]]*)
Chris@10 3270 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
Chris@10 3271 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
Chris@10 3272 ;;
Chris@10 3273
Chris@10 3274 irix5* | irix6* | nonstopux*)
Chris@10 3275 case $LD in
Chris@10 3276 *-32|*"-32 ") libmagic=32-bit;;
Chris@10 3277 *-n32|*"-n32 ") libmagic=N32;;
Chris@10 3278 *-64|*"-64 ") libmagic=64-bit;;
Chris@10 3279 *) libmagic=never-match;;
Chris@10 3280 esac
Chris@10 3281 lt_cv_deplibs_check_method=pass_all
Chris@10 3282 ;;
Chris@10 3283
Chris@10 3284 # This must be glibc/ELF.
Chris@10 3285 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
Chris@10 3286 lt_cv_deplibs_check_method=pass_all
Chris@10 3287 ;;
Chris@10 3288
Chris@10 3289 netbsd* | netbsdelf*-gnu)
Chris@10 3290 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
Chris@10 3291 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
Chris@10 3292 else
Chris@10 3293 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
Chris@10 3294 fi
Chris@10 3295 ;;
Chris@10 3296
Chris@10 3297 newos6*)
Chris@10 3298 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
Chris@10 3299 lt_cv_file_magic_cmd=/usr/bin/file
Chris@10 3300 lt_cv_file_magic_test_file=/usr/lib/libnls.so
Chris@10 3301 ;;
Chris@10 3302
Chris@10 3303 *nto* | *qnx*)
Chris@10 3304 lt_cv_deplibs_check_method=pass_all
Chris@10 3305 ;;
Chris@10 3306
Chris@10 3307 openbsd*)
Chris@10 3308 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
Chris@10 3309 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
Chris@10 3310 else
Chris@10 3311 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
Chris@10 3312 fi
Chris@10 3313 ;;
Chris@10 3314
Chris@10 3315 osf3* | osf4* | osf5*)
Chris@10 3316 lt_cv_deplibs_check_method=pass_all
Chris@10 3317 ;;
Chris@10 3318
Chris@10 3319 rdos*)
Chris@10 3320 lt_cv_deplibs_check_method=pass_all
Chris@10 3321 ;;
Chris@10 3322
Chris@10 3323 solaris*)
Chris@10 3324 lt_cv_deplibs_check_method=pass_all
Chris@10 3325 ;;
Chris@10 3326
Chris@10 3327 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
Chris@10 3328 lt_cv_deplibs_check_method=pass_all
Chris@10 3329 ;;
Chris@10 3330
Chris@10 3331 sysv4 | sysv4.3*)
Chris@10 3332 case $host_vendor in
Chris@10 3333 motorola)
Chris@10 3334 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]]'
Chris@10 3335 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
Chris@10 3336 ;;
Chris@10 3337 ncr)
Chris@10 3338 lt_cv_deplibs_check_method=pass_all
Chris@10 3339 ;;
Chris@10 3340 sequent)
Chris@10 3341 lt_cv_file_magic_cmd='/bin/file'
Chris@10 3342 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
Chris@10 3343 ;;
Chris@10 3344 sni)
Chris@10 3345 lt_cv_file_magic_cmd='/bin/file'
Chris@10 3346 lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
Chris@10 3347 lt_cv_file_magic_test_file=/lib/libc.so
Chris@10 3348 ;;
Chris@10 3349 siemens)
Chris@10 3350 lt_cv_deplibs_check_method=pass_all
Chris@10 3351 ;;
Chris@10 3352 pc)
Chris@10 3353 lt_cv_deplibs_check_method=pass_all
Chris@10 3354 ;;
Chris@10 3355 esac
Chris@10 3356 ;;
Chris@10 3357
Chris@10 3358 tpf*)
Chris@10 3359 lt_cv_deplibs_check_method=pass_all
Chris@10 3360 ;;
Chris@10 3361 esac
Chris@10 3362 ])
Chris@10 3363
Chris@10 3364 file_magic_glob=
Chris@10 3365 want_nocaseglob=no
Chris@10 3366 if test "$build" = "$host"; then
Chris@10 3367 case $host_os in
Chris@10 3368 mingw* | pw32*)
Chris@10 3369 if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
Chris@10 3370 want_nocaseglob=yes
Chris@10 3371 else
Chris@10 3372 file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
Chris@10 3373 fi
Chris@10 3374 ;;
Chris@10 3375 esac
Chris@10 3376 fi
Chris@10 3377
Chris@10 3378 file_magic_cmd=$lt_cv_file_magic_cmd
Chris@10 3379 deplibs_check_method=$lt_cv_deplibs_check_method
Chris@10 3380 test -z "$deplibs_check_method" && deplibs_check_method=unknown
Chris@10 3381
Chris@10 3382 _LT_DECL([], [deplibs_check_method], [1],
Chris@10 3383 [Method to check whether dependent libraries are shared objects])
Chris@10 3384 _LT_DECL([], [file_magic_cmd], [1],
Chris@10 3385 [Command to use when deplibs_check_method = "file_magic"])
Chris@10 3386 _LT_DECL([], [file_magic_glob], [1],
Chris@10 3387 [How to find potential files when deplibs_check_method = "file_magic"])
Chris@10 3388 _LT_DECL([], [want_nocaseglob], [1],
Chris@10 3389 [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
Chris@10 3390 ])# _LT_CHECK_MAGIC_METHOD
Chris@10 3391
Chris@10 3392
Chris@10 3393 # LT_PATH_NM
Chris@10 3394 # ----------
Chris@10 3395 # find the pathname to a BSD- or MS-compatible name lister
Chris@10 3396 AC_DEFUN([LT_PATH_NM],
Chris@10 3397 [AC_REQUIRE([AC_PROG_CC])dnl
Chris@10 3398 AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
Chris@10 3399 [if test -n "$NM"; then
Chris@10 3400 # Let the user override the test.
Chris@10 3401 lt_cv_path_NM="$NM"
Chris@10 3402 else
Chris@10 3403 lt_nm_to_check="${ac_tool_prefix}nm"
Chris@10 3404 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
Chris@10 3405 lt_nm_to_check="$lt_nm_to_check nm"
Chris@10 3406 fi
Chris@10 3407 for lt_tmp_nm in $lt_nm_to_check; do
Chris@10 3408 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
Chris@10 3409 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
Chris@10 3410 IFS="$lt_save_ifs"
Chris@10 3411 test -z "$ac_dir" && ac_dir=.
Chris@10 3412 tmp_nm="$ac_dir/$lt_tmp_nm"
Chris@10 3413 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
Chris@10 3414 # Check to see if the nm accepts a BSD-compat flag.
Chris@10 3415 # Adding the `sed 1q' prevents false positives on HP-UX, which says:
Chris@10 3416 # nm: unknown option "B" ignored
Chris@10 3417 # Tru64's nm complains that /dev/null is an invalid object file
Chris@10 3418 case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
Chris@10 3419 */dev/null* | *'Invalid file or object type'*)
Chris@10 3420 lt_cv_path_NM="$tmp_nm -B"
Chris@10 3421 break
Chris@10 3422 ;;
Chris@10 3423 *)
Chris@10 3424 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
Chris@10 3425 */dev/null*)
Chris@10 3426 lt_cv_path_NM="$tmp_nm -p"
Chris@10 3427 break
Chris@10 3428 ;;
Chris@10 3429 *)
Chris@10 3430 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
Chris@10 3431 continue # so that we can try to find one that supports BSD flags
Chris@10 3432 ;;
Chris@10 3433 esac
Chris@10 3434 ;;
Chris@10 3435 esac
Chris@10 3436 fi
Chris@10 3437 done
Chris@10 3438 IFS="$lt_save_ifs"
Chris@10 3439 done
Chris@10 3440 : ${lt_cv_path_NM=no}
Chris@10 3441 fi])
Chris@10 3442 if test "$lt_cv_path_NM" != "no"; then
Chris@10 3443 NM="$lt_cv_path_NM"
Chris@10 3444 else
Chris@10 3445 # Didn't find any BSD compatible name lister, look for dumpbin.
Chris@10 3446 if test -n "$DUMPBIN"; then :
Chris@10 3447 # Let the user override the test.
Chris@10 3448 else
Chris@10 3449 AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
Chris@10 3450 case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
Chris@10 3451 *COFF*)
Chris@10 3452 DUMPBIN="$DUMPBIN -symbols"
Chris@10 3453 ;;
Chris@10 3454 *)
Chris@10 3455 DUMPBIN=:
Chris@10 3456 ;;
Chris@10 3457 esac
Chris@10 3458 fi
Chris@10 3459 AC_SUBST([DUMPBIN])
Chris@10 3460 if test "$DUMPBIN" != ":"; then
Chris@10 3461 NM="$DUMPBIN"
Chris@10 3462 fi
Chris@10 3463 fi
Chris@10 3464 test -z "$NM" && NM=nm
Chris@10 3465 AC_SUBST([NM])
Chris@10 3466 _LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
Chris@10 3467
Chris@10 3468 AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
Chris@10 3469 [lt_cv_nm_interface="BSD nm"
Chris@10 3470 echo "int some_variable = 0;" > conftest.$ac_ext
Chris@10 3471 (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
Chris@10 3472 (eval "$ac_compile" 2>conftest.err)
Chris@10 3473 cat conftest.err >&AS_MESSAGE_LOG_FD
Chris@10 3474 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
Chris@10 3475 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
Chris@10 3476 cat conftest.err >&AS_MESSAGE_LOG_FD
Chris@10 3477 (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
Chris@10 3478 cat conftest.out >&AS_MESSAGE_LOG_FD
Chris@10 3479 if $GREP 'External.*some_variable' conftest.out > /dev/null; then
Chris@10 3480 lt_cv_nm_interface="MS dumpbin"
Chris@10 3481 fi
Chris@10 3482 rm -f conftest*])
Chris@10 3483 ])# LT_PATH_NM
Chris@10 3484
Chris@10 3485 # Old names:
Chris@10 3486 AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
Chris@10 3487 AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
Chris@10 3488 dnl aclocal-1.4 backwards compatibility:
Chris@10 3489 dnl AC_DEFUN([AM_PROG_NM], [])
Chris@10 3490 dnl AC_DEFUN([AC_PROG_NM], [])
Chris@10 3491
Chris@10 3492 # _LT_CHECK_SHAREDLIB_FROM_LINKLIB
Chris@10 3493 # --------------------------------
Chris@10 3494 # how to determine the name of the shared library
Chris@10 3495 # associated with a specific link library.
Chris@10 3496 # -- PORTME fill in with the dynamic library characteristics
Chris@10 3497 m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
Chris@10 3498 [m4_require([_LT_DECL_EGREP])
Chris@10 3499 m4_require([_LT_DECL_OBJDUMP])
Chris@10 3500 m4_require([_LT_DECL_DLLTOOL])
Chris@10 3501 AC_CACHE_CHECK([how to associate runtime and link libraries],
Chris@10 3502 lt_cv_sharedlib_from_linklib_cmd,
Chris@10 3503 [lt_cv_sharedlib_from_linklib_cmd='unknown'
Chris@10 3504
Chris@10 3505 case $host_os in
Chris@10 3506 cygwin* | mingw* | pw32* | cegcc*)
Chris@10 3507 # two different shell functions defined in ltmain.sh
Chris@10 3508 # decide which to use based on capabilities of $DLLTOOL
Chris@10 3509 case `$DLLTOOL --help 2>&1` in
Chris@10 3510 *--identify-strict*)
Chris@10 3511 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
Chris@10 3512 ;;
Chris@10 3513 *)
Chris@10 3514 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
Chris@10 3515 ;;
Chris@10 3516 esac
Chris@10 3517 ;;
Chris@10 3518 *)
Chris@10 3519 # fallback: assume linklib IS sharedlib
Chris@10 3520 lt_cv_sharedlib_from_linklib_cmd="$ECHO"
Chris@10 3521 ;;
Chris@10 3522 esac
Chris@10 3523 ])
Chris@10 3524 sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
Chris@10 3525 test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
Chris@10 3526
Chris@10 3527 _LT_DECL([], [sharedlib_from_linklib_cmd], [1],
Chris@10 3528 [Command to associate shared and link libraries])
Chris@10 3529 ])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
Chris@10 3530
Chris@10 3531
Chris@10 3532 # _LT_PATH_MANIFEST_TOOL
Chris@10 3533 # ----------------------
Chris@10 3534 # locate the manifest tool
Chris@10 3535 m4_defun([_LT_PATH_MANIFEST_TOOL],
Chris@10 3536 [AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
Chris@10 3537 test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
Chris@10 3538 AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
Chris@10 3539 [lt_cv_path_mainfest_tool=no
Chris@10 3540 echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
Chris@10 3541 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
Chris@10 3542 cat conftest.err >&AS_MESSAGE_LOG_FD
Chris@10 3543 if $GREP 'Manifest Tool' conftest.out > /dev/null; then
Chris@10 3544 lt_cv_path_mainfest_tool=yes
Chris@10 3545 fi
Chris@10 3546 rm -f conftest*])
Chris@10 3547 if test "x$lt_cv_path_mainfest_tool" != xyes; then
Chris@10 3548 MANIFEST_TOOL=:
Chris@10 3549 fi
Chris@10 3550 _LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
Chris@10 3551 ])# _LT_PATH_MANIFEST_TOOL
Chris@10 3552
Chris@10 3553
Chris@10 3554 # LT_LIB_M
Chris@10 3555 # --------
Chris@10 3556 # check for math library
Chris@10 3557 AC_DEFUN([LT_LIB_M],
Chris@10 3558 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
Chris@10 3559 LIBM=
Chris@10 3560 case $host in
Chris@10 3561 *-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
Chris@10 3562 # These system don't have libm, or don't need it
Chris@10 3563 ;;
Chris@10 3564 *-ncr-sysv4.3*)
Chris@10 3565 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
Chris@10 3566 AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
Chris@10 3567 ;;
Chris@10 3568 *)
Chris@10 3569 AC_CHECK_LIB(m, cos, LIBM="-lm")
Chris@10 3570 ;;
Chris@10 3571 esac
Chris@10 3572 AC_SUBST([LIBM])
Chris@10 3573 ])# LT_LIB_M
Chris@10 3574
Chris@10 3575 # Old name:
Chris@10 3576 AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
Chris@10 3577 dnl aclocal-1.4 backwards compatibility:
Chris@10 3578 dnl AC_DEFUN([AC_CHECK_LIBM], [])
Chris@10 3579
Chris@10 3580
Chris@10 3581 # _LT_COMPILER_NO_RTTI([TAGNAME])
Chris@10 3582 # -------------------------------
Chris@10 3583 m4_defun([_LT_COMPILER_NO_RTTI],
Chris@10 3584 [m4_require([_LT_TAG_COMPILER])dnl
Chris@10 3585
Chris@10 3586 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
Chris@10 3587
Chris@10 3588 if test "$GCC" = yes; then
Chris@10 3589 case $cc_basename in
Chris@10 3590 nvcc*)
Chris@10 3591 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
Chris@10 3592 *)
Chris@10 3593 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
Chris@10 3594 esac
Chris@10 3595
Chris@10 3596 _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
Chris@10 3597 lt_cv_prog_compiler_rtti_exceptions,
Chris@10 3598 [-fno-rtti -fno-exceptions], [],
Chris@10 3599 [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
Chris@10 3600 fi
Chris@10 3601 _LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
Chris@10 3602 [Compiler flag to turn off builtin functions])
Chris@10 3603 ])# _LT_COMPILER_NO_RTTI
Chris@10 3604
Chris@10 3605
Chris@10 3606 # _LT_CMD_GLOBAL_SYMBOLS
Chris@10 3607 # ----------------------
Chris@10 3608 m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
Chris@10 3609 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
Chris@10 3610 AC_REQUIRE([AC_PROG_CC])dnl
Chris@10 3611 AC_REQUIRE([AC_PROG_AWK])dnl
Chris@10 3612 AC_REQUIRE([LT_PATH_NM])dnl
Chris@10 3613 AC_REQUIRE([LT_PATH_LD])dnl
Chris@10 3614 m4_require([_LT_DECL_SED])dnl
Chris@10 3615 m4_require([_LT_DECL_EGREP])dnl
Chris@10 3616 m4_require([_LT_TAG_COMPILER])dnl
Chris@10 3617
Chris@10 3618 # Check for command to grab the raw symbol name followed by C symbol from nm.
Chris@10 3619 AC_MSG_CHECKING([command to parse $NM output from $compiler object])
Chris@10 3620 AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
Chris@10 3621 [
Chris@10 3622 # These are sane defaults that work on at least a few old systems.
Chris@10 3623 # [They come from Ultrix. What could be older than Ultrix?!! ;)]
Chris@10 3624
Chris@10 3625 # Character class describing NM global symbol codes.
Chris@10 3626 symcode='[[BCDEGRST]]'
Chris@10 3627
Chris@10 3628 # Regexp to match symbols that can be accessed directly from C.
Chris@10 3629 sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
Chris@10 3630
Chris@10 3631 # Define system-specific variables.
Chris@10 3632 case $host_os in
Chris@10 3633 aix*)
Chris@10 3634 symcode='[[BCDT]]'
Chris@10 3635 ;;
Chris@10 3636 cygwin* | mingw* | pw32* | cegcc*)
Chris@10 3637 symcode='[[ABCDGISTW]]'
Chris@10 3638 ;;
Chris@10 3639 hpux*)
Chris@10 3640 if test "$host_cpu" = ia64; then
Chris@10 3641 symcode='[[ABCDEGRST]]'
Chris@10 3642 fi
Chris@10 3643 ;;
Chris@10 3644 irix* | nonstopux*)
Chris@10 3645 symcode='[[BCDEGRST]]'
Chris@10 3646 ;;
Chris@10 3647 osf*)
Chris@10 3648 symcode='[[BCDEGQRST]]'
Chris@10 3649 ;;
Chris@10 3650 solaris*)
Chris@10 3651 symcode='[[BDRT]]'
Chris@10 3652 ;;
Chris@10 3653 sco3.2v5*)
Chris@10 3654 symcode='[[DT]]'
Chris@10 3655 ;;
Chris@10 3656 sysv4.2uw2*)
Chris@10 3657 symcode='[[DT]]'
Chris@10 3658 ;;
Chris@10 3659 sysv5* | sco5v6* | unixware* | OpenUNIX*)
Chris@10 3660 symcode='[[ABDT]]'
Chris@10 3661 ;;
Chris@10 3662 sysv4)
Chris@10 3663 symcode='[[DFNSTU]]'
Chris@10 3664 ;;
Chris@10 3665 esac
Chris@10 3666
Chris@10 3667 # If we're using GNU nm, then use its standard symbol codes.
Chris@10 3668 case `$NM -V 2>&1` in
Chris@10 3669 *GNU* | *'with BFD'*)
Chris@10 3670 symcode='[[ABCDGIRSTW]]' ;;
Chris@10 3671 esac
Chris@10 3672
Chris@10 3673 # Transform an extracted symbol line into a proper C declaration.
Chris@10 3674 # Some systems (esp. on ia64) link data and code symbols differently,
Chris@10 3675 # so use this general approach.
Chris@10 3676 lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
Chris@10 3677
Chris@10 3678 # Transform an extracted symbol line into symbol name and symbol address
Chris@10 3679 lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
Chris@10 3680 lt_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'"
Chris@10 3681
Chris@10 3682 # Handle CRLF in mingw tool chain
Chris@10 3683 opt_cr=
Chris@10 3684 case $build_os in
Chris@10 3685 mingw*)
Chris@10 3686 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
Chris@10 3687 ;;
Chris@10 3688 esac
Chris@10 3689
Chris@10 3690 # Try without a prefix underscore, then with it.
Chris@10 3691 for ac_symprfx in "" "_"; do
Chris@10 3692
Chris@10 3693 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
Chris@10 3694 symxfrm="\\1 $ac_symprfx\\2 \\2"
Chris@10 3695
Chris@10 3696 # Write the raw and C identifiers.
Chris@10 3697 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
Chris@10 3698 # Fake it for dumpbin and say T for any non-static function
Chris@10 3699 # and D for any global variable.
Chris@10 3700 # Also find C++ and __fastcall symbols from MSVC++,
Chris@10 3701 # which start with @ or ?.
Chris@10 3702 lt_cv_sys_global_symbol_pipe="$AWK ['"\
Chris@10 3703 " {last_section=section; section=\$ 3};"\
Chris@10 3704 " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
Chris@10 3705 " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
Chris@10 3706 " \$ 0!~/External *\|/{next};"\
Chris@10 3707 " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
Chris@10 3708 " {if(hide[section]) next};"\
Chris@10 3709 " {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
Chris@10 3710 " {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
Chris@10 3711 " s[1]~/^[@?]/{print s[1], s[1]; next};"\
Chris@10 3712 " s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
Chris@10 3713 " ' prfx=^$ac_symprfx]"
Chris@10 3714 else
Chris@10 3715 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
Chris@10 3716 fi
Chris@10 3717 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
Chris@10 3718
Chris@10 3719 # Check to see that the pipe works correctly.
Chris@10 3720 pipe_works=no
Chris@10 3721
Chris@10 3722 rm -f conftest*
Chris@10 3723 cat > conftest.$ac_ext <<_LT_EOF
Chris@10 3724 #ifdef __cplusplus
Chris@10 3725 extern "C" {
Chris@10 3726 #endif
Chris@10 3727 char nm_test_var;
Chris@10 3728 void nm_test_func(void);
Chris@10 3729 void nm_test_func(void){}
Chris@10 3730 #ifdef __cplusplus
Chris@10 3731 }
Chris@10 3732 #endif
Chris@10 3733 int main(){nm_test_var='a';nm_test_func();return(0);}
Chris@10 3734 _LT_EOF
Chris@10 3735
Chris@10 3736 if AC_TRY_EVAL(ac_compile); then
Chris@10 3737 # Now try to grab the symbols.
Chris@10 3738 nlist=conftest.nm
Chris@10 3739 if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
Chris@10 3740 # Try sorting and uniquifying the output.
Chris@10 3741 if sort "$nlist" | uniq > "$nlist"T; then
Chris@10 3742 mv -f "$nlist"T "$nlist"
Chris@10 3743 else
Chris@10 3744 rm -f "$nlist"T
Chris@10 3745 fi
Chris@10 3746
Chris@10 3747 # Make sure that we snagged all the symbols we need.
Chris@10 3748 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
Chris@10 3749 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
Chris@10 3750 cat <<_LT_EOF > conftest.$ac_ext
Chris@10 3751 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
Chris@10 3752 #if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
Chris@10 3753 /* DATA imports from DLLs on WIN32 con't be const, because runtime
Chris@10 3754 relocations are performed -- see ld's documentation on pseudo-relocs. */
Chris@10 3755 # define LT@&t@_DLSYM_CONST
Chris@10 3756 #elif defined(__osf__)
Chris@10 3757 /* This system does not cope well with relocations in const data. */
Chris@10 3758 # define LT@&t@_DLSYM_CONST
Chris@10 3759 #else
Chris@10 3760 # define LT@&t@_DLSYM_CONST const
Chris@10 3761 #endif
Chris@10 3762
Chris@10 3763 #ifdef __cplusplus
Chris@10 3764 extern "C" {
Chris@10 3765 #endif
Chris@10 3766
Chris@10 3767 _LT_EOF
Chris@10 3768 # Now generate the symbol file.
Chris@10 3769 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
Chris@10 3770
Chris@10 3771 cat <<_LT_EOF >> conftest.$ac_ext
Chris@10 3772
Chris@10 3773 /* The mapping between symbol names and symbols. */
Chris@10 3774 LT@&t@_DLSYM_CONST struct {
Chris@10 3775 const char *name;
Chris@10 3776 void *address;
Chris@10 3777 }
Chris@10 3778 lt__PROGRAM__LTX_preloaded_symbols[[]] =
Chris@10 3779 {
Chris@10 3780 { "@PROGRAM@", (void *) 0 },
Chris@10 3781 _LT_EOF
Chris@10 3782 $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
Chris@10 3783 cat <<\_LT_EOF >> conftest.$ac_ext
Chris@10 3784 {0, (void *) 0}
Chris@10 3785 };
Chris@10 3786
Chris@10 3787 /* This works around a problem in FreeBSD linker */
Chris@10 3788 #ifdef FREEBSD_WORKAROUND
Chris@10 3789 static const void *lt_preloaded_setup() {
Chris@10 3790 return lt__PROGRAM__LTX_preloaded_symbols;
Chris@10 3791 }
Chris@10 3792 #endif
Chris@10 3793
Chris@10 3794 #ifdef __cplusplus
Chris@10 3795 }
Chris@10 3796 #endif
Chris@10 3797 _LT_EOF
Chris@10 3798 # Now try linking the two files.
Chris@10 3799 mv conftest.$ac_objext conftstm.$ac_objext
Chris@10 3800 lt_globsym_save_LIBS=$LIBS
Chris@10 3801 lt_globsym_save_CFLAGS=$CFLAGS
Chris@10 3802 LIBS="conftstm.$ac_objext"
Chris@10 3803 CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
Chris@10 3804 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
Chris@10 3805 pipe_works=yes
Chris@10 3806 fi
Chris@10 3807 LIBS=$lt_globsym_save_LIBS
Chris@10 3808 CFLAGS=$lt_globsym_save_CFLAGS
Chris@10 3809 else
Chris@10 3810 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
Chris@10 3811 fi
Chris@10 3812 else
Chris@10 3813 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
Chris@10 3814 fi
Chris@10 3815 else
Chris@10 3816 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
Chris@10 3817 fi
Chris@10 3818 else
Chris@10 3819 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
Chris@10 3820 cat conftest.$ac_ext >&5
Chris@10 3821 fi
Chris@10 3822 rm -rf conftest* conftst*
Chris@10 3823
Chris@10 3824 # Do not use the global_symbol_pipe unless it works.
Chris@10 3825 if test "$pipe_works" = yes; then
Chris@10 3826 break
Chris@10 3827 else
Chris@10 3828 lt_cv_sys_global_symbol_pipe=
Chris@10 3829 fi
Chris@10 3830 done
Chris@10 3831 ])
Chris@10 3832 if test -z "$lt_cv_sys_global_symbol_pipe"; then
Chris@10 3833 lt_cv_sys_global_symbol_to_cdecl=
Chris@10 3834 fi
Chris@10 3835 if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
Chris@10 3836 AC_MSG_RESULT(failed)
Chris@10 3837 else
Chris@10 3838 AC_MSG_RESULT(ok)
Chris@10 3839 fi
Chris@10 3840
Chris@10 3841 # Response file support.
Chris@10 3842 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
Chris@10 3843 nm_file_list_spec='@'
Chris@10 3844 elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
Chris@10 3845 nm_file_list_spec='@'
Chris@10 3846 fi
Chris@10 3847
Chris@10 3848 _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
Chris@10 3849 [Take the output of nm and produce a listing of raw symbols and C names])
Chris@10 3850 _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
Chris@10 3851 [Transform the output of nm in a proper C declaration])
Chris@10 3852 _LT_DECL([global_symbol_to_c_name_address],
Chris@10 3853 [lt_cv_sys_global_symbol_to_c_name_address], [1],
Chris@10 3854 [Transform the output of nm in a C name address pair])
Chris@10 3855 _LT_DECL([global_symbol_to_c_name_address_lib_prefix],
Chris@10 3856 [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
Chris@10 3857 [Transform the output of nm in a C name address pair when lib prefix is needed])
Chris@10 3858 _LT_DECL([], [nm_file_list_spec], [1],
Chris@10 3859 [Specify filename containing input files for $NM])
Chris@10 3860 ]) # _LT_CMD_GLOBAL_SYMBOLS
Chris@10 3861
Chris@10 3862
Chris@10 3863 # _LT_COMPILER_PIC([TAGNAME])
Chris@10 3864 # ---------------------------
Chris@10 3865 m4_defun([_LT_COMPILER_PIC],
Chris@10 3866 [m4_require([_LT_TAG_COMPILER])dnl
Chris@10 3867 _LT_TAGVAR(lt_prog_compiler_wl, $1)=
Chris@10 3868 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
Chris@10 3869 _LT_TAGVAR(lt_prog_compiler_static, $1)=
Chris@10 3870
Chris@10 3871 m4_if([$1], [CXX], [
Chris@10 3872 # C++ specific cases for pic, static, wl, etc.
Chris@10 3873 if test "$GXX" = yes; then
Chris@10 3874 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 3875 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
Chris@10 3876
Chris@10 3877 case $host_os in
Chris@10 3878 aix*)
Chris@10 3879 # All AIX code is PIC.
Chris@10 3880 if test "$host_cpu" = ia64; then
Chris@10 3881 # AIX 5 now supports IA64 processor
Chris@10 3882 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 3883 fi
Chris@10 3884 ;;
Chris@10 3885
Chris@10 3886 amigaos*)
Chris@10 3887 case $host_cpu in
Chris@10 3888 powerpc)
Chris@10 3889 # see comment about AmigaOS4 .so support
Chris@10 3890 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
Chris@10 3891 ;;
Chris@10 3892 m68k)
Chris@10 3893 # FIXME: we need at least 68020 code to build shared libraries, but
Chris@10 3894 # adding the `-m68020' flag to GCC prevents building anything better,
Chris@10 3895 # like `-m68040'.
Chris@10 3896 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
Chris@10 3897 ;;
Chris@10 3898 esac
Chris@10 3899 ;;
Chris@10 3900
Chris@10 3901 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
Chris@10 3902 # PIC is the default for these OSes.
Chris@10 3903 ;;
Chris@10 3904 mingw* | cygwin* | os2* | pw32* | cegcc*)
Chris@10 3905 # This hack is so that the source file can tell whether it is being
Chris@10 3906 # built for inclusion in a dll (and should export symbols for example).
Chris@10 3907 # Although the cygwin gcc ignores -fPIC, still need this for old-style
Chris@10 3908 # (--disable-auto-import) libraries
Chris@10 3909 m4_if([$1], [GCJ], [],
Chris@10 3910 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
Chris@10 3911 ;;
Chris@10 3912 darwin* | rhapsody*)
Chris@10 3913 # PIC is the default on this platform
Chris@10 3914 # Common symbols not allowed in MH_DYLIB files
Chris@10 3915 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
Chris@10 3916 ;;
Chris@10 3917 *djgpp*)
Chris@10 3918 # DJGPP does not support shared libraries at all
Chris@10 3919 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
Chris@10 3920 ;;
Chris@10 3921 haiku*)
Chris@10 3922 # PIC is the default for Haiku.
Chris@10 3923 # The "-static" flag exists, but is broken.
Chris@10 3924 _LT_TAGVAR(lt_prog_compiler_static, $1)=
Chris@10 3925 ;;
Chris@10 3926 interix[[3-9]]*)
Chris@10 3927 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
Chris@10 3928 # Instead, we relocate shared libraries at runtime.
Chris@10 3929 ;;
Chris@10 3930 sysv4*MP*)
Chris@10 3931 if test -d /usr/nec; then
Chris@10 3932 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
Chris@10 3933 fi
Chris@10 3934 ;;
Chris@10 3935 hpux*)
Chris@10 3936 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
Chris@10 3937 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
Chris@10 3938 # sets the default TLS model and affects inlining.
Chris@10 3939 case $host_cpu in
Chris@10 3940 hppa*64*)
Chris@10 3941 ;;
Chris@10 3942 *)
Chris@10 3943 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
Chris@10 3944 ;;
Chris@10 3945 esac
Chris@10 3946 ;;
Chris@10 3947 *qnx* | *nto*)
Chris@10 3948 # QNX uses GNU C++, but need to define -shared option too, otherwise
Chris@10 3949 # it will coredump.
Chris@10 3950 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
Chris@10 3951 ;;
Chris@10 3952 *)
Chris@10 3953 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
Chris@10 3954 ;;
Chris@10 3955 esac
Chris@10 3956 else
Chris@10 3957 case $host_os in
Chris@10 3958 aix[[4-9]]*)
Chris@10 3959 # All AIX code is PIC.
Chris@10 3960 if test "$host_cpu" = ia64; then
Chris@10 3961 # AIX 5 now supports IA64 processor
Chris@10 3962 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 3963 else
Chris@10 3964 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
Chris@10 3965 fi
Chris@10 3966 ;;
Chris@10 3967 chorus*)
Chris@10 3968 case $cc_basename in
Chris@10 3969 cxch68*)
Chris@10 3970 # Green Hills C++ Compiler
Chris@10 3971 # _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"
Chris@10 3972 ;;
Chris@10 3973 esac
Chris@10 3974 ;;
Chris@10 3975 mingw* | cygwin* | os2* | pw32* | cegcc*)
Chris@10 3976 # This hack is so that the source file can tell whether it is being
Chris@10 3977 # built for inclusion in a dll (and should export symbols for example).
Chris@10 3978 m4_if([$1], [GCJ], [],
Chris@10 3979 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
Chris@10 3980 ;;
Chris@10 3981 dgux*)
Chris@10 3982 case $cc_basename in
Chris@10 3983 ec++*)
Chris@10 3984 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
Chris@10 3985 ;;
Chris@10 3986 ghcx*)
Chris@10 3987 # Green Hills C++ Compiler
Chris@10 3988 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
Chris@10 3989 ;;
Chris@10 3990 *)
Chris@10 3991 ;;
Chris@10 3992 esac
Chris@10 3993 ;;
Chris@10 3994 freebsd* | dragonfly*)
Chris@10 3995 # FreeBSD uses GNU C++
Chris@10 3996 ;;
Chris@10 3997 hpux9* | hpux10* | hpux11*)
Chris@10 3998 case $cc_basename in
Chris@10 3999 CC*)
Chris@10 4000 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4001 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
Chris@10 4002 if test "$host_cpu" != ia64; then
Chris@10 4003 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
Chris@10 4004 fi
Chris@10 4005 ;;
Chris@10 4006 aCC*)
Chris@10 4007 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4008 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
Chris@10 4009 case $host_cpu in
Chris@10 4010 hppa*64*|ia64*)
Chris@10 4011 # +Z the default
Chris@10 4012 ;;
Chris@10 4013 *)
Chris@10 4014 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
Chris@10 4015 ;;
Chris@10 4016 esac
Chris@10 4017 ;;
Chris@10 4018 *)
Chris@10 4019 ;;
Chris@10 4020 esac
Chris@10 4021 ;;
Chris@10 4022 interix*)
Chris@10 4023 # This is c89, which is MS Visual C++ (no shared libs)
Chris@10 4024 # Anyone wants to do a port?
Chris@10 4025 ;;
Chris@10 4026 irix5* | irix6* | nonstopux*)
Chris@10 4027 case $cc_basename in
Chris@10 4028 CC*)
Chris@10 4029 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4030 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
Chris@10 4031 # CC pic flag -KPIC is the default.
Chris@10 4032 ;;
Chris@10 4033 *)
Chris@10 4034 ;;
Chris@10 4035 esac
Chris@10 4036 ;;
Chris@10 4037 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
Chris@10 4038 case $cc_basename in
Chris@10 4039 KCC*)
Chris@10 4040 # KAI C++ Compiler
Chris@10 4041 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
Chris@10 4042 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
Chris@10 4043 ;;
Chris@10 4044 ecpc* )
Chris@10 4045 # old Intel C++ for x86_64 which still supported -KPIC.
Chris@10 4046 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4047 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
Chris@10 4048 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
Chris@10 4049 ;;
Chris@10 4050 icpc* )
Chris@10 4051 # Intel C++, used to be incompatible with GCC.
Chris@10 4052 # ICC 10 doesn't accept -KPIC any more.
Chris@10 4053 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4054 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
Chris@10 4055 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
Chris@10 4056 ;;
Chris@10 4057 pgCC* | pgcpp*)
Chris@10 4058 # Portland Group C++ compiler
Chris@10 4059 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4060 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
Chris@10 4061 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4062 ;;
Chris@10 4063 cxx*)
Chris@10 4064 # Compaq C++
Chris@10 4065 # Make sure the PIC flag is empty. It appears that all Alpha
Chris@10 4066 # Linux and Compaq Tru64 Unix objects are PIC.
Chris@10 4067 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
Chris@10 4068 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
Chris@10 4069 ;;
Chris@10 4070 xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
Chris@10 4071 # IBM XL 8.0, 9.0 on PPC and BlueGene
Chris@10 4072 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4073 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
Chris@10 4074 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
Chris@10 4075 ;;
Chris@10 4076 *)
Chris@10 4077 case `$CC -V 2>&1 | sed 5q` in
Chris@10 4078 *Sun\ C*)
Chris@10 4079 # Sun C++ 5.9
Chris@10 4080 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
Chris@10 4081 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4082 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
Chris@10 4083 ;;
Chris@10 4084 esac
Chris@10 4085 ;;
Chris@10 4086 esac
Chris@10 4087 ;;
Chris@10 4088 lynxos*)
Chris@10 4089 ;;
Chris@10 4090 m88k*)
Chris@10 4091 ;;
Chris@10 4092 mvs*)
Chris@10 4093 case $cc_basename in
Chris@10 4094 cxx*)
Chris@10 4095 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
Chris@10 4096 ;;
Chris@10 4097 *)
Chris@10 4098 ;;
Chris@10 4099 esac
Chris@10 4100 ;;
Chris@10 4101 netbsd* | netbsdelf*-gnu)
Chris@10 4102 ;;
Chris@10 4103 *qnx* | *nto*)
Chris@10 4104 # QNX uses GNU C++, but need to define -shared option too, otherwise
Chris@10 4105 # it will coredump.
Chris@10 4106 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
Chris@10 4107 ;;
Chris@10 4108 osf3* | osf4* | osf5*)
Chris@10 4109 case $cc_basename in
Chris@10 4110 KCC*)
Chris@10 4111 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
Chris@10 4112 ;;
Chris@10 4113 RCC*)
Chris@10 4114 # Rational C++ 2.4.1
Chris@10 4115 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
Chris@10 4116 ;;
Chris@10 4117 cxx*)
Chris@10 4118 # Digital/Compaq C++
Chris@10 4119 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4120 # Make sure the PIC flag is empty. It appears that all Alpha
Chris@10 4121 # Linux and Compaq Tru64 Unix objects are PIC.
Chris@10 4122 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
Chris@10 4123 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
Chris@10 4124 ;;
Chris@10 4125 *)
Chris@10 4126 ;;
Chris@10 4127 esac
Chris@10 4128 ;;
Chris@10 4129 psos*)
Chris@10 4130 ;;
Chris@10 4131 solaris*)
Chris@10 4132 case $cc_basename in
Chris@10 4133 CC* | sunCC*)
Chris@10 4134 # Sun C++ 4.2, 5.x and Centerline C++
Chris@10 4135 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
Chris@10 4136 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4137 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
Chris@10 4138 ;;
Chris@10 4139 gcx*)
Chris@10 4140 # Green Hills C++ Compiler
Chris@10 4141 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
Chris@10 4142 ;;
Chris@10 4143 *)
Chris@10 4144 ;;
Chris@10 4145 esac
Chris@10 4146 ;;
Chris@10 4147 sunos4*)
Chris@10 4148 case $cc_basename in
Chris@10 4149 CC*)
Chris@10 4150 # Sun C++ 4.x
Chris@10 4151 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
Chris@10 4152 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4153 ;;
Chris@10 4154 lcc*)
Chris@10 4155 # Lucid
Chris@10 4156 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
Chris@10 4157 ;;
Chris@10 4158 *)
Chris@10 4159 ;;
Chris@10 4160 esac
Chris@10 4161 ;;
Chris@10 4162 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
Chris@10 4163 case $cc_basename in
Chris@10 4164 CC*)
Chris@10 4165 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4166 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
Chris@10 4167 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4168 ;;
Chris@10 4169 esac
Chris@10 4170 ;;
Chris@10 4171 tandem*)
Chris@10 4172 case $cc_basename in
Chris@10 4173 NCC*)
Chris@10 4174 # NonStop-UX NCC 3.20
Chris@10 4175 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
Chris@10 4176 ;;
Chris@10 4177 *)
Chris@10 4178 ;;
Chris@10 4179 esac
Chris@10 4180 ;;
Chris@10 4181 vxworks*)
Chris@10 4182 ;;
Chris@10 4183 *)
Chris@10 4184 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
Chris@10 4185 ;;
Chris@10 4186 esac
Chris@10 4187 fi
Chris@10 4188 ],
Chris@10 4189 [
Chris@10 4190 if test "$GCC" = yes; then
Chris@10 4191 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4192 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
Chris@10 4193
Chris@10 4194 case $host_os in
Chris@10 4195 aix*)
Chris@10 4196 # All AIX code is PIC.
Chris@10 4197 if test "$host_cpu" = ia64; then
Chris@10 4198 # AIX 5 now supports IA64 processor
Chris@10 4199 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4200 fi
Chris@10 4201 ;;
Chris@10 4202
Chris@10 4203 amigaos*)
Chris@10 4204 case $host_cpu in
Chris@10 4205 powerpc)
Chris@10 4206 # see comment about AmigaOS4 .so support
Chris@10 4207 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
Chris@10 4208 ;;
Chris@10 4209 m68k)
Chris@10 4210 # FIXME: we need at least 68020 code to build shared libraries, but
Chris@10 4211 # adding the `-m68020' flag to GCC prevents building anything better,
Chris@10 4212 # like `-m68040'.
Chris@10 4213 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
Chris@10 4214 ;;
Chris@10 4215 esac
Chris@10 4216 ;;
Chris@10 4217
Chris@10 4218 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
Chris@10 4219 # PIC is the default for these OSes.
Chris@10 4220 ;;
Chris@10 4221
Chris@10 4222 mingw* | cygwin* | pw32* | os2* | cegcc*)
Chris@10 4223 # This hack is so that the source file can tell whether it is being
Chris@10 4224 # built for inclusion in a dll (and should export symbols for example).
Chris@10 4225 # Although the cygwin gcc ignores -fPIC, still need this for old-style
Chris@10 4226 # (--disable-auto-import) libraries
Chris@10 4227 m4_if([$1], [GCJ], [],
Chris@10 4228 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
Chris@10 4229 ;;
Chris@10 4230
Chris@10 4231 darwin* | rhapsody*)
Chris@10 4232 # PIC is the default on this platform
Chris@10 4233 # Common symbols not allowed in MH_DYLIB files
Chris@10 4234 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
Chris@10 4235 ;;
Chris@10 4236
Chris@10 4237 haiku*)
Chris@10 4238 # PIC is the default for Haiku.
Chris@10 4239 # The "-static" flag exists, but is broken.
Chris@10 4240 _LT_TAGVAR(lt_prog_compiler_static, $1)=
Chris@10 4241 ;;
Chris@10 4242
Chris@10 4243 hpux*)
Chris@10 4244 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
Chris@10 4245 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
Chris@10 4246 # sets the default TLS model and affects inlining.
Chris@10 4247 case $host_cpu in
Chris@10 4248 hppa*64*)
Chris@10 4249 # +Z the default
Chris@10 4250 ;;
Chris@10 4251 *)
Chris@10 4252 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
Chris@10 4253 ;;
Chris@10 4254 esac
Chris@10 4255 ;;
Chris@10 4256
Chris@10 4257 interix[[3-9]]*)
Chris@10 4258 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
Chris@10 4259 # Instead, we relocate shared libraries at runtime.
Chris@10 4260 ;;
Chris@10 4261
Chris@10 4262 msdosdjgpp*)
Chris@10 4263 # Just because we use GCC doesn't mean we suddenly get shared libraries
Chris@10 4264 # on systems that don't support them.
Chris@10 4265 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
Chris@10 4266 enable_shared=no
Chris@10 4267 ;;
Chris@10 4268
Chris@10 4269 *nto* | *qnx*)
Chris@10 4270 # QNX uses GNU C++, but need to define -shared option too, otherwise
Chris@10 4271 # it will coredump.
Chris@10 4272 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
Chris@10 4273 ;;
Chris@10 4274
Chris@10 4275 sysv4*MP*)
Chris@10 4276 if test -d /usr/nec; then
Chris@10 4277 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
Chris@10 4278 fi
Chris@10 4279 ;;
Chris@10 4280
Chris@10 4281 *)
Chris@10 4282 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
Chris@10 4283 ;;
Chris@10 4284 esac
Chris@10 4285
Chris@10 4286 case $cc_basename in
Chris@10 4287 nvcc*) # Cuda Compiler Driver 2.2
Chris@10 4288 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
Chris@10 4289 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
Chris@10 4290 _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
Chris@10 4291 fi
Chris@10 4292 ;;
Chris@10 4293 esac
Chris@10 4294 else
Chris@10 4295 # PORTME Check for flag to pass linker flags through the system compiler.
Chris@10 4296 case $host_os in
Chris@10 4297 aix*)
Chris@10 4298 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4299 if test "$host_cpu" = ia64; then
Chris@10 4300 # AIX 5 now supports IA64 processor
Chris@10 4301 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4302 else
Chris@10 4303 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
Chris@10 4304 fi
Chris@10 4305 ;;
Chris@10 4306
Chris@10 4307 mingw* | cygwin* | pw32* | os2* | cegcc*)
Chris@10 4308 # This hack is so that the source file can tell whether it is being
Chris@10 4309 # built for inclusion in a dll (and should export symbols for example).
Chris@10 4310 m4_if([$1], [GCJ], [],
Chris@10 4311 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
Chris@10 4312 ;;
Chris@10 4313
Chris@10 4314 hpux9* | hpux10* | hpux11*)
Chris@10 4315 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4316 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
Chris@10 4317 # not for PA HP-UX.
Chris@10 4318 case $host_cpu in
Chris@10 4319 hppa*64*|ia64*)
Chris@10 4320 # +Z the default
Chris@10 4321 ;;
Chris@10 4322 *)
Chris@10 4323 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
Chris@10 4324 ;;
Chris@10 4325 esac
Chris@10 4326 # Is there a better lt_prog_compiler_static that works with the bundled CC?
Chris@10 4327 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
Chris@10 4328 ;;
Chris@10 4329
Chris@10 4330 irix5* | irix6* | nonstopux*)
Chris@10 4331 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4332 # PIC (with -KPIC) is the default.
Chris@10 4333 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
Chris@10 4334 ;;
Chris@10 4335
Chris@10 4336 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
Chris@10 4337 case $cc_basename in
Chris@10 4338 # old Intel for x86_64 which still supported -KPIC.
Chris@10 4339 ecc*)
Chris@10 4340 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4341 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
Chris@10 4342 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
Chris@10 4343 ;;
Chris@10 4344 # icc used to be incompatible with GCC.
Chris@10 4345 # ICC 10 doesn't accept -KPIC any more.
Chris@10 4346 icc* | ifort*)
Chris@10 4347 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4348 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
Chris@10 4349 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
Chris@10 4350 ;;
Chris@10 4351 # Lahey Fortran 8.1.
Chris@10 4352 lf95*)
Chris@10 4353 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4354 _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
Chris@10 4355 _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
Chris@10 4356 ;;
Chris@10 4357 nagfor*)
Chris@10 4358 # NAG Fortran compiler
Chris@10 4359 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
Chris@10 4360 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
Chris@10 4361 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4362 ;;
Chris@10 4363 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
Chris@10 4364 # Portland Group compilers (*not* the Pentium gcc compiler,
Chris@10 4365 # which looks to be a dead project)
Chris@10 4366 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4367 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
Chris@10 4368 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4369 ;;
Chris@10 4370 ccc*)
Chris@10 4371 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4372 # All Alpha code is PIC.
Chris@10 4373 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
Chris@10 4374 ;;
Chris@10 4375 xl* | bgxl* | bgf* | mpixl*)
Chris@10 4376 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
Chris@10 4377 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4378 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
Chris@10 4379 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
Chris@10 4380 ;;
Chris@10 4381 *)
Chris@10 4382 case `$CC -V 2>&1 | sed 5q` in
Chris@10 4383 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
Chris@10 4384 # Sun Fortran 8.3 passes all unrecognized flags to the linker
Chris@10 4385 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
Chris@10 4386 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4387 _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
Chris@10 4388 ;;
Chris@10 4389 *Sun\ F* | *Sun*Fortran*)
Chris@10 4390 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
Chris@10 4391 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4392 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
Chris@10 4393 ;;
Chris@10 4394 *Sun\ C*)
Chris@10 4395 # Sun C 5.9
Chris@10 4396 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
Chris@10 4397 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4398 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4399 ;;
Chris@10 4400 *Intel*\ [[CF]]*Compiler*)
Chris@10 4401 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4402 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
Chris@10 4403 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
Chris@10 4404 ;;
Chris@10 4405 *Portland\ Group*)
Chris@10 4406 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4407 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
Chris@10 4408 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4409 ;;
Chris@10 4410 esac
Chris@10 4411 ;;
Chris@10 4412 esac
Chris@10 4413 ;;
Chris@10 4414
Chris@10 4415 newsos6)
Chris@10 4416 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
Chris@10 4417 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4418 ;;
Chris@10 4419
Chris@10 4420 *nto* | *qnx*)
Chris@10 4421 # QNX uses GNU C++, but need to define -shared option too, otherwise
Chris@10 4422 # it will coredump.
Chris@10 4423 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
Chris@10 4424 ;;
Chris@10 4425
Chris@10 4426 osf3* | osf4* | osf5*)
Chris@10 4427 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4428 # All OSF/1 code is PIC.
Chris@10 4429 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
Chris@10 4430 ;;
Chris@10 4431
Chris@10 4432 rdos*)
Chris@10 4433 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
Chris@10 4434 ;;
Chris@10 4435
Chris@10 4436 solaris*)
Chris@10 4437 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
Chris@10 4438 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4439 case $cc_basename in
Chris@10 4440 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
Chris@10 4441 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
Chris@10 4442 *)
Chris@10 4443 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
Chris@10 4444 esac
Chris@10 4445 ;;
Chris@10 4446
Chris@10 4447 sunos4*)
Chris@10 4448 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
Chris@10 4449 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
Chris@10 4450 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4451 ;;
Chris@10 4452
Chris@10 4453 sysv4 | sysv4.2uw2* | sysv4.3*)
Chris@10 4454 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4455 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
Chris@10 4456 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4457 ;;
Chris@10 4458
Chris@10 4459 sysv4*MP*)
Chris@10 4460 if test -d /usr/nec ;then
Chris@10 4461 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
Chris@10 4462 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4463 fi
Chris@10 4464 ;;
Chris@10 4465
Chris@10 4466 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
Chris@10 4467 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4468 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
Chris@10 4469 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4470 ;;
Chris@10 4471
Chris@10 4472 unicos*)
Chris@10 4473 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Chris@10 4474 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
Chris@10 4475 ;;
Chris@10 4476
Chris@10 4477 uts4*)
Chris@10 4478 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
Chris@10 4479 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Chris@10 4480 ;;
Chris@10 4481
Chris@10 4482 *)
Chris@10 4483 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
Chris@10 4484 ;;
Chris@10 4485 esac
Chris@10 4486 fi
Chris@10 4487 ])
Chris@10 4488 case $host_os in
Chris@10 4489 # For platforms which do not support PIC, -DPIC is meaningless:
Chris@10 4490 *djgpp*)
Chris@10 4491 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
Chris@10 4492 ;;
Chris@10 4493 *)
Chris@10 4494 _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
Chris@10 4495 ;;
Chris@10 4496 esac
Chris@10 4497
Chris@10 4498 AC_CACHE_CHECK([for $compiler option to produce PIC],
Chris@10 4499 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
Chris@10 4500 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
Chris@10 4501 _LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
Chris@10 4502
Chris@10 4503 #
Chris@10 4504 # Check to make sure the PIC flag actually works.
Chris@10 4505 #
Chris@10 4506 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
Chris@10 4507 _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
Chris@10 4508 [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
Chris@10 4509 [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
Chris@10 4510 [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
Chris@10 4511 "" | " "*) ;;
Chris@10 4512 *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
Chris@10 4513 esac],
Chris@10 4514 [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
Chris@10 4515 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
Chris@10 4516 fi
Chris@10 4517 _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
Chris@10 4518 [Additional compiler flags for building library objects])
Chris@10 4519
Chris@10 4520 _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
Chris@10 4521 [How to pass a linker flag through the compiler])
Chris@10 4522 #
Chris@10 4523 # Check to make sure the static flag actually works.
Chris@10 4524 #
Chris@10 4525 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
Chris@10 4526 _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
Chris@10 4527 _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
Chris@10 4528 $lt_tmp_static_flag,
Chris@10 4529 [],
Chris@10 4530 [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
Chris@10 4531 _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
Chris@10 4532 [Compiler flag to prevent dynamic linking])
Chris@10 4533 ])# _LT_COMPILER_PIC
Chris@10 4534
Chris@10 4535
Chris@10 4536 # _LT_LINKER_SHLIBS([TAGNAME])
Chris@10 4537 # ----------------------------
Chris@10 4538 # See if the linker supports building shared libraries.
Chris@10 4539 m4_defun([_LT_LINKER_SHLIBS],
Chris@10 4540 [AC_REQUIRE([LT_PATH_LD])dnl
Chris@10 4541 AC_REQUIRE([LT_PATH_NM])dnl
Chris@10 4542 m4_require([_LT_PATH_MANIFEST_TOOL])dnl
Chris@10 4543 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
Chris@10 4544 m4_require([_LT_DECL_EGREP])dnl
Chris@10 4545 m4_require([_LT_DECL_SED])dnl
Chris@10 4546 m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
Chris@10 4547 m4_require([_LT_TAG_COMPILER])dnl
Chris@10 4548 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
Chris@10 4549 m4_if([$1], [CXX], [
Chris@10 4550 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
Chris@10 4551 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
Chris@10 4552 case $host_os in
Chris@10 4553 aix[[4-9]]*)
Chris@10 4554 # If we're using GNU nm, then we don't want the "-C" option.
Chris@10 4555 # -C means demangle to AIX nm, but means don't demangle with GNU nm
Chris@10 4556 # Also, AIX nm treats weak defined symbols like other global defined
Chris@10 4557 # symbols, whereas GNU nm marks them as "W".
Chris@10 4558 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
Chris@10 4559 _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'
Chris@10 4560 else
Chris@10 4561 _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'
Chris@10 4562 fi
Chris@10 4563 ;;
Chris@10 4564 pw32*)
Chris@10 4565 _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
Chris@10 4566 ;;
Chris@10 4567 cygwin* | mingw* | cegcc*)
Chris@10 4568 case $cc_basename in
Chris@10 4569 cl*)
Chris@10 4570 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
Chris@10 4571 ;;
Chris@10 4572 *)
Chris@10 4573 _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'
Chris@10 4574 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
Chris@10 4575 ;;
Chris@10 4576 esac
Chris@10 4577 ;;
Chris@10 4578 linux* | k*bsd*-gnu | gnu*)
Chris@10 4579 _LT_TAGVAR(link_all_deplibs, $1)=no
Chris@10 4580 ;;
Chris@10 4581 *)
Chris@10 4582 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
Chris@10 4583 ;;
Chris@10 4584 esac
Chris@10 4585 ], [
Chris@10 4586 runpath_var=
Chris@10 4587 _LT_TAGVAR(allow_undefined_flag, $1)=
Chris@10 4588 _LT_TAGVAR(always_export_symbols, $1)=no
Chris@10 4589 _LT_TAGVAR(archive_cmds, $1)=
Chris@10 4590 _LT_TAGVAR(archive_expsym_cmds, $1)=
Chris@10 4591 _LT_TAGVAR(compiler_needs_object, $1)=no
Chris@10 4592 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
Chris@10 4593 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
Chris@10 4594 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
Chris@10 4595 _LT_TAGVAR(hardcode_automatic, $1)=no
Chris@10 4596 _LT_TAGVAR(hardcode_direct, $1)=no
Chris@10 4597 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
Chris@10 4598 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
Chris@10 4599 _LT_TAGVAR(hardcode_libdir_separator, $1)=
Chris@10 4600 _LT_TAGVAR(hardcode_minus_L, $1)=no
Chris@10 4601 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
Chris@10 4602 _LT_TAGVAR(inherit_rpath, $1)=no
Chris@10 4603 _LT_TAGVAR(link_all_deplibs, $1)=unknown
Chris@10 4604 _LT_TAGVAR(module_cmds, $1)=
Chris@10 4605 _LT_TAGVAR(module_expsym_cmds, $1)=
Chris@10 4606 _LT_TAGVAR(old_archive_from_new_cmds, $1)=
Chris@10 4607 _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
Chris@10 4608 _LT_TAGVAR(thread_safe_flag_spec, $1)=
Chris@10 4609 _LT_TAGVAR(whole_archive_flag_spec, $1)=
Chris@10 4610 # include_expsyms should be a list of space-separated symbols to be *always*
Chris@10 4611 # included in the symbol list
Chris@10 4612 _LT_TAGVAR(include_expsyms, $1)=
Chris@10 4613 # exclude_expsyms can be an extended regexp of symbols to exclude
Chris@10 4614 # it will be wrapped by ` (' and `)$', so one must not match beginning or
Chris@10 4615 # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
Chris@10 4616 # as well as any symbol that contains `d'.
Chris@10 4617 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
Chris@10 4618 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
Chris@10 4619 # platforms (ab)use it in PIC code, but their linkers get confused if
Chris@10 4620 # the symbol is explicitly referenced. Since portable code cannot
Chris@10 4621 # rely on this symbol name, it's probably fine to never include it in
Chris@10 4622 # preloaded symbol tables.
Chris@10 4623 # Exclude shared library initialization/finalization symbols.
Chris@10 4624 dnl Note also adjust exclude_expsyms for C++ above.
Chris@10 4625 extract_expsyms_cmds=
Chris@10 4626
Chris@10 4627 case $host_os in
Chris@10 4628 cygwin* | mingw* | pw32* | cegcc*)
Chris@10 4629 # FIXME: the MSVC++ port hasn't been tested in a loooong time
Chris@10 4630 # When not using gcc, we currently assume that we are using
Chris@10 4631 # Microsoft Visual C++.
Chris@10 4632 if test "$GCC" != yes; then
Chris@10 4633 with_gnu_ld=no
Chris@10 4634 fi
Chris@10 4635 ;;
Chris@10 4636 interix*)
Chris@10 4637 # we just hope/assume this is gcc and not c89 (= MSVC++)
Chris@10 4638 with_gnu_ld=yes
Chris@10 4639 ;;
Chris@10 4640 openbsd*)
Chris@10 4641 with_gnu_ld=no
Chris@10 4642 ;;
Chris@10 4643 linux* | k*bsd*-gnu | gnu*)
Chris@10 4644 _LT_TAGVAR(link_all_deplibs, $1)=no
Chris@10 4645 ;;
Chris@10 4646 esac
Chris@10 4647
Chris@10 4648 _LT_TAGVAR(ld_shlibs, $1)=yes
Chris@10 4649
Chris@10 4650 # On some targets, GNU ld is compatible enough with the native linker
Chris@10 4651 # that we're better off using the native interface for both.
Chris@10 4652 lt_use_gnu_ld_interface=no
Chris@10 4653 if test "$with_gnu_ld" = yes; then
Chris@10 4654 case $host_os in
Chris@10 4655 aix*)
Chris@10 4656 # The AIX port of GNU ld has always aspired to compatibility
Chris@10 4657 # with the native linker. However, as the warning in the GNU ld
Chris@10 4658 # block says, versions before 2.19.5* couldn't really create working
Chris@10 4659 # shared libraries, regardless of the interface used.
Chris@10 4660 case `$LD -v 2>&1` in
Chris@10 4661 *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
Chris@10 4662 *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
Chris@10 4663 *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
Chris@10 4664 *)
Chris@10 4665 lt_use_gnu_ld_interface=yes
Chris@10 4666 ;;
Chris@10 4667 esac
Chris@10 4668 ;;
Chris@10 4669 *)
Chris@10 4670 lt_use_gnu_ld_interface=yes
Chris@10 4671 ;;
Chris@10 4672 esac
Chris@10 4673 fi
Chris@10 4674
Chris@10 4675 if test "$lt_use_gnu_ld_interface" = yes; then
Chris@10 4676 # If archive_cmds runs LD, not CC, wlarc should be empty
Chris@10 4677 wlarc='${wl}'
Chris@10 4678
Chris@10 4679 # Set some defaults for GNU ld with shared library support. These
Chris@10 4680 # are reset later if shared libraries are not supported. Putting them
Chris@10 4681 # here allows them to be overridden if necessary.
Chris@10 4682 runpath_var=LD_RUN_PATH
Chris@10 4683 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
Chris@10 4684 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
Chris@10 4685 # ancient GNU ld didn't support --whole-archive et. al.
Chris@10 4686 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
Chris@10 4687 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
Chris@10 4688 else
Chris@10 4689 _LT_TAGVAR(whole_archive_flag_spec, $1)=
Chris@10 4690 fi
Chris@10 4691 supports_anon_versioning=no
Chris@10 4692 case `$LD -v 2>&1` in
Chris@10 4693 *GNU\ gold*) supports_anon_versioning=yes ;;
Chris@10 4694 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
Chris@10 4695 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
Chris@10 4696 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
Chris@10 4697 *\ 2.11.*) ;; # other 2.11 versions
Chris@10 4698 *) supports_anon_versioning=yes ;;
Chris@10 4699 esac
Chris@10 4700
Chris@10 4701 # See if GNU ld supports shared libraries.
Chris@10 4702 case $host_os in
Chris@10 4703 aix[[3-9]]*)
Chris@10 4704 # On AIX/PPC, the GNU linker is very broken
Chris@10 4705 if test "$host_cpu" != ia64; then
Chris@10 4706 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 4707 cat <<_LT_EOF 1>&2
Chris@10 4708
Chris@10 4709 *** Warning: the GNU linker, at least up to release 2.19, is reported
Chris@10 4710 *** to be unable to reliably create shared libraries on AIX.
Chris@10 4711 *** Therefore, libtool is disabling shared libraries support. If you
Chris@10 4712 *** really care for shared libraries, you may want to install binutils
Chris@10 4713 *** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
Chris@10 4714 *** You will then need to restart the configuration process.
Chris@10 4715
Chris@10 4716 _LT_EOF
Chris@10 4717 fi
Chris@10 4718 ;;
Chris@10 4719
Chris@10 4720 amigaos*)
Chris@10 4721 case $host_cpu in
Chris@10 4722 powerpc)
Chris@10 4723 # see comment about AmigaOS4 .so support
Chris@10 4724 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
Chris@10 4725 _LT_TAGVAR(archive_expsym_cmds, $1)=''
Chris@10 4726 ;;
Chris@10 4727 m68k)
Chris@10 4728 _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)'
Chris@10 4729 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
Chris@10 4730 _LT_TAGVAR(hardcode_minus_L, $1)=yes
Chris@10 4731 ;;
Chris@10 4732 esac
Chris@10 4733 ;;
Chris@10 4734
Chris@10 4735 beos*)
Chris@10 4736 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
Chris@10 4737 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
Chris@10 4738 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
Chris@10 4739 # support --undefined. This deserves some investigation. FIXME
Chris@10 4740 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
Chris@10 4741 else
Chris@10 4742 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 4743 fi
Chris@10 4744 ;;
Chris@10 4745
Chris@10 4746 cygwin* | mingw* | pw32* | cegcc*)
Chris@10 4747 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
Chris@10 4748 # as there is no search path for DLLs.
Chris@10 4749 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
Chris@10 4750 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
Chris@10 4751 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
Chris@10 4752 _LT_TAGVAR(always_export_symbols, $1)=no
Chris@10 4753 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
Chris@10 4754 _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'
Chris@10 4755 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
Chris@10 4756
Chris@10 4757 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
Chris@10 4758 _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'
Chris@10 4759 # If the export-symbols file already is a .def file (1st line
Chris@10 4760 # is EXPORTS), use it as is; otherwise, prepend...
Chris@10 4761 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
Chris@10 4762 cp $export_symbols $output_objdir/$soname.def;
Chris@10 4763 else
Chris@10 4764 echo EXPORTS > $output_objdir/$soname.def;
Chris@10 4765 cat $export_symbols >> $output_objdir/$soname.def;
Chris@10 4766 fi~
Chris@10 4767 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
Chris@10 4768 else
Chris@10 4769 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 4770 fi
Chris@10 4771 ;;
Chris@10 4772
Chris@10 4773 haiku*)
Chris@10 4774 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
Chris@10 4775 _LT_TAGVAR(link_all_deplibs, $1)=yes
Chris@10 4776 ;;
Chris@10 4777
Chris@10 4778 interix[[3-9]]*)
Chris@10 4779 _LT_TAGVAR(hardcode_direct, $1)=no
Chris@10 4780 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 4781 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
Chris@10 4782 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
Chris@10 4783 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
Chris@10 4784 # Instead, shared libraries are loaded at an image base (0x10000000 by
Chris@10 4785 # default) and relocated if they conflict, which is a slow very memory
Chris@10 4786 # consuming and fragmenting process. To avoid this, we pick a random,
Chris@10 4787 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
Chris@10 4788 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
Chris@10 4789 _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'
Chris@10 4790 _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'
Chris@10 4791 ;;
Chris@10 4792
Chris@10 4793 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
Chris@10 4794 tmp_diet=no
Chris@10 4795 if test "$host_os" = linux-dietlibc; then
Chris@10 4796 case $cc_basename in
Chris@10 4797 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
Chris@10 4798 esac
Chris@10 4799 fi
Chris@10 4800 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
Chris@10 4801 && test "$tmp_diet" = no
Chris@10 4802 then
Chris@10 4803 tmp_addflag=' $pic_flag'
Chris@10 4804 tmp_sharedflag='-shared'
Chris@10 4805 case $cc_basename,$host_cpu in
Chris@10 4806 pgcc*) # Portland Group C compiler
Chris@10 4807 _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'
Chris@10 4808 tmp_addflag=' $pic_flag'
Chris@10 4809 ;;
Chris@10 4810 pgf77* | pgf90* | pgf95* | pgfortran*)
Chris@10 4811 # Portland Group f77 and f90 compilers
Chris@10 4812 _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'
Chris@10 4813 tmp_addflag=' $pic_flag -Mnomain' ;;
Chris@10 4814 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
Chris@10 4815 tmp_addflag=' -i_dynamic' ;;
Chris@10 4816 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
Chris@10 4817 tmp_addflag=' -i_dynamic -nofor_main' ;;
Chris@10 4818 ifc* | ifort*) # Intel Fortran compiler
Chris@10 4819 tmp_addflag=' -nofor_main' ;;
Chris@10 4820 lf95*) # Lahey Fortran 8.1
Chris@10 4821 _LT_TAGVAR(whole_archive_flag_spec, $1)=
Chris@10 4822 tmp_sharedflag='--shared' ;;
Chris@10 4823 xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
Chris@10 4824 tmp_sharedflag='-qmkshrobj'
Chris@10 4825 tmp_addflag= ;;
Chris@10 4826 nvcc*) # Cuda Compiler Driver 2.2
Chris@10 4827 _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'
Chris@10 4828 _LT_TAGVAR(compiler_needs_object, $1)=yes
Chris@10 4829 ;;
Chris@10 4830 esac
Chris@10 4831 case `$CC -V 2>&1 | sed 5q` in
Chris@10 4832 *Sun\ C*) # Sun C 5.9
Chris@10 4833 _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'
Chris@10 4834 _LT_TAGVAR(compiler_needs_object, $1)=yes
Chris@10 4835 tmp_sharedflag='-G' ;;
Chris@10 4836 *Sun\ F*) # Sun Fortran 8.3
Chris@10 4837 tmp_sharedflag='-G' ;;
Chris@10 4838 esac
Chris@10 4839 _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
Chris@10 4840
Chris@10 4841 if test "x$supports_anon_versioning" = xyes; then
Chris@10 4842 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
Chris@10 4843 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
Chris@10 4844 echo "local: *; };" >> $output_objdir/$libname.ver~
Chris@10 4845 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
Chris@10 4846 fi
Chris@10 4847
Chris@10 4848 case $cc_basename in
Chris@10 4849 xlf* | bgf* | bgxlf* | mpixlf*)
Chris@10 4850 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
Chris@10 4851 _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
Chris@10 4852 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
Chris@10 4853 _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
Chris@10 4854 if test "x$supports_anon_versioning" = xyes; then
Chris@10 4855 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
Chris@10 4856 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
Chris@10 4857 echo "local: *; };" >> $output_objdir/$libname.ver~
Chris@10 4858 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
Chris@10 4859 fi
Chris@10 4860 ;;
Chris@10 4861 esac
Chris@10 4862 else
Chris@10 4863 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 4864 fi
Chris@10 4865 ;;
Chris@10 4866
Chris@10 4867 netbsd* | netbsdelf*-gnu)
Chris@10 4868 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
Chris@10 4869 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
Chris@10 4870 wlarc=
Chris@10 4871 else
Chris@10 4872 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
Chris@10 4873 _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'
Chris@10 4874 fi
Chris@10 4875 ;;
Chris@10 4876
Chris@10 4877 solaris*)
Chris@10 4878 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
Chris@10 4879 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 4880 cat <<_LT_EOF 1>&2
Chris@10 4881
Chris@10 4882 *** Warning: The releases 2.8.* of the GNU linker cannot reliably
Chris@10 4883 *** create shared libraries on Solaris systems. Therefore, libtool
Chris@10 4884 *** is disabling shared libraries support. We urge you to upgrade GNU
Chris@10 4885 *** binutils to release 2.9.1 or newer. Another option is to modify
Chris@10 4886 *** your PATH or compiler configuration so that the native linker is
Chris@10 4887 *** used, and then restart.
Chris@10 4888
Chris@10 4889 _LT_EOF
Chris@10 4890 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
Chris@10 4891 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
Chris@10 4892 _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'
Chris@10 4893 else
Chris@10 4894 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 4895 fi
Chris@10 4896 ;;
Chris@10 4897
Chris@10 4898 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
Chris@10 4899 case `$LD -v 2>&1` in
Chris@10 4900 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
Chris@10 4901 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 4902 cat <<_LT_EOF 1>&2
Chris@10 4903
Chris@10 4904 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
Chris@10 4905 *** reliably create shared libraries on SCO systems. Therefore, libtool
Chris@10 4906 *** is disabling shared libraries support. We urge you to upgrade GNU
Chris@10 4907 *** binutils to release 2.16.91.0.3 or newer. Another option is to modify
Chris@10 4908 *** your PATH or compiler configuration so that the native linker is
Chris@10 4909 *** used, and then restart.
Chris@10 4910
Chris@10 4911 _LT_EOF
Chris@10 4912 ;;
Chris@10 4913 *)
Chris@10 4914 # For security reasons, it is highly recommended that you always
Chris@10 4915 # use absolute paths for naming shared libraries, and exclude the
Chris@10 4916 # DT_RUNPATH tag from executables and libraries. But doing so
Chris@10 4917 # requires that you compile everything twice, which is a pain.
Chris@10 4918 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
Chris@10 4919 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
Chris@10 4920 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
Chris@10 4921 _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'
Chris@10 4922 else
Chris@10 4923 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 4924 fi
Chris@10 4925 ;;
Chris@10 4926 esac
Chris@10 4927 ;;
Chris@10 4928
Chris@10 4929 sunos4*)
Chris@10 4930 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
Chris@10 4931 wlarc=
Chris@10 4932 _LT_TAGVAR(hardcode_direct, $1)=yes
Chris@10 4933 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 4934 ;;
Chris@10 4935
Chris@10 4936 *)
Chris@10 4937 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
Chris@10 4938 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
Chris@10 4939 _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'
Chris@10 4940 else
Chris@10 4941 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 4942 fi
Chris@10 4943 ;;
Chris@10 4944 esac
Chris@10 4945
Chris@10 4946 if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
Chris@10 4947 runpath_var=
Chris@10 4948 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
Chris@10 4949 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
Chris@10 4950 _LT_TAGVAR(whole_archive_flag_spec, $1)=
Chris@10 4951 fi
Chris@10 4952 else
Chris@10 4953 # PORTME fill in a description of your system's linker (not GNU ld)
Chris@10 4954 case $host_os in
Chris@10 4955 aix3*)
Chris@10 4956 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
Chris@10 4957 _LT_TAGVAR(always_export_symbols, $1)=yes
Chris@10 4958 _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'
Chris@10 4959 # Note: this linker hardcodes the directories in LIBPATH if there
Chris@10 4960 # are no directories specified by -L.
Chris@10 4961 _LT_TAGVAR(hardcode_minus_L, $1)=yes
Chris@10 4962 if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
Chris@10 4963 # Neither direct hardcoding nor static linking is supported with a
Chris@10 4964 # broken collect2.
Chris@10 4965 _LT_TAGVAR(hardcode_direct, $1)=unsupported
Chris@10 4966 fi
Chris@10 4967 ;;
Chris@10 4968
Chris@10 4969 aix[[4-9]]*)
Chris@10 4970 if test "$host_cpu" = ia64; then
Chris@10 4971 # On IA64, the linker does run time linking by default, so we don't
Chris@10 4972 # have to do anything special.
Chris@10 4973 aix_use_runtimelinking=no
Chris@10 4974 exp_sym_flag='-Bexport'
Chris@10 4975 no_entry_flag=""
Chris@10 4976 else
Chris@10 4977 # If we're using GNU nm, then we don't want the "-C" option.
Chris@10 4978 # -C means demangle to AIX nm, but means don't demangle with GNU nm
Chris@10 4979 # Also, AIX nm treats weak defined symbols like other global
Chris@10 4980 # defined symbols, whereas GNU nm marks them as "W".
Chris@10 4981 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
Chris@10 4982 _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'
Chris@10 4983 else
Chris@10 4984 _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'
Chris@10 4985 fi
Chris@10 4986 aix_use_runtimelinking=no
Chris@10 4987
Chris@10 4988 # Test if we are trying to use run time linking or normal
Chris@10 4989 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
Chris@10 4990 # need to do runtime linking.
Chris@10 4991 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
Chris@10 4992 for ld_flag in $LDFLAGS; do
Chris@10 4993 if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
Chris@10 4994 aix_use_runtimelinking=yes
Chris@10 4995 break
Chris@10 4996 fi
Chris@10 4997 done
Chris@10 4998 ;;
Chris@10 4999 esac
Chris@10 5000
Chris@10 5001 exp_sym_flag='-bexport'
Chris@10 5002 no_entry_flag='-bnoentry'
Chris@10 5003 fi
Chris@10 5004
Chris@10 5005 # When large executables or shared objects are built, AIX ld can
Chris@10 5006 # have problems creating the table of contents. If linking a library
Chris@10 5007 # or program results in "error TOC overflow" add -mminimal-toc to
Chris@10 5008 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
Chris@10 5009 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
Chris@10 5010
Chris@10 5011 _LT_TAGVAR(archive_cmds, $1)=''
Chris@10 5012 _LT_TAGVAR(hardcode_direct, $1)=yes
Chris@10 5013 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
Chris@10 5014 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
Chris@10 5015 _LT_TAGVAR(link_all_deplibs, $1)=yes
Chris@10 5016 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
Chris@10 5017
Chris@10 5018 if test "$GCC" = yes; then
Chris@10 5019 case $host_os in aix4.[[012]]|aix4.[[012]].*)
Chris@10 5020 # We only want to do this on AIX 4.2 and lower, the check
Chris@10 5021 # below for broken collect2 doesn't work under 4.3+
Chris@10 5022 collect2name=`${CC} -print-prog-name=collect2`
Chris@10 5023 if test -f "$collect2name" &&
Chris@10 5024 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
Chris@10 5025 then
Chris@10 5026 # We have reworked collect2
Chris@10 5027 :
Chris@10 5028 else
Chris@10 5029 # We have old collect2
Chris@10 5030 _LT_TAGVAR(hardcode_direct, $1)=unsupported
Chris@10 5031 # It fails to find uninstalled libraries when the uninstalled
Chris@10 5032 # path is not listed in the libpath. Setting hardcode_minus_L
Chris@10 5033 # to unsupported forces relinking
Chris@10 5034 _LT_TAGVAR(hardcode_minus_L, $1)=yes
Chris@10 5035 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
Chris@10 5036 _LT_TAGVAR(hardcode_libdir_separator, $1)=
Chris@10 5037 fi
Chris@10 5038 ;;
Chris@10 5039 esac
Chris@10 5040 shared_flag='-shared'
Chris@10 5041 if test "$aix_use_runtimelinking" = yes; then
Chris@10 5042 shared_flag="$shared_flag "'${wl}-G'
Chris@10 5043 fi
Chris@10 5044 _LT_TAGVAR(link_all_deplibs, $1)=no
Chris@10 5045 else
Chris@10 5046 # not using gcc
Chris@10 5047 if test "$host_cpu" = ia64; then
Chris@10 5048 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
Chris@10 5049 # chokes on -Wl,-G. The following line is correct:
Chris@10 5050 shared_flag='-G'
Chris@10 5051 else
Chris@10 5052 if test "$aix_use_runtimelinking" = yes; then
Chris@10 5053 shared_flag='${wl}-G'
Chris@10 5054 else
Chris@10 5055 shared_flag='${wl}-bM:SRE'
Chris@10 5056 fi
Chris@10 5057 fi
Chris@10 5058 fi
Chris@10 5059
Chris@10 5060 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
Chris@10 5061 # It seems that -bexpall does not export symbols beginning with
Chris@10 5062 # underscore (_), so it is better to generate a list of symbols to export.
Chris@10 5063 _LT_TAGVAR(always_export_symbols, $1)=yes
Chris@10 5064 if test "$aix_use_runtimelinking" = yes; then
Chris@10 5065 # Warning - without using the other runtime loading flags (-brtl),
Chris@10 5066 # -berok will link without error, but may produce a broken library.
Chris@10 5067 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
Chris@10 5068 # Determine the default libpath from the value encoded in an
Chris@10 5069 # empty executable.
Chris@10 5070 _LT_SYS_MODULE_PATH_AIX([$1])
Chris@10 5071 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
Chris@10 5072 _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"
Chris@10 5073 else
Chris@10 5074 if test "$host_cpu" = ia64; then
Chris@10 5075 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
Chris@10 5076 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
Chris@10 5077 _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"
Chris@10 5078 else
Chris@10 5079 # Determine the default libpath from the value encoded in an
Chris@10 5080 # empty executable.
Chris@10 5081 _LT_SYS_MODULE_PATH_AIX([$1])
Chris@10 5082 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
Chris@10 5083 # Warning - without using the other run time loading flags,
Chris@10 5084 # -berok will link without error, but may produce a broken library.
Chris@10 5085 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
Chris@10 5086 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
Chris@10 5087 if test "$with_gnu_ld" = yes; then
Chris@10 5088 # We only use this code for GNU lds that support --whole-archive.
Chris@10 5089 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
Chris@10 5090 else
Chris@10 5091 # Exported symbols can be pulled into shared objects from archives
Chris@10 5092 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
Chris@10 5093 fi
Chris@10 5094 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
Chris@10 5095 # This is similar to how AIX traditionally builds its shared libraries.
Chris@10 5096 _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'
Chris@10 5097 fi
Chris@10 5098 fi
Chris@10 5099 ;;
Chris@10 5100
Chris@10 5101 amigaos*)
Chris@10 5102 case $host_cpu in
Chris@10 5103 powerpc)
Chris@10 5104 # see comment about AmigaOS4 .so support
Chris@10 5105 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
Chris@10 5106 _LT_TAGVAR(archive_expsym_cmds, $1)=''
Chris@10 5107 ;;
Chris@10 5108 m68k)
Chris@10 5109 _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)'
Chris@10 5110 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
Chris@10 5111 _LT_TAGVAR(hardcode_minus_L, $1)=yes
Chris@10 5112 ;;
Chris@10 5113 esac
Chris@10 5114 ;;
Chris@10 5115
Chris@10 5116 bsdi[[45]]*)
Chris@10 5117 _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
Chris@10 5118 ;;
Chris@10 5119
Chris@10 5120 cygwin* | mingw* | pw32* | cegcc*)
Chris@10 5121 # When not using gcc, we currently assume that we are using
Chris@10 5122 # Microsoft Visual C++.
Chris@10 5123 # hardcode_libdir_flag_spec is actually meaningless, as there is
Chris@10 5124 # no search path for DLLs.
Chris@10 5125 case $cc_basename in
Chris@10 5126 cl*)
Chris@10 5127 # Native MSVC
Chris@10 5128 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
Chris@10 5129 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
Chris@10 5130 _LT_TAGVAR(always_export_symbols, $1)=yes
Chris@10 5131 _LT_TAGVAR(file_list_spec, $1)='@'
Chris@10 5132 # Tell ltmain to make .lib files, not .a files.
Chris@10 5133 libext=lib
Chris@10 5134 # Tell ltmain to make .dll files, not .so files.
Chris@10 5135 shrext_cmds=".dll"
Chris@10 5136 # FIXME: Setting linknames here is a bad hack.
Chris@10 5137 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
Chris@10 5138 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
Chris@10 5139 sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
Chris@10 5140 else
Chris@10 5141 sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
Chris@10 5142 fi~
Chris@10 5143 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
Chris@10 5144 linknames='
Chris@10 5145 # The linker will not automatically build a static lib if we build a DLL.
Chris@10 5146 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
Chris@10 5147 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
Chris@10 5148 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
Chris@10 5149 _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'
Chris@10 5150 # Don't use ranlib
Chris@10 5151 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
Chris@10 5152 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
Chris@10 5153 lt_tool_outputfile="@TOOL_OUTPUT@"~
Chris@10 5154 case $lt_outputfile in
Chris@10 5155 *.exe|*.EXE) ;;
Chris@10 5156 *)
Chris@10 5157 lt_outputfile="$lt_outputfile.exe"
Chris@10 5158 lt_tool_outputfile="$lt_tool_outputfile.exe"
Chris@10 5159 ;;
Chris@10 5160 esac~
Chris@10 5161 if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
Chris@10 5162 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
Chris@10 5163 $RM "$lt_outputfile.manifest";
Chris@10 5164 fi'
Chris@10 5165 ;;
Chris@10 5166 *)
Chris@10 5167 # Assume MSVC wrapper
Chris@10 5168 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
Chris@10 5169 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
Chris@10 5170 # Tell ltmain to make .lib files, not .a files.
Chris@10 5171 libext=lib
Chris@10 5172 # Tell ltmain to make .dll files, not .so files.
Chris@10 5173 shrext_cmds=".dll"
Chris@10 5174 # FIXME: Setting linknames here is a bad hack.
Chris@10 5175 _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
Chris@10 5176 # The linker will automatically build a .lib file if we build a DLL.
Chris@10 5177 _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
Chris@10 5178 # FIXME: Should let the user specify the lib program.
Chris@10 5179 _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
Chris@10 5180 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
Chris@10 5181 ;;
Chris@10 5182 esac
Chris@10 5183 ;;
Chris@10 5184
Chris@10 5185 darwin* | rhapsody*)
Chris@10 5186 _LT_DARWIN_LINKER_FEATURES($1)
Chris@10 5187 ;;
Chris@10 5188
Chris@10 5189 dgux*)
Chris@10 5190 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
Chris@10 5191 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
Chris@10 5192 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 5193 ;;
Chris@10 5194
Chris@10 5195 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
Chris@10 5196 # support. Future versions do this automatically, but an explicit c++rt0.o
Chris@10 5197 # does not break anything, and helps significantly (at the cost of a little
Chris@10 5198 # extra space).
Chris@10 5199 freebsd2.2*)
Chris@10 5200 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
Chris@10 5201 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
Chris@10 5202 _LT_TAGVAR(hardcode_direct, $1)=yes
Chris@10 5203 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 5204 ;;
Chris@10 5205
Chris@10 5206 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
Chris@10 5207 freebsd2.*)
Chris@10 5208 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
Chris@10 5209 _LT_TAGVAR(hardcode_direct, $1)=yes
Chris@10 5210 _LT_TAGVAR(hardcode_minus_L, $1)=yes
Chris@10 5211 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 5212 ;;
Chris@10 5213
Chris@10 5214 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
Chris@10 5215 freebsd* | dragonfly*)
Chris@10 5216 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5217 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
Chris@10 5218 _LT_TAGVAR(hardcode_direct, $1)=yes
Chris@10 5219 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 5220 ;;
Chris@10 5221
Chris@10 5222 hpux9*)
Chris@10 5223 if test "$GCC" = yes; then
Chris@10 5224 _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'
Chris@10 5225 else
Chris@10 5226 _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'
Chris@10 5227 fi
Chris@10 5228 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
Chris@10 5229 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
Chris@10 5230 _LT_TAGVAR(hardcode_direct, $1)=yes
Chris@10 5231
Chris@10 5232 # hardcode_minus_L: Not really in the search PATH,
Chris@10 5233 # but as the default location of the library.
Chris@10 5234 _LT_TAGVAR(hardcode_minus_L, $1)=yes
Chris@10 5235 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
Chris@10 5236 ;;
Chris@10 5237
Chris@10 5238 hpux10*)
Chris@10 5239 if test "$GCC" = yes && test "$with_gnu_ld" = no; then
Chris@10 5240 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5241 else
Chris@10 5242 _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
Chris@10 5243 fi
Chris@10 5244 if test "$with_gnu_ld" = no; then
Chris@10 5245 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
Chris@10 5246 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
Chris@10 5247 _LT_TAGVAR(hardcode_direct, $1)=yes
Chris@10 5248 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
Chris@10 5249 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
Chris@10 5250 # hardcode_minus_L: Not really in the search PATH,
Chris@10 5251 # but as the default location of the library.
Chris@10 5252 _LT_TAGVAR(hardcode_minus_L, $1)=yes
Chris@10 5253 fi
Chris@10 5254 ;;
Chris@10 5255
Chris@10 5256 hpux11*)
Chris@10 5257 if test "$GCC" = yes && test "$with_gnu_ld" = no; then
Chris@10 5258 case $host_cpu in
Chris@10 5259 hppa*64*)
Chris@10 5260 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5261 ;;
Chris@10 5262 ia64*)
Chris@10 5263 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5264 ;;
Chris@10 5265 *)
Chris@10 5266 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5267 ;;
Chris@10 5268 esac
Chris@10 5269 else
Chris@10 5270 case $host_cpu in
Chris@10 5271 hppa*64*)
Chris@10 5272 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5273 ;;
Chris@10 5274 ia64*)
Chris@10 5275 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5276 ;;
Chris@10 5277 *)
Chris@10 5278 m4_if($1, [], [
Chris@10 5279 # Older versions of the 11.00 compiler do not understand -b yet
Chris@10 5280 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
Chris@10 5281 _LT_LINKER_OPTION([if $CC understands -b],
Chris@10 5282 _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
Chris@10 5283 [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
Chris@10 5284 [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
Chris@10 5285 [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
Chris@10 5286 ;;
Chris@10 5287 esac
Chris@10 5288 fi
Chris@10 5289 if test "$with_gnu_ld" = no; then
Chris@10 5290 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
Chris@10 5291 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
Chris@10 5292
Chris@10 5293 case $host_cpu in
Chris@10 5294 hppa*64*|ia64*)
Chris@10 5295 _LT_TAGVAR(hardcode_direct, $1)=no
Chris@10 5296 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 5297 ;;
Chris@10 5298 *)
Chris@10 5299 _LT_TAGVAR(hardcode_direct, $1)=yes
Chris@10 5300 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
Chris@10 5301 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
Chris@10 5302
Chris@10 5303 # hardcode_minus_L: Not really in the search PATH,
Chris@10 5304 # but as the default location of the library.
Chris@10 5305 _LT_TAGVAR(hardcode_minus_L, $1)=yes
Chris@10 5306 ;;
Chris@10 5307 esac
Chris@10 5308 fi
Chris@10 5309 ;;
Chris@10 5310
Chris@10 5311 irix5* | irix6* | nonstopux*)
Chris@10 5312 if test "$GCC" = yes; then
Chris@10 5313 _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'
Chris@10 5314 # Try to use the -exported_symbol ld option, if it does not
Chris@10 5315 # work, assume that -exports_file does not work either and
Chris@10 5316 # implicitly export all symbols.
Chris@10 5317 # This should be the same for all languages, so no per-tag cache variable.
Chris@10 5318 AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
Chris@10 5319 [lt_cv_irix_exported_symbol],
Chris@10 5320 [save_LDFLAGS="$LDFLAGS"
Chris@10 5321 LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
Chris@10 5322 AC_LINK_IFELSE(
Chris@10 5323 [AC_LANG_SOURCE(
Chris@10 5324 [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
Chris@10 5325 [C++], [[int foo (void) { return 0; }]],
Chris@10 5326 [Fortran 77], [[
Chris@10 5327 subroutine foo
Chris@10 5328 end]],
Chris@10 5329 [Fortran], [[
Chris@10 5330 subroutine foo
Chris@10 5331 end]])])],
Chris@10 5332 [lt_cv_irix_exported_symbol=yes],
Chris@10 5333 [lt_cv_irix_exported_symbol=no])
Chris@10 5334 LDFLAGS="$save_LDFLAGS"])
Chris@10 5335 if test "$lt_cv_irix_exported_symbol" = yes; then
Chris@10 5336 _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'
Chris@10 5337 fi
Chris@10 5338 else
Chris@10 5339 _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'
Chris@10 5340 _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'
Chris@10 5341 fi
Chris@10 5342 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
Chris@10 5343 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
Chris@10 5344 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
Chris@10 5345 _LT_TAGVAR(inherit_rpath, $1)=yes
Chris@10 5346 _LT_TAGVAR(link_all_deplibs, $1)=yes
Chris@10 5347 ;;
Chris@10 5348
Chris@10 5349 netbsd* | netbsdelf*-gnu)
Chris@10 5350 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
Chris@10 5351 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
Chris@10 5352 else
Chris@10 5353 _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
Chris@10 5354 fi
Chris@10 5355 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
Chris@10 5356 _LT_TAGVAR(hardcode_direct, $1)=yes
Chris@10 5357 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 5358 ;;
Chris@10 5359
Chris@10 5360 newsos6)
Chris@10 5361 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
Chris@10 5362 _LT_TAGVAR(hardcode_direct, $1)=yes
Chris@10 5363 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
Chris@10 5364 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
Chris@10 5365 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 5366 ;;
Chris@10 5367
Chris@10 5368 *nto* | *qnx*)
Chris@10 5369 ;;
Chris@10 5370
Chris@10 5371 openbsd*)
Chris@10 5372 if test -f /usr/libexec/ld.so; then
Chris@10 5373 _LT_TAGVAR(hardcode_direct, $1)=yes
Chris@10 5374 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 5375 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
Chris@10 5376 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
Chris@10 5377 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5378 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
Chris@10 5379 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
Chris@10 5380 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
Chris@10 5381 else
Chris@10 5382 case $host_os in
Chris@10 5383 openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
Chris@10 5384 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
Chris@10 5385 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
Chris@10 5386 ;;
Chris@10 5387 *)
Chris@10 5388 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5389 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
Chris@10 5390 ;;
Chris@10 5391 esac
Chris@10 5392 fi
Chris@10 5393 else
Chris@10 5394 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 5395 fi
Chris@10 5396 ;;
Chris@10 5397
Chris@10 5398 os2*)
Chris@10 5399 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
Chris@10 5400 _LT_TAGVAR(hardcode_minus_L, $1)=yes
Chris@10 5401 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
Chris@10 5402 _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'
Chris@10 5403 _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
Chris@10 5404 ;;
Chris@10 5405
Chris@10 5406 osf3*)
Chris@10 5407 if test "$GCC" = yes; then
Chris@10 5408 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
Chris@10 5409 _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'
Chris@10 5410 else
Chris@10 5411 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
Chris@10 5412 _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'
Chris@10 5413 fi
Chris@10 5414 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
Chris@10 5415 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
Chris@10 5416 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
Chris@10 5417 ;;
Chris@10 5418
Chris@10 5419 osf4* | osf5*) # as osf3* with the addition of -msym flag
Chris@10 5420 if test "$GCC" = yes; then
Chris@10 5421 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
Chris@10 5422 _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'
Chris@10 5423 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
Chris@10 5424 else
Chris@10 5425 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
Chris@10 5426 _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'
Chris@10 5427 _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~
Chris@10 5428 $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'
Chris@10 5429
Chris@10 5430 # Both c and cxx compiler support -rpath directly
Chris@10 5431 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
Chris@10 5432 fi
Chris@10 5433 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
Chris@10 5434 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
Chris@10 5435 ;;
Chris@10 5436
Chris@10 5437 solaris*)
Chris@10 5438 _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
Chris@10 5439 if test "$GCC" = yes; then
Chris@10 5440 wlarc='${wl}'
Chris@10 5441 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5442 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
Chris@10 5443 $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'
Chris@10 5444 else
Chris@10 5445 case `$CC -V 2>&1` in
Chris@10 5446 *"Compilers 5.0"*)
Chris@10 5447 wlarc=''
Chris@10 5448 _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
Chris@10 5449 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
Chris@10 5450 $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
Chris@10 5451 ;;
Chris@10 5452 *)
Chris@10 5453 wlarc='${wl}'
Chris@10 5454 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5455 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
Chris@10 5456 $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
Chris@10 5457 ;;
Chris@10 5458 esac
Chris@10 5459 fi
Chris@10 5460 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
Chris@10 5461 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 5462 case $host_os in
Chris@10 5463 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
Chris@10 5464 *)
Chris@10 5465 # The compiler driver will combine and reorder linker options,
Chris@10 5466 # but understands `-z linker_flag'. GCC discards it without `$wl',
Chris@10 5467 # but is careful enough not to reorder.
Chris@10 5468 # Supported since Solaris 2.6 (maybe 2.5.1?)
Chris@10 5469 if test "$GCC" = yes; then
Chris@10 5470 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
Chris@10 5471 else
Chris@10 5472 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
Chris@10 5473 fi
Chris@10 5474 ;;
Chris@10 5475 esac
Chris@10 5476 _LT_TAGVAR(link_all_deplibs, $1)=yes
Chris@10 5477 ;;
Chris@10 5478
Chris@10 5479 sunos4*)
Chris@10 5480 if test "x$host_vendor" = xsequent; then
Chris@10 5481 # Use $CC to link under sequent, because it throws in some extra .o
Chris@10 5482 # files that make .init and .fini sections work.
Chris@10 5483 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5484 else
Chris@10 5485 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
Chris@10 5486 fi
Chris@10 5487 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
Chris@10 5488 _LT_TAGVAR(hardcode_direct, $1)=yes
Chris@10 5489 _LT_TAGVAR(hardcode_minus_L, $1)=yes
Chris@10 5490 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 5491 ;;
Chris@10 5492
Chris@10 5493 sysv4)
Chris@10 5494 case $host_vendor in
Chris@10 5495 sni)
Chris@10 5496 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
Chris@10 5497 _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
Chris@10 5498 ;;
Chris@10 5499 siemens)
Chris@10 5500 ## LD is ld it makes a PLAMLIB
Chris@10 5501 ## CC just makes a GrossModule.
Chris@10 5502 _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
Chris@10 5503 _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
Chris@10 5504 _LT_TAGVAR(hardcode_direct, $1)=no
Chris@10 5505 ;;
Chris@10 5506 motorola)
Chris@10 5507 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
Chris@10 5508 _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
Chris@10 5509 ;;
Chris@10 5510 esac
Chris@10 5511 runpath_var='LD_RUN_PATH'
Chris@10 5512 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 5513 ;;
Chris@10 5514
Chris@10 5515 sysv4.3*)
Chris@10 5516 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
Chris@10 5517 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 5518 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
Chris@10 5519 ;;
Chris@10 5520
Chris@10 5521 sysv4*MP*)
Chris@10 5522 if test -d /usr/nec; then
Chris@10 5523 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
Chris@10 5524 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 5525 runpath_var=LD_RUN_PATH
Chris@10 5526 hardcode_runpath_var=yes
Chris@10 5527 _LT_TAGVAR(ld_shlibs, $1)=yes
Chris@10 5528 fi
Chris@10 5529 ;;
Chris@10 5530
Chris@10 5531 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
Chris@10 5532 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
Chris@10 5533 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
Chris@10 5534 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 5535 runpath_var='LD_RUN_PATH'
Chris@10 5536
Chris@10 5537 if test "$GCC" = yes; then
Chris@10 5538 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5539 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5540 else
Chris@10 5541 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5542 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5543 fi
Chris@10 5544 ;;
Chris@10 5545
Chris@10 5546 sysv5* | sco3.2v5* | sco5v6*)
Chris@10 5547 # Note: We can NOT use -z defs as we might desire, because we do not
Chris@10 5548 # link with -lc, and that would cause any symbols used from libc to
Chris@10 5549 # always be unresolved, which means just about no library would
Chris@10 5550 # ever link correctly. If we're not using GNU ld we use -z text
Chris@10 5551 # though, which does catch some bad symbols but isn't as heavy-handed
Chris@10 5552 # as -z defs.
Chris@10 5553 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
Chris@10 5554 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
Chris@10 5555 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
Chris@10 5556 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 5557 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
Chris@10 5558 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
Chris@10 5559 _LT_TAGVAR(link_all_deplibs, $1)=yes
Chris@10 5560 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
Chris@10 5561 runpath_var='LD_RUN_PATH'
Chris@10 5562
Chris@10 5563 if test "$GCC" = yes; then
Chris@10 5564 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5565 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5566 else
Chris@10 5567 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5568 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 5569 fi
Chris@10 5570 ;;
Chris@10 5571
Chris@10 5572 uts4*)
Chris@10 5573 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
Chris@10 5574 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
Chris@10 5575 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 5576 ;;
Chris@10 5577
Chris@10 5578 *)
Chris@10 5579 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 5580 ;;
Chris@10 5581 esac
Chris@10 5582
Chris@10 5583 if test x$host_vendor = xsni; then
Chris@10 5584 case $host in
Chris@10 5585 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
Chris@10 5586 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
Chris@10 5587 ;;
Chris@10 5588 esac
Chris@10 5589 fi
Chris@10 5590 fi
Chris@10 5591 ])
Chris@10 5592 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
Chris@10 5593 test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
Chris@10 5594
Chris@10 5595 _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
Chris@10 5596
Chris@10 5597 _LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
Chris@10 5598 _LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
Chris@10 5599 _LT_DECL([], [extract_expsyms_cmds], [2],
Chris@10 5600 [The commands to extract the exported symbol list from a shared archive])
Chris@10 5601
Chris@10 5602 #
Chris@10 5603 # Do we need to explicitly link libc?
Chris@10 5604 #
Chris@10 5605 case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
Chris@10 5606 x|xyes)
Chris@10 5607 # Assume -lc should be added
Chris@10 5608 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
Chris@10 5609
Chris@10 5610 if test "$enable_shared" = yes && test "$GCC" = yes; then
Chris@10 5611 case $_LT_TAGVAR(archive_cmds, $1) in
Chris@10 5612 *'~'*)
Chris@10 5613 # FIXME: we may have to deal with multi-command sequences.
Chris@10 5614 ;;
Chris@10 5615 '$CC '*)
Chris@10 5616 # Test whether the compiler implicitly links with -lc since on some
Chris@10 5617 # systems, -lgcc has to come before -lc. If gcc already passes -lc
Chris@10 5618 # to ld, don't add -lc before -lgcc.
Chris@10 5619 AC_CACHE_CHECK([whether -lc should be explicitly linked in],
Chris@10 5620 [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
Chris@10 5621 [$RM conftest*
Chris@10 5622 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
Chris@10 5623
Chris@10 5624 if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
Chris@10 5625 soname=conftest
Chris@10 5626 lib=conftest
Chris@10 5627 libobjs=conftest.$ac_objext
Chris@10 5628 deplibs=
Chris@10 5629 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
Chris@10 5630 pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
Chris@10 5631 compiler_flags=-v
Chris@10 5632 linker_flags=-v
Chris@10 5633 verstring=
Chris@10 5634 output_objdir=.
Chris@10 5635 libname=conftest
Chris@10 5636 lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
Chris@10 5637 _LT_TAGVAR(allow_undefined_flag, $1)=
Chris@10 5638 if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
Chris@10 5639 then
Chris@10 5640 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
Chris@10 5641 else
Chris@10 5642 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
Chris@10 5643 fi
Chris@10 5644 _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
Chris@10 5645 else
Chris@10 5646 cat conftest.err 1>&5
Chris@10 5647 fi
Chris@10 5648 $RM conftest*
Chris@10 5649 ])
Chris@10 5650 _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
Chris@10 5651 ;;
Chris@10 5652 esac
Chris@10 5653 fi
Chris@10 5654 ;;
Chris@10 5655 esac
Chris@10 5656
Chris@10 5657 _LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
Chris@10 5658 [Whether or not to add -lc for building shared libraries])
Chris@10 5659 _LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
Chris@10 5660 [enable_shared_with_static_runtimes], [0],
Chris@10 5661 [Whether or not to disallow shared libs when runtime libs are static])
Chris@10 5662 _LT_TAGDECL([], [export_dynamic_flag_spec], [1],
Chris@10 5663 [Compiler flag to allow reflexive dlopens])
Chris@10 5664 _LT_TAGDECL([], [whole_archive_flag_spec], [1],
Chris@10 5665 [Compiler flag to generate shared objects directly from archives])
Chris@10 5666 _LT_TAGDECL([], [compiler_needs_object], [1],
Chris@10 5667 [Whether the compiler copes with passing no objects directly])
Chris@10 5668 _LT_TAGDECL([], [old_archive_from_new_cmds], [2],
Chris@10 5669 [Create an old-style archive from a shared archive])
Chris@10 5670 _LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
Chris@10 5671 [Create a temporary old-style archive to link instead of a shared archive])
Chris@10 5672 _LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
Chris@10 5673 _LT_TAGDECL([], [archive_expsym_cmds], [2])
Chris@10 5674 _LT_TAGDECL([], [module_cmds], [2],
Chris@10 5675 [Commands used to build a loadable module if different from building
Chris@10 5676 a shared archive.])
Chris@10 5677 _LT_TAGDECL([], [module_expsym_cmds], [2])
Chris@10 5678 _LT_TAGDECL([], [with_gnu_ld], [1],
Chris@10 5679 [Whether we are building with GNU ld or not])
Chris@10 5680 _LT_TAGDECL([], [allow_undefined_flag], [1],
Chris@10 5681 [Flag that allows shared libraries with undefined symbols to be built])
Chris@10 5682 _LT_TAGDECL([], [no_undefined_flag], [1],
Chris@10 5683 [Flag that enforces no undefined symbols])
Chris@10 5684 _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
Chris@10 5685 [Flag to hardcode $libdir into a binary during linking.
Chris@10 5686 This must work even if $libdir does not exist])
Chris@10 5687 _LT_TAGDECL([], [hardcode_libdir_separator], [1],
Chris@10 5688 [Whether we need a single "-rpath" flag with a separated argument])
Chris@10 5689 _LT_TAGDECL([], [hardcode_direct], [0],
Chris@10 5690 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
Chris@10 5691 DIR into the resulting binary])
Chris@10 5692 _LT_TAGDECL([], [hardcode_direct_absolute], [0],
Chris@10 5693 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
Chris@10 5694 DIR into the resulting binary and the resulting library dependency is
Chris@10 5695 "absolute", i.e impossible to change by setting ${shlibpath_var} if the
Chris@10 5696 library is relocated])
Chris@10 5697 _LT_TAGDECL([], [hardcode_minus_L], [0],
Chris@10 5698 [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
Chris@10 5699 into the resulting binary])
Chris@10 5700 _LT_TAGDECL([], [hardcode_shlibpath_var], [0],
Chris@10 5701 [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
Chris@10 5702 into the resulting binary])
Chris@10 5703 _LT_TAGDECL([], [hardcode_automatic], [0],
Chris@10 5704 [Set to "yes" if building a shared library automatically hardcodes DIR
Chris@10 5705 into the library and all subsequent libraries and executables linked
Chris@10 5706 against it])
Chris@10 5707 _LT_TAGDECL([], [inherit_rpath], [0],
Chris@10 5708 [Set to yes if linker adds runtime paths of dependent libraries
Chris@10 5709 to runtime path list])
Chris@10 5710 _LT_TAGDECL([], [link_all_deplibs], [0],
Chris@10 5711 [Whether libtool must link a program against all its dependency libraries])
Chris@10 5712 _LT_TAGDECL([], [always_export_symbols], [0],
Chris@10 5713 [Set to "yes" if exported symbols are required])
Chris@10 5714 _LT_TAGDECL([], [export_symbols_cmds], [2],
Chris@10 5715 [The commands to list exported symbols])
Chris@10 5716 _LT_TAGDECL([], [exclude_expsyms], [1],
Chris@10 5717 [Symbols that should not be listed in the preloaded symbols])
Chris@10 5718 _LT_TAGDECL([], [include_expsyms], [1],
Chris@10 5719 [Symbols that must always be exported])
Chris@10 5720 _LT_TAGDECL([], [prelink_cmds], [2],
Chris@10 5721 [Commands necessary for linking programs (against libraries) with templates])
Chris@10 5722 _LT_TAGDECL([], [postlink_cmds], [2],
Chris@10 5723 [Commands necessary for finishing linking programs])
Chris@10 5724 _LT_TAGDECL([], [file_list_spec], [1],
Chris@10 5725 [Specify filename containing input files])
Chris@10 5726 dnl FIXME: Not yet implemented
Chris@10 5727 dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
Chris@10 5728 dnl [Compiler flag to generate thread safe objects])
Chris@10 5729 ])# _LT_LINKER_SHLIBS
Chris@10 5730
Chris@10 5731
Chris@10 5732 # _LT_LANG_C_CONFIG([TAG])
Chris@10 5733 # ------------------------
Chris@10 5734 # Ensure that the configuration variables for a C compiler are suitably
Chris@10 5735 # defined. These variables are subsequently used by _LT_CONFIG to write
Chris@10 5736 # the compiler configuration to `libtool'.
Chris@10 5737 m4_defun([_LT_LANG_C_CONFIG],
Chris@10 5738 [m4_require([_LT_DECL_EGREP])dnl
Chris@10 5739 lt_save_CC="$CC"
Chris@10 5740 AC_LANG_PUSH(C)
Chris@10 5741
Chris@10 5742 # Source file extension for C test sources.
Chris@10 5743 ac_ext=c
Chris@10 5744
Chris@10 5745 # Object file extension for compiled C test sources.
Chris@10 5746 objext=o
Chris@10 5747 _LT_TAGVAR(objext, $1)=$objext
Chris@10 5748
Chris@10 5749 # Code to be used in simple compile tests
Chris@10 5750 lt_simple_compile_test_code="int some_variable = 0;"
Chris@10 5751
Chris@10 5752 # Code to be used in simple link tests
Chris@10 5753 lt_simple_link_test_code='int main(){return(0);}'
Chris@10 5754
Chris@10 5755 _LT_TAG_COMPILER
Chris@10 5756 # Save the default compiler, since it gets overwritten when the other
Chris@10 5757 # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
Chris@10 5758 compiler_DEFAULT=$CC
Chris@10 5759
Chris@10 5760 # save warnings/boilerplate of simple test code
Chris@10 5761 _LT_COMPILER_BOILERPLATE
Chris@10 5762 _LT_LINKER_BOILERPLATE
Chris@10 5763
Chris@10 5764 ## CAVEAT EMPTOR:
Chris@10 5765 ## There is no encapsulation within the following macros, do not change
Chris@10 5766 ## the running order or otherwise move them around unless you know exactly
Chris@10 5767 ## what you are doing...
Chris@10 5768 if test -n "$compiler"; then
Chris@10 5769 _LT_COMPILER_NO_RTTI($1)
Chris@10 5770 _LT_COMPILER_PIC($1)
Chris@10 5771 _LT_COMPILER_C_O($1)
Chris@10 5772 _LT_COMPILER_FILE_LOCKS($1)
Chris@10 5773 _LT_LINKER_SHLIBS($1)
Chris@10 5774 _LT_SYS_DYNAMIC_LINKER($1)
Chris@10 5775 _LT_LINKER_HARDCODE_LIBPATH($1)
Chris@10 5776 LT_SYS_DLOPEN_SELF
Chris@10 5777 _LT_CMD_STRIPLIB
Chris@10 5778
Chris@10 5779 # Report which library types will actually be built
Chris@10 5780 AC_MSG_CHECKING([if libtool supports shared libraries])
Chris@10 5781 AC_MSG_RESULT([$can_build_shared])
Chris@10 5782
Chris@10 5783 AC_MSG_CHECKING([whether to build shared libraries])
Chris@10 5784 test "$can_build_shared" = "no" && enable_shared=no
Chris@10 5785
Chris@10 5786 # On AIX, shared libraries and static libraries use the same namespace, and
Chris@10 5787 # are all built from PIC.
Chris@10 5788 case $host_os in
Chris@10 5789 aix3*)
Chris@10 5790 test "$enable_shared" = yes && enable_static=no
Chris@10 5791 if test -n "$RANLIB"; then
Chris@10 5792 archive_cmds="$archive_cmds~\$RANLIB \$lib"
Chris@10 5793 postinstall_cmds='$RANLIB $lib'
Chris@10 5794 fi
Chris@10 5795 ;;
Chris@10 5796
Chris@10 5797 aix[[4-9]]*)
Chris@10 5798 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
Chris@10 5799 test "$enable_shared" = yes && enable_static=no
Chris@10 5800 fi
Chris@10 5801 ;;
Chris@10 5802 esac
Chris@10 5803 AC_MSG_RESULT([$enable_shared])
Chris@10 5804
Chris@10 5805 AC_MSG_CHECKING([whether to build static libraries])
Chris@10 5806 # Make sure either enable_shared or enable_static is yes.
Chris@10 5807 test "$enable_shared" = yes || enable_static=yes
Chris@10 5808 AC_MSG_RESULT([$enable_static])
Chris@10 5809
Chris@10 5810 _LT_CONFIG($1)
Chris@10 5811 fi
Chris@10 5812 AC_LANG_POP
Chris@10 5813 CC="$lt_save_CC"
Chris@10 5814 ])# _LT_LANG_C_CONFIG
Chris@10 5815
Chris@10 5816
Chris@10 5817 # _LT_LANG_CXX_CONFIG([TAG])
Chris@10 5818 # --------------------------
Chris@10 5819 # Ensure that the configuration variables for a C++ compiler are suitably
Chris@10 5820 # defined. These variables are subsequently used by _LT_CONFIG to write
Chris@10 5821 # the compiler configuration to `libtool'.
Chris@10 5822 m4_defun([_LT_LANG_CXX_CONFIG],
Chris@10 5823 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
Chris@10 5824 m4_require([_LT_DECL_EGREP])dnl
Chris@10 5825 m4_require([_LT_PATH_MANIFEST_TOOL])dnl
Chris@10 5826 if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
Chris@10 5827 ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
Chris@10 5828 (test "X$CXX" != "Xg++"))) ; then
Chris@10 5829 AC_PROG_CXXCPP
Chris@10 5830 else
Chris@10 5831 _lt_caught_CXX_error=yes
Chris@10 5832 fi
Chris@10 5833
Chris@10 5834 AC_LANG_PUSH(C++)
Chris@10 5835 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
Chris@10 5836 _LT_TAGVAR(allow_undefined_flag, $1)=
Chris@10 5837 _LT_TAGVAR(always_export_symbols, $1)=no
Chris@10 5838 _LT_TAGVAR(archive_expsym_cmds, $1)=
Chris@10 5839 _LT_TAGVAR(compiler_needs_object, $1)=no
Chris@10 5840 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
Chris@10 5841 _LT_TAGVAR(hardcode_direct, $1)=no
Chris@10 5842 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
Chris@10 5843 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
Chris@10 5844 _LT_TAGVAR(hardcode_libdir_separator, $1)=
Chris@10 5845 _LT_TAGVAR(hardcode_minus_L, $1)=no
Chris@10 5846 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
Chris@10 5847 _LT_TAGVAR(hardcode_automatic, $1)=no
Chris@10 5848 _LT_TAGVAR(inherit_rpath, $1)=no
Chris@10 5849 _LT_TAGVAR(module_cmds, $1)=
Chris@10 5850 _LT_TAGVAR(module_expsym_cmds, $1)=
Chris@10 5851 _LT_TAGVAR(link_all_deplibs, $1)=unknown
Chris@10 5852 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
Chris@10 5853 _LT_TAGVAR(reload_flag, $1)=$reload_flag
Chris@10 5854 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
Chris@10 5855 _LT_TAGVAR(no_undefined_flag, $1)=
Chris@10 5856 _LT_TAGVAR(whole_archive_flag_spec, $1)=
Chris@10 5857 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
Chris@10 5858
Chris@10 5859 # Source file extension for C++ test sources.
Chris@10 5860 ac_ext=cpp
Chris@10 5861
Chris@10 5862 # Object file extension for compiled C++ test sources.
Chris@10 5863 objext=o
Chris@10 5864 _LT_TAGVAR(objext, $1)=$objext
Chris@10 5865
Chris@10 5866 # No sense in running all these tests if we already determined that
Chris@10 5867 # the CXX compiler isn't working. Some variables (like enable_shared)
Chris@10 5868 # are currently assumed to apply to all compilers on this platform,
Chris@10 5869 # and will be corrupted by setting them based on a non-working compiler.
Chris@10 5870 if test "$_lt_caught_CXX_error" != yes; then
Chris@10 5871 # Code to be used in simple compile tests
Chris@10 5872 lt_simple_compile_test_code="int some_variable = 0;"
Chris@10 5873
Chris@10 5874 # Code to be used in simple link tests
Chris@10 5875 lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
Chris@10 5876
Chris@10 5877 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
Chris@10 5878 _LT_TAG_COMPILER
Chris@10 5879
Chris@10 5880 # save warnings/boilerplate of simple test code
Chris@10 5881 _LT_COMPILER_BOILERPLATE
Chris@10 5882 _LT_LINKER_BOILERPLATE
Chris@10 5883
Chris@10 5884 # Allow CC to be a program name with arguments.
Chris@10 5885 lt_save_CC=$CC
Chris@10 5886 lt_save_CFLAGS=$CFLAGS
Chris@10 5887 lt_save_LD=$LD
Chris@10 5888 lt_save_GCC=$GCC
Chris@10 5889 GCC=$GXX
Chris@10 5890 lt_save_with_gnu_ld=$with_gnu_ld
Chris@10 5891 lt_save_path_LD=$lt_cv_path_LD
Chris@10 5892 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
Chris@10 5893 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
Chris@10 5894 else
Chris@10 5895 $as_unset lt_cv_prog_gnu_ld
Chris@10 5896 fi
Chris@10 5897 if test -n "${lt_cv_path_LDCXX+set}"; then
Chris@10 5898 lt_cv_path_LD=$lt_cv_path_LDCXX
Chris@10 5899 else
Chris@10 5900 $as_unset lt_cv_path_LD
Chris@10 5901 fi
Chris@10 5902 test -z "${LDCXX+set}" || LD=$LDCXX
Chris@10 5903 CC=${CXX-"c++"}
Chris@10 5904 CFLAGS=$CXXFLAGS
Chris@10 5905 compiler=$CC
Chris@10 5906 _LT_TAGVAR(compiler, $1)=$CC
Chris@10 5907 _LT_CC_BASENAME([$compiler])
Chris@10 5908
Chris@10 5909 if test -n "$compiler"; then
Chris@10 5910 # We don't want -fno-exception when compiling C++ code, so set the
Chris@10 5911 # no_builtin_flag separately
Chris@10 5912 if test "$GXX" = yes; then
Chris@10 5913 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
Chris@10 5914 else
Chris@10 5915 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
Chris@10 5916 fi
Chris@10 5917
Chris@10 5918 if test "$GXX" = yes; then
Chris@10 5919 # Set up default GNU C++ configuration
Chris@10 5920
Chris@10 5921 LT_PATH_LD
Chris@10 5922
Chris@10 5923 # Check if GNU C++ uses GNU ld as the underlying linker, since the
Chris@10 5924 # archiving commands below assume that GNU ld is being used.
Chris@10 5925 if test "$with_gnu_ld" = yes; then
Chris@10 5926 _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
Chris@10 5927 _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'
Chris@10 5928
Chris@10 5929 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
Chris@10 5930 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
Chris@10 5931
Chris@10 5932 # If archive_cmds runs LD, not CC, wlarc should be empty
Chris@10 5933 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
Chris@10 5934 # investigate it a little bit more. (MM)
Chris@10 5935 wlarc='${wl}'
Chris@10 5936
Chris@10 5937 # ancient GNU ld didn't support --whole-archive et. al.
Chris@10 5938 if eval "`$CC -print-prog-name=ld` --help 2>&1" |
Chris@10 5939 $GREP 'no-whole-archive' > /dev/null; then
Chris@10 5940 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
Chris@10 5941 else
Chris@10 5942 _LT_TAGVAR(whole_archive_flag_spec, $1)=
Chris@10 5943 fi
Chris@10 5944 else
Chris@10 5945 with_gnu_ld=no
Chris@10 5946 wlarc=
Chris@10 5947
Chris@10 5948 # A generic and very simple default shared library creation
Chris@10 5949 # command for GNU C++ for the case where it uses the native
Chris@10 5950 # linker, instead of GNU ld. If possible, this setting should
Chris@10 5951 # overridden to take advantage of the native linker features on
Chris@10 5952 # the platform it is being used on.
Chris@10 5953 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
Chris@10 5954 fi
Chris@10 5955
Chris@10 5956 # Commands to make compiler produce verbose output that lists
Chris@10 5957 # what "hidden" libraries, object files and flags are used when
Chris@10 5958 # linking a shared library.
Chris@10 5959 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
Chris@10 5960
Chris@10 5961 else
Chris@10 5962 GXX=no
Chris@10 5963 with_gnu_ld=no
Chris@10 5964 wlarc=
Chris@10 5965 fi
Chris@10 5966
Chris@10 5967 # PORTME: fill in a description of your system's C++ link characteristics
Chris@10 5968 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
Chris@10 5969 _LT_TAGVAR(ld_shlibs, $1)=yes
Chris@10 5970 case $host_os in
Chris@10 5971 aix3*)
Chris@10 5972 # FIXME: insert proper C++ library support
Chris@10 5973 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 5974 ;;
Chris@10 5975 aix[[4-9]]*)
Chris@10 5976 if test "$host_cpu" = ia64; then
Chris@10 5977 # On IA64, the linker does run time linking by default, so we don't
Chris@10 5978 # have to do anything special.
Chris@10 5979 aix_use_runtimelinking=no
Chris@10 5980 exp_sym_flag='-Bexport'
Chris@10 5981 no_entry_flag=""
Chris@10 5982 else
Chris@10 5983 aix_use_runtimelinking=no
Chris@10 5984
Chris@10 5985 # Test if we are trying to use run time linking or normal
Chris@10 5986 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
Chris@10 5987 # need to do runtime linking.
Chris@10 5988 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
Chris@10 5989 for ld_flag in $LDFLAGS; do
Chris@10 5990 case $ld_flag in
Chris@10 5991 *-brtl*)
Chris@10 5992 aix_use_runtimelinking=yes
Chris@10 5993 break
Chris@10 5994 ;;
Chris@10 5995 esac
Chris@10 5996 done
Chris@10 5997 ;;
Chris@10 5998 esac
Chris@10 5999
Chris@10 6000 exp_sym_flag='-bexport'
Chris@10 6001 no_entry_flag='-bnoentry'
Chris@10 6002 fi
Chris@10 6003
Chris@10 6004 # When large executables or shared objects are built, AIX ld can
Chris@10 6005 # have problems creating the table of contents. If linking a library
Chris@10 6006 # or program results in "error TOC overflow" add -mminimal-toc to
Chris@10 6007 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
Chris@10 6008 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
Chris@10 6009
Chris@10 6010 _LT_TAGVAR(archive_cmds, $1)=''
Chris@10 6011 _LT_TAGVAR(hardcode_direct, $1)=yes
Chris@10 6012 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
Chris@10 6013 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
Chris@10 6014 _LT_TAGVAR(link_all_deplibs, $1)=yes
Chris@10 6015 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
Chris@10 6016
Chris@10 6017 if test "$GXX" = yes; then
Chris@10 6018 case $host_os in aix4.[[012]]|aix4.[[012]].*)
Chris@10 6019 # We only want to do this on AIX 4.2 and lower, the check
Chris@10 6020 # below for broken collect2 doesn't work under 4.3+
Chris@10 6021 collect2name=`${CC} -print-prog-name=collect2`
Chris@10 6022 if test -f "$collect2name" &&
Chris@10 6023 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
Chris@10 6024 then
Chris@10 6025 # We have reworked collect2
Chris@10 6026 :
Chris@10 6027 else
Chris@10 6028 # We have old collect2
Chris@10 6029 _LT_TAGVAR(hardcode_direct, $1)=unsupported
Chris@10 6030 # It fails to find uninstalled libraries when the uninstalled
Chris@10 6031 # path is not listed in the libpath. Setting hardcode_minus_L
Chris@10 6032 # to unsupported forces relinking
Chris@10 6033 _LT_TAGVAR(hardcode_minus_L, $1)=yes
Chris@10 6034 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
Chris@10 6035 _LT_TAGVAR(hardcode_libdir_separator, $1)=
Chris@10 6036 fi
Chris@10 6037 esac
Chris@10 6038 shared_flag='-shared'
Chris@10 6039 if test "$aix_use_runtimelinking" = yes; then
Chris@10 6040 shared_flag="$shared_flag "'${wl}-G'
Chris@10 6041 fi
Chris@10 6042 else
Chris@10 6043 # not using gcc
Chris@10 6044 if test "$host_cpu" = ia64; then
Chris@10 6045 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
Chris@10 6046 # chokes on -Wl,-G. The following line is correct:
Chris@10 6047 shared_flag='-G'
Chris@10 6048 else
Chris@10 6049 if test "$aix_use_runtimelinking" = yes; then
Chris@10 6050 shared_flag='${wl}-G'
Chris@10 6051 else
Chris@10 6052 shared_flag='${wl}-bM:SRE'
Chris@10 6053 fi
Chris@10 6054 fi
Chris@10 6055 fi
Chris@10 6056
Chris@10 6057 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
Chris@10 6058 # It seems that -bexpall does not export symbols beginning with
Chris@10 6059 # underscore (_), so it is better to generate a list of symbols to
Chris@10 6060 # export.
Chris@10 6061 _LT_TAGVAR(always_export_symbols, $1)=yes
Chris@10 6062 if test "$aix_use_runtimelinking" = yes; then
Chris@10 6063 # Warning - without using the other runtime loading flags (-brtl),
Chris@10 6064 # -berok will link without error, but may produce a broken library.
Chris@10 6065 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
Chris@10 6066 # Determine the default libpath from the value encoded in an empty
Chris@10 6067 # executable.
Chris@10 6068 _LT_SYS_MODULE_PATH_AIX([$1])
Chris@10 6069 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
Chris@10 6070
Chris@10 6071 _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"
Chris@10 6072 else
Chris@10 6073 if test "$host_cpu" = ia64; then
Chris@10 6074 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
Chris@10 6075 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
Chris@10 6076 _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"
Chris@10 6077 else
Chris@10 6078 # Determine the default libpath from the value encoded in an
Chris@10 6079 # empty executable.
Chris@10 6080 _LT_SYS_MODULE_PATH_AIX([$1])
Chris@10 6081 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
Chris@10 6082 # Warning - without using the other run time loading flags,
Chris@10 6083 # -berok will link without error, but may produce a broken library.
Chris@10 6084 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
Chris@10 6085 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
Chris@10 6086 if test "$with_gnu_ld" = yes; then
Chris@10 6087 # We only use this code for GNU lds that support --whole-archive.
Chris@10 6088 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
Chris@10 6089 else
Chris@10 6090 # Exported symbols can be pulled into shared objects from archives
Chris@10 6091 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
Chris@10 6092 fi
Chris@10 6093 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
Chris@10 6094 # This is similar to how AIX traditionally builds its shared
Chris@10 6095 # libraries.
Chris@10 6096 _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'
Chris@10 6097 fi
Chris@10 6098 fi
Chris@10 6099 ;;
Chris@10 6100
Chris@10 6101 beos*)
Chris@10 6102 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
Chris@10 6103 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
Chris@10 6104 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
Chris@10 6105 # support --undefined. This deserves some investigation. FIXME
Chris@10 6106 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
Chris@10 6107 else
Chris@10 6108 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6109 fi
Chris@10 6110 ;;
Chris@10 6111
Chris@10 6112 chorus*)
Chris@10 6113 case $cc_basename in
Chris@10 6114 *)
Chris@10 6115 # FIXME: insert proper C++ library support
Chris@10 6116 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6117 ;;
Chris@10 6118 esac
Chris@10 6119 ;;
Chris@10 6120
Chris@10 6121 cygwin* | mingw* | pw32* | cegcc*)
Chris@10 6122 case $GXX,$cc_basename in
Chris@10 6123 ,cl* | no,cl*)
Chris@10 6124 # Native MSVC
Chris@10 6125 # hardcode_libdir_flag_spec is actually meaningless, as there is
Chris@10 6126 # no search path for DLLs.
Chris@10 6127 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
Chris@10 6128 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
Chris@10 6129 _LT_TAGVAR(always_export_symbols, $1)=yes
Chris@10 6130 _LT_TAGVAR(file_list_spec, $1)='@'
Chris@10 6131 # Tell ltmain to make .lib files, not .a files.
Chris@10 6132 libext=lib
Chris@10 6133 # Tell ltmain to make .dll files, not .so files.
Chris@10 6134 shrext_cmds=".dll"
Chris@10 6135 # FIXME: Setting linknames here is a bad hack.
Chris@10 6136 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
Chris@10 6137 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
Chris@10 6138 $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
Chris@10 6139 else
Chris@10 6140 $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
Chris@10 6141 fi~
Chris@10 6142 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
Chris@10 6143 linknames='
Chris@10 6144 # The linker will not automatically build a static lib if we build a DLL.
Chris@10 6145 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
Chris@10 6146 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
Chris@10 6147 # Don't use ranlib
Chris@10 6148 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
Chris@10 6149 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
Chris@10 6150 lt_tool_outputfile="@TOOL_OUTPUT@"~
Chris@10 6151 case $lt_outputfile in
Chris@10 6152 *.exe|*.EXE) ;;
Chris@10 6153 *)
Chris@10 6154 lt_outputfile="$lt_outputfile.exe"
Chris@10 6155 lt_tool_outputfile="$lt_tool_outputfile.exe"
Chris@10 6156 ;;
Chris@10 6157 esac~
Chris@10 6158 func_to_tool_file "$lt_outputfile"~
Chris@10 6159 if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
Chris@10 6160 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
Chris@10 6161 $RM "$lt_outputfile.manifest";
Chris@10 6162 fi'
Chris@10 6163 ;;
Chris@10 6164 *)
Chris@10 6165 # g++
Chris@10 6166 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
Chris@10 6167 # as there is no search path for DLLs.
Chris@10 6168 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
Chris@10 6169 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
Chris@10 6170 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
Chris@10 6171 _LT_TAGVAR(always_export_symbols, $1)=no
Chris@10 6172 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
Chris@10 6173
Chris@10 6174 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
Chris@10 6175 _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'
Chris@10 6176 # If the export-symbols file already is a .def file (1st line
Chris@10 6177 # is EXPORTS), use it as is; otherwise, prepend...
Chris@10 6178 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
Chris@10 6179 cp $export_symbols $output_objdir/$soname.def;
Chris@10 6180 else
Chris@10 6181 echo EXPORTS > $output_objdir/$soname.def;
Chris@10 6182 cat $export_symbols >> $output_objdir/$soname.def;
Chris@10 6183 fi~
Chris@10 6184 $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'
Chris@10 6185 else
Chris@10 6186 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6187 fi
Chris@10 6188 ;;
Chris@10 6189 esac
Chris@10 6190 ;;
Chris@10 6191 darwin* | rhapsody*)
Chris@10 6192 _LT_DARWIN_LINKER_FEATURES($1)
Chris@10 6193 ;;
Chris@10 6194
Chris@10 6195 dgux*)
Chris@10 6196 case $cc_basename in
Chris@10 6197 ec++*)
Chris@10 6198 # FIXME: insert proper C++ library support
Chris@10 6199 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6200 ;;
Chris@10 6201 ghcx*)
Chris@10 6202 # Green Hills C++ Compiler
Chris@10 6203 # FIXME: insert proper C++ library support
Chris@10 6204 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6205 ;;
Chris@10 6206 *)
Chris@10 6207 # FIXME: insert proper C++ library support
Chris@10 6208 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6209 ;;
Chris@10 6210 esac
Chris@10 6211 ;;
Chris@10 6212
Chris@10 6213 freebsd2.*)
Chris@10 6214 # C++ shared libraries reported to be fairly broken before
Chris@10 6215 # switch to ELF
Chris@10 6216 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6217 ;;
Chris@10 6218
Chris@10 6219 freebsd-elf*)
Chris@10 6220 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
Chris@10 6221 ;;
Chris@10 6222
Chris@10 6223 freebsd* | dragonfly*)
Chris@10 6224 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
Chris@10 6225 # conventions
Chris@10 6226 _LT_TAGVAR(ld_shlibs, $1)=yes
Chris@10 6227 ;;
Chris@10 6228
Chris@10 6229 haiku*)
Chris@10 6230 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
Chris@10 6231 _LT_TAGVAR(link_all_deplibs, $1)=yes
Chris@10 6232 ;;
Chris@10 6233
Chris@10 6234 hpux9*)
Chris@10 6235 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
Chris@10 6236 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
Chris@10 6237 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
Chris@10 6238 _LT_TAGVAR(hardcode_direct, $1)=yes
Chris@10 6239 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
Chris@10 6240 # but as the default
Chris@10 6241 # location of the library.
Chris@10 6242
Chris@10 6243 case $cc_basename in
Chris@10 6244 CC*)
Chris@10 6245 # FIXME: insert proper C++ library support
Chris@10 6246 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6247 ;;
Chris@10 6248 aCC*)
Chris@10 6249 _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'
Chris@10 6250 # Commands to make compiler produce verbose output that lists
Chris@10 6251 # what "hidden" libraries, object files and flags are used when
Chris@10 6252 # linking a shared library.
Chris@10 6253 #
Chris@10 6254 # There doesn't appear to be a way to prevent this compiler from
Chris@10 6255 # explicitly linking system object files so we need to strip them
Chris@10 6256 # from the output so that they don't get included in the library
Chris@10 6257 # dependencies.
Chris@10 6258 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"'
Chris@10 6259 ;;
Chris@10 6260 *)
Chris@10 6261 if test "$GXX" = yes; then
Chris@10 6262 _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'
Chris@10 6263 else
Chris@10 6264 # FIXME: insert proper C++ library support
Chris@10 6265 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6266 fi
Chris@10 6267 ;;
Chris@10 6268 esac
Chris@10 6269 ;;
Chris@10 6270
Chris@10 6271 hpux10*|hpux11*)
Chris@10 6272 if test $with_gnu_ld = no; then
Chris@10 6273 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
Chris@10 6274 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
Chris@10 6275
Chris@10 6276 case $host_cpu in
Chris@10 6277 hppa*64*|ia64*)
Chris@10 6278 ;;
Chris@10 6279 *)
Chris@10 6280 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
Chris@10 6281 ;;
Chris@10 6282 esac
Chris@10 6283 fi
Chris@10 6284 case $host_cpu in
Chris@10 6285 hppa*64*|ia64*)
Chris@10 6286 _LT_TAGVAR(hardcode_direct, $1)=no
Chris@10 6287 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 6288 ;;
Chris@10 6289 *)
Chris@10 6290 _LT_TAGVAR(hardcode_direct, $1)=yes
Chris@10 6291 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
Chris@10 6292 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
Chris@10 6293 # but as the default
Chris@10 6294 # location of the library.
Chris@10 6295 ;;
Chris@10 6296 esac
Chris@10 6297
Chris@10 6298 case $cc_basename in
Chris@10 6299 CC*)
Chris@10 6300 # FIXME: insert proper C++ library support
Chris@10 6301 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6302 ;;
Chris@10 6303 aCC*)
Chris@10 6304 case $host_cpu in
Chris@10 6305 hppa*64*)
Chris@10 6306 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
Chris@10 6307 ;;
Chris@10 6308 ia64*)
Chris@10 6309 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
Chris@10 6310 ;;
Chris@10 6311 *)
Chris@10 6312 _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'
Chris@10 6313 ;;
Chris@10 6314 esac
Chris@10 6315 # Commands to make compiler produce verbose output that lists
Chris@10 6316 # what "hidden" libraries, object files and flags are used when
Chris@10 6317 # linking a shared library.
Chris@10 6318 #
Chris@10 6319 # There doesn't appear to be a way to prevent this compiler from
Chris@10 6320 # explicitly linking system object files so we need to strip them
Chris@10 6321 # from the output so that they don't get included in the library
Chris@10 6322 # dependencies.
Chris@10 6323 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"'
Chris@10 6324 ;;
Chris@10 6325 *)
Chris@10 6326 if test "$GXX" = yes; then
Chris@10 6327 if test $with_gnu_ld = no; then
Chris@10 6328 case $host_cpu in
Chris@10 6329 hppa*64*)
Chris@10 6330 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
Chris@10 6331 ;;
Chris@10 6332 ia64*)
Chris@10 6333 _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'
Chris@10 6334 ;;
Chris@10 6335 *)
Chris@10 6336 _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'
Chris@10 6337 ;;
Chris@10 6338 esac
Chris@10 6339 fi
Chris@10 6340 else
Chris@10 6341 # FIXME: insert proper C++ library support
Chris@10 6342 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6343 fi
Chris@10 6344 ;;
Chris@10 6345 esac
Chris@10 6346 ;;
Chris@10 6347
Chris@10 6348 interix[[3-9]]*)
Chris@10 6349 _LT_TAGVAR(hardcode_direct, $1)=no
Chris@10 6350 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 6351 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
Chris@10 6352 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
Chris@10 6353 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
Chris@10 6354 # Instead, shared libraries are loaded at an image base (0x10000000 by
Chris@10 6355 # default) and relocated if they conflict, which is a slow very memory
Chris@10 6356 # consuming and fragmenting process. To avoid this, we pick a random,
Chris@10 6357 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
Chris@10 6358 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
Chris@10 6359 _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'
Chris@10 6360 _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'
Chris@10 6361 ;;
Chris@10 6362 irix5* | irix6*)
Chris@10 6363 case $cc_basename in
Chris@10 6364 CC*)
Chris@10 6365 # SGI C++
Chris@10 6366 _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'
Chris@10 6367
Chris@10 6368 # Archives containing C++ object files must be created using
Chris@10 6369 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
Chris@10 6370 # necessary to make sure instantiated templates are included
Chris@10 6371 # in the archive.
Chris@10 6372 _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
Chris@10 6373 ;;
Chris@10 6374 *)
Chris@10 6375 if test "$GXX" = yes; then
Chris@10 6376 if test "$with_gnu_ld" = no; then
Chris@10 6377 _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'
Chris@10 6378 else
Chris@10 6379 _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'
Chris@10 6380 fi
Chris@10 6381 fi
Chris@10 6382 _LT_TAGVAR(link_all_deplibs, $1)=yes
Chris@10 6383 ;;
Chris@10 6384 esac
Chris@10 6385 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
Chris@10 6386 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
Chris@10 6387 _LT_TAGVAR(inherit_rpath, $1)=yes
Chris@10 6388 ;;
Chris@10 6389
Chris@10 6390 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
Chris@10 6391 case $cc_basename in
Chris@10 6392 KCC*)
Chris@10 6393 # Kuck and Associates, Inc. (KAI) C++ Compiler
Chris@10 6394
Chris@10 6395 # KCC will only create a shared library if the output file
Chris@10 6396 # ends with ".so" (or ".sl" for HP-UX), so rename the library
Chris@10 6397 # to its proper name (with version) after linking.
Chris@10 6398 _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'
Chris@10 6399 _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'
Chris@10 6400 # Commands to make compiler produce verbose output that lists
Chris@10 6401 # what "hidden" libraries, object files and flags are used when
Chris@10 6402 # linking a shared library.
Chris@10 6403 #
Chris@10 6404 # There doesn't appear to be a way to prevent this compiler from
Chris@10 6405 # explicitly linking system object files so we need to strip them
Chris@10 6406 # from the output so that they don't get included in the library
Chris@10 6407 # dependencies.
Chris@10 6408 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"'
Chris@10 6409
Chris@10 6410 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
Chris@10 6411 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
Chris@10 6412
Chris@10 6413 # Archives containing C++ object files must be created using
Chris@10 6414 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
Chris@10 6415 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
Chris@10 6416 ;;
Chris@10 6417 icpc* | ecpc* )
Chris@10 6418 # Intel C++
Chris@10 6419 with_gnu_ld=yes
Chris@10 6420 # version 8.0 and above of icpc choke on multiply defined symbols
Chris@10 6421 # if we add $predep_objects and $postdep_objects, however 7.1 and
Chris@10 6422 # earlier do not add the objects themselves.
Chris@10 6423 case `$CC -V 2>&1` in
Chris@10 6424 *"Version 7."*)
Chris@10 6425 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
Chris@10 6426 _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'
Chris@10 6427 ;;
Chris@10 6428 *) # Version 8.0 or newer
Chris@10 6429 tmp_idyn=
Chris@10 6430 case $host_cpu in
Chris@10 6431 ia64*) tmp_idyn=' -i_dynamic';;
Chris@10 6432 esac
Chris@10 6433 _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
Chris@10 6434 _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'
Chris@10 6435 ;;
Chris@10 6436 esac
Chris@10 6437 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
Chris@10 6438 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
Chris@10 6439 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
Chris@10 6440 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
Chris@10 6441 ;;
Chris@10 6442 pgCC* | pgcpp*)
Chris@10 6443 # Portland Group C++ compiler
Chris@10 6444 case `$CC -V` in
Chris@10 6445 *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
Chris@10 6446 _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
Chris@10 6447 rm -rf $tpldir~
Chris@10 6448 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
Chris@10 6449 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
Chris@10 6450 _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
Chris@10 6451 rm -rf $tpldir~
Chris@10 6452 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
Chris@10 6453 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
Chris@10 6454 $RANLIB $oldlib'
Chris@10 6455 _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
Chris@10 6456 rm -rf $tpldir~
Chris@10 6457 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
Chris@10 6458 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
Chris@10 6459 _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
Chris@10 6460 rm -rf $tpldir~
Chris@10 6461 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
Chris@10 6462 $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'
Chris@10 6463 ;;
Chris@10 6464 *) # Version 6 and above use weak symbols
Chris@10 6465 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
Chris@10 6466 _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'
Chris@10 6467 ;;
Chris@10 6468 esac
Chris@10 6469
Chris@10 6470 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
Chris@10 6471 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
Chris@10 6472 _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'
Chris@10 6473 ;;
Chris@10 6474 cxx*)
Chris@10 6475 # Compaq C++
Chris@10 6476 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
Chris@10 6477 _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'
Chris@10 6478
Chris@10 6479 runpath_var=LD_RUN_PATH
Chris@10 6480 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
Chris@10 6481 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
Chris@10 6482
Chris@10 6483 # Commands to make compiler produce verbose output that lists
Chris@10 6484 # what "hidden" libraries, object files and flags are used when
Chris@10 6485 # linking a shared library.
Chris@10 6486 #
Chris@10 6487 # There doesn't appear to be a way to prevent this compiler from
Chris@10 6488 # explicitly linking system object files so we need to strip them
Chris@10 6489 # from the output so that they don't get included in the library
Chris@10 6490 # dependencies.
Chris@10 6491 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'
Chris@10 6492 ;;
Chris@10 6493 xl* | mpixl* | bgxl*)
Chris@10 6494 # IBM XL 8.0 on PPC, with GNU ld
Chris@10 6495 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
Chris@10 6496 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
Chris@10 6497 _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
Chris@10 6498 if test "x$supports_anon_versioning" = xyes; then
Chris@10 6499 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
Chris@10 6500 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
Chris@10 6501 echo "local: *; };" >> $output_objdir/$libname.ver~
Chris@10 6502 $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
Chris@10 6503 fi
Chris@10 6504 ;;
Chris@10 6505 *)
Chris@10 6506 case `$CC -V 2>&1 | sed 5q` in
Chris@10 6507 *Sun\ C*)
Chris@10 6508 # Sun C++ 5.9
Chris@10 6509 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
Chris@10 6510 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
Chris@10 6511 _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'
Chris@10 6512 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
Chris@10 6513 _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'
Chris@10 6514 _LT_TAGVAR(compiler_needs_object, $1)=yes
Chris@10 6515
Chris@10 6516 # Not sure whether something based on
Chris@10 6517 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
Chris@10 6518 # would be better.
Chris@10 6519 output_verbose_link_cmd='func_echo_all'
Chris@10 6520
Chris@10 6521 # Archives containing C++ object files must be created using
Chris@10 6522 # "CC -xar", where "CC" is the Sun C++ compiler. This is
Chris@10 6523 # necessary to make sure instantiated templates are included
Chris@10 6524 # in the archive.
Chris@10 6525 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
Chris@10 6526 ;;
Chris@10 6527 esac
Chris@10 6528 ;;
Chris@10 6529 esac
Chris@10 6530 ;;
Chris@10 6531
Chris@10 6532 lynxos*)
Chris@10 6533 # FIXME: insert proper C++ library support
Chris@10 6534 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6535 ;;
Chris@10 6536
Chris@10 6537 m88k*)
Chris@10 6538 # FIXME: insert proper C++ library support
Chris@10 6539 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6540 ;;
Chris@10 6541
Chris@10 6542 mvs*)
Chris@10 6543 case $cc_basename in
Chris@10 6544 cxx*)
Chris@10 6545 # FIXME: insert proper C++ library support
Chris@10 6546 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6547 ;;
Chris@10 6548 *)
Chris@10 6549 # FIXME: insert proper C++ library support
Chris@10 6550 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6551 ;;
Chris@10 6552 esac
Chris@10 6553 ;;
Chris@10 6554
Chris@10 6555 netbsd*)
Chris@10 6556 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
Chris@10 6557 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
Chris@10 6558 wlarc=
Chris@10 6559 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
Chris@10 6560 _LT_TAGVAR(hardcode_direct, $1)=yes
Chris@10 6561 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 6562 fi
Chris@10 6563 # Workaround some broken pre-1.5 toolchains
Chris@10 6564 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
Chris@10 6565 ;;
Chris@10 6566
Chris@10 6567 *nto* | *qnx*)
Chris@10 6568 _LT_TAGVAR(ld_shlibs, $1)=yes
Chris@10 6569 ;;
Chris@10 6570
Chris@10 6571 openbsd2*)
Chris@10 6572 # C++ shared libraries are fairly broken
Chris@10 6573 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6574 ;;
Chris@10 6575
Chris@10 6576 openbsd*)
Chris@10 6577 if test -f /usr/libexec/ld.so; then
Chris@10 6578 _LT_TAGVAR(hardcode_direct, $1)=yes
Chris@10 6579 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 6580 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
Chris@10 6581 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
Chris@10 6582 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
Chris@10 6583 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
Chris@10 6584 _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'
Chris@10 6585 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
Chris@10 6586 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
Chris@10 6587 fi
Chris@10 6588 output_verbose_link_cmd=func_echo_all
Chris@10 6589 else
Chris@10 6590 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6591 fi
Chris@10 6592 ;;
Chris@10 6593
Chris@10 6594 osf3* | osf4* | osf5*)
Chris@10 6595 case $cc_basename in
Chris@10 6596 KCC*)
Chris@10 6597 # Kuck and Associates, Inc. (KAI) C++ Compiler
Chris@10 6598
Chris@10 6599 # KCC will only create a shared library if the output file
Chris@10 6600 # ends with ".so" (or ".sl" for HP-UX), so rename the library
Chris@10 6601 # to its proper name (with version) after linking.
Chris@10 6602 _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'
Chris@10 6603
Chris@10 6604 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
Chris@10 6605 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
Chris@10 6606
Chris@10 6607 # Archives containing C++ object files must be created using
Chris@10 6608 # the KAI C++ compiler.
Chris@10 6609 case $host in
Chris@10 6610 osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
Chris@10 6611 *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
Chris@10 6612 esac
Chris@10 6613 ;;
Chris@10 6614 RCC*)
Chris@10 6615 # Rational C++ 2.4.1
Chris@10 6616 # FIXME: insert proper C++ library support
Chris@10 6617 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6618 ;;
Chris@10 6619 cxx*)
Chris@10 6620 case $host in
Chris@10 6621 osf3*)
Chris@10 6622 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
Chris@10 6623 _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'
Chris@10 6624 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
Chris@10 6625 ;;
Chris@10 6626 *)
Chris@10 6627 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
Chris@10 6628 _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'
Chris@10 6629 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
Chris@10 6630 echo "-hidden">> $lib.exp~
Chris@10 6631 $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~
Chris@10 6632 $RM $lib.exp'
Chris@10 6633 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
Chris@10 6634 ;;
Chris@10 6635 esac
Chris@10 6636
Chris@10 6637 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
Chris@10 6638
Chris@10 6639 # Commands to make compiler produce verbose output that lists
Chris@10 6640 # what "hidden" libraries, object files and flags are used when
Chris@10 6641 # linking a shared library.
Chris@10 6642 #
Chris@10 6643 # There doesn't appear to be a way to prevent this compiler from
Chris@10 6644 # explicitly linking system object files so we need to strip them
Chris@10 6645 # from the output so that they don't get included in the library
Chris@10 6646 # dependencies.
Chris@10 6647 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"'
Chris@10 6648 ;;
Chris@10 6649 *)
Chris@10 6650 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
Chris@10 6651 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
Chris@10 6652 case $host in
Chris@10 6653 osf3*)
Chris@10 6654 _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'
Chris@10 6655 ;;
Chris@10 6656 *)
Chris@10 6657 _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'
Chris@10 6658 ;;
Chris@10 6659 esac
Chris@10 6660
Chris@10 6661 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
Chris@10 6662 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
Chris@10 6663
Chris@10 6664 # Commands to make compiler produce verbose output that lists
Chris@10 6665 # what "hidden" libraries, object files and flags are used when
Chris@10 6666 # linking a shared library.
Chris@10 6667 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
Chris@10 6668
Chris@10 6669 else
Chris@10 6670 # FIXME: insert proper C++ library support
Chris@10 6671 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6672 fi
Chris@10 6673 ;;
Chris@10 6674 esac
Chris@10 6675 ;;
Chris@10 6676
Chris@10 6677 psos*)
Chris@10 6678 # FIXME: insert proper C++ library support
Chris@10 6679 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6680 ;;
Chris@10 6681
Chris@10 6682 sunos4*)
Chris@10 6683 case $cc_basename in
Chris@10 6684 CC*)
Chris@10 6685 # Sun C++ 4.x
Chris@10 6686 # FIXME: insert proper C++ library support
Chris@10 6687 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6688 ;;
Chris@10 6689 lcc*)
Chris@10 6690 # Lucid
Chris@10 6691 # FIXME: insert proper C++ library support
Chris@10 6692 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6693 ;;
Chris@10 6694 *)
Chris@10 6695 # FIXME: insert proper C++ library support
Chris@10 6696 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6697 ;;
Chris@10 6698 esac
Chris@10 6699 ;;
Chris@10 6700
Chris@10 6701 solaris*)
Chris@10 6702 case $cc_basename in
Chris@10 6703 CC* | sunCC*)
Chris@10 6704 # Sun C++ 4.2, 5.x and Centerline C++
Chris@10 6705 _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
Chris@10 6706 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
Chris@10 6707 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
Chris@10 6708 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
Chris@10 6709 $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'
Chris@10 6710
Chris@10 6711 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
Chris@10 6712 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 6713 case $host_os in
Chris@10 6714 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
Chris@10 6715 *)
Chris@10 6716 # The compiler driver will combine and reorder linker options,
Chris@10 6717 # but understands `-z linker_flag'.
Chris@10 6718 # Supported since Solaris 2.6 (maybe 2.5.1?)
Chris@10 6719 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
Chris@10 6720 ;;
Chris@10 6721 esac
Chris@10 6722 _LT_TAGVAR(link_all_deplibs, $1)=yes
Chris@10 6723
Chris@10 6724 output_verbose_link_cmd='func_echo_all'
Chris@10 6725
Chris@10 6726 # Archives containing C++ object files must be created using
Chris@10 6727 # "CC -xar", where "CC" is the Sun C++ compiler. This is
Chris@10 6728 # necessary to make sure instantiated templates are included
Chris@10 6729 # in the archive.
Chris@10 6730 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
Chris@10 6731 ;;
Chris@10 6732 gcx*)
Chris@10 6733 # Green Hills C++ Compiler
Chris@10 6734 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
Chris@10 6735
Chris@10 6736 # The C++ compiler must be used to create the archive.
Chris@10 6737 _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
Chris@10 6738 ;;
Chris@10 6739 *)
Chris@10 6740 # GNU C++ compiler with Solaris linker
Chris@10 6741 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
Chris@10 6742 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
Chris@10 6743 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
Chris@10 6744 _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'
Chris@10 6745 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
Chris@10 6746 $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
Chris@10 6747
Chris@10 6748 # Commands to make compiler produce verbose output that lists
Chris@10 6749 # what "hidden" libraries, object files and flags are used when
Chris@10 6750 # linking a shared library.
Chris@10 6751 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
Chris@10 6752 else
Chris@10 6753 # g++ 2.7 appears to require `-G' NOT `-shared' on this
Chris@10 6754 # platform.
Chris@10 6755 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
Chris@10 6756 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
Chris@10 6757 $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
Chris@10 6758
Chris@10 6759 # Commands to make compiler produce verbose output that lists
Chris@10 6760 # what "hidden" libraries, object files and flags are used when
Chris@10 6761 # linking a shared library.
Chris@10 6762 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
Chris@10 6763 fi
Chris@10 6764
Chris@10 6765 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
Chris@10 6766 case $host_os in
Chris@10 6767 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
Chris@10 6768 *)
Chris@10 6769 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
Chris@10 6770 ;;
Chris@10 6771 esac
Chris@10 6772 fi
Chris@10 6773 ;;
Chris@10 6774 esac
Chris@10 6775 ;;
Chris@10 6776
Chris@10 6777 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
Chris@10 6778 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
Chris@10 6779 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
Chris@10 6780 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 6781 runpath_var='LD_RUN_PATH'
Chris@10 6782
Chris@10 6783 case $cc_basename in
Chris@10 6784 CC*)
Chris@10 6785 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 6786 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 6787 ;;
Chris@10 6788 *)
Chris@10 6789 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 6790 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 6791 ;;
Chris@10 6792 esac
Chris@10 6793 ;;
Chris@10 6794
Chris@10 6795 sysv5* | sco3.2v5* | sco5v6*)
Chris@10 6796 # Note: We can NOT use -z defs as we might desire, because we do not
Chris@10 6797 # link with -lc, and that would cause any symbols used from libc to
Chris@10 6798 # always be unresolved, which means just about no library would
Chris@10 6799 # ever link correctly. If we're not using GNU ld we use -z text
Chris@10 6800 # though, which does catch some bad symbols but isn't as heavy-handed
Chris@10 6801 # as -z defs.
Chris@10 6802 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
Chris@10 6803 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
Chris@10 6804 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
Chris@10 6805 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Chris@10 6806 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
Chris@10 6807 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
Chris@10 6808 _LT_TAGVAR(link_all_deplibs, $1)=yes
Chris@10 6809 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
Chris@10 6810 runpath_var='LD_RUN_PATH'
Chris@10 6811
Chris@10 6812 case $cc_basename in
Chris@10 6813 CC*)
Chris@10 6814 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 6815 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 6816 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
Chris@10 6817 '"$_LT_TAGVAR(old_archive_cmds, $1)"
Chris@10 6818 _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
Chris@10 6819 '"$_LT_TAGVAR(reload_cmds, $1)"
Chris@10 6820 ;;
Chris@10 6821 *)
Chris@10 6822 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 6823 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Chris@10 6824 ;;
Chris@10 6825 esac
Chris@10 6826 ;;
Chris@10 6827
Chris@10 6828 tandem*)
Chris@10 6829 case $cc_basename in
Chris@10 6830 NCC*)
Chris@10 6831 # NonStop-UX NCC 3.20
Chris@10 6832 # FIXME: insert proper C++ library support
Chris@10 6833 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6834 ;;
Chris@10 6835 *)
Chris@10 6836 # FIXME: insert proper C++ library support
Chris@10 6837 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6838 ;;
Chris@10 6839 esac
Chris@10 6840 ;;
Chris@10 6841
Chris@10 6842 vxworks*)
Chris@10 6843 # FIXME: insert proper C++ library support
Chris@10 6844 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6845 ;;
Chris@10 6846
Chris@10 6847 *)
Chris@10 6848 # FIXME: insert proper C++ library support
Chris@10 6849 _LT_TAGVAR(ld_shlibs, $1)=no
Chris@10 6850 ;;
Chris@10 6851 esac
Chris@10 6852
Chris@10 6853 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
Chris@10 6854 test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
Chris@10 6855
Chris@10 6856 _LT_TAGVAR(GCC, $1)="$GXX"
Chris@10 6857 _LT_TAGVAR(LD, $1)="$LD"
Chris@10 6858
Chris@10 6859 ## CAVEAT EMPTOR:
Chris@10 6860 ## There is no encapsulation within the following macros, do not change
Chris@10 6861 ## the running order or otherwise move them around unless you know exactly
Chris@10 6862 ## what you are doing...
Chris@10 6863 _LT_SYS_HIDDEN_LIBDEPS($1)
Chris@10 6864 _LT_COMPILER_PIC($1)
Chris@10 6865 _LT_COMPILER_C_O($1)
Chris@10 6866 _LT_COMPILER_FILE_LOCKS($1)
Chris@10 6867 _LT_LINKER_SHLIBS($1)
Chris@10 6868 _LT_SYS_DYNAMIC_LINKER($1)
Chris@10 6869 _LT_LINKER_HARDCODE_LIBPATH($1)
Chris@10 6870
Chris@10 6871 _LT_CONFIG($1)
Chris@10 6872 fi # test -n "$compiler"
Chris@10 6873
Chris@10 6874 CC=$lt_save_CC
Chris@10 6875 CFLAGS=$lt_save_CFLAGS
Chris@10 6876 LDCXX=$LD
Chris@10 6877 LD=$lt_save_LD
Chris@10 6878 GCC=$lt_save_GCC
Chris@10 6879 with_gnu_ld=$lt_save_with_gnu_ld
Chris@10 6880 lt_cv_path_LDCXX=$lt_cv_path_LD
Chris@10 6881 lt_cv_path_LD=$lt_save_path_LD
Chris@10 6882 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
Chris@10 6883 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
Chris@10 6884 fi # test "$_lt_caught_CXX_error" != yes
Chris@10 6885
Chris@10 6886 AC_LANG_POP
Chris@10 6887 ])# _LT_LANG_CXX_CONFIG
Chris@10 6888
Chris@10 6889
Chris@10 6890 # _LT_FUNC_STRIPNAME_CNF
Chris@10 6891 # ----------------------
Chris@10 6892 # func_stripname_cnf prefix suffix name
Chris@10 6893 # strip PREFIX and SUFFIX off of NAME.
Chris@10 6894 # PREFIX and SUFFIX must not contain globbing or regex special
Chris@10 6895 # characters, hashes, percent signs, but SUFFIX may contain a leading
Chris@10 6896 # dot (in which case that matches only a dot).
Chris@10 6897 #
Chris@10 6898 # This function is identical to the (non-XSI) version of func_stripname,
Chris@10 6899 # except this one can be used by m4 code that may be executed by configure,
Chris@10 6900 # rather than the libtool script.
Chris@10 6901 m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
Chris@10 6902 AC_REQUIRE([_LT_DECL_SED])
Chris@10 6903 AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
Chris@10 6904 func_stripname_cnf ()
Chris@10 6905 {
Chris@10 6906 case ${2} in
Chris@10 6907 .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
Chris@10 6908 *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
Chris@10 6909 esac
Chris@10 6910 } # func_stripname_cnf
Chris@10 6911 ])# _LT_FUNC_STRIPNAME_CNF
Chris@10 6912
Chris@10 6913 # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
Chris@10 6914 # ---------------------------------
Chris@10 6915 # Figure out "hidden" library dependencies from verbose
Chris@10 6916 # compiler output when linking a shared library.
Chris@10 6917 # Parse the compiler output and extract the necessary
Chris@10 6918 # objects, libraries and library flags.
Chris@10 6919 m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
Chris@10 6920 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
Chris@10 6921 AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
Chris@10 6922 # Dependencies to place before and after the object being linked:
Chris@10 6923 _LT_TAGVAR(predep_objects, $1)=
Chris@10 6924 _LT_TAGVAR(postdep_objects, $1)=
Chris@10 6925 _LT_TAGVAR(predeps, $1)=
Chris@10 6926 _LT_TAGVAR(postdeps, $1)=
Chris@10 6927 _LT_TAGVAR(compiler_lib_search_path, $1)=
Chris@10 6928
Chris@10 6929 dnl we can't use the lt_simple_compile_test_code here,
Chris@10 6930 dnl because it contains code intended for an executable,
Chris@10 6931 dnl not a library. It's possible we should let each
Chris@10 6932 dnl tag define a new lt_????_link_test_code variable,
Chris@10 6933 dnl but it's only used here...
Chris@10 6934 m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
Chris@10 6935 int a;
Chris@10 6936 void foo (void) { a = 0; }
Chris@10 6937 _LT_EOF
Chris@10 6938 ], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
Chris@10 6939 class Foo
Chris@10 6940 {
Chris@10 6941 public:
Chris@10 6942 Foo (void) { a = 0; }
Chris@10 6943 private:
Chris@10 6944 int a;
Chris@10 6945 };
Chris@10 6946 _LT_EOF
Chris@10 6947 ], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
Chris@10 6948 subroutine foo
Chris@10 6949 implicit none
Chris@10 6950 integer*4 a
Chris@10 6951 a=0
Chris@10 6952 return
Chris@10 6953 end
Chris@10 6954 _LT_EOF
Chris@10 6955 ], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
Chris@10 6956 subroutine foo
Chris@10 6957 implicit none
Chris@10 6958 integer a
Chris@10 6959 a=0
Chris@10 6960 return
Chris@10 6961 end
Chris@10 6962 _LT_EOF
Chris@10 6963 ], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
Chris@10 6964 public class foo {
Chris@10 6965 private int a;
Chris@10 6966 public void bar (void) {
Chris@10 6967 a = 0;
Chris@10 6968 }
Chris@10 6969 };
Chris@10 6970 _LT_EOF
Chris@10 6971 ], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
Chris@10 6972 package foo
Chris@10 6973 func foo() {
Chris@10 6974 }
Chris@10 6975 _LT_EOF
Chris@10 6976 ])
Chris@10 6977
Chris@10 6978 _lt_libdeps_save_CFLAGS=$CFLAGS
Chris@10 6979 case "$CC $CFLAGS " in #(
Chris@10 6980 *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
Chris@10 6981 *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
Chris@10 6982 *\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
Chris@10 6983 esac
Chris@10 6984
Chris@10 6985 dnl Parse the compiler output and extract the necessary
Chris@10 6986 dnl objects, libraries and library flags.
Chris@10 6987 if AC_TRY_EVAL(ac_compile); then
Chris@10 6988 # Parse the compiler output and extract the necessary
Chris@10 6989 # objects, libraries and library flags.
Chris@10 6990
Chris@10 6991 # Sentinel used to keep track of whether or not we are before
Chris@10 6992 # the conftest object file.
Chris@10 6993 pre_test_object_deps_done=no
Chris@10 6994
Chris@10 6995 for p in `eval "$output_verbose_link_cmd"`; do
Chris@10 6996 case ${prev}${p} in
Chris@10 6997
Chris@10 6998 -L* | -R* | -l*)
Chris@10 6999 # Some compilers place space between "-{L,R}" and the path.
Chris@10 7000 # Remove the space.
Chris@10 7001 if test $p = "-L" ||
Chris@10 7002 test $p = "-R"; then
Chris@10 7003 prev=$p
Chris@10 7004 continue
Chris@10 7005 fi
Chris@10 7006
Chris@10 7007 # Expand the sysroot to ease extracting the directories later.
Chris@10 7008 if test -z "$prev"; then
Chris@10 7009 case $p in
Chris@10 7010 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
Chris@10 7011 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
Chris@10 7012 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
Chris@10 7013 esac
Chris@10 7014 fi
Chris@10 7015 case $p in
Chris@10 7016 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
Chris@10 7017 esac
Chris@10 7018 if test "$pre_test_object_deps_done" = no; then
Chris@10 7019 case ${prev} in
Chris@10 7020 -L | -R)
Chris@10 7021 # Internal compiler library paths should come after those
Chris@10 7022 # provided the user. The postdeps already come after the
Chris@10 7023 # user supplied libs so there is no need to process them.
Chris@10 7024 if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
Chris@10 7025 _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
Chris@10 7026 else
Chris@10 7027 _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
Chris@10 7028 fi
Chris@10 7029 ;;
Chris@10 7030 # The "-l" case would never come before the object being
Chris@10 7031 # linked, so don't bother handling this case.
Chris@10 7032 esac
Chris@10 7033 else
Chris@10 7034 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
Chris@10 7035 _LT_TAGVAR(postdeps, $1)="${prev}${p}"
Chris@10 7036 else
Chris@10 7037 _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
Chris@10 7038 fi
Chris@10 7039 fi
Chris@10 7040 prev=
Chris@10 7041 ;;
Chris@10 7042
Chris@10 7043 *.lto.$objext) ;; # Ignore GCC LTO objects
Chris@10 7044 *.$objext)
Chris@10 7045 # This assumes that the test object file only shows up
Chris@10 7046 # once in the compiler output.
Chris@10 7047 if test "$p" = "conftest.$objext"; then
Chris@10 7048 pre_test_object_deps_done=yes
Chris@10 7049 continue
Chris@10 7050 fi
Chris@10 7051
Chris@10 7052 if test "$pre_test_object_deps_done" = no; then
Chris@10 7053 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
Chris@10 7054 _LT_TAGVAR(predep_objects, $1)="$p"
Chris@10 7055 else
Chris@10 7056 _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
Chris@10 7057 fi
Chris@10 7058 else
Chris@10 7059 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
Chris@10 7060 _LT_TAGVAR(postdep_objects, $1)="$p"
Chris@10 7061 else
Chris@10 7062 _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
Chris@10 7063 fi
Chris@10 7064 fi
Chris@10 7065 ;;
Chris@10 7066
Chris@10 7067 *) ;; # Ignore the rest.
Chris@10 7068
Chris@10 7069 esac
Chris@10 7070 done
Chris@10 7071
Chris@10 7072 # Clean up.
Chris@10 7073 rm -f a.out a.exe
Chris@10 7074 else
Chris@10 7075 echo "libtool.m4: error: problem compiling $1 test program"
Chris@10 7076 fi
Chris@10 7077
Chris@10 7078 $RM -f confest.$objext
Chris@10 7079 CFLAGS=$_lt_libdeps_save_CFLAGS
Chris@10 7080
Chris@10 7081 # PORTME: override above test on systems where it is broken
Chris@10 7082 m4_if([$1], [CXX],
Chris@10 7083 [case $host_os in
Chris@10 7084 interix[[3-9]]*)
Chris@10 7085 # Interix 3.5 installs completely hosed .la files for C++, so rather than
Chris@10 7086 # hack all around it, let's just trust "g++" to DTRT.
Chris@10 7087 _LT_TAGVAR(predep_objects,$1)=
Chris@10 7088 _LT_TAGVAR(postdep_objects,$1)=
Chris@10 7089 _LT_TAGVAR(postdeps,$1)=
Chris@10 7090 ;;
Chris@10 7091
Chris@10 7092 linux*)
Chris@10 7093 case `$CC -V 2>&1 | sed 5q` in
Chris@10 7094 *Sun\ C*)
Chris@10 7095 # Sun C++ 5.9
Chris@10 7096
Chris@10 7097 # The more standards-conforming stlport4 library is
Chris@10 7098 # incompatible with the Cstd library. Avoid specifying
Chris@10 7099 # it if it's in CXXFLAGS. Ignore libCrun as
Chris@10 7100 # -library=stlport4 depends on it.
Chris@10 7101 case " $CXX $CXXFLAGS " in
Chris@10 7102 *" -library=stlport4 "*)
Chris@10 7103 solaris_use_stlport4=yes
Chris@10 7104 ;;
Chris@10 7105 esac
Chris@10 7106
Chris@10 7107 if test "$solaris_use_stlport4" != yes; then
Chris@10 7108 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
Chris@10 7109 fi
Chris@10 7110 ;;
Chris@10 7111 esac
Chris@10 7112 ;;
Chris@10 7113
Chris@10 7114 solaris*)
Chris@10 7115 case $cc_basename in
Chris@10 7116 CC* | sunCC*)
Chris@10 7117 # The more standards-conforming stlport4 library is
Chris@10 7118 # incompatible with the Cstd library. Avoid specifying
Chris@10 7119 # it if it's in CXXFLAGS. Ignore libCrun as
Chris@10 7120 # -library=stlport4 depends on it.
Chris@10 7121 case " $CXX $CXXFLAGS " in
Chris@10 7122 *" -library=stlport4 "*)
Chris@10 7123 solaris_use_stlport4=yes
Chris@10 7124 ;;
Chris@10 7125 esac
Chris@10 7126
Chris@10 7127 # Adding this requires a known-good setup of shared libraries for
Chris@10 7128 # Sun compiler versions before 5.6, else PIC objects from an old
Chris@10 7129 # archive will be linked into the output, leading to subtle bugs.
Chris@10 7130 if test "$solaris_use_stlport4" != yes; then
Chris@10 7131 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
Chris@10 7132 fi
Chris@10 7133 ;;
Chris@10 7134 esac
Chris@10 7135 ;;
Chris@10 7136 esac
Chris@10 7137 ])
Chris@10 7138
Chris@10 7139 case " $_LT_TAGVAR(postdeps, $1) " in
Chris@10 7140 *" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
Chris@10 7141 esac
Chris@10 7142 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
Chris@10 7143 if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
Chris@10 7144 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
Chris@10 7145 fi
Chris@10 7146 _LT_TAGDECL([], [compiler_lib_search_dirs], [1],
Chris@10 7147 [The directories searched by this compiler when creating a shared library])
Chris@10 7148 _LT_TAGDECL([], [predep_objects], [1],
Chris@10 7149 [Dependencies to place before and after the objects being linked to
Chris@10 7150 create a shared library])
Chris@10 7151 _LT_TAGDECL([], [postdep_objects], [1])
Chris@10 7152 _LT_TAGDECL([], [predeps], [1])
Chris@10 7153 _LT_TAGDECL([], [postdeps], [1])
Chris@10 7154 _LT_TAGDECL([], [compiler_lib_search_path], [1],
Chris@10 7155 [The library search path used internally by the compiler when linking
Chris@10 7156 a shared library])
Chris@10 7157 ])# _LT_SYS_HIDDEN_LIBDEPS
Chris@10 7158
Chris@10 7159
Chris@10 7160 # _LT_LANG_F77_CONFIG([TAG])
Chris@10 7161 # --------------------------
Chris@10 7162 # Ensure that the configuration variables for a Fortran 77 compiler are
Chris@10 7163 # suitably defined. These variables are subsequently used by _LT_CONFIG
Chris@10 7164 # to write the compiler configuration to `libtool'.
Chris@10 7165 m4_defun([_LT_LANG_F77_CONFIG],
Chris@10 7166 [AC_LANG_PUSH(Fortran 77)
Chris@10 7167 if test -z "$F77" || test "X$F77" = "Xno"; then
Chris@10 7168 _lt_disable_F77=yes
Chris@10 7169 fi
Chris@10 7170
Chris@10 7171 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
Chris@10 7172 _LT_TAGVAR(allow_undefined_flag, $1)=
Chris@10 7173 _LT_TAGVAR(always_export_symbols, $1)=no
Chris@10 7174 _LT_TAGVAR(archive_expsym_cmds, $1)=
Chris@10 7175 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
Chris@10 7176 _LT_TAGVAR(hardcode_direct, $1)=no
Chris@10 7177 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
Chris@10 7178 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
Chris@10 7179 _LT_TAGVAR(hardcode_libdir_separator, $1)=
Chris@10 7180 _LT_TAGVAR(hardcode_minus_L, $1)=no
Chris@10 7181 _LT_TAGVAR(hardcode_automatic, $1)=no
Chris@10 7182 _LT_TAGVAR(inherit_rpath, $1)=no
Chris@10 7183 _LT_TAGVAR(module_cmds, $1)=
Chris@10 7184 _LT_TAGVAR(module_expsym_cmds, $1)=
Chris@10 7185 _LT_TAGVAR(link_all_deplibs, $1)=unknown
Chris@10 7186 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
Chris@10 7187 _LT_TAGVAR(reload_flag, $1)=$reload_flag
Chris@10 7188 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
Chris@10 7189 _LT_TAGVAR(no_undefined_flag, $1)=
Chris@10 7190 _LT_TAGVAR(whole_archive_flag_spec, $1)=
Chris@10 7191 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
Chris@10 7192
Chris@10 7193 # Source file extension for f77 test sources.
Chris@10 7194 ac_ext=f
Chris@10 7195
Chris@10 7196 # Object file extension for compiled f77 test sources.
Chris@10 7197 objext=o
Chris@10 7198 _LT_TAGVAR(objext, $1)=$objext
Chris@10 7199
Chris@10 7200 # No sense in running all these tests if we already determined that
Chris@10 7201 # the F77 compiler isn't working. Some variables (like enable_shared)
Chris@10 7202 # are currently assumed to apply to all compilers on this platform,
Chris@10 7203 # and will be corrupted by setting them based on a non-working compiler.
Chris@10 7204 if test "$_lt_disable_F77" != yes; then
Chris@10 7205 # Code to be used in simple compile tests
Chris@10 7206 lt_simple_compile_test_code="\
Chris@10 7207 subroutine t
Chris@10 7208 return
Chris@10 7209 end
Chris@10 7210 "
Chris@10 7211
Chris@10 7212 # Code to be used in simple link tests
Chris@10 7213 lt_simple_link_test_code="\
Chris@10 7214 program t
Chris@10 7215 end
Chris@10 7216 "
Chris@10 7217
Chris@10 7218 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
Chris@10 7219 _LT_TAG_COMPILER
Chris@10 7220
Chris@10 7221 # save warnings/boilerplate of simple test code
Chris@10 7222 _LT_COMPILER_BOILERPLATE
Chris@10 7223 _LT_LINKER_BOILERPLATE
Chris@10 7224
Chris@10 7225 # Allow CC to be a program name with arguments.
Chris@10 7226 lt_save_CC="$CC"
Chris@10 7227 lt_save_GCC=$GCC
Chris@10 7228 lt_save_CFLAGS=$CFLAGS
Chris@10 7229 CC=${F77-"f77"}
Chris@10 7230 CFLAGS=$FFLAGS
Chris@10 7231 compiler=$CC
Chris@10 7232 _LT_TAGVAR(compiler, $1)=$CC
Chris@10 7233 _LT_CC_BASENAME([$compiler])
Chris@10 7234 GCC=$G77
Chris@10 7235 if test -n "$compiler"; then
Chris@10 7236 AC_MSG_CHECKING([if libtool supports shared libraries])
Chris@10 7237 AC_MSG_RESULT([$can_build_shared])
Chris@10 7238
Chris@10 7239 AC_MSG_CHECKING([whether to build shared libraries])
Chris@10 7240 test "$can_build_shared" = "no" && enable_shared=no
Chris@10 7241
Chris@10 7242 # On AIX, shared libraries and static libraries use the same namespace, and
Chris@10 7243 # are all built from PIC.
Chris@10 7244 case $host_os in
Chris@10 7245 aix3*)
Chris@10 7246 test "$enable_shared" = yes && enable_static=no
Chris@10 7247 if test -n "$RANLIB"; then
Chris@10 7248 archive_cmds="$archive_cmds~\$RANLIB \$lib"
Chris@10 7249 postinstall_cmds='$RANLIB $lib'
Chris@10 7250 fi
Chris@10 7251 ;;
Chris@10 7252 aix[[4-9]]*)
Chris@10 7253 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
Chris@10 7254 test "$enable_shared" = yes && enable_static=no
Chris@10 7255 fi
Chris@10 7256 ;;
Chris@10 7257 esac
Chris@10 7258 AC_MSG_RESULT([$enable_shared])
Chris@10 7259
Chris@10 7260 AC_MSG_CHECKING([whether to build static libraries])
Chris@10 7261 # Make sure either enable_shared or enable_static is yes.
Chris@10 7262 test "$enable_shared" = yes || enable_static=yes
Chris@10 7263 AC_MSG_RESULT([$enable_static])
Chris@10 7264
Chris@10 7265 _LT_TAGVAR(GCC, $1)="$G77"
Chris@10 7266 _LT_TAGVAR(LD, $1)="$LD"
Chris@10 7267
Chris@10 7268 ## CAVEAT EMPTOR:
Chris@10 7269 ## There is no encapsulation within the following macros, do not change
Chris@10 7270 ## the running order or otherwise move them around unless you know exactly
Chris@10 7271 ## what you are doing...
Chris@10 7272 _LT_COMPILER_PIC($1)
Chris@10 7273 _LT_COMPILER_C_O($1)
Chris@10 7274 _LT_COMPILER_FILE_LOCKS($1)
Chris@10 7275 _LT_LINKER_SHLIBS($1)
Chris@10 7276 _LT_SYS_DYNAMIC_LINKER($1)
Chris@10 7277 _LT_LINKER_HARDCODE_LIBPATH($1)
Chris@10 7278
Chris@10 7279 _LT_CONFIG($1)
Chris@10 7280 fi # test -n "$compiler"
Chris@10 7281
Chris@10 7282 GCC=$lt_save_GCC
Chris@10 7283 CC="$lt_save_CC"
Chris@10 7284 CFLAGS="$lt_save_CFLAGS"
Chris@10 7285 fi # test "$_lt_disable_F77" != yes
Chris@10 7286
Chris@10 7287 AC_LANG_POP
Chris@10 7288 ])# _LT_LANG_F77_CONFIG
Chris@10 7289
Chris@10 7290
Chris@10 7291 # _LT_LANG_FC_CONFIG([TAG])
Chris@10 7292 # -------------------------
Chris@10 7293 # Ensure that the configuration variables for a Fortran compiler are
Chris@10 7294 # suitably defined. These variables are subsequently used by _LT_CONFIG
Chris@10 7295 # to write the compiler configuration to `libtool'.
Chris@10 7296 m4_defun([_LT_LANG_FC_CONFIG],
Chris@10 7297 [AC_LANG_PUSH(Fortran)
Chris@10 7298
Chris@10 7299 if test -z "$FC" || test "X$FC" = "Xno"; then
Chris@10 7300 _lt_disable_FC=yes
Chris@10 7301 fi
Chris@10 7302
Chris@10 7303 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
Chris@10 7304 _LT_TAGVAR(allow_undefined_flag, $1)=
Chris@10 7305 _LT_TAGVAR(always_export_symbols, $1)=no
Chris@10 7306 _LT_TAGVAR(archive_expsym_cmds, $1)=
Chris@10 7307 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
Chris@10 7308 _LT_TAGVAR(hardcode_direct, $1)=no
Chris@10 7309 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
Chris@10 7310 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
Chris@10 7311 _LT_TAGVAR(hardcode_libdir_separator, $1)=
Chris@10 7312 _LT_TAGVAR(hardcode_minus_L, $1)=no
Chris@10 7313 _LT_TAGVAR(hardcode_automatic, $1)=no
Chris@10 7314 _LT_TAGVAR(inherit_rpath, $1)=no
Chris@10 7315 _LT_TAGVAR(module_cmds, $1)=
Chris@10 7316 _LT_TAGVAR(module_expsym_cmds, $1)=
Chris@10 7317 _LT_TAGVAR(link_all_deplibs, $1)=unknown
Chris@10 7318 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
Chris@10 7319 _LT_TAGVAR(reload_flag, $1)=$reload_flag
Chris@10 7320 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
Chris@10 7321 _LT_TAGVAR(no_undefined_flag, $1)=
Chris@10 7322 _LT_TAGVAR(whole_archive_flag_spec, $1)=
Chris@10 7323 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
Chris@10 7324
Chris@10 7325 # Source file extension for fc test sources.
Chris@10 7326 ac_ext=${ac_fc_srcext-f}
Chris@10 7327
Chris@10 7328 # Object file extension for compiled fc test sources.
Chris@10 7329 objext=o
Chris@10 7330 _LT_TAGVAR(objext, $1)=$objext
Chris@10 7331
Chris@10 7332 # No sense in running all these tests if we already determined that
Chris@10 7333 # the FC compiler isn't working. Some variables (like enable_shared)
Chris@10 7334 # are currently assumed to apply to all compilers on this platform,
Chris@10 7335 # and will be corrupted by setting them based on a non-working compiler.
Chris@10 7336 if test "$_lt_disable_FC" != yes; then
Chris@10 7337 # Code to be used in simple compile tests
Chris@10 7338 lt_simple_compile_test_code="\
Chris@10 7339 subroutine t
Chris@10 7340 return
Chris@10 7341 end
Chris@10 7342 "
Chris@10 7343
Chris@10 7344 # Code to be used in simple link tests
Chris@10 7345 lt_simple_link_test_code="\
Chris@10 7346 program t
Chris@10 7347 end
Chris@10 7348 "
Chris@10 7349
Chris@10 7350 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
Chris@10 7351 _LT_TAG_COMPILER
Chris@10 7352
Chris@10 7353 # save warnings/boilerplate of simple test code
Chris@10 7354 _LT_COMPILER_BOILERPLATE
Chris@10 7355 _LT_LINKER_BOILERPLATE
Chris@10 7356
Chris@10 7357 # Allow CC to be a program name with arguments.
Chris@10 7358 lt_save_CC="$CC"
Chris@10 7359 lt_save_GCC=$GCC
Chris@10 7360 lt_save_CFLAGS=$CFLAGS
Chris@10 7361 CC=${FC-"f95"}
Chris@10 7362 CFLAGS=$FCFLAGS
Chris@10 7363 compiler=$CC
Chris@10 7364 GCC=$ac_cv_fc_compiler_gnu
Chris@10 7365
Chris@10 7366 _LT_TAGVAR(compiler, $1)=$CC
Chris@10 7367 _LT_CC_BASENAME([$compiler])
Chris@10 7368
Chris@10 7369 if test -n "$compiler"; then
Chris@10 7370 AC_MSG_CHECKING([if libtool supports shared libraries])
Chris@10 7371 AC_MSG_RESULT([$can_build_shared])
Chris@10 7372
Chris@10 7373 AC_MSG_CHECKING([whether to build shared libraries])
Chris@10 7374 test "$can_build_shared" = "no" && enable_shared=no
Chris@10 7375
Chris@10 7376 # On AIX, shared libraries and static libraries use the same namespace, and
Chris@10 7377 # are all built from PIC.
Chris@10 7378 case $host_os in
Chris@10 7379 aix3*)
Chris@10 7380 test "$enable_shared" = yes && enable_static=no
Chris@10 7381 if test -n "$RANLIB"; then
Chris@10 7382 archive_cmds="$archive_cmds~\$RANLIB \$lib"
Chris@10 7383 postinstall_cmds='$RANLIB $lib'
Chris@10 7384 fi
Chris@10 7385 ;;
Chris@10 7386 aix[[4-9]]*)
Chris@10 7387 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
Chris@10 7388 test "$enable_shared" = yes && enable_static=no
Chris@10 7389 fi
Chris@10 7390 ;;
Chris@10 7391 esac
Chris@10 7392 AC_MSG_RESULT([$enable_shared])
Chris@10 7393
Chris@10 7394 AC_MSG_CHECKING([whether to build static libraries])
Chris@10 7395 # Make sure either enable_shared or enable_static is yes.
Chris@10 7396 test "$enable_shared" = yes || enable_static=yes
Chris@10 7397 AC_MSG_RESULT([$enable_static])
Chris@10 7398
Chris@10 7399 _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
Chris@10 7400 _LT_TAGVAR(LD, $1)="$LD"
Chris@10 7401
Chris@10 7402 ## CAVEAT EMPTOR:
Chris@10 7403 ## There is no encapsulation within the following macros, do not change
Chris@10 7404 ## the running order or otherwise move them around unless you know exactly
Chris@10 7405 ## what you are doing...
Chris@10 7406 _LT_SYS_HIDDEN_LIBDEPS($1)
Chris@10 7407 _LT_COMPILER_PIC($1)
Chris@10 7408 _LT_COMPILER_C_O($1)
Chris@10 7409 _LT_COMPILER_FILE_LOCKS($1)
Chris@10 7410 _LT_LINKER_SHLIBS($1)
Chris@10 7411 _LT_SYS_DYNAMIC_LINKER($1)
Chris@10 7412 _LT_LINKER_HARDCODE_LIBPATH($1)
Chris@10 7413
Chris@10 7414 _LT_CONFIG($1)
Chris@10 7415 fi # test -n "$compiler"
Chris@10 7416
Chris@10 7417 GCC=$lt_save_GCC
Chris@10 7418 CC=$lt_save_CC
Chris@10 7419 CFLAGS=$lt_save_CFLAGS
Chris@10 7420 fi # test "$_lt_disable_FC" != yes
Chris@10 7421
Chris@10 7422 AC_LANG_POP
Chris@10 7423 ])# _LT_LANG_FC_CONFIG
Chris@10 7424
Chris@10 7425
Chris@10 7426 # _LT_LANG_GCJ_CONFIG([TAG])
Chris@10 7427 # --------------------------
Chris@10 7428 # Ensure that the configuration variables for the GNU Java Compiler compiler
Chris@10 7429 # are suitably defined. These variables are subsequently used by _LT_CONFIG
Chris@10 7430 # to write the compiler configuration to `libtool'.
Chris@10 7431 m4_defun([_LT_LANG_GCJ_CONFIG],
Chris@10 7432 [AC_REQUIRE([LT_PROG_GCJ])dnl
Chris@10 7433 AC_LANG_SAVE
Chris@10 7434
Chris@10 7435 # Source file extension for Java test sources.
Chris@10 7436 ac_ext=java
Chris@10 7437
Chris@10 7438 # Object file extension for compiled Java test sources.
Chris@10 7439 objext=o
Chris@10 7440 _LT_TAGVAR(objext, $1)=$objext
Chris@10 7441
Chris@10 7442 # Code to be used in simple compile tests
Chris@10 7443 lt_simple_compile_test_code="class foo {}"
Chris@10 7444
Chris@10 7445 # Code to be used in simple link tests
Chris@10 7446 lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
Chris@10 7447
Chris@10 7448 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
Chris@10 7449 _LT_TAG_COMPILER
Chris@10 7450
Chris@10 7451 # save warnings/boilerplate of simple test code
Chris@10 7452 _LT_COMPILER_BOILERPLATE
Chris@10 7453 _LT_LINKER_BOILERPLATE
Chris@10 7454
Chris@10 7455 # Allow CC to be a program name with arguments.
Chris@10 7456 lt_save_CC=$CC
Chris@10 7457 lt_save_CFLAGS=$CFLAGS
Chris@10 7458 lt_save_GCC=$GCC
Chris@10 7459 GCC=yes
Chris@10 7460 CC=${GCJ-"gcj"}
Chris@10 7461 CFLAGS=$GCJFLAGS
Chris@10 7462 compiler=$CC
Chris@10 7463 _LT_TAGVAR(compiler, $1)=$CC
Chris@10 7464 _LT_TAGVAR(LD, $1)="$LD"
Chris@10 7465 _LT_CC_BASENAME([$compiler])
Chris@10 7466
Chris@10 7467 # GCJ did not exist at the time GCC didn't implicitly link libc in.
Chris@10 7468 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
Chris@10 7469
Chris@10 7470 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
Chris@10 7471 _LT_TAGVAR(reload_flag, $1)=$reload_flag
Chris@10 7472 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
Chris@10 7473
Chris@10 7474 ## CAVEAT EMPTOR:
Chris@10 7475 ## There is no encapsulation within the following macros, do not change
Chris@10 7476 ## the running order or otherwise move them around unless you know exactly
Chris@10 7477 ## what you are doing...
Chris@10 7478 if test -n "$compiler"; then
Chris@10 7479 _LT_COMPILER_NO_RTTI($1)
Chris@10 7480 _LT_COMPILER_PIC($1)
Chris@10 7481 _LT_COMPILER_C_O($1)
Chris@10 7482 _LT_COMPILER_FILE_LOCKS($1)
Chris@10 7483 _LT_LINKER_SHLIBS($1)
Chris@10 7484 _LT_LINKER_HARDCODE_LIBPATH($1)
Chris@10 7485
Chris@10 7486 _LT_CONFIG($1)
Chris@10 7487 fi
Chris@10 7488
Chris@10 7489 AC_LANG_RESTORE
Chris@10 7490
Chris@10 7491 GCC=$lt_save_GCC
Chris@10 7492 CC=$lt_save_CC
Chris@10 7493 CFLAGS=$lt_save_CFLAGS
Chris@10 7494 ])# _LT_LANG_GCJ_CONFIG
Chris@10 7495
Chris@10 7496
Chris@10 7497 # _LT_LANG_GO_CONFIG([TAG])
Chris@10 7498 # --------------------------
Chris@10 7499 # Ensure that the configuration variables for the GNU Go compiler
Chris@10 7500 # are suitably defined. These variables are subsequently used by _LT_CONFIG
Chris@10 7501 # to write the compiler configuration to `libtool'.
Chris@10 7502 m4_defun([_LT_LANG_GO_CONFIG],
Chris@10 7503 [AC_REQUIRE([LT_PROG_GO])dnl
Chris@10 7504 AC_LANG_SAVE
Chris@10 7505
Chris@10 7506 # Source file extension for Go test sources.
Chris@10 7507 ac_ext=go
Chris@10 7508
Chris@10 7509 # Object file extension for compiled Go test sources.
Chris@10 7510 objext=o
Chris@10 7511 _LT_TAGVAR(objext, $1)=$objext
Chris@10 7512
Chris@10 7513 # Code to be used in simple compile tests
Chris@10 7514 lt_simple_compile_test_code="package main; func main() { }"
Chris@10 7515
Chris@10 7516 # Code to be used in simple link tests
Chris@10 7517 lt_simple_link_test_code='package main; func main() { }'
Chris@10 7518
Chris@10 7519 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
Chris@10 7520 _LT_TAG_COMPILER
Chris@10 7521
Chris@10 7522 # save warnings/boilerplate of simple test code
Chris@10 7523 _LT_COMPILER_BOILERPLATE
Chris@10 7524 _LT_LINKER_BOILERPLATE
Chris@10 7525
Chris@10 7526 # Allow CC to be a program name with arguments.
Chris@10 7527 lt_save_CC=$CC
Chris@10 7528 lt_save_CFLAGS=$CFLAGS
Chris@10 7529 lt_save_GCC=$GCC
Chris@10 7530 GCC=yes
Chris@10 7531 CC=${GOC-"gccgo"}
Chris@10 7532 CFLAGS=$GOFLAGS
Chris@10 7533 compiler=$CC
Chris@10 7534 _LT_TAGVAR(compiler, $1)=$CC
Chris@10 7535 _LT_TAGVAR(LD, $1)="$LD"
Chris@10 7536 _LT_CC_BASENAME([$compiler])
Chris@10 7537
Chris@10 7538 # Go did not exist at the time GCC didn't implicitly link libc in.
Chris@10 7539 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
Chris@10 7540
Chris@10 7541 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
Chris@10 7542 _LT_TAGVAR(reload_flag, $1)=$reload_flag
Chris@10 7543 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
Chris@10 7544
Chris@10 7545 ## CAVEAT EMPTOR:
Chris@10 7546 ## There is no encapsulation within the following macros, do not change
Chris@10 7547 ## the running order or otherwise move them around unless you know exactly
Chris@10 7548 ## what you are doing...
Chris@10 7549 if test -n "$compiler"; then
Chris@10 7550 _LT_COMPILER_NO_RTTI($1)
Chris@10 7551 _LT_COMPILER_PIC($1)
Chris@10 7552 _LT_COMPILER_C_O($1)
Chris@10 7553 _LT_COMPILER_FILE_LOCKS($1)
Chris@10 7554 _LT_LINKER_SHLIBS($1)
Chris@10 7555 _LT_LINKER_HARDCODE_LIBPATH($1)
Chris@10 7556
Chris@10 7557 _LT_CONFIG($1)
Chris@10 7558 fi
Chris@10 7559
Chris@10 7560 AC_LANG_RESTORE
Chris@10 7561
Chris@10 7562 GCC=$lt_save_GCC
Chris@10 7563 CC=$lt_save_CC
Chris@10 7564 CFLAGS=$lt_save_CFLAGS
Chris@10 7565 ])# _LT_LANG_GO_CONFIG
Chris@10 7566
Chris@10 7567
Chris@10 7568 # _LT_LANG_RC_CONFIG([TAG])
Chris@10 7569 # -------------------------
Chris@10 7570 # Ensure that the configuration variables for the Windows resource compiler
Chris@10 7571 # are suitably defined. These variables are subsequently used by _LT_CONFIG
Chris@10 7572 # to write the compiler configuration to `libtool'.
Chris@10 7573 m4_defun([_LT_LANG_RC_CONFIG],
Chris@10 7574 [AC_REQUIRE([LT_PROG_RC])dnl
Chris@10 7575 AC_LANG_SAVE
Chris@10 7576
Chris@10 7577 # Source file extension for RC test sources.
Chris@10 7578 ac_ext=rc
Chris@10 7579
Chris@10 7580 # Object file extension for compiled RC test sources.
Chris@10 7581 objext=o
Chris@10 7582 _LT_TAGVAR(objext, $1)=$objext
Chris@10 7583
Chris@10 7584 # Code to be used in simple compile tests
Chris@10 7585 lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
Chris@10 7586
Chris@10 7587 # Code to be used in simple link tests
Chris@10 7588 lt_simple_link_test_code="$lt_simple_compile_test_code"
Chris@10 7589
Chris@10 7590 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
Chris@10 7591 _LT_TAG_COMPILER
Chris@10 7592
Chris@10 7593 # save warnings/boilerplate of simple test code
Chris@10 7594 _LT_COMPILER_BOILERPLATE
Chris@10 7595 _LT_LINKER_BOILERPLATE
Chris@10 7596
Chris@10 7597 # Allow CC to be a program name with arguments.
Chris@10 7598 lt_save_CC="$CC"
Chris@10 7599 lt_save_CFLAGS=$CFLAGS
Chris@10 7600 lt_save_GCC=$GCC
Chris@10 7601 GCC=
Chris@10 7602 CC=${RC-"windres"}
Chris@10 7603 CFLAGS=
Chris@10 7604 compiler=$CC
Chris@10 7605 _LT_TAGVAR(compiler, $1)=$CC
Chris@10 7606 _LT_CC_BASENAME([$compiler])
Chris@10 7607 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
Chris@10 7608
Chris@10 7609 if test -n "$compiler"; then
Chris@10 7610 :
Chris@10 7611 _LT_CONFIG($1)
Chris@10 7612 fi
Chris@10 7613
Chris@10 7614 GCC=$lt_save_GCC
Chris@10 7615 AC_LANG_RESTORE
Chris@10 7616 CC=$lt_save_CC
Chris@10 7617 CFLAGS=$lt_save_CFLAGS
Chris@10 7618 ])# _LT_LANG_RC_CONFIG
Chris@10 7619
Chris@10 7620
Chris@10 7621 # LT_PROG_GCJ
Chris@10 7622 # -----------
Chris@10 7623 AC_DEFUN([LT_PROG_GCJ],
Chris@10 7624 [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
Chris@10 7625 [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
Chris@10 7626 [AC_CHECK_TOOL(GCJ, gcj,)
Chris@10 7627 test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
Chris@10 7628 AC_SUBST(GCJFLAGS)])])[]dnl
Chris@10 7629 ])
Chris@10 7630
Chris@10 7631 # Old name:
Chris@10 7632 AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
Chris@10 7633 dnl aclocal-1.4 backwards compatibility:
Chris@10 7634 dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
Chris@10 7635
Chris@10 7636
Chris@10 7637 # LT_PROG_GO
Chris@10 7638 # ----------
Chris@10 7639 AC_DEFUN([LT_PROG_GO],
Chris@10 7640 [AC_CHECK_TOOL(GOC, gccgo,)
Chris@10 7641 ])
Chris@10 7642
Chris@10 7643
Chris@10 7644 # LT_PROG_RC
Chris@10 7645 # ----------
Chris@10 7646 AC_DEFUN([LT_PROG_RC],
Chris@10 7647 [AC_CHECK_TOOL(RC, windres,)
Chris@10 7648 ])
Chris@10 7649
Chris@10 7650 # Old name:
Chris@10 7651 AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
Chris@10 7652 dnl aclocal-1.4 backwards compatibility:
Chris@10 7653 dnl AC_DEFUN([LT_AC_PROG_RC], [])
Chris@10 7654
Chris@10 7655
Chris@10 7656 # _LT_DECL_EGREP
Chris@10 7657 # --------------
Chris@10 7658 # If we don't have a new enough Autoconf to choose the best grep
Chris@10 7659 # available, choose the one first in the user's PATH.
Chris@10 7660 m4_defun([_LT_DECL_EGREP],
Chris@10 7661 [AC_REQUIRE([AC_PROG_EGREP])dnl
Chris@10 7662 AC_REQUIRE([AC_PROG_FGREP])dnl
Chris@10 7663 test -z "$GREP" && GREP=grep
Chris@10 7664 _LT_DECL([], [GREP], [1], [A grep program that handles long lines])
Chris@10 7665 _LT_DECL([], [EGREP], [1], [An ERE matcher])
Chris@10 7666 _LT_DECL([], [FGREP], [1], [A literal string matcher])
Chris@10 7667 dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
Chris@10 7668 AC_SUBST([GREP])
Chris@10 7669 ])
Chris@10 7670
Chris@10 7671
Chris@10 7672 # _LT_DECL_OBJDUMP
Chris@10 7673 # --------------
Chris@10 7674 # If we don't have a new enough Autoconf to choose the best objdump
Chris@10 7675 # available, choose the one first in the user's PATH.
Chris@10 7676 m4_defun([_LT_DECL_OBJDUMP],
Chris@10 7677 [AC_CHECK_TOOL(OBJDUMP, objdump, false)
Chris@10 7678 test -z "$OBJDUMP" && OBJDUMP=objdump
Chris@10 7679 _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
Chris@10 7680 AC_SUBST([OBJDUMP])
Chris@10 7681 ])
Chris@10 7682
Chris@10 7683 # _LT_DECL_DLLTOOL
Chris@10 7684 # ----------------
Chris@10 7685 # Ensure DLLTOOL variable is set.
Chris@10 7686 m4_defun([_LT_DECL_DLLTOOL],
Chris@10 7687 [AC_CHECK_TOOL(DLLTOOL, dlltool, false)
Chris@10 7688 test -z "$DLLTOOL" && DLLTOOL=dlltool
Chris@10 7689 _LT_DECL([], [DLLTOOL], [1], [DLL creation program])
Chris@10 7690 AC_SUBST([DLLTOOL])
Chris@10 7691 ])
Chris@10 7692
Chris@10 7693 # _LT_DECL_SED
Chris@10 7694 # ------------
Chris@10 7695 # Check for a fully-functional sed program, that truncates
Chris@10 7696 # as few characters as possible. Prefer GNU sed if found.
Chris@10 7697 m4_defun([_LT_DECL_SED],
Chris@10 7698 [AC_PROG_SED
Chris@10 7699 test -z "$SED" && SED=sed
Chris@10 7700 Xsed="$SED -e 1s/^X//"
Chris@10 7701 _LT_DECL([], [SED], [1], [A sed program that does not truncate output])
Chris@10 7702 _LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
Chris@10 7703 [Sed that helps us avoid accidentally triggering echo(1) options like -n])
Chris@10 7704 ])# _LT_DECL_SED
Chris@10 7705
Chris@10 7706 m4_ifndef([AC_PROG_SED], [
Chris@10 7707 ############################################################
Chris@10 7708 # NOTE: This macro has been submitted for inclusion into #
Chris@10 7709 # GNU Autoconf as AC_PROG_SED. When it is available in #
Chris@10 7710 # a released version of Autoconf we should remove this #
Chris@10 7711 # macro and use it instead. #
Chris@10 7712 ############################################################
Chris@10 7713
Chris@10 7714 m4_defun([AC_PROG_SED],
Chris@10 7715 [AC_MSG_CHECKING([for a sed that does not truncate output])
Chris@10 7716 AC_CACHE_VAL(lt_cv_path_SED,
Chris@10 7717 [# Loop through the user's path and test for sed and gsed.
Chris@10 7718 # Then use that list of sed's as ones to test for truncation.
Chris@10 7719 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
Chris@10 7720 for as_dir in $PATH
Chris@10 7721 do
Chris@10 7722 IFS=$as_save_IFS
Chris@10 7723 test -z "$as_dir" && as_dir=.
Chris@10 7724 for lt_ac_prog in sed gsed; do
Chris@10 7725 for ac_exec_ext in '' $ac_executable_extensions; do
Chris@10 7726 if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
Chris@10 7727 lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
Chris@10 7728 fi
Chris@10 7729 done
Chris@10 7730 done
Chris@10 7731 done
Chris@10 7732 IFS=$as_save_IFS
Chris@10 7733 lt_ac_max=0
Chris@10 7734 lt_ac_count=0
Chris@10 7735 # Add /usr/xpg4/bin/sed as it is typically found on Solaris
Chris@10 7736 # along with /bin/sed that truncates output.
Chris@10 7737 for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
Chris@10 7738 test ! -f $lt_ac_sed && continue
Chris@10 7739 cat /dev/null > conftest.in
Chris@10 7740 lt_ac_count=0
Chris@10 7741 echo $ECHO_N "0123456789$ECHO_C" >conftest.in
Chris@10 7742 # Check for GNU sed and select it if it is found.
Chris@10 7743 if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
Chris@10 7744 lt_cv_path_SED=$lt_ac_sed
Chris@10 7745 break
Chris@10 7746 fi
Chris@10 7747 while true; do
Chris@10 7748 cat conftest.in conftest.in >conftest.tmp
Chris@10 7749 mv conftest.tmp conftest.in
Chris@10 7750 cp conftest.in conftest.nl
Chris@10 7751 echo >>conftest.nl
Chris@10 7752 $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
Chris@10 7753 cmp -s conftest.out conftest.nl || break
Chris@10 7754 # 10000 chars as input seems more than enough
Chris@10 7755 test $lt_ac_count -gt 10 && break
Chris@10 7756 lt_ac_count=`expr $lt_ac_count + 1`
Chris@10 7757 if test $lt_ac_count -gt $lt_ac_max; then
Chris@10 7758 lt_ac_max=$lt_ac_count
Chris@10 7759 lt_cv_path_SED=$lt_ac_sed
Chris@10 7760 fi
Chris@10 7761 done
Chris@10 7762 done
Chris@10 7763 ])
Chris@10 7764 SED=$lt_cv_path_SED
Chris@10 7765 AC_SUBST([SED])
Chris@10 7766 AC_MSG_RESULT([$SED])
Chris@10 7767 ])#AC_PROG_SED
Chris@10 7768 ])#m4_ifndef
Chris@10 7769
Chris@10 7770 # Old name:
Chris@10 7771 AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
Chris@10 7772 dnl aclocal-1.4 backwards compatibility:
Chris@10 7773 dnl AC_DEFUN([LT_AC_PROG_SED], [])
Chris@10 7774
Chris@10 7775
Chris@10 7776 # _LT_CHECK_SHELL_FEATURES
Chris@10 7777 # ------------------------
Chris@10 7778 # Find out whether the shell is Bourne or XSI compatible,
Chris@10 7779 # or has some other useful features.
Chris@10 7780 m4_defun([_LT_CHECK_SHELL_FEATURES],
Chris@10 7781 [AC_MSG_CHECKING([whether the shell understands some XSI constructs])
Chris@10 7782 # Try some XSI features
Chris@10 7783 xsi_shell=no
Chris@10 7784 ( _lt_dummy="a/b/c"
Chris@10 7785 test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
Chris@10 7786 = c,a/b,b/c, \
Chris@10 7787 && eval 'test $(( 1 + 1 )) -eq 2 \
Chris@10 7788 && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
Chris@10 7789 && xsi_shell=yes
Chris@10 7790 AC_MSG_RESULT([$xsi_shell])
Chris@10 7791 _LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
Chris@10 7792
Chris@10 7793 AC_MSG_CHECKING([whether the shell understands "+="])
Chris@10 7794 lt_shell_append=no
Chris@10 7795 ( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
Chris@10 7796 >/dev/null 2>&1 \
Chris@10 7797 && lt_shell_append=yes
Chris@10 7798 AC_MSG_RESULT([$lt_shell_append])
Chris@10 7799 _LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
Chris@10 7800
Chris@10 7801 if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
Chris@10 7802 lt_unset=unset
Chris@10 7803 else
Chris@10 7804 lt_unset=false
Chris@10 7805 fi
Chris@10 7806 _LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
Chris@10 7807
Chris@10 7808 # test EBCDIC or ASCII
Chris@10 7809 case `echo X|tr X '\101'` in
Chris@10 7810 A) # ASCII based system
Chris@10 7811 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
Chris@10 7812 lt_SP2NL='tr \040 \012'
Chris@10 7813 lt_NL2SP='tr \015\012 \040\040'
Chris@10 7814 ;;
Chris@10 7815 *) # EBCDIC based system
Chris@10 7816 lt_SP2NL='tr \100 \n'
Chris@10 7817 lt_NL2SP='tr \r\n \100\100'
Chris@10 7818 ;;
Chris@10 7819 esac
Chris@10 7820 _LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
Chris@10 7821 _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
Chris@10 7822 ])# _LT_CHECK_SHELL_FEATURES
Chris@10 7823
Chris@10 7824
Chris@10 7825 # _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY)
Chris@10 7826 # ------------------------------------------------------
Chris@10 7827 # In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and
Chris@10 7828 # '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY.
Chris@10 7829 m4_defun([_LT_PROG_FUNCTION_REPLACE],
Chris@10 7830 [dnl {
Chris@10 7831 sed -e '/^$1 ()$/,/^} # $1 /c\
Chris@10 7832 $1 ()\
Chris@10 7833 {\
Chris@10 7834 m4_bpatsubsts([$2], [$], [\\], [^\([ ]\)], [\\\1])
Chris@10 7835 } # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \
Chris@10 7836 && mv -f "$cfgfile.tmp" "$cfgfile" \
Chris@10 7837 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
Chris@10 7838 test 0 -eq $? || _lt_function_replace_fail=:
Chris@10 7839 ])
Chris@10 7840
Chris@10 7841
Chris@10 7842 # _LT_PROG_REPLACE_SHELLFNS
Chris@10 7843 # -------------------------
Chris@10 7844 # Replace existing portable implementations of several shell functions with
Chris@10 7845 # equivalent extended shell implementations where those features are available..
Chris@10 7846 m4_defun([_LT_PROG_REPLACE_SHELLFNS],
Chris@10 7847 [if test x"$xsi_shell" = xyes; then
Chris@10 7848 _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl
Chris@10 7849 case ${1} in
Chris@10 7850 */*) func_dirname_result="${1%/*}${2}" ;;
Chris@10 7851 * ) func_dirname_result="${3}" ;;
Chris@10 7852 esac])
Chris@10 7853
Chris@10 7854 _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl
Chris@10 7855 func_basename_result="${1##*/}"])
Chris@10 7856
Chris@10 7857 _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl
Chris@10 7858 case ${1} in
Chris@10 7859 */*) func_dirname_result="${1%/*}${2}" ;;
Chris@10 7860 * ) func_dirname_result="${3}" ;;
Chris@10 7861 esac
Chris@10 7862 func_basename_result="${1##*/}"])
Chris@10 7863
Chris@10 7864 _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl
Chris@10 7865 # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
Chris@10 7866 # positional parameters, so assign one to ordinary parameter first.
Chris@10 7867 func_stripname_result=${3}
Chris@10 7868 func_stripname_result=${func_stripname_result#"${1}"}
Chris@10 7869 func_stripname_result=${func_stripname_result%"${2}"}])
Chris@10 7870
Chris@10 7871 _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl
Chris@10 7872 func_split_long_opt_name=${1%%=*}
Chris@10 7873 func_split_long_opt_arg=${1#*=}])
Chris@10 7874
Chris@10 7875 _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl
Chris@10 7876 func_split_short_opt_arg=${1#??}
Chris@10 7877 func_split_short_opt_name=${1%"$func_split_short_opt_arg"}])
Chris@10 7878
Chris@10 7879 _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl
Chris@10 7880 case ${1} in
Chris@10 7881 *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
Chris@10 7882 *) func_lo2o_result=${1} ;;
Chris@10 7883 esac])
Chris@10 7884
Chris@10 7885 _LT_PROG_FUNCTION_REPLACE([func_xform], [ func_xform_result=${1%.*}.lo])
Chris@10 7886
Chris@10 7887 _LT_PROG_FUNCTION_REPLACE([func_arith], [ func_arith_result=$(( $[*] ))])
Chris@10 7888
Chris@10 7889 _LT_PROG_FUNCTION_REPLACE([func_len], [ func_len_result=${#1}])
Chris@10 7890 fi
Chris@10 7891
Chris@10 7892 if test x"$lt_shell_append" = xyes; then
Chris@10 7893 _LT_PROG_FUNCTION_REPLACE([func_append], [ eval "${1}+=\\${2}"])
Chris@10 7894
Chris@10 7895 _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl
Chris@10 7896 func_quote_for_eval "${2}"
Chris@10 7897 dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \
Chris@10 7898 eval "${1}+=\\\\ \\$func_quote_for_eval_result"])
Chris@10 7899
Chris@10 7900 # Save a `func_append' function call where possible by direct use of '+='
Chris@10 7901 sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
Chris@10 7902 && mv -f "$cfgfile.tmp" "$cfgfile" \
Chris@10 7903 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
Chris@10 7904 test 0 -eq $? || _lt_function_replace_fail=:
Chris@10 7905 else
Chris@10 7906 # Save a `func_append' function call even when '+=' is not available
Chris@10 7907 sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
Chris@10 7908 && mv -f "$cfgfile.tmp" "$cfgfile" \
Chris@10 7909 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
Chris@10 7910 test 0 -eq $? || _lt_function_replace_fail=:
Chris@10 7911 fi
Chris@10 7912
Chris@10 7913 if test x"$_lt_function_replace_fail" = x":"; then
Chris@10 7914 AC_MSG_WARN([Unable to substitute extended shell functions in $ofile])
Chris@10 7915 fi
Chris@10 7916 ])
Chris@10 7917
Chris@10 7918 # _LT_PATH_CONVERSION_FUNCTIONS
Chris@10 7919 # -----------------------------
Chris@10 7920 # Determine which file name conversion functions should be used by
Chris@10 7921 # func_to_host_file (and, implicitly, by func_to_host_path). These are needed
Chris@10 7922 # for certain cross-compile configurations and native mingw.
Chris@10 7923 m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
Chris@10 7924 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
Chris@10 7925 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
Chris@10 7926 AC_MSG_CHECKING([how to convert $build file names to $host format])
Chris@10 7927 AC_CACHE_VAL(lt_cv_to_host_file_cmd,
Chris@10 7928 [case $host in
Chris@10 7929 *-*-mingw* )
Chris@10 7930 case $build in
Chris@10 7931 *-*-mingw* ) # actually msys
Chris@10 7932 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
Chris@10 7933 ;;
Chris@10 7934 *-*-cygwin* )
Chris@10 7935 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
Chris@10 7936 ;;
Chris@10 7937 * ) # otherwise, assume *nix
Chris@10 7938 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
Chris@10 7939 ;;
Chris@10 7940 esac
Chris@10 7941 ;;
Chris@10 7942 *-*-cygwin* )
Chris@10 7943 case $build in
Chris@10 7944 *-*-mingw* ) # actually msys
Chris@10 7945 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
Chris@10 7946 ;;
Chris@10 7947 *-*-cygwin* )
Chris@10 7948 lt_cv_to_host_file_cmd=func_convert_file_noop
Chris@10 7949 ;;
Chris@10 7950 * ) # otherwise, assume *nix
Chris@10 7951 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
Chris@10 7952 ;;
Chris@10 7953 esac
Chris@10 7954 ;;
Chris@10 7955 * ) # unhandled hosts (and "normal" native builds)
Chris@10 7956 lt_cv_to_host_file_cmd=func_convert_file_noop
Chris@10 7957 ;;
Chris@10 7958 esac
Chris@10 7959 ])
Chris@10 7960 to_host_file_cmd=$lt_cv_to_host_file_cmd
Chris@10 7961 AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
Chris@10 7962 _LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
Chris@10 7963 [0], [convert $build file names to $host format])dnl
Chris@10 7964
Chris@10 7965 AC_MSG_CHECKING([how to convert $build file names to toolchain format])
Chris@10 7966 AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
Chris@10 7967 [#assume ordinary cross tools, or native build.
Chris@10 7968 lt_cv_to_tool_file_cmd=func_convert_file_noop
Chris@10 7969 case $host in
Chris@10 7970 *-*-mingw* )
Chris@10 7971 case $build in
Chris@10 7972 *-*-mingw* ) # actually msys
Chris@10 7973 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
Chris@10 7974 ;;
Chris@10 7975 esac
Chris@10 7976 ;;
Chris@10 7977 esac
Chris@10 7978 ])
Chris@10 7979 to_tool_file_cmd=$lt_cv_to_tool_file_cmd
Chris@10 7980 AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
Chris@10 7981 _LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
Chris@10 7982 [0], [convert $build files to toolchain format])dnl
Chris@10 7983 ])# _LT_PATH_CONVERSION_FUNCTIONS