1 1.1 mrg # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- 2 1.1 mrg # 3 1.1 mrg # Copyright (C) 1996-2001, 2003-2019, 2021-2024 Free Software 4 1.1 mrg # Foundation, Inc. 5 1.1 mrg # Written by Gordon Matzigkeit, 1996 6 1.1 mrg # 7 1.1 mrg # This file is free software; the Free Software Foundation gives 8 1.1 mrg # unlimited permission to copy and/or distribute it, with or without 9 1.1 mrg # modifications, as long as this notice is preserved. 10 1.1 mrg 11 1.1 mrg m4_define([_LT_COPYING], [dnl 12 1.1 mrg # Copyright (C) 2024 Free Software Foundation, Inc. 13 1.1 mrg # This is free software; see the source for copying conditions. There is NO 14 1.1 mrg # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 15 1.1 mrg 16 1.1 mrg # GNU Libtool is free software; you can redistribute it and/or modify 17 1.1 mrg # it under the terms of the GNU General Public License as published by 18 1.1 mrg # the Free Software Foundation; either version 2 of the License, or 19 1.1 mrg # (at your option) any later version. 20 1.1 mrg # 21 1.1 mrg # As a special exception to the GNU General Public License, if you 22 1.1 mrg # distribute this file as part of a program or library that is built 23 1.1 mrg # using GNU Libtool, you may include this file under the same 24 1.1 mrg # distribution terms that you use for the rest of that program. 25 1.1 mrg # 26 1.1 mrg # GNU Libtool is distributed in the hope that it will be useful, but 27 1.1 mrg # WITHOUT ANY WARRANTY; without even the implied warranty of 28 1.1 mrg # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 29 1.1 mrg # GNU General Public License for more details. 30 1.1 mrg # 31 1.1 mrg # You should have received a copy of the GNU General Public License 32 1.1 mrg # along with this program. If not, see <http://www.gnu.org/licenses/>. 33 1.1 mrg ]) 34 1.1 mrg 35 1.1 mrg # serial 63 LT_INIT 36 1.1 mrg 37 1.1 mrg 38 1.1 mrg # LT_PREREQ(VERSION) 39 1.1 mrg # ------------------ 40 1.1 mrg # Complain and exit if this libtool version is less that VERSION. 41 1.1 mrg m4_defun([LT_PREREQ], 42 1.1 mrg [m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1, 43 1.1 mrg [m4_default([$3], 44 1.1 mrg [m4_fatal([Libtool version $1 or higher is required], 45 1.1 mrg 63)])], 46 1.1 mrg [$2])]) 47 1.1 mrg 48 1.1 mrg 49 1.1 mrg # _LT_CHECK_BUILDDIR 50 1.1 mrg # ------------------ 51 1.1 mrg # Complain if the absolute build directory name contains unusual characters 52 1.1 mrg m4_defun([_LT_CHECK_BUILDDIR], 53 1.1 mrg [case `pwd` in 54 1.1 mrg *\ * | *\ *) 55 1.1 mrg AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;; 56 1.1 mrg esac 57 1.1 mrg ]) 58 1.1 mrg 59 1.1 mrg 60 1.1 mrg # LT_INIT([OPTIONS]) 61 1.1 mrg # ------------------ 62 1.1 mrg AC_DEFUN([LT_INIT], 63 1.1 mrg [AC_PREREQ([2.64])dnl We use AC_PATH_PROGS_FEATURE_CHECK 64 1.1 mrg AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl 65 1.1 mrg AC_BEFORE([$0], [LT_LANG])dnl 66 1.1 mrg AC_BEFORE([$0], [LT_OUTPUT])dnl 67 1.1 mrg AC_BEFORE([$0], [LTDL_INIT])dnl 68 1.1 mrg m4_require([_LT_CHECK_BUILDDIR])dnl 69 1.1 mrg 70 1.1 mrg dnl Autoconf doesn't catch unexpanded LT_ macros by default: 71 1.1 mrg m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl 72 1.1 mrg m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl 73 1.1 mrg dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4 74 1.1 mrg dnl unless we require an AC_DEFUNed macro: 75 1.1 mrg AC_REQUIRE([LTOPTIONS_VERSION])dnl 76 1.1 mrg AC_REQUIRE([LTSUGAR_VERSION])dnl 77 1.1 mrg AC_REQUIRE([LTVERSION_VERSION])dnl 78 1.1 mrg AC_REQUIRE([LTOBSOLETE_VERSION])dnl 79 1.1 mrg m4_require([_LT_PROG_LTMAIN])dnl 80 1.1 mrg 81 1.1 mrg _LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}]) 82 1.1 mrg 83 1.1 mrg dnl Parse OPTIONS 84 1.1 mrg _LT_SET_OPTIONS([$0], [$1]) 85 1.1 mrg 86 1.1 mrg # This can be used to rebuild libtool when needed 87 1.1 mrg LIBTOOL_DEPS=$ltmain 88 1.1 mrg 89 1.1 mrg # Always use our own libtool. 90 1.1 mrg LIBTOOL='$(SHELL) $(top_builddir)/libtool' 91 1.1 mrg AC_SUBST(LIBTOOL)dnl 92 1.1 mrg 93 1.1 mrg _LT_SETUP 94 1.1 mrg 95 1.1 mrg # Only expand once: 96 1.1 mrg m4_define([LT_INIT]) 97 1.1 mrg ])# LT_INIT 98 1.1 mrg 99 1.1 mrg # Old names: 100 1.1 mrg AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT]) 101 1.1 mrg AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT]) 102 1.1 mrg dnl aclocal-1.4 backwards compatibility: 103 1.1 mrg dnl AC_DEFUN([AC_PROG_LIBTOOL], []) 104 1.1 mrg dnl AC_DEFUN([AM_PROG_LIBTOOL], []) 105 1.1 mrg 106 1.1 mrg 107 1.1 mrg # _LT_PREPARE_CC_BASENAME 108 1.1 mrg # ----------------------- 109 1.1 mrg m4_defun([_LT_PREPARE_CC_BASENAME], [ 110 1.1 mrg # Calculate cc_basename. Skip known compiler wrappers and cross-prefix. 111 1.1 mrg func_cc_basename () 112 1.1 mrg { 113 1.1 mrg for cc_temp in @S|@*""; do 114 1.1 mrg case $cc_temp in 115 1.1 mrg compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; 116 1.1 mrg distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; 117 1.1 mrg \-*) ;; 118 1.1 mrg *) break;; 119 1.1 mrg esac 120 1.1 mrg done 121 1.1 mrg func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` 122 1.1 mrg } 123 1.1 mrg ])# _LT_PREPARE_CC_BASENAME 124 1.1 mrg 125 1.1 mrg 126 1.1 mrg # _LT_CC_BASENAME(CC) 127 1.1 mrg # ------------------- 128 1.1 mrg # It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME, 129 1.1 mrg # but that macro is also expanded into generated libtool script, which 130 1.1 mrg # arranges for $SED and $ECHO to be set by different means. 131 1.1 mrg m4_defun([_LT_CC_BASENAME], 132 1.1 mrg [m4_require([_LT_PREPARE_CC_BASENAME])dnl 133 1.1 mrg AC_REQUIRE([_LT_DECL_SED])dnl 134 1.1 mrg AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl 135 1.1 mrg func_cc_basename $1 136 1.1 mrg cc_basename=$func_cc_basename_result 137 1.1 mrg ]) 138 1.1 mrg 139 1.1 mrg 140 1.1 mrg # _LT_FILEUTILS_DEFAULTS 141 1.1 mrg # ---------------------- 142 1.1 mrg # It is okay to use these file commands and assume they have been set 143 1.1 mrg # sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'. 144 1.1 mrg m4_defun([_LT_FILEUTILS_DEFAULTS], 145 1.1 mrg [: ${CP="cp -f"} 146 1.1 mrg : ${MV="mv -f"} 147 1.1 mrg : ${RM="rm -f"} 148 1.1 mrg ])# _LT_FILEUTILS_DEFAULTS 149 1.1 mrg 150 1.1 mrg 151 1.1 mrg # _LT_SETUP 152 1.1 mrg # --------- 153 1.1 mrg m4_defun([_LT_SETUP], 154 1.1 mrg [AC_REQUIRE([AC_CANONICAL_HOST])dnl 155 1.1 mrg AC_REQUIRE([AC_CANONICAL_BUILD])dnl 156 1.1 mrg AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl 157 1.1 mrg AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl 158 1.1 mrg 159 1.1 mrg _LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl 160 1.1 mrg dnl 161 1.1 mrg _LT_DECL([], [host_alias], [0], [The host system])dnl 162 1.1 mrg _LT_DECL([], [host], [0])dnl 163 1.1 mrg _LT_DECL([], [host_os], [0])dnl 164 1.1 mrg dnl 165 1.1 mrg _LT_DECL([], [build_alias], [0], [The build system])dnl 166 1.1 mrg _LT_DECL([], [build], [0])dnl 167 1.1 mrg _LT_DECL([], [build_os], [0])dnl 168 1.1 mrg dnl 169 1.1 mrg AC_REQUIRE([AC_PROG_CC])dnl 170 1.1 mrg AC_REQUIRE([LT_PATH_LD])dnl 171 1.1 mrg AC_REQUIRE([LT_PATH_NM])dnl 172 1.1 mrg dnl 173 1.1 mrg AC_REQUIRE([AC_PROG_LN_S])dnl 174 1.1 mrg test -z "$LN_S" && LN_S="ln -s" 175 1.1 mrg _LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl 176 1.1 mrg dnl 177 1.1 mrg AC_REQUIRE([LT_CMD_MAX_LEN])dnl 178 1.1 mrg _LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl 179 1.1 mrg _LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl 180 1.1 mrg dnl 181 1.1 mrg m4_require([_LT_FILEUTILS_DEFAULTS])dnl 182 1.1 mrg m4_require([_LT_CHECK_SHELL_FEATURES])dnl 183 1.1 mrg m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl 184 1.1 mrg m4_require([_LT_CMD_RELOAD])dnl 185 1.1 mrg m4_require([_LT_DECL_FILECMD])dnl 186 1.1 mrg m4_require([_LT_CHECK_MAGIC_METHOD])dnl 187 1.1 mrg m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl 188 1.1 mrg m4_require([_LT_CMD_OLD_ARCHIVE])dnl 189 1.1 mrg m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl 190 1.1 mrg m4_require([_LT_WITH_SYSROOT])dnl 191 1.1 mrg m4_require([_LT_CMD_TRUNCATE])dnl 192 1.1 mrg 193 1.1 mrg _LT_CONFIG_LIBTOOL_INIT([ 194 1.1 mrg # See if we are running on zsh, and set the options that allow our 195 1.1 mrg # commands through without removal of \ escapes INIT. 196 1.1 mrg if test -n "\${ZSH_VERSION+set}"; then 197 1.1 mrg setopt NO_GLOB_SUBST 198 1.1 mrg fi 199 1.1 mrg ]) 200 1.1 mrg if test -n "${ZSH_VERSION+set}"; then 201 1.1 mrg setopt NO_GLOB_SUBST 202 1.1 mrg fi 203 1.1 mrg 204 1.1 mrg _LT_CHECK_OBJDIR 205 1.1 mrg 206 1.1 mrg m4_require([_LT_TAG_COMPILER])dnl 207 1.1 mrg 208 1.1 mrg case $host_os in 209 1.1 mrg aix3*) 210 1.1 mrg # AIX sometimes has problems with the GCC collect2 program. For some 211 1.1 mrg # reason, if we set the COLLECT_NAMES environment variable, the problems 212 1.1 mrg # vanish in a puff of smoke. 213 1.1 mrg if test set != "${COLLECT_NAMES+set}"; then 214 1.1 mrg COLLECT_NAMES= 215 1.1 mrg export COLLECT_NAMES 216 1.1 mrg fi 217 1.1 mrg ;; 218 1.1 mrg esac 219 1.1 mrg 220 1.1 mrg # Global variables: 221 1.1 mrg ofile=libtool 222 1.1 mrg can_build_shared=yes 223 1.1 mrg 224 1.1 mrg # All known linkers require a '.a' archive for static linking (except MSVC and 225 1.1 mrg # ICC, which need '.lib'). 226 1.1 mrg libext=a 227 1.1 mrg 228 1.1 mrg with_gnu_ld=$lt_cv_prog_gnu_ld 229 1.1 mrg 230 1.1 mrg old_CC=$CC 231 1.1 mrg old_CFLAGS=$CFLAGS 232 1.1 mrg 233 1.1 mrg # Set sane defaults for various variables 234 1.1 mrg test -z "$CC" && CC=cc 235 1.1 mrg test -z "$LTCC" && LTCC=$CC 236 1.1 mrg test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS 237 1.1 mrg test -z "$LD" && LD=ld 238 1.1 mrg test -z "$ac_objext" && ac_objext=o 239 1.1 mrg 240 1.1 mrg _LT_CC_BASENAME([$compiler]) 241 1.1 mrg 242 1.1 mrg # Only perform the check for file, if the check method requires it 243 1.1 mrg test -z "$MAGIC_CMD" && MAGIC_CMD=file 244 1.1 mrg case $deplibs_check_method in 245 1.1 mrg file_magic*) 246 1.1 mrg if test "$file_magic_cmd" = '$MAGIC_CMD'; then 247 1.1 mrg _LT_PATH_MAGIC 248 1.1 mrg fi 249 1.1 mrg ;; 250 1.1 mrg esac 251 1.1 mrg 252 1.1 mrg # Use C for the default configuration in the libtool script 253 1.1 mrg LT_SUPPORTED_TAG([CC]) 254 1.1 mrg _LT_LANG_C_CONFIG 255 1.1 mrg _LT_LANG_DEFAULT_CONFIG 256 1.1 mrg _LT_CONFIG_COMMANDS 257 1.1 mrg ])# _LT_SETUP 258 1.1 mrg 259 1.1 mrg 260 1.1 mrg # _LT_PREPARE_SED_QUOTE_VARS 261 1.1 mrg # -------------------------- 262 1.1 mrg # Define a few sed substitution that help us do robust quoting. 263 1.1 mrg m4_defun([_LT_PREPARE_SED_QUOTE_VARS], 264 1.1 mrg [# Backslashify metacharacters that are still active within 265 1.1 mrg # double-quoted strings. 266 1.1 mrg sed_quote_subst='s/\([["`$\\]]\)/\\\1/g' 267 1.1 mrg 268 1.1 mrg # Same as above, but do not quote variable references. 269 1.1 mrg double_quote_subst='s/\([["`\\]]\)/\\\1/g' 270 1.1 mrg 271 1.1 mrg # Sed substitution to delay expansion of an escaped shell variable in a 272 1.1 mrg # double_quote_subst'ed string. 273 1.1 mrg delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' 274 1.1 mrg 275 1.1 mrg # Sed substitution to delay expansion of an escaped single quote. 276 1.1 mrg delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' 277 1.1 mrg 278 1.1 mrg # Sed substitution to avoid accidental globbing in evaled expressions 279 1.1 mrg no_glob_subst='s/\*/\\\*/g' 280 1.1 mrg ]) 281 1.1 mrg 282 1.1 mrg # _LT_PROG_LTMAIN 283 1.1 mrg # --------------- 284 1.1 mrg # Note that this code is called both from 'configure', and 'config.status' 285 1.1 mrg # now that we use AC_CONFIG_COMMANDS to generate libtool. Notably, 286 1.1 mrg # 'config.status' has no value for ac_aux_dir unless we are using Automake, 287 1.1 mrg # so we pass a copy along to make sure it has a sensible value anyway. 288 1.1 mrg m4_defun([_LT_PROG_LTMAIN], 289 1.1 mrg [m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl 290 1.1 mrg _LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir']) 291 1.1 mrg ltmain=$ac_aux_dir/ltmain.sh 292 1.1 mrg ])# _LT_PROG_LTMAIN 293 1.1 mrg 294 1.1 mrg 295 1.1 mrg ## ------------------------------------- ## 296 1.1 mrg ## Accumulate code for creating libtool. ## 297 1.1 mrg ## ------------------------------------- ## 298 1.1 mrg 299 1.1 mrg # So that we can recreate a full libtool script including additional 300 1.1 mrg # tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS 301 1.1 mrg # in macros and then make a single call at the end using the 'libtool' 302 1.1 mrg # label. 303 1.1 mrg 304 1.1 mrg 305 1.1 mrg # _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS]) 306 1.1 mrg # ---------------------------------------- 307 1.1 mrg # Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later. 308 1.1 mrg m4_define([_LT_CONFIG_LIBTOOL_INIT], 309 1.1 mrg [m4_ifval([$1], 310 1.1 mrg [m4_append([_LT_OUTPUT_LIBTOOL_INIT], 311 1.1 mrg [$1 312 1.1 mrg ])])]) 313 1.1 mrg 314 1.1 mrg # Initialize. 315 1.1 mrg m4_define([_LT_OUTPUT_LIBTOOL_INIT]) 316 1.1 mrg 317 1.1 mrg 318 1.1 mrg # _LT_CONFIG_LIBTOOL([COMMANDS]) 319 1.1 mrg # ------------------------------ 320 1.1 mrg # Register COMMANDS to be passed to AC_CONFIG_COMMANDS later. 321 1.1 mrg m4_define([_LT_CONFIG_LIBTOOL], 322 1.1 mrg [m4_ifval([$1], 323 1.1 mrg [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS], 324 1.1 mrg [$1 325 1.1 mrg ])])]) 326 1.1 mrg 327 1.1 mrg # Initialize. 328 1.1 mrg m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS]) 329 1.1 mrg 330 1.1 mrg 331 1.1 mrg # _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS]) 332 1.1 mrg # ----------------------------------------------------- 333 1.1 mrg m4_defun([_LT_CONFIG_SAVE_COMMANDS], 334 1.1 mrg [_LT_CONFIG_LIBTOOL([$1]) 335 1.1 mrg _LT_CONFIG_LIBTOOL_INIT([$2]) 336 1.1 mrg ]) 337 1.1 mrg 338 1.1 mrg 339 1.1 mrg # _LT_FORMAT_COMMENT([COMMENT]) 340 1.1 mrg # ----------------------------- 341 1.1 mrg # Add leading comment marks to the start of each line, and a trailing 342 1.1 mrg # full-stop to the whole comment if one is not present already. 343 1.1 mrg m4_define([_LT_FORMAT_COMMENT], 344 1.1 mrg [m4_ifval([$1], [ 345 1.1 mrg m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])], 346 1.1 mrg [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.]) 347 1.1 mrg )]) 348 1.1 mrg 349 1.1 mrg 350 1.1 mrg 351 1.1 mrg ## ------------------------ ## 352 1.1 mrg ## FIXME: Eliminate VARNAME ## 353 1.1 mrg ## ------------------------ ## 354 1.1 mrg 355 1.1 mrg 356 1.1 mrg # _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?]) 357 1.1 mrg # ------------------------------------------------------------------- 358 1.1 mrg # CONFIGNAME is the name given to the value in the libtool script. 359 1.1 mrg # VARNAME is the (base) name used in the configure script. 360 1.1 mrg # VALUE may be 0, 1 or 2 for a computed quote escaped value based on 361 1.1 mrg # VARNAME. Any other value will be used directly. 362 1.1 mrg m4_define([_LT_DECL], 363 1.1 mrg [lt_if_append_uniq([lt_decl_varnames], [$2], [, ], 364 1.1 mrg [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name], 365 1.1 mrg [m4_ifval([$1], [$1], [$2])]) 366 1.1 mrg lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3]) 367 1.1 mrg m4_ifval([$4], 368 1.1 mrg [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])]) 369 1.1 mrg lt_dict_add_subkey([lt_decl_dict], [$2], 370 1.1 mrg [tagged?], [m4_ifval([$5], [yes], [no])])]) 371 1.1 mrg ]) 372 1.1 mrg 373 1.1 mrg 374 1.1 mrg # _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION]) 375 1.1 mrg # -------------------------------------------------------- 376 1.1 mrg m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])]) 377 1.1 mrg 378 1.1 mrg 379 1.1 mrg # lt_decl_tag_varnames([SEPARATOR], [VARNAME1...]) 380 1.1 mrg # ------------------------------------------------ 381 1.1 mrg m4_define([lt_decl_tag_varnames], 382 1.1 mrg [_lt_decl_filter([tagged?], [yes], $@)]) 383 1.1 mrg 384 1.1 mrg 385 1.1 mrg # _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..]) 386 1.1 mrg # --------------------------------------------------------- 387 1.1 mrg m4_define([_lt_decl_filter], 388 1.1 mrg [m4_case([$#], 389 1.1 mrg [0], [m4_fatal([$0: too few arguments: $#])], 390 1.1 mrg [1], [m4_fatal([$0: too few arguments: $#: $1])], 391 1.1 mrg [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)], 392 1.1 mrg [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)], 393 1.1 mrg [lt_dict_filter([lt_decl_dict], $@)])[]dnl 394 1.1 mrg ]) 395 1.1 mrg 396 1.1 mrg 397 1.1 mrg # lt_decl_quote_varnames([SEPARATOR], [VARNAME1...]) 398 1.1 mrg # -------------------------------------------------- 399 1.1 mrg m4_define([lt_decl_quote_varnames], 400 1.1 mrg [_lt_decl_filter([value], [1], $@)]) 401 1.1 mrg 402 1.1 mrg 403 1.1 mrg # lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...]) 404 1.1 mrg # --------------------------------------------------- 405 1.1 mrg m4_define([lt_decl_dquote_varnames], 406 1.1 mrg [_lt_decl_filter([value], [2], $@)]) 407 1.1 mrg 408 1.1 mrg 409 1.1 mrg # lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...]) 410 1.1 mrg # --------------------------------------------------- 411 1.1 mrg m4_define([lt_decl_varnames_tagged], 412 1.1 mrg [m4_assert([$# <= 2])dnl 413 1.1 mrg _$0(m4_quote(m4_default([$1], [[, ]])), 414 1.1 mrg m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]), 415 1.1 mrg m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))]) 416 1.1 mrg m4_define([_lt_decl_varnames_tagged], 417 1.1 mrg [m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])]) 418 1.1 mrg 419 1.1 mrg 420 1.1 mrg # lt_decl_all_varnames([SEPARATOR], [VARNAME1...]) 421 1.1 mrg # ------------------------------------------------ 422 1.1 mrg m4_define([lt_decl_all_varnames], 423 1.1 mrg [_$0(m4_quote(m4_default([$1], [[, ]])), 424 1.1 mrg m4_if([$2], [], 425 1.1 mrg m4_quote(lt_decl_varnames), 426 1.1 mrg m4_quote(m4_shift($@))))[]dnl 427 1.1 mrg ]) 428 1.1 mrg m4_define([_lt_decl_all_varnames], 429 1.1 mrg [lt_join($@, lt_decl_varnames_tagged([$1], 430 1.1 mrg lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl 431 1.1 mrg ]) 432 1.1 mrg 433 1.1 mrg 434 1.1 mrg # _LT_CONFIG_STATUS_DECLARE([VARNAME]) 435 1.1 mrg # ------------------------------------ 436 1.1 mrg # Quote a variable value, and forward it to 'config.status' so that its 437 1.1 mrg # declaration there will have the same value as in 'configure'. VARNAME 438 1.1 mrg # must have a single quote delimited value for this to work. 439 1.1 mrg m4_define([_LT_CONFIG_STATUS_DECLARE], 440 1.1 mrg [$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`']) 441 1.1 mrg 442 1.1 mrg 443 1.1 mrg # _LT_CONFIG_STATUS_DECLARATIONS 444 1.1 mrg # ------------------------------ 445 1.1 mrg # We delimit libtool config variables with single quotes, so when 446 1.1 mrg # we write them to config.status, we have to be sure to quote all 447 1.1 mrg # embedded single quotes properly. In configure, this macro expands 448 1.1 mrg # each variable declared with _LT_DECL (and _LT_TAGDECL) into: 449 1.1 mrg # 450 1.1 mrg # <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`' 451 1.1 mrg m4_defun([_LT_CONFIG_STATUS_DECLARATIONS], 452 1.1 mrg [m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames), 453 1.1 mrg [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])]) 454 1.1 mrg 455 1.1 mrg 456 1.1 mrg # _LT_LIBTOOL_TAGS 457 1.1 mrg # ---------------- 458 1.1 mrg # Output comment and list of tags supported by the script 459 1.1 mrg m4_defun([_LT_LIBTOOL_TAGS], 460 1.1 mrg [_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl 461 1.1 mrg available_tags='_LT_TAGS'dnl 462 1.1 mrg ]) 463 1.1 mrg 464 1.1 mrg 465 1.1 mrg # _LT_LIBTOOL_DECLARE(VARNAME, [TAG]) 466 1.1 mrg # ----------------------------------- 467 1.1 mrg # Extract the dictionary values for VARNAME (optionally with TAG) and 468 1.1 mrg # expand to a commented shell variable setting: 469 1.1 mrg # 470 1.1 mrg # # Some comment about what VAR is for. 471 1.1 mrg # visible_name=$lt_internal_name 472 1.1 mrg m4_define([_LT_LIBTOOL_DECLARE], 473 1.1 mrg [_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], 474 1.1 mrg [description])))[]dnl 475 1.1 mrg m4_pushdef([_libtool_name], 476 1.1 mrg m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl 477 1.1 mrg m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])), 478 1.1 mrg [0], [_libtool_name=[$]$1], 479 1.1 mrg [1], [_libtool_name=$lt_[]$1], 480 1.1 mrg [2], [_libtool_name=$lt_[]$1], 481 1.1 mrg [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl 482 1.1 mrg m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl 483 1.1 mrg ]) 484 1.1 mrg 485 1.1 mrg 486 1.1 mrg # _LT_LIBTOOL_CONFIG_VARS 487 1.1 mrg # ----------------------- 488 1.1 mrg # Produce commented declarations of non-tagged libtool config variables 489 1.1 mrg # suitable for insertion in the LIBTOOL CONFIG section of the 'libtool' 490 1.1 mrg # script. Tagged libtool config variables (even for the LIBTOOL CONFIG 491 1.1 mrg # section) are produced by _LT_LIBTOOL_TAG_VARS. 492 1.1 mrg m4_defun([_LT_LIBTOOL_CONFIG_VARS], 493 1.1 mrg [m4_foreach([_lt_var], 494 1.1 mrg m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)), 495 1.1 mrg [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])]) 496 1.1 mrg 497 1.1 mrg 498 1.1 mrg # _LT_LIBTOOL_TAG_VARS(TAG) 499 1.1 mrg # ------------------------- 500 1.1 mrg m4_define([_LT_LIBTOOL_TAG_VARS], 501 1.1 mrg [m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames), 502 1.1 mrg [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])]) 503 1.1 mrg 504 1.1 mrg 505 1.1 mrg # _LT_TAGVAR(VARNAME, [TAGNAME]) 506 1.1 mrg # ------------------------------ 507 1.1 mrg m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])]) 508 1.1 mrg 509 1.1 mrg 510 1.1 mrg # _LT_CONFIG_COMMANDS 511 1.1 mrg # ------------------- 512 1.1 mrg # Send accumulated output to $CONFIG_STATUS. Thanks to the lists of 513 1.1 mrg # variables for single and double quote escaping we saved from calls 514 1.1 mrg # to _LT_DECL, we can put quote escaped variables declarations 515 1.1 mrg # into 'config.status', and then the shell code to quote escape them in 516 1.1 mrg # for loops in 'config.status'. Finally, any additional code accumulated 517 1.1 mrg # from calls to _LT_CONFIG_LIBTOOL_INIT is expanded. 518 1.1 mrg m4_defun([_LT_CONFIG_COMMANDS], 519 1.1 mrg [AC_PROVIDE_IFELSE([LT_OUTPUT], 520 1.1 mrg dnl If the libtool generation code has been placed in $CONFIG_LT, 521 1.1 mrg dnl instead of duplicating it all over again into config.status, 522 1.1 mrg dnl then we will have config.status run $CONFIG_LT later, so it 523 1.1 mrg dnl needs to know what name is stored there: 524 1.1 mrg [AC_CONFIG_COMMANDS([libtool], 525 1.1 mrg [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])], 526 1.1 mrg dnl If the libtool generation code is destined for config.status, 527 1.1 mrg dnl expand the accumulated commands and init code now: 528 1.1 mrg [AC_CONFIG_COMMANDS([libtool], 529 1.1 mrg [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])]) 530 1.1 mrg ])#_LT_CONFIG_COMMANDS 531 1.1 mrg 532 1.1 mrg 533 1.1 mrg # Initialize. 534 1.1 mrg m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT], 535 1.1 mrg [ 536 1.1 mrg 537 1.1 mrg # The HP-UX ksh and POSIX shell print the target directory to stdout 538 1.1 mrg # if CDPATH is set. 539 1.1 mrg (unset CDPATH) >/dev/null 2>&1 && unset CDPATH 540 1.1 mrg 541 1.1 mrg sed_quote_subst='$sed_quote_subst' 542 1.1 mrg double_quote_subst='$double_quote_subst' 543 1.1 mrg delay_variable_subst='$delay_variable_subst' 544 1.1 mrg _LT_CONFIG_STATUS_DECLARATIONS 545 1.1 mrg LTCC='$LTCC' 546 1.1 mrg LTCFLAGS='$LTCFLAGS' 547 1.1 mrg compiler='$compiler_DEFAULT' 548 1.1 mrg 549 1.1 mrg # A function that is used when there is no print builtin or printf. 550 1.1 mrg func_fallback_echo () 551 1.1 mrg { 552 1.1 mrg eval 'cat <<_LTECHO_EOF 553 1.1 mrg \$[]1 554 1.1 mrg _LTECHO_EOF' 555 1.1 mrg } 556 1.1 mrg 557 1.1 mrg # Quote evaled strings. 558 1.1 mrg for var in lt_decl_all_varnames([[ \ 559 1.1 mrg ]], lt_decl_quote_varnames); do 560 1.1 mrg case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in 561 1.1 mrg *[[\\\\\\\`\\"\\\$]]*) 562 1.1 mrg eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes 563 1.1 mrg ;; 564 1.1 mrg *) 565 1.1 mrg eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" 566 1.1 mrg ;; 567 1.1 mrg esac 568 1.1 mrg done 569 1.1 mrg 570 1.1 mrg # Double-quote double-evaled strings. 571 1.1 mrg for var in lt_decl_all_varnames([[ \ 572 1.1 mrg ]], lt_decl_dquote_varnames); do 573 1.1 mrg case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in 574 1.1 mrg *[[\\\\\\\`\\"\\\$]]*) 575 1.1 mrg eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes 576 1.1 mrg ;; 577 1.1 mrg *) 578 1.1 mrg eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" 579 1.1 mrg ;; 580 1.1 mrg esac 581 1.1 mrg done 582 1.1 mrg 583 1.1 mrg _LT_OUTPUT_LIBTOOL_INIT 584 1.1 mrg ]) 585 1.1 mrg 586 1.1 mrg # _LT_GENERATED_FILE_INIT(FILE, [COMMENT]) 587 1.1 mrg # ------------------------------------ 588 1.1 mrg # Generate a child script FILE with all initialization necessary to 589 1.1 mrg # reuse the environment learned by the parent script, and make the 590 1.1 mrg # file executable. If COMMENT is supplied, it is inserted after the 591 1.1 mrg # '#!' sequence but before initialization text begins. After this 592 1.1 mrg # macro, additional text can be appended to FILE to form the body of 593 1.1 mrg # the child script. The macro ends with non-zero status if the 594 1.1 mrg # file could not be fully written (such as if the disk is full). 595 1.1 mrg m4_ifdef([AS_INIT_GENERATED], 596 1.1 mrg [m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])], 597 1.1 mrg [m4_defun([_LT_GENERATED_FILE_INIT], 598 1.1 mrg [m4_require([AS_PREPARE])]dnl 599 1.1 mrg [m4_pushdef([AS_MESSAGE_LOG_FD])]dnl 600 1.1 mrg [lt_write_fail=0 601 1.1 mrg cat >$1 <<_ASEOF || lt_write_fail=1 602 1.1 mrg #! $SHELL 603 1.1 mrg # Generated by $as_me. 604 1.1 mrg $2 605 1.1 mrg SHELL=\${CONFIG_SHELL-$SHELL} 606 1.1 mrg export SHELL 607 1.1 mrg _ASEOF 608 1.1 mrg cat >>$1 <<\_ASEOF || lt_write_fail=1 609 1.1 mrg AS_SHELL_SANITIZE 610 1.1 mrg _AS_PREPARE 611 1.1 mrg exec AS_MESSAGE_FD>&1 612 1.1 mrg _ASEOF 613 1.1 mrg test 0 = "$lt_write_fail" && chmod +x $1[]dnl 614 1.1 mrg m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT 615 1.1 mrg 616 1.1 mrg # LT_OUTPUT 617 1.1 mrg # --------- 618 1.1 mrg # This macro allows early generation of the libtool script (before 619 1.1 mrg # AC_OUTPUT is called), in case it is used in configure for compilation 620 1.1 mrg # tests. 621 1.1 mrg AC_DEFUN([LT_OUTPUT], 622 1.1 mrg [: ${CONFIG_LT=./config.lt} 623 1.1 mrg AC_MSG_NOTICE([creating $CONFIG_LT]) 624 1.1 mrg _LT_GENERATED_FILE_INIT(["$CONFIG_LT"], 625 1.1 mrg [# Run this file to recreate a libtool stub with the current configuration.]) 626 1.1 mrg 627 1.1 mrg cat >>"$CONFIG_LT" <<\_LTEOF 628 1.1 mrg lt_cl_silent=false 629 1.1 mrg exec AS_MESSAGE_LOG_FD>>config.log 630 1.1 mrg { 631 1.1 mrg echo 632 1.1 mrg AS_BOX([Running $as_me.]) 633 1.1 mrg } >&AS_MESSAGE_LOG_FD 634 1.1 mrg 635 1.1 mrg lt_cl_help="\ 636 1.1 mrg '$as_me' creates a local libtool stub from the current configuration, 637 1.1 mrg for use in further configure time tests before the real libtool is 638 1.1 mrg generated. 639 1.1 mrg 640 1.1 mrg Usage: $[0] [[OPTIONS]] 641 1.1 mrg 642 1.1 mrg -h, --help print this help, then exit 643 1.1 mrg -V, --version print version number, then exit 644 1.1 mrg -q, --quiet do not print progress messages 645 1.1 mrg -d, --debug don't remove temporary files 646 1.1 mrg 647 1.1 mrg Report bugs to <bug-libtool (a] gnu.org>." 648 1.1 mrg 649 1.1 mrg lt_cl_version="\ 650 1.1 mrg m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl 651 1.1 mrg m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION]) 652 1.1 mrg configured by $[0], generated by m4_PACKAGE_STRING. 653 1.1 mrg 654 1.1 mrg Copyright (C) 2024 Free Software Foundation, Inc. 655 1.1 mrg This config.lt script is free software; the Free Software Foundation 656 1.1 mrg gives unlimited permission to copy, distribute and modify it." 657 1.1 mrg 658 1.1 mrg while test 0 != $[#] 659 1.1 mrg do 660 1.1 mrg case $[1] in 661 1.1 mrg --version | --v* | -V ) 662 1.1 mrg echo "$lt_cl_version"; exit 0 ;; 663 1.1 mrg --help | --h* | -h ) 664 1.1 mrg echo "$lt_cl_help"; exit 0 ;; 665 1.1 mrg --debug | --d* | -d ) 666 1.1 mrg debug=: ;; 667 1.1 mrg --quiet | --q* | --silent | --s* | -q ) 668 1.1 mrg lt_cl_silent=: ;; 669 1.1 mrg 670 1.1 mrg -*) AC_MSG_ERROR([unrecognized option: $[1] 671 1.1 mrg Try '$[0] --help' for more information.]) ;; 672 1.1 mrg 673 1.1 mrg *) AC_MSG_ERROR([unrecognized argument: $[1] 674 1.1 mrg Try '$[0] --help' for more information.]) ;; 675 1.1 mrg esac 676 1.1 mrg shift 677 1.1 mrg done 678 1.1 mrg 679 1.1 mrg if $lt_cl_silent; then 680 1.1 mrg exec AS_MESSAGE_FD>/dev/null 681 1.1 mrg fi 682 1.1 mrg _LTEOF 683 1.1 mrg 684 1.1 mrg cat >>"$CONFIG_LT" <<_LTEOF 685 1.1 mrg _LT_OUTPUT_LIBTOOL_COMMANDS_INIT 686 1.1 mrg _LTEOF 687 1.1 mrg 688 1.1 mrg cat >>"$CONFIG_LT" <<\_LTEOF 689 1.1 mrg AC_MSG_NOTICE([creating $ofile]) 690 1.1 mrg _LT_OUTPUT_LIBTOOL_COMMANDS 691 1.1 mrg AS_EXIT(0) 692 1.1 mrg _LTEOF 693 1.1 mrg chmod +x "$CONFIG_LT" 694 1.1 mrg 695 1.1 mrg # configure is writing to config.log, but config.lt does its own redirection, 696 1.1 mrg # appending to config.log, which fails on DOS, as config.log is still kept 697 1.1 mrg # open by configure. Here we exec the FD to /dev/null, effectively closing 698 1.1 mrg # config.log, so it can be properly (re)opened and appended to by config.lt. 699 1.1 mrg lt_cl_success=: 700 1.1 mrg test yes = "$silent" && 701 1.1 mrg lt_config_lt_args="$lt_config_lt_args --quiet" 702 1.1 mrg exec AS_MESSAGE_LOG_FD>/dev/null 703 1.1 mrg $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false 704 1.1 mrg exec AS_MESSAGE_LOG_FD>>config.log 705 1.1 mrg $lt_cl_success || AS_EXIT(1) 706 1.1 mrg ])# LT_OUTPUT 707 1.1 mrg 708 1.1 mrg 709 1.1 mrg # _LT_CONFIG(TAG) 710 1.1 mrg # --------------- 711 1.1 mrg # If TAG is the built-in tag, create an initial libtool script with a 712 1.1 mrg # default configuration from the untagged config vars. Otherwise add code 713 1.1 mrg # to config.status for appending the configuration named by TAG from the 714 1.1 mrg # matching tagged config vars. 715 1.1 mrg m4_defun([_LT_CONFIG], 716 1.1 mrg [m4_require([_LT_FILEUTILS_DEFAULTS])dnl 717 1.1 mrg _LT_CONFIG_SAVE_COMMANDS([ 718 1.1 mrg m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl 719 1.1 mrg m4_if(_LT_TAG, [C], [ 720 1.1 mrg # See if we are running on zsh, and set the options that allow our 721 1.1 mrg # commands through without removal of \ escapes. 722 1.1 mrg if test -n "${ZSH_VERSION+set}"; then 723 1.1 mrg setopt NO_GLOB_SUBST 724 1.1 mrg fi 725 1.1 mrg 726 1.1 mrg cfgfile=${ofile}T 727 1.1 mrg trap "$RM \"$cfgfile\"; exit 1" 1 2 15 728 1.1 mrg $RM "$cfgfile" 729 1.1 mrg 730 1.1 mrg cat <<_LT_EOF >> "$cfgfile" 731 1.1 mrg #! $SHELL 732 1.1 mrg # Generated automatically by $as_me ($PACKAGE) $VERSION 733 1.1 mrg # NOTE: Changes made to this file will be lost: look at ltmain.sh. 734 1.1 mrg 735 1.1 mrg # Provide generalized library-building support services. 736 1.1 mrg # Written by Gordon Matzigkeit, 1996 737 1.1 mrg 738 1.1 mrg _LT_COPYING 739 1.1 mrg _LT_LIBTOOL_TAGS 740 1.1 mrg 741 1.1 mrg # Configured defaults for sys_lib_dlsearch_path munging. 742 1.1 mrg : \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} 743 1.1 mrg 744 1.1 mrg # ### BEGIN LIBTOOL CONFIG 745 1.1 mrg _LT_LIBTOOL_CONFIG_VARS 746 1.1 mrg _LT_LIBTOOL_TAG_VARS 747 1.1 mrg # ### END LIBTOOL CONFIG 748 1.1 mrg 749 1.1 mrg _LT_EOF 750 1.1 mrg 751 1.1 mrg cat <<'_LT_EOF' >> "$cfgfile" 752 1.1 mrg 753 1.1 mrg # ### BEGIN FUNCTIONS SHARED WITH CONFIGURE 754 1.1 mrg 755 1.1 mrg _LT_PREPARE_MUNGE_PATH_LIST 756 1.1 mrg _LT_PREPARE_CC_BASENAME 757 1.1 mrg 758 1.1 mrg # ### END FUNCTIONS SHARED WITH CONFIGURE 759 1.1 mrg 760 1.1 mrg _LT_EOF 761 1.1 mrg 762 1.1 mrg case $host_os in 763 1.1 mrg aix3*) 764 1.1 mrg cat <<\_LT_EOF >> "$cfgfile" 765 1.1 mrg # AIX sometimes has problems with the GCC collect2 program. For some 766 1.1 mrg # reason, if we set the COLLECT_NAMES environment variable, the problems 767 1.1 mrg # vanish in a puff of smoke. 768 1.1 mrg if test set != "${COLLECT_NAMES+set}"; then 769 1.1 mrg COLLECT_NAMES= 770 1.1 mrg export COLLECT_NAMES 771 1.1 mrg fi 772 1.1 mrg _LT_EOF 773 1.1 mrg ;; 774 1.1 mrg esac 775 1.1 mrg 776 1.1 mrg _LT_PROG_LTMAIN 777 1.1 mrg 778 1.1 mrg # We use sed instead of cat because bash on DJGPP gets confused if 779 1.1 mrg # if finds mixed CR/LF and LF-only lines. Since sed operates in 780 1.1 mrg # text mode, it properly converts lines to CR/LF. This bash problem 781 1.1 mrg # is reportedly fixed, but why not run on old versions too? 782 1.1 mrg $SED '$q' "$ltmain" >> "$cfgfile" \ 783 1.1 mrg || (rm -f "$cfgfile"; exit 1) 784 1.1 mrg 785 1.1 mrg mv -f "$cfgfile" "$ofile" || 786 1.1 mrg (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") 787 1.1 mrg chmod +x "$ofile" 788 1.1 mrg ], 789 1.1 mrg [cat <<_LT_EOF >> "$ofile" 790 1.1 mrg 791 1.1 mrg dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded 792 1.1 mrg dnl in a comment (ie after a #). 793 1.1 mrg # ### BEGIN LIBTOOL TAG CONFIG: $1 794 1.1 mrg _LT_LIBTOOL_TAG_VARS(_LT_TAG) 795 1.1 mrg # ### END LIBTOOL TAG CONFIG: $1 796 1.1 mrg _LT_EOF 797 1.1 mrg ])dnl /m4_if 798 1.1 mrg ], 799 1.1 mrg [m4_if([$1], [], [ 800 1.1 mrg PACKAGE='$PACKAGE' 801 1.1 mrg VERSION='$VERSION' 802 1.1 mrg RM='$RM' 803 1.1 mrg ofile='$ofile'], []) 804 1.1 mrg ])dnl /_LT_CONFIG_SAVE_COMMANDS 805 1.1 mrg ])# _LT_CONFIG 806 1.1 mrg 807 1.1 mrg 808 1.1 mrg # LT_SUPPORTED_TAG(TAG) 809 1.1 mrg # --------------------- 810 1.1 mrg # Trace this macro to discover what tags are supported by the libtool 811 1.1 mrg # --tag option, using: 812 1.1 mrg # autoconf --trace 'LT_SUPPORTED_TAG:$1' 813 1.1 mrg AC_DEFUN([LT_SUPPORTED_TAG], []) 814 1.1 mrg 815 1.1 mrg 816 1.1 mrg # C support is built-in for now 817 1.1 mrg m4_define([_LT_LANG_C_enabled], []) 818 1.1 mrg m4_define([_LT_TAGS], []) 819 1.1 mrg 820 1.1 mrg 821 1.1 mrg # LT_LANG(LANG) 822 1.1 mrg # ------------- 823 1.1 mrg # Enable libtool support for the given language if not already enabled. 824 1.1 mrg AC_DEFUN([LT_LANG], 825 1.1 mrg [AC_BEFORE([$0], [LT_OUTPUT])dnl 826 1.1 mrg m4_case([$1], 827 1.1 mrg [C], [_LT_LANG(C)], 828 1.1 mrg [C++], [_LT_LANG(CXX)], 829 1.1 mrg [Go], [_LT_LANG(GO)], 830 1.1 mrg [Java], [_LT_LANG(GCJ)], 831 1.1 mrg [Fortran 77], [_LT_LANG(F77)], 832 1.1 mrg [Fortran], [_LT_LANG(FC)], 833 1.1 mrg [Windows Resource], [_LT_LANG(RC)], 834 1.1 mrg [m4_ifdef([_LT_LANG_]$1[_CONFIG], 835 1.1 mrg [_LT_LANG($1)], 836 1.1 mrg [m4_fatal([$0: unsupported language: "$1"])])])dnl 837 1.1 mrg ])# LT_LANG 838 1.1 mrg 839 1.1 mrg 840 1.1 mrg # _LT_LANG(LANGNAME) 841 1.1 mrg # ------------------ 842 1.1 mrg m4_defun([_LT_LANG], 843 1.1 mrg [m4_ifdef([_LT_LANG_]$1[_enabled], [], 844 1.1 mrg [LT_SUPPORTED_TAG([$1])dnl 845 1.1 mrg m4_append([_LT_TAGS], [$1 ])dnl 846 1.1 mrg m4_define([_LT_LANG_]$1[_enabled], [])dnl 847 1.1 mrg _LT_LANG_$1_CONFIG($1)])dnl 848 1.1 mrg ])# _LT_LANG 849 1.1 mrg 850 1.1 mrg 851 1.1 mrg m4_ifndef([AC_PROG_GO], [ 852 1.1 mrg ############################################################ 853 1.1 mrg # NOTE: This macro has been submitted for inclusion into # 854 1.1 mrg # GNU Autoconf as AC_PROG_GO. When it is available in # 855 1.1 mrg # a released version of Autoconf we should remove this # 856 1.1 mrg # macro and use it instead. # 857 1.1 mrg ############################################################ 858 1.1 mrg m4_defun([AC_PROG_GO], 859 1.1 mrg [AC_LANG_PUSH(Go)dnl 860 1.1 mrg AC_ARG_VAR([GOC], [Go compiler command])dnl 861 1.1 mrg AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl 862 1.1 mrg _AC_ARG_VAR_LDFLAGS()dnl 863 1.1 mrg AC_CHECK_TOOL(GOC, gccgo) 864 1.1 mrg if test -z "$GOC"; then 865 1.1 mrg if test -n "$ac_tool_prefix"; then 866 1.1 mrg AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo]) 867 1.1 mrg fi 868 1.1 mrg fi 869 1.1 mrg if test -z "$GOC"; then 870 1.1 mrg AC_CHECK_PROG(GOC, gccgo, gccgo, false) 871 1.1 mrg fi 872 1.1 mrg ])#m4_defun 873 1.1 mrg ])#m4_ifndef 874 1.1 mrg 875 1.1 mrg 876 1.1 mrg # _LT_LANG_DEFAULT_CONFIG 877 1.1 mrg # ----------------------- 878 1.1 mrg m4_defun([_LT_LANG_DEFAULT_CONFIG], 879 1.1 mrg [AC_PROVIDE_IFELSE([AC_PROG_CXX], 880 1.1 mrg [LT_LANG(CXX)], 881 1.1 mrg [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])]) 882 1.1 mrg 883 1.1 mrg AC_PROVIDE_IFELSE([AC_PROG_F77], 884 1.1 mrg [LT_LANG(F77)], 885 1.1 mrg [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])]) 886 1.1 mrg 887 1.1 mrg AC_PROVIDE_IFELSE([AC_PROG_FC], 888 1.1 mrg [LT_LANG(FC)], 889 1.1 mrg [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])]) 890 1.1 mrg 891 1.1 mrg dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal 892 1.1 mrg dnl pulling things in needlessly. 893 1.1 mrg AC_PROVIDE_IFELSE([AC_PROG_GCJ], 894 1.1 mrg [LT_LANG(GCJ)], 895 1.1 mrg [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], 896 1.1 mrg [LT_LANG(GCJ)], 897 1.1 mrg [AC_PROVIDE_IFELSE([LT_PROG_GCJ], 898 1.1 mrg [LT_LANG(GCJ)], 899 1.1 mrg [m4_ifdef([AC_PROG_GCJ], 900 1.1 mrg [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])]) 901 1.1 mrg m4_ifdef([A][M_PROG_GCJ], 902 1.1 mrg [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])]) 903 1.1 mrg m4_ifdef([LT_PROG_GCJ], 904 1.1 mrg [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])]) 905 1.1 mrg 906 1.1 mrg AC_PROVIDE_IFELSE([AC_PROG_GO], 907 1.1 mrg [LT_LANG(GO)], 908 1.1 mrg [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])]) 909 1.1 mrg 910 1.1 mrg AC_PROVIDE_IFELSE([LT_PROG_RC], 911 1.1 mrg [LT_LANG(RC)], 912 1.1 mrg [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])]) 913 1.1 mrg ])# _LT_LANG_DEFAULT_CONFIG 914 1.1 mrg 915 1.1 mrg # Obsolete macros: 916 1.1 mrg AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)]) 917 1.1 mrg AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)]) 918 1.1 mrg AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)]) 919 1.1 mrg AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)]) 920 1.1 mrg AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)]) 921 1.1 mrg dnl aclocal-1.4 backwards compatibility: 922 1.1 mrg dnl AC_DEFUN([AC_LIBTOOL_CXX], []) 923 1.1 mrg dnl AC_DEFUN([AC_LIBTOOL_F77], []) 924 1.1 mrg dnl AC_DEFUN([AC_LIBTOOL_FC], []) 925 1.1 mrg dnl AC_DEFUN([AC_LIBTOOL_GCJ], []) 926 1.1 mrg dnl AC_DEFUN([AC_LIBTOOL_RC], []) 927 1.1 mrg 928 1.1 mrg 929 1.1 mrg # _LT_TAG_COMPILER 930 1.1 mrg # ---------------- 931 1.1 mrg m4_defun([_LT_TAG_COMPILER], 932 1.1 mrg [AC_REQUIRE([AC_PROG_CC])dnl 933 1.1 mrg 934 1.1 mrg _LT_DECL([LTCC], [CC], [1], [A C compiler])dnl 935 1.1 mrg _LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl 936 1.1 mrg _LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl 937 1.1 mrg _LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl 938 1.1 mrg 939 1.1 mrg # If no C compiler was specified, use CC. 940 1.1 mrg LTCC=${LTCC-"$CC"} 941 1.1 mrg 942 1.1 mrg # If no C compiler flags were specified, use CFLAGS. 943 1.1 mrg LTCFLAGS=${LTCFLAGS-"$CFLAGS"} 944 1.1 mrg 945 1.1 mrg # Allow CC to be a program name with arguments. 946 1.1 mrg compiler=$CC 947 1.1 mrg ])# _LT_TAG_COMPILER 948 1.1 mrg 949 1.1 mrg 950 1.1 mrg # _LT_COMPILER_BOILERPLATE 951 1.1 mrg # ------------------------ 952 1.1 mrg # Check for compiler boilerplate output or warnings with 953 1.1 mrg # the simple compiler test code. 954 1.1 mrg m4_defun([_LT_COMPILER_BOILERPLATE], 955 1.1 mrg [m4_require([_LT_DECL_SED])dnl 956 1.1 mrg ac_outfile=conftest.$ac_objext 957 1.1 mrg echo "$lt_simple_compile_test_code" >conftest.$ac_ext 958 1.1 mrg eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err 959 1.1 mrg _lt_compiler_boilerplate=`cat conftest.err` 960 1.1 mrg $RM conftest* 961 1.1 mrg ])# _LT_COMPILER_BOILERPLATE 962 1.1 mrg 963 1.1 mrg 964 1.1 mrg # _LT_LINKER_BOILERPLATE 965 1.1 mrg # ---------------------- 966 1.1 mrg # Check for linker boilerplate output or warnings with 967 1.1 mrg # the simple link test code. 968 1.1 mrg m4_defun([_LT_LINKER_BOILERPLATE], 969 1.1 mrg [m4_require([_LT_DECL_SED])dnl 970 1.1 mrg ac_outfile=conftest.$ac_objext 971 1.1 mrg echo "$lt_simple_link_test_code" >conftest.$ac_ext 972 1.1 mrg eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err 973 1.1 mrg _lt_linker_boilerplate=`cat conftest.err` 974 1.1 mrg $RM -r conftest* 975 1.1 mrg ])# _LT_LINKER_BOILERPLATE 976 1.1 mrg 977 1.1 mrg 978 1.1 mrg # _LT_REQUIRED_DARWIN_CHECKS 979 1.1 mrg # ------------------------- 980 1.1 mrg m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[ 981 1.1 mrg case $host_os in 982 1.1 mrg rhapsody* | darwin*) 983 1.1 mrg AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:]) 984 1.1 mrg AC_CHECK_TOOL([NMEDIT], [nmedit], [:]) 985 1.1 mrg AC_CHECK_TOOL([LIPO], [lipo], [:]) 986 1.1 mrg AC_CHECK_TOOL([OTOOL], [otool], [:]) 987 1.1 mrg AC_CHECK_TOOL([OTOOL64], [otool64], [:]) 988 1.1 mrg _LT_DECL([], [DSYMUTIL], [1], 989 1.1 mrg [Tool to manipulate archived DWARF debug symbol files on Mac OS X]) 990 1.1 mrg _LT_DECL([], [NMEDIT], [1], 991 1.1 mrg [Tool to change global to local symbols on Mac OS X]) 992 1.1 mrg _LT_DECL([], [LIPO], [1], 993 1.1 mrg [Tool to manipulate fat objects and archives on Mac OS X]) 994 1.1 mrg _LT_DECL([], [OTOOL], [1], 995 1.1 mrg [ldd/readelf like tool for Mach-O binaries on Mac OS X]) 996 1.1 mrg _LT_DECL([], [OTOOL64], [1], 997 1.1 mrg [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4]) 998 1.1 mrg 999 1.1 mrg AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod], 1000 1.1 mrg [lt_cv_apple_cc_single_mod=no 1001 1.1 mrg if test -z "$LT_MULTI_MODULE"; then 1002 1.1 mrg # By default we will add the -single_module flag. You can override 1003 1.1 mrg # by either setting the environment variable LT_MULTI_MODULE 1004 1.1 mrg # non-empty at configure time, or by adding -multi_module to the 1005 1.1 mrg # link flags. 1006 1.1 mrg rm -rf libconftest.dylib* 1007 1.1 mrg echo "int foo(void){return 1;}" > conftest.c 1008 1.1 mrg echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ 1009 1.1 mrg -dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD 1010 1.1 mrg $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ 1011 1.1 mrg -dynamiclib -Wl,-single_module conftest.c 2>conftest.err 1012 1.1 mrg _lt_result=$? 1013 1.1 mrg # If there is a non-empty error log, and "single_module" 1014 1.1 mrg # appears in it, assume the flag caused a linker warning 1015 1.1 mrg if test -s conftest.err && $GREP single_module conftest.err; then 1016 1.1 mrg cat conftest.err >&AS_MESSAGE_LOG_FD 1017 1.1 mrg # Otherwise, if the output was created with a 0 exit code from 1018 1.1 mrg # the compiler, it worked. 1019 1.1 mrg elif test -f libconftest.dylib && test 0 = "$_lt_result"; then 1020 1.1 mrg lt_cv_apple_cc_single_mod=yes 1021 1.1 mrg else 1022 1.1 mrg cat conftest.err >&AS_MESSAGE_LOG_FD 1023 1.1 mrg fi 1024 1.1 mrg rm -rf libconftest.dylib* 1025 1.1 mrg rm -f conftest.* 1026 1.1 mrg fi]) 1027 1.1 mrg 1028 1.1 mrg # Feature test to disable chained fixups since it is not 1029 1.1 mrg # compatible with '-undefined dynamic_lookup' 1030 1.1 mrg AC_CACHE_CHECK([for -no_fixup_chains linker flag], 1031 1.1 mrg [lt_cv_support_no_fixup_chains], 1032 1.1 mrg [ save_LDFLAGS=$LDFLAGS 1033 1.1 mrg LDFLAGS="$LDFLAGS -Wl,-no_fixup_chains" 1034 1.1 mrg AC_LINK_IFELSE( 1035 1.1 mrg [AC_LANG_PROGRAM([],[])], 1036 1.1 mrg lt_cv_support_no_fixup_chains=yes, 1037 1.1 mrg lt_cv_support_no_fixup_chains=no 1038 1.1 mrg ) 1039 1.1 mrg LDFLAGS=$save_LDFLAGS 1040 1.1 mrg ] 1041 1.1 mrg ) 1042 1.1 mrg 1043 1.1 mrg AC_CACHE_CHECK([for -exported_symbols_list linker flag], 1044 1.1 mrg [lt_cv_ld_exported_symbols_list], 1045 1.1 mrg [lt_cv_ld_exported_symbols_list=no 1046 1.1 mrg save_LDFLAGS=$LDFLAGS 1047 1.1 mrg echo "_main" > conftest.sym 1048 1.1 mrg LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" 1049 1.1 mrg AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], 1050 1.1 mrg [lt_cv_ld_exported_symbols_list=yes], 1051 1.1 mrg [lt_cv_ld_exported_symbols_list=no]) 1052 1.1 mrg LDFLAGS=$save_LDFLAGS 1053 1.1 mrg ]) 1054 1.1 mrg 1055 1.1 mrg AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load], 1056 1.1 mrg [lt_cv_ld_force_load=no 1057 1.1 mrg cat > conftest.c << _LT_EOF 1058 1.1 mrg int forced_loaded() { return 2;} 1059 1.1 mrg _LT_EOF 1060 1.1 mrg echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD 1061 1.1 mrg $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD 1062 1.1 mrg echo "$AR $AR_FLAGS libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD 1063 1.1 mrg $AR $AR_FLAGS libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD 1064 1.1 mrg echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD 1065 1.1 mrg $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD 1066 1.1 mrg cat > conftest.c << _LT_EOF 1067 1.1 mrg int main(void) { return 0;} 1068 1.1 mrg _LT_EOF 1069 1.1 mrg echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD 1070 1.1 mrg $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err 1071 1.1 mrg _lt_result=$? 1072 1.1 mrg if test -s conftest.err && $GREP force_load conftest.err; then 1073 1.1 mrg cat conftest.err >&AS_MESSAGE_LOG_FD 1074 1.1 mrg elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then 1075 1.1 mrg lt_cv_ld_force_load=yes 1076 1.1 mrg else 1077 1.1 mrg cat conftest.err >&AS_MESSAGE_LOG_FD 1078 1.1 mrg fi 1079 1.1 mrg rm -f conftest.err libconftest.a conftest conftest.c 1080 1.1 mrg rm -rf conftest.dSYM 1081 1.1 mrg ]) 1082 1.1 mrg case $host_os in 1083 1.1 mrg rhapsody* | darwin1.[[012]]) 1084 1.1 mrg _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; 1085 1.1 mrg darwin1.*) 1086 1.1 mrg _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; 1087 1.1 mrg darwin*) 1088 1.1 mrg case $MACOSX_DEPLOYMENT_TARGET,$host in 1089 1.1 mrg 10.[[012]],*|,*powerpc*-darwin[[5-8]]*) 1090 1.1 mrg _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; 1091 1.1 mrg *) 1092 1.1 mrg _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' 1093 1.1 mrg if test yes = "$lt_cv_support_no_fixup_chains"; then 1094 1.1 mrg AS_VAR_APPEND([_lt_dar_allow_undefined], [' $wl-no_fixup_chains']) 1095 1.1 mrg fi 1096 1.1 mrg ;; 1097 1.1 mrg esac 1098 1.1 mrg ;; 1099 1.1 mrg esac 1100 1.1 mrg if test yes = "$lt_cv_apple_cc_single_mod"; then 1101 1.1 mrg _lt_dar_single_mod='$single_module' 1102 1.1 mrg fi 1103 1.1 mrg _lt_dar_needs_single_mod=no 1104 1.1 mrg case $host_os in 1105 1.1 mrg rhapsody* | darwin1.*) 1106 1.1 mrg _lt_dar_needs_single_mod=yes ;; 1107 1.1 mrg darwin*) 1108 1.1 mrg # When targeting Mac OS X 10.4 (darwin 8) or later, 1109 1.1 mrg # -single_module is the default and -multi_module is unsupported. 1110 1.1 mrg # The toolchain on macOS 10.14 (darwin 18) and later cannot 1111 1.1 mrg # target any OS version that needs -single_module. 1112 1.1 mrg case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 1113 1.1 mrg 10.0,*-darwin[[567]].*|10.[[0-3]],*-darwin[[5-9]].*|10.[[0-3]],*-darwin1[[0-7]].*) 1114 1.1 mrg _lt_dar_needs_single_mod=yes ;; 1115 1.1 mrg esac 1116 1.1 mrg ;; 1117 1.1 mrg esac 1118 1.1 mrg if test yes = "$lt_cv_ld_exported_symbols_list"; then 1119 1.1 mrg _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' 1120 1.1 mrg else 1121 1.1 mrg _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib' 1122 1.1 mrg fi 1123 1.1 mrg if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then 1124 1.1 mrg _lt_dsymutil='~$DSYMUTIL $lib || :' 1125 1.1 mrg else 1126 1.1 mrg _lt_dsymutil= 1127 1.1 mrg fi 1128 1.1 mrg ;; 1129 1.1 mrg esac 1130 1.1 mrg ]) 1131 1.1 mrg 1132 1.1 mrg 1133 1.1 mrg # _LT_DARWIN_LINKER_FEATURES([TAG]) 1134 1.1 mrg # --------------------------------- 1135 1.1 mrg # Checks for linker and compiler features on darwin 1136 1.1 mrg m4_defun([_LT_DARWIN_LINKER_FEATURES], 1137 1.1 mrg [ 1138 1.1 mrg m4_require([_LT_REQUIRED_DARWIN_CHECKS]) 1139 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 1140 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=no 1141 1.1 mrg _LT_TAGVAR(hardcode_automatic, $1)=yes 1142 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported 1143 1.1 mrg if test yes = "$lt_cv_ld_force_load"; then 1144 1.1 mrg _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\"`' 1145 1.1 mrg m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes], 1146 1.1 mrg [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes]) 1147 1.1 mrg else 1148 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)='' 1149 1.1 mrg fi 1150 1.1 mrg _LT_TAGVAR(link_all_deplibs, $1)=yes 1151 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined 1152 1.1 mrg case $cc_basename in 1153 1.1 mrg ifort*|nagfor*) _lt_dar_can_shared=yes ;; 1154 1.1 mrg *) _lt_dar_can_shared=$GCC ;; 1155 1.1 mrg esac 1156 1.1 mrg if test yes = "$_lt_dar_can_shared"; then 1157 1.1 mrg output_verbose_link_cmd=func_echo_all 1158 1.1 mrg _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" 1159 1.1 mrg _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" 1160 1.1 mrg _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" 1161 1.1 mrg _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" 1162 1.1 mrg m4_if([$1], [CXX], 1163 1.1 mrg [ if test yes = "$_lt_dar_needs_single_mod" -a yes != "$lt_cv_apple_cc_single_mod"; then 1164 1.1 mrg _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" 1165 1.1 mrg _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" 1166 1.1 mrg fi 1167 1.1 mrg ],[]) 1168 1.1 mrg else 1169 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 1170 1.1 mrg fi 1171 1.1 mrg ]) 1172 1.1 mrg 1173 1.1 mrg # _LT_SYS_MODULE_PATH_AIX([TAGNAME]) 1174 1.1 mrg # ---------------------------------- 1175 1.1 mrg # Links a minimal program and checks the executable 1176 1.1 mrg # for the system default hardcoded library path. In most cases, 1177 1.1 mrg # this is /usr/lib:/lib, but when the MPI compilers are used 1178 1.1 mrg # the location of the communication and MPI libs are included too. 1179 1.1 mrg # If we don't find anything, use the default library path according 1180 1.1 mrg # to the aix ld manual. 1181 1.1 mrg # Store the results from the different compilers for each TAGNAME. 1182 1.1 mrg # Allow to override them for all tags through lt_cv_aix_libpath. 1183 1.1 mrg m4_defun([_LT_SYS_MODULE_PATH_AIX], 1184 1.1 mrg [m4_require([_LT_DECL_SED])dnl 1185 1.1 mrg if test set = "${lt_cv_aix_libpath+set}"; then 1186 1.1 mrg aix_libpath=$lt_cv_aix_libpath 1187 1.1 mrg else 1188 1.1 mrg AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])], 1189 1.1 mrg [AC_LINK_IFELSE([AC_LANG_PROGRAM],[ 1190 1.1 mrg lt_aix_libpath_sed='[ 1191 1.1 mrg /Import File Strings/,/^$/ { 1192 1.1 mrg /^0/ { 1193 1.1 mrg s/^0 *\([^ ]*\) *$/\1/ 1194 1.1 mrg p 1195 1.1 mrg } 1196 1.1 mrg }]' 1197 1.1 mrg _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` 1198 1.1 mrg # Check for a 64-bit object if we didn't find anything. 1199 1.1 mrg if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then 1200 1.1 mrg _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` 1201 1.1 mrg fi],[]) 1202 1.1 mrg if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then 1203 1.1 mrg _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib 1204 1.1 mrg fi 1205 1.1 mrg ]) 1206 1.1 mrg aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1]) 1207 1.1 mrg fi 1208 1.1 mrg ])# _LT_SYS_MODULE_PATH_AIX 1209 1.1 mrg 1210 1.1 mrg 1211 1.1 mrg # _LT_SHELL_INIT(ARG) 1212 1.1 mrg # ------------------- 1213 1.1 mrg m4_define([_LT_SHELL_INIT], 1214 1.1 mrg [m4_divert_text([M4SH-INIT], [$1 1215 1.1 mrg ])])# _LT_SHELL_INIT 1216 1.1 mrg 1217 1.1 mrg 1218 1.1 mrg 1219 1.1 mrg # _LT_PROG_ECHO_BACKSLASH 1220 1.1 mrg # ----------------------- 1221 1.1 mrg # Find how we can fake an echo command that does not interpret backslash. 1222 1.1 mrg # In particular, with Autoconf 2.60 or later we add some code to the start 1223 1.1 mrg # of the generated configure script that will find a shell with a builtin 1224 1.1 mrg # printf (that we can use as an echo command). 1225 1.1 mrg m4_defun([_LT_PROG_ECHO_BACKSLASH], 1226 1.1 mrg [ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' 1227 1.1 mrg ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO 1228 1.1 mrg ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO 1229 1.1 mrg 1230 1.1 mrg AC_MSG_CHECKING([how to print strings]) 1231 1.1 mrg # Test print first, because it will be a builtin if present. 1232 1.1 mrg if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ 1233 1.1 mrg test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then 1234 1.1 mrg ECHO='print -r --' 1235 1.1 mrg elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then 1236 1.1 mrg ECHO='printf %s\n' 1237 1.1 mrg else 1238 1.1 mrg # Use this function as a fallback that always works. 1239 1.1 mrg func_fallback_echo () 1240 1.1 mrg { 1241 1.1 mrg eval 'cat <<_LTECHO_EOF 1242 1.1 mrg $[]1 1243 1.1 mrg _LTECHO_EOF' 1244 1.1 mrg } 1245 1.1 mrg ECHO='func_fallback_echo' 1246 1.1 mrg fi 1247 1.1 mrg 1248 1.1 mrg # func_echo_all arg... 1249 1.1 mrg # Invoke $ECHO with all args, space-separated. 1250 1.1 mrg func_echo_all () 1251 1.1 mrg { 1252 1.1 mrg $ECHO "$*" 1253 1.1 mrg } 1254 1.1 mrg 1255 1.1 mrg case $ECHO in 1256 1.1 mrg printf*) AC_MSG_RESULT([printf]) ;; 1257 1.1 mrg print*) AC_MSG_RESULT([print -r]) ;; 1258 1.1 mrg *) AC_MSG_RESULT([cat]) ;; 1259 1.1 mrg esac 1260 1.1 mrg 1261 1.1 mrg m4_ifdef([_AS_DETECT_SUGGESTED], 1262 1.1 mrg [_AS_DETECT_SUGGESTED([ 1263 1.1 mrg test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || ( 1264 1.1 mrg ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' 1265 1.1 mrg ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO 1266 1.1 mrg ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO 1267 1.1 mrg PATH=/empty FPATH=/empty; export PATH FPATH 1268 1.1 mrg test "X`printf %s $ECHO`" = "X$ECHO" \ 1269 1.1 mrg || test "X`print -r -- $ECHO`" = "X$ECHO" )])]) 1270 1.1 mrg 1271 1.1 mrg _LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts]) 1272 1.1 mrg _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes]) 1273 1.1 mrg ])# _LT_PROG_ECHO_BACKSLASH 1274 1.1 mrg 1275 1.1 mrg 1276 1.1 mrg # _LT_WITH_SYSROOT 1277 1.1 mrg # ---------------- 1278 1.1 mrg AC_DEFUN([_LT_WITH_SYSROOT], 1279 1.1 mrg [m4_require([_LT_DECL_SED])dnl 1280 1.1 mrg AC_MSG_CHECKING([for sysroot]) 1281 1.1 mrg AC_ARG_WITH([sysroot], 1282 1.1 mrg [AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@], 1283 1.1 mrg [Search for dependent libraries within DIR (or the compiler's sysroot 1284 1.1 mrg if not specified).])], 1285 1.1 mrg [], [with_sysroot=no]) 1286 1.1 mrg 1287 1.1 mrg dnl lt_sysroot will always be passed unquoted. We quote it here 1288 1.1 mrg dnl in case the user passed a directory name. 1289 1.1 mrg lt_sysroot= 1290 1.1 mrg case $with_sysroot in #( 1291 1.1 mrg yes) 1292 1.1 mrg if test yes = "$GCC"; then 1293 1.1 mrg # Trim trailing / since we'll always append absolute paths and we want 1294 1.1 mrg # to avoid //, if only for less confusing output for the user. 1295 1.1 mrg lt_sysroot=`$CC --print-sysroot 2>/dev/null | $SED 's:/\+$::'` 1296 1.1 mrg fi 1297 1.1 mrg ;; #( 1298 1.1 mrg /*) 1299 1.1 mrg lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"` 1300 1.1 mrg ;; #( 1301 1.1 mrg no|'') 1302 1.1 mrg ;; #( 1303 1.1 mrg *) 1304 1.1 mrg AC_MSG_RESULT([$with_sysroot]) 1305 1.1 mrg AC_MSG_ERROR([The sysroot must be an absolute path.]) 1306 1.1 mrg ;; 1307 1.1 mrg esac 1308 1.1 mrg 1309 1.1 mrg AC_MSG_RESULT([${lt_sysroot:-no}]) 1310 1.1 mrg _LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl 1311 1.1 mrg [dependent libraries, and where our libraries should be installed.])]) 1312 1.1 mrg 1313 1.1 mrg # _LT_ENABLE_LOCK 1314 1.1 mrg # --------------- 1315 1.1 mrg m4_defun([_LT_ENABLE_LOCK], 1316 1.1 mrg [AC_ARG_ENABLE([libtool-lock], 1317 1.1 mrg [AS_HELP_STRING([--disable-libtool-lock], 1318 1.1 mrg [avoid locking (might break parallel builds)])]) 1319 1.1 mrg test no = "$enable_libtool_lock" || enable_libtool_lock=yes 1320 1.1 mrg 1321 1.1 mrg # Some flags need to be propagated to the compiler or linker for good 1322 1.1 mrg # libtool support. 1323 1.1 mrg case $host in 1324 1.1 mrg ia64-*-hpux*) 1325 1.1 mrg # Find out what ABI is being produced by ac_compile, and set mode 1326 1.1 mrg # options accordingly. 1327 1.1 mrg echo 'int i;' > conftest.$ac_ext 1328 1.1 mrg if AC_TRY_EVAL(ac_compile); then 1329 1.1 mrg case `$FILECMD conftest.$ac_objext` in 1330 1.1 mrg *ELF-32*) 1331 1.1 mrg HPUX_IA64_MODE=32 1332 1.1 mrg ;; 1333 1.1 mrg *ELF-64*) 1334 1.1 mrg HPUX_IA64_MODE=64 1335 1.1 mrg ;; 1336 1.1 mrg esac 1337 1.1 mrg fi 1338 1.1 mrg rm -rf conftest* 1339 1.1 mrg ;; 1340 1.1 mrg *-*-irix6*) 1341 1.1 mrg # Find out what ABI is being produced by ac_compile, and set linker 1342 1.1 mrg # options accordingly. 1343 1.1 mrg echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext 1344 1.1 mrg if AC_TRY_EVAL(ac_compile); then 1345 1.1 mrg if test yes = "$lt_cv_prog_gnu_ld"; then 1346 1.1 mrg case `$FILECMD conftest.$ac_objext` in 1347 1.1 mrg *32-bit*) 1348 1.1 mrg LD="${LD-ld} -melf32bsmip" 1349 1.1 mrg ;; 1350 1.1 mrg *N32*) 1351 1.1 mrg LD="${LD-ld} -melf32bmipn32" 1352 1.1 mrg ;; 1353 1.1 mrg *64-bit*) 1354 1.1 mrg LD="${LD-ld} -melf64bmip" 1355 1.1 mrg ;; 1356 1.1 mrg esac 1357 1.1 mrg else 1358 1.1 mrg case `$FILECMD conftest.$ac_objext` in 1359 1.1 mrg *32-bit*) 1360 1.1 mrg LD="${LD-ld} -32" 1361 1.1 mrg ;; 1362 1.1 mrg *N32*) 1363 1.1 mrg LD="${LD-ld} -n32" 1364 1.1 mrg ;; 1365 1.1 mrg *64-bit*) 1366 1.1 mrg LD="${LD-ld} -64" 1367 1.1 mrg ;; 1368 1.1 mrg esac 1369 1.1 mrg fi 1370 1.1 mrg fi 1371 1.1 mrg rm -rf conftest* 1372 1.1 mrg ;; 1373 1.1 mrg 1374 1.1 mrg mips64*-*linux*) 1375 1.1 mrg # Find out what ABI is being produced by ac_compile, and set linker 1376 1.1 mrg # options accordingly. 1377 1.1 mrg echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext 1378 1.1 mrg if AC_TRY_EVAL(ac_compile); then 1379 1.1 mrg emul=elf 1380 1.1 mrg case `$FILECMD conftest.$ac_objext` in 1381 1.1 mrg *32-bit*) 1382 1.1 mrg emul="${emul}32" 1383 1.1 mrg ;; 1384 1.1 mrg *64-bit*) 1385 1.1 mrg emul="${emul}64" 1386 1.1 mrg ;; 1387 1.1 mrg esac 1388 1.1 mrg case `$FILECMD conftest.$ac_objext` in 1389 1.1 mrg *MSB*) 1390 1.1 mrg emul="${emul}btsmip" 1391 1.1 mrg ;; 1392 1.1 mrg *LSB*) 1393 1.1 mrg emul="${emul}ltsmip" 1394 1.1 mrg ;; 1395 1.1 mrg esac 1396 1.1 mrg case `$FILECMD conftest.$ac_objext` in 1397 1.1 mrg *N32*) 1398 1.1 mrg emul="${emul}n32" 1399 1.1 mrg ;; 1400 1.1 mrg esac 1401 1.1 mrg LD="${LD-ld} -m $emul" 1402 1.1 mrg fi 1403 1.1 mrg rm -rf conftest* 1404 1.1 mrg ;; 1405 1.1 mrg 1406 1.1 mrg x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ 1407 1.1 mrg s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-gnu*) 1408 1.1 mrg # Find out what ABI is being produced by ac_compile, and set linker 1409 1.1 mrg # options accordingly. Note that the listed cases only cover the 1410 1.1 mrg # situations where additional linker options are needed (such as when 1411 1.1 mrg # doing 32-bit compilation for a host where ld defaults to 64-bit, or 1412 1.1 mrg # vice versa); the common cases where no linker options are needed do 1413 1.1 mrg # not appear in the list. 1414 1.1 mrg echo 'int i;' > conftest.$ac_ext 1415 1.1 mrg if AC_TRY_EVAL(ac_compile); then 1416 1.1 mrg case `$FILECMD conftest.o` in 1417 1.1 mrg *32-bit*) 1418 1.1 mrg case $host in 1419 1.1 mrg x86_64-*kfreebsd*-gnu) 1420 1.1 mrg LD="${LD-ld} -m elf_i386_fbsd" 1421 1.1 mrg ;; 1422 1.1 mrg x86_64-*linux*|x86_64-gnu*) 1423 1.1 mrg case `$FILECMD conftest.o` in 1424 1.1 mrg *x86-64*) 1425 1.1 mrg LD="${LD-ld} -m elf32_x86_64" 1426 1.1 mrg ;; 1427 1.1 mrg *) 1428 1.1 mrg LD="${LD-ld} -m elf_i386" 1429 1.1 mrg ;; 1430 1.1 mrg esac 1431 1.1 mrg ;; 1432 1.1 mrg powerpc64le-*linux*) 1433 1.1 mrg LD="${LD-ld} -m elf32lppclinux" 1434 1.1 mrg ;; 1435 1.1 mrg powerpc64-*linux*) 1436 1.1 mrg LD="${LD-ld} -m elf32ppclinux" 1437 1.1 mrg ;; 1438 1.1 mrg s390x-*linux*) 1439 1.1 mrg LD="${LD-ld} -m elf_s390" 1440 1.1 mrg ;; 1441 1.1 mrg sparc64-*linux*) 1442 1.1 mrg LD="${LD-ld} -m elf32_sparc" 1443 1.1 mrg ;; 1444 1.1 mrg esac 1445 1.1 mrg ;; 1446 1.1 mrg *64-bit*) 1447 1.1 mrg case $host in 1448 1.1 mrg x86_64-*kfreebsd*-gnu) 1449 1.1 mrg LD="${LD-ld} -m elf_x86_64_fbsd" 1450 1.1 mrg ;; 1451 1.1 mrg x86_64-*linux*|x86_64-gnu*) 1452 1.1 mrg LD="${LD-ld} -m elf_x86_64" 1453 1.1 mrg ;; 1454 1.1 mrg powerpcle-*linux*) 1455 1.1 mrg LD="${LD-ld} -m elf64lppc" 1456 1.1 mrg ;; 1457 1.1 mrg powerpc-*linux*) 1458 1.1 mrg LD="${LD-ld} -m elf64ppc" 1459 1.1 mrg ;; 1460 1.1 mrg s390*-*linux*|s390*-*tpf*) 1461 1.1 mrg LD="${LD-ld} -m elf64_s390" 1462 1.1 mrg ;; 1463 1.1 mrg sparc*-*linux*) 1464 1.1 mrg LD="${LD-ld} -m elf64_sparc" 1465 1.1 mrg ;; 1466 1.1 mrg esac 1467 1.1 mrg ;; 1468 1.1 mrg esac 1469 1.1 mrg fi 1470 1.1 mrg rm -rf conftest* 1471 1.1 mrg ;; 1472 1.1 mrg 1473 1.1 mrg *-*-sco3.2v5*) 1474 1.1 mrg # On SCO OpenServer 5, we need -belf to get full-featured binaries. 1475 1.1 mrg SAVE_CFLAGS=$CFLAGS 1476 1.1 mrg CFLAGS="$CFLAGS -belf" 1477 1.1 mrg AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, 1478 1.1 mrg [AC_LANG_PUSH(C) 1479 1.1 mrg AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) 1480 1.1 mrg AC_LANG_POP]) 1481 1.1 mrg if test yes != "$lt_cv_cc_needs_belf"; then 1482 1.1 mrg # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf 1483 1.1 mrg CFLAGS=$SAVE_CFLAGS 1484 1.1 mrg fi 1485 1.1 mrg ;; 1486 1.1 mrg *-*solaris*) 1487 1.1 mrg # Find out what ABI is being produced by ac_compile, and set linker 1488 1.1 mrg # options accordingly. 1489 1.1 mrg echo 'int i;' > conftest.$ac_ext 1490 1.1 mrg if AC_TRY_EVAL(ac_compile); then 1491 1.1 mrg case `$FILECMD conftest.o` in 1492 1.1 mrg *64-bit*) 1493 1.1 mrg case $lt_cv_prog_gnu_ld in 1494 1.1 mrg yes*) 1495 1.1 mrg case $host in 1496 1.1 mrg i?86-*-solaris*|x86_64-*-solaris*) 1497 1.1 mrg LD="${LD-ld} -m elf_x86_64" 1498 1.1 mrg ;; 1499 1.1 mrg sparc*-*-solaris*) 1500 1.1 mrg LD="${LD-ld} -m elf64_sparc" 1501 1.1 mrg ;; 1502 1.1 mrg esac 1503 1.1 mrg # GNU ld 2.21 introduced _sol2 emulations. Use them if available. 1504 1.1 mrg if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then 1505 1.1 mrg LD=${LD-ld}_sol2 1506 1.1 mrg fi 1507 1.1 mrg ;; 1508 1.1 mrg *) 1509 1.1 mrg if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then 1510 1.1 mrg LD="${LD-ld} -64" 1511 1.1 mrg fi 1512 1.1 mrg ;; 1513 1.1 mrg esac 1514 1.1 mrg ;; 1515 1.1 mrg esac 1516 1.1 mrg fi 1517 1.1 mrg rm -rf conftest* 1518 1.1 mrg ;; 1519 1.1 mrg esac 1520 1.1 mrg 1521 1.1 mrg need_locks=$enable_libtool_lock 1522 1.1 mrg ])# _LT_ENABLE_LOCK 1523 1.1 mrg 1524 1.1 mrg 1525 1.1 mrg # _LT_PROG_AR 1526 1.1 mrg # ----------- 1527 1.1 mrg m4_defun([_LT_PROG_AR], 1528 1.1 mrg [AC_CHECK_TOOLS(AR, [ar], false) 1529 1.1 mrg : ${AR=ar} 1530 1.1 mrg _LT_DECL([], [AR], [1], [The archiver]) 1531 1.1 mrg 1532 1.1 mrg # Use ARFLAGS variable as AR's operation code to sync the variable naming with 1533 1.1 mrg # Automake. If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have 1534 1.1 mrg # higher priority because that's what people were doing historically (setting 1535 1.1 mrg # ARFLAGS for automake and AR_FLAGS for libtool). FIXME: Make the AR_FLAGS 1536 1.1 mrg # variable obsoleted/removed. 1537 1.1 mrg 1538 1.1 mrg test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr} 1539 1.1 mrg lt_ar_flags=$AR_FLAGS 1540 1.1 mrg _LT_DECL([], [lt_ar_flags], [0], [Flags to create an archive (by configure)]) 1541 1.1 mrg 1542 1.1 mrg # Make AR_FLAGS overridable by 'make ARFLAGS='. Don't try to run-time override 1543 1.1 mrg # by AR_FLAGS because that was never working and AR_FLAGS is about to die. 1544 1.1 mrg _LT_DECL([], [AR_FLAGS], [\@S|@{ARFLAGS-"\@S|@lt_ar_flags"}], 1545 1.1 mrg [Flags to create an archive]) 1546 1.1 mrg 1547 1.1 mrg AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file], 1548 1.1 mrg [lt_cv_ar_at_file=no 1549 1.1 mrg AC_COMPILE_IFELSE([AC_LANG_PROGRAM], 1550 1.1 mrg [echo conftest.$ac_objext > conftest.lst 1551 1.1 mrg lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD' 1552 1.1 mrg AC_TRY_EVAL([lt_ar_try]) 1553 1.1 mrg if test 0 -eq "$ac_status"; then 1554 1.1 mrg # Ensure the archiver fails upon bogus file names. 1555 1.1 mrg rm -f conftest.$ac_objext libconftest.a 1556 1.1 mrg AC_TRY_EVAL([lt_ar_try]) 1557 1.1 mrg if test 0 -ne "$ac_status"; then 1558 1.1 mrg lt_cv_ar_at_file=@ 1559 1.1 mrg fi 1560 1.1 mrg fi 1561 1.1 mrg rm -f conftest.* libconftest.a 1562 1.1 mrg ]) 1563 1.1 mrg ]) 1564 1.1 mrg 1565 1.1 mrg if test no = "$lt_cv_ar_at_file"; then 1566 1.1 mrg archiver_list_spec= 1567 1.1 mrg else 1568 1.1 mrg archiver_list_spec=$lt_cv_ar_at_file 1569 1.1 mrg fi 1570 1.1 mrg _LT_DECL([], [archiver_list_spec], [1], 1571 1.1 mrg [How to feed a file listing to the archiver]) 1572 1.1 mrg ])# _LT_PROG_AR 1573 1.1 mrg 1574 1.1 mrg 1575 1.1 mrg # _LT_CMD_OLD_ARCHIVE 1576 1.1 mrg # ------------------- 1577 1.1 mrg m4_defun([_LT_CMD_OLD_ARCHIVE], 1578 1.1 mrg [_LT_PROG_AR 1579 1.1 mrg 1580 1.1 mrg AC_CHECK_TOOL(STRIP, strip, :) 1581 1.1 mrg test -z "$STRIP" && STRIP=: 1582 1.1 mrg _LT_DECL([], [STRIP], [1], [A symbol stripping program]) 1583 1.1 mrg 1584 1.1 mrg AC_REQUIRE([AC_PROG_RANLIB]) 1585 1.1 mrg test -z "$RANLIB" && RANLIB=: 1586 1.1 mrg _LT_DECL([], [RANLIB], [1], 1587 1.1 mrg [Commands used to install an old-style archive]) 1588 1.1 mrg 1589 1.1 mrg # Determine commands to create old-style static archives. 1590 1.1 mrg old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' 1591 1.1 mrg old_postinstall_cmds='chmod 644 $oldlib' 1592 1.1 mrg old_postuninstall_cmds= 1593 1.1 mrg 1594 1.1 mrg if test -n "$RANLIB"; then 1595 1.1 mrg old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" 1596 1.1 mrg old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" 1597 1.1 mrg fi 1598 1.1 mrg 1599 1.1 mrg case $host_os in 1600 1.1 mrg darwin*) 1601 1.1 mrg lock_old_archive_extraction=yes ;; 1602 1.1 mrg *) 1603 1.1 mrg lock_old_archive_extraction=no ;; 1604 1.1 mrg esac 1605 1.1 mrg _LT_DECL([], [old_postinstall_cmds], [2]) 1606 1.1 mrg _LT_DECL([], [old_postuninstall_cmds], [2]) 1607 1.1 mrg _LT_TAGDECL([], [old_archive_cmds], [2], 1608 1.1 mrg [Commands used to build an old-style archive]) 1609 1.1 mrg _LT_DECL([], [lock_old_archive_extraction], [0], 1610 1.1 mrg [Whether to use a lock for old archive extraction]) 1611 1.1 mrg ])# _LT_CMD_OLD_ARCHIVE 1612 1.1 mrg 1613 1.1 mrg 1614 1.1 mrg # _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, 1615 1.1 mrg # [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) 1616 1.1 mrg # ---------------------------------------------------------------- 1617 1.1 mrg # Check whether the given compiler option works 1618 1.1 mrg AC_DEFUN([_LT_COMPILER_OPTION], 1619 1.1 mrg [m4_require([_LT_FILEUTILS_DEFAULTS])dnl 1620 1.1 mrg m4_require([_LT_DECL_SED])dnl 1621 1.1 mrg AC_CACHE_CHECK([$1], [$2], 1622 1.1 mrg [$2=no 1623 1.1 mrg m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) 1624 1.1 mrg echo "$lt_simple_compile_test_code" > conftest.$ac_ext 1625 1.1 mrg lt_compiler_flag="$3" ## exclude from sc_useless_quotes_in_assignment 1626 1.1 mrg # Insert the option either (1) after the last *FLAGS variable, or 1627 1.1 mrg # (2) before a word containing "conftest.", or (3) at the end. 1628 1.1 mrg # Note that $ac_compile itself does not contain backslashes and begins 1629 1.1 mrg # with a dollar sign (not a hyphen), so the echo should work correctly. 1630 1.1 mrg # The option is referenced via a variable to avoid confusing sed. 1631 1.1 mrg lt_compile=`echo "$ac_compile" | $SED \ 1632 1.1 mrg -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ 1633 1.1 mrg -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ 1634 1.1 mrg -e 's:$: $lt_compiler_flag:'` 1635 1.1 mrg (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) 1636 1.1 mrg (eval "$lt_compile" 2>conftest.err) 1637 1.1 mrg ac_status=$? 1638 1.1 mrg cat conftest.err >&AS_MESSAGE_LOG_FD 1639 1.1 mrg echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD 1640 1.1 mrg if (exit $ac_status) && test -s "$ac_outfile"; then 1641 1.1 mrg # The compiler can only warn and ignore the option if not recognized 1642 1.1 mrg # So say no if there are warnings other than the usual output. 1643 1.1 mrg $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp 1644 1.1 mrg $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 1645 1.1 mrg if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then 1646 1.1 mrg $2=yes 1647 1.1 mrg fi 1648 1.1 mrg fi 1649 1.1 mrg $RM conftest* 1650 1.1 mrg ]) 1651 1.1 mrg 1652 1.1 mrg if test yes = "[$]$2"; then 1653 1.1 mrg m4_if([$5], , :, [$5]) 1654 1.1 mrg else 1655 1.1 mrg m4_if([$6], , :, [$6]) 1656 1.1 mrg fi 1657 1.1 mrg ])# _LT_COMPILER_OPTION 1658 1.1 mrg 1659 1.1 mrg # Old name: 1660 1.1 mrg AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION]) 1661 1.1 mrg dnl aclocal-1.4 backwards compatibility: 1662 1.1 mrg dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], []) 1663 1.1 mrg 1664 1.1 mrg 1665 1.1 mrg # _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, 1666 1.1 mrg # [ACTION-SUCCESS], [ACTION-FAILURE]) 1667 1.1 mrg # ---------------------------------------------------- 1668 1.1 mrg # Check whether the given linker option works 1669 1.1 mrg AC_DEFUN([_LT_LINKER_OPTION], 1670 1.1 mrg [m4_require([_LT_FILEUTILS_DEFAULTS])dnl 1671 1.1 mrg m4_require([_LT_DECL_SED])dnl 1672 1.1 mrg AC_CACHE_CHECK([$1], [$2], 1673 1.1 mrg [$2=no 1674 1.1 mrg save_LDFLAGS=$LDFLAGS 1675 1.1 mrg LDFLAGS="$LDFLAGS $3" 1676 1.1 mrg echo "$lt_simple_link_test_code" > conftest.$ac_ext 1677 1.1 mrg if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then 1678 1.1 mrg # The linker can only warn and ignore the option if not recognized 1679 1.1 mrg # So say no if there are warnings 1680 1.1 mrg if test -s conftest.err; then 1681 1.1 mrg # Append any errors to the config.log. 1682 1.1 mrg cat conftest.err 1>&AS_MESSAGE_LOG_FD 1683 1.1 mrg $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp 1684 1.1 mrg $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 1685 1.1 mrg if diff conftest.exp conftest.er2 >/dev/null; then 1686 1.1 mrg $2=yes 1687 1.1 mrg fi 1688 1.1 mrg else 1689 1.1 mrg $2=yes 1690 1.1 mrg fi 1691 1.1 mrg fi 1692 1.1 mrg $RM -r conftest* 1693 1.1 mrg LDFLAGS=$save_LDFLAGS 1694 1.1 mrg ]) 1695 1.1 mrg 1696 1.1 mrg if test yes = "[$]$2"; then 1697 1.1 mrg m4_if([$4], , :, [$4]) 1698 1.1 mrg else 1699 1.1 mrg m4_if([$5], , :, [$5]) 1700 1.1 mrg fi 1701 1.1 mrg ])# _LT_LINKER_OPTION 1702 1.1 mrg 1703 1.1 mrg # Old name: 1704 1.1 mrg AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION]) 1705 1.1 mrg dnl aclocal-1.4 backwards compatibility: 1706 1.1 mrg dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], []) 1707 1.1 mrg 1708 1.1 mrg 1709 1.1 mrg # LT_CMD_MAX_LEN 1710 1.1 mrg #--------------- 1711 1.1 mrg AC_DEFUN([LT_CMD_MAX_LEN], 1712 1.1 mrg [AC_REQUIRE([AC_CANONICAL_HOST])dnl 1713 1.1 mrg # find the maximum length of command line arguments 1714 1.1 mrg AC_MSG_CHECKING([the maximum length of command line arguments]) 1715 1.1 mrg AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl 1716 1.1 mrg i=0 1717 1.1 mrg teststring=ABCD 1718 1.1 mrg 1719 1.1 mrg case $build_os in 1720 1.1 mrg msdosdjgpp*) 1721 1.1 mrg # On DJGPP, this test can blow up pretty badly due to problems in libc 1722 1.1 mrg # (any single argument exceeding 2000 bytes causes a buffer overrun 1723 1.1 mrg # during glob expansion). Even if it were fixed, the result of this 1724 1.1 mrg # check would be larger than it should be. 1725 1.1 mrg lt_cv_sys_max_cmd_len=12288; # 12K is about right 1726 1.1 mrg ;; 1727 1.1 mrg 1728 1.1 mrg gnu* | ironclad*) 1729 1.1 mrg # Under GNU Hurd and Ironclad, this test is not required because there 1730 1.1 mrg # is no limit to the length of command line arguments. 1731 1.1 mrg # Libtool will interpret -1 as no limit whatsoever 1732 1.1 mrg lt_cv_sys_max_cmd_len=-1; 1733 1.1 mrg ;; 1734 1.1 mrg 1735 1.1 mrg cygwin* | mingw* | windows* | cegcc*) 1736 1.1 mrg # On Win9x/ME, this test blows up -- it succeeds, but takes 1737 1.1 mrg # about 5 minutes as the teststring grows exponentially. 1738 1.1 mrg # Worse, since 9x/ME are not pre-emptively multitasking, 1739 1.1 mrg # you end up with a "frozen" computer, even though with patience 1740 1.1 mrg # the test eventually succeeds (with a max line length of 256k). 1741 1.1 mrg # Instead, let's just punt: use the minimum linelength reported by 1742 1.1 mrg # all of the supported platforms: 8192 (on NT/2K/XP). 1743 1.1 mrg lt_cv_sys_max_cmd_len=8192; 1744 1.1 mrg ;; 1745 1.1 mrg 1746 1.1 mrg mint*) 1747 1.1 mrg # On MiNT this can take a long time and run out of memory. 1748 1.1 mrg lt_cv_sys_max_cmd_len=8192; 1749 1.1 mrg ;; 1750 1.1 mrg 1751 1.1 mrg amigaos*) 1752 1.1 mrg # On AmigaOS with pdksh, this test takes hours, literally. 1753 1.1 mrg # So we just punt and use a minimum line length of 8192. 1754 1.1 mrg lt_cv_sys_max_cmd_len=8192; 1755 1.1 mrg ;; 1756 1.1 mrg 1757 1.1 mrg darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*) 1758 1.1 mrg # This has been around since 386BSD, at least. Likely further. 1759 1.1 mrg if test -x /sbin/sysctl; then 1760 1.1 mrg lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` 1761 1.1 mrg elif test -x /usr/sbin/sysctl; then 1762 1.1 mrg lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` 1763 1.1 mrg else 1764 1.1 mrg lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs 1765 1.1 mrg fi 1766 1.1 mrg # And add a safety zone 1767 1.1 mrg lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` 1768 1.1 mrg lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` 1769 1.1 mrg ;; 1770 1.1 mrg 1771 1.1 mrg interix*) 1772 1.1 mrg # We know the value 262144 and hardcode it with a safety zone (like BSD) 1773 1.1 mrg lt_cv_sys_max_cmd_len=196608 1774 1.1 mrg ;; 1775 1.1 mrg 1776 1.1 mrg os2*) 1777 1.1 mrg # The test takes a long time on OS/2. 1778 1.1 mrg lt_cv_sys_max_cmd_len=8192 1779 1.1 mrg ;; 1780 1.1 mrg 1781 1.1 mrg osf*) 1782 1.1 mrg # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure 1783 1.1 mrg # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not 1784 1.1 mrg # nice to cause kernel panics so lets avoid the loop below. 1785 1.1 mrg # First set a reasonable default. 1786 1.1 mrg lt_cv_sys_max_cmd_len=16384 1787 1.1 mrg # 1788 1.1 mrg if test -x /sbin/sysconfig; then 1789 1.1 mrg case `/sbin/sysconfig -q proc exec_disable_arg_limit` in 1790 1.1 mrg *1*) lt_cv_sys_max_cmd_len=-1 ;; 1791 1.1 mrg esac 1792 1.1 mrg fi 1793 1.1 mrg ;; 1794 1.1 mrg sco3.2v5*) 1795 1.1 mrg lt_cv_sys_max_cmd_len=102400 1796 1.1 mrg ;; 1797 1.1 mrg sysv5* | sco5v6* | sysv4.2uw2*) 1798 1.1 mrg kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` 1799 1.1 mrg if test -n "$kargmax"; then 1800 1.1 mrg lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[[ ]]//'` 1801 1.1 mrg else 1802 1.1 mrg lt_cv_sys_max_cmd_len=32768 1803 1.1 mrg fi 1804 1.1 mrg ;; 1805 1.1 mrg *) 1806 1.1 mrg lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` 1807 1.1 mrg if test -n "$lt_cv_sys_max_cmd_len" && \ 1808 1.1 mrg test undefined != "$lt_cv_sys_max_cmd_len"; then 1809 1.1 mrg lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` 1810 1.1 mrg lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` 1811 1.1 mrg else 1812 1.1 mrg # Make teststring a little bigger before we do anything with it. 1813 1.1 mrg # a 1K string should be a reasonable start. 1814 1.1 mrg for i in 1 2 3 4 5 6 7 8; do 1815 1.1 mrg teststring=$teststring$teststring 1816 1.1 mrg done 1817 1.1 mrg SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} 1818 1.1 mrg # If test is not a shell built-in, we'll probably end up computing a 1819 1.1 mrg # maximum length that is only half of the actual maximum length, but 1820 1.1 mrg # we can't tell. 1821 1.1 mrg while { test X`env echo "$teststring$teststring" 2>/dev/null` \ 1822 1.1 mrg = "X$teststring$teststring"; } >/dev/null 2>&1 && 1823 1.1 mrg test 17 != "$i" # 1/2 MB should be enough 1824 1.1 mrg do 1825 1.1 mrg i=`expr $i + 1` 1826 1.1 mrg teststring=$teststring$teststring 1827 1.1 mrg done 1828 1.1 mrg # Only check the string length outside the loop. 1829 1.1 mrg lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` 1830 1.1 mrg teststring= 1831 1.1 mrg # Add a significant safety factor because C++ compilers can tack on 1832 1.1 mrg # massive amounts of additional arguments before passing them to the 1833 1.1 mrg # linker. It appears as though 1/2 is a usable value. 1834 1.1 mrg lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` 1835 1.1 mrg fi 1836 1.1 mrg ;; 1837 1.1 mrg esac 1838 1.1 mrg ]) 1839 1.1 mrg if test -n "$lt_cv_sys_max_cmd_len"; then 1840 1.1 mrg AC_MSG_RESULT($lt_cv_sys_max_cmd_len) 1841 1.1 mrg else 1842 1.1 mrg AC_MSG_RESULT(none) 1843 1.1 mrg fi 1844 1.1 mrg max_cmd_len=$lt_cv_sys_max_cmd_len 1845 1.1 mrg _LT_DECL([], [max_cmd_len], [0], 1846 1.1 mrg [What is the maximum length of a command?]) 1847 1.1 mrg ])# LT_CMD_MAX_LEN 1848 1.1 mrg 1849 1.1 mrg # Old name: 1850 1.1 mrg AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN]) 1851 1.1 mrg dnl aclocal-1.4 backwards compatibility: 1852 1.1 mrg dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], []) 1853 1.1 mrg 1854 1.1 mrg 1855 1.1 mrg # _LT_HEADER_DLFCN 1856 1.1 mrg # ---------------- 1857 1.1 mrg m4_defun([_LT_HEADER_DLFCN], 1858 1.1 mrg [AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl 1859 1.1 mrg ])# _LT_HEADER_DLFCN 1860 1.1 mrg 1861 1.1 mrg 1862 1.1 mrg # _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, 1863 1.1 mrg # ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) 1864 1.1 mrg # ---------------------------------------------------------------- 1865 1.1 mrg m4_defun([_LT_TRY_DLOPEN_SELF], 1866 1.1 mrg [m4_require([_LT_HEADER_DLFCN])dnl 1867 1.1 mrg if test yes = "$cross_compiling"; then : 1868 1.1 mrg [$4] 1869 1.1 mrg else 1870 1.1 mrg lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 1871 1.1 mrg lt_status=$lt_dlunknown 1872 1.1 mrg cat > conftest.$ac_ext <<_LT_EOF 1873 1.1 mrg [#line $LINENO "configure" 1874 1.1 mrg #include "confdefs.h" 1875 1.1 mrg 1876 1.1 mrg #if HAVE_DLFCN_H 1877 1.1 mrg #include <dlfcn.h> 1878 1.1 mrg #endif 1879 1.1 mrg 1880 1.1 mrg #include <stdio.h> 1881 1.1 mrg 1882 1.1 mrg #ifdef RTLD_GLOBAL 1883 1.1 mrg # define LT_DLGLOBAL RTLD_GLOBAL 1884 1.1 mrg #else 1885 1.1 mrg # ifdef DL_GLOBAL 1886 1.1 mrg # define LT_DLGLOBAL DL_GLOBAL 1887 1.1 mrg # else 1888 1.1 mrg # define LT_DLGLOBAL 0 1889 1.1 mrg # endif 1890 1.1 mrg #endif 1891 1.1 mrg 1892 1.1 mrg /* We may have to define LT_DLLAZY_OR_NOW in the command line if we 1893 1.1 mrg find out it does not work in some platform. */ 1894 1.1 mrg #ifndef LT_DLLAZY_OR_NOW 1895 1.1 mrg # ifdef RTLD_LAZY 1896 1.1 mrg # define LT_DLLAZY_OR_NOW RTLD_LAZY 1897 1.1 mrg # else 1898 1.1 mrg # ifdef DL_LAZY 1899 1.1 mrg # define LT_DLLAZY_OR_NOW DL_LAZY 1900 1.1 mrg # else 1901 1.1 mrg # ifdef RTLD_NOW 1902 1.1 mrg # define LT_DLLAZY_OR_NOW RTLD_NOW 1903 1.1 mrg # else 1904 1.1 mrg # ifdef DL_NOW 1905 1.1 mrg # define LT_DLLAZY_OR_NOW DL_NOW 1906 1.1 mrg # else 1907 1.1 mrg # define LT_DLLAZY_OR_NOW 0 1908 1.1 mrg # endif 1909 1.1 mrg # endif 1910 1.1 mrg # endif 1911 1.1 mrg # endif 1912 1.1 mrg #endif 1913 1.1 mrg 1914 1.1 mrg /* When -fvisibility=hidden is used, assume the code has been annotated 1915 1.1 mrg correspondingly for the symbols needed. */ 1916 1.1 mrg #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) 1917 1.1 mrg int fnord (void) __attribute__((visibility("default"))); 1918 1.1 mrg #endif 1919 1.1 mrg 1920 1.1 mrg int fnord (void) { return 42; } 1921 1.1 mrg int main (void) 1922 1.1 mrg { 1923 1.1 mrg void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); 1924 1.1 mrg int status = $lt_dlunknown; 1925 1.1 mrg 1926 1.1 mrg if (self) 1927 1.1 mrg { 1928 1.1 mrg if (dlsym (self,"fnord")) status = $lt_dlno_uscore; 1929 1.1 mrg else 1930 1.1 mrg { 1931 1.1 mrg if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; 1932 1.1 mrg else puts (dlerror ()); 1933 1.1 mrg } 1934 1.1 mrg /* dlclose (self); */ 1935 1.1 mrg } 1936 1.1 mrg else 1937 1.1 mrg puts (dlerror ()); 1938 1.1 mrg 1939 1.1 mrg return status; 1940 1.1 mrg }] 1941 1.1 mrg _LT_EOF 1942 1.1 mrg if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then 1943 1.1 mrg (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null 1944 1.1 mrg lt_status=$? 1945 1.1 mrg case x$lt_status in 1946 1.1 mrg x$lt_dlno_uscore) $1 ;; 1947 1.1 mrg x$lt_dlneed_uscore) $2 ;; 1948 1.1 mrg x$lt_dlunknown|x*) $3 ;; 1949 1.1 mrg esac 1950 1.1 mrg else : 1951 1.1 mrg # compilation failed 1952 1.1 mrg $3 1953 1.1 mrg fi 1954 1.1 mrg fi 1955 1.1 mrg rm -fr conftest* 1956 1.1 mrg ])# _LT_TRY_DLOPEN_SELF 1957 1.1 mrg 1958 1.1 mrg 1959 1.1 mrg # LT_SYS_DLOPEN_SELF 1960 1.1 mrg # ------------------ 1961 1.1 mrg AC_DEFUN([LT_SYS_DLOPEN_SELF], 1962 1.1 mrg [m4_require([_LT_HEADER_DLFCN])dnl 1963 1.1 mrg if test yes != "$enable_dlopen"; then 1964 1.1 mrg enable_dlopen=unknown 1965 1.1 mrg enable_dlopen_self=unknown 1966 1.1 mrg enable_dlopen_self_static=unknown 1967 1.1 mrg else 1968 1.1 mrg lt_cv_dlopen=no 1969 1.1 mrg lt_cv_dlopen_libs= 1970 1.1 mrg 1971 1.1 mrg case $host_os in 1972 1.1 mrg beos*) 1973 1.1 mrg lt_cv_dlopen=load_add_on 1974 1.1 mrg lt_cv_dlopen_libs= 1975 1.1 mrg lt_cv_dlopen_self=yes 1976 1.1 mrg ;; 1977 1.1 mrg 1978 1.1 mrg mingw* | windows* | pw32* | cegcc*) 1979 1.1 mrg lt_cv_dlopen=LoadLibrary 1980 1.1 mrg lt_cv_dlopen_libs= 1981 1.1 mrg ;; 1982 1.1 mrg 1983 1.1 mrg cygwin*) 1984 1.1 mrg lt_cv_dlopen=dlopen 1985 1.1 mrg lt_cv_dlopen_libs= 1986 1.1 mrg ;; 1987 1.1 mrg 1988 1.1 mrg darwin*) 1989 1.1 mrg # if libdl is installed we need to link against it 1990 1.1 mrg AC_CHECK_LIB([dl], [dlopen], 1991 1.1 mrg [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[ 1992 1.1 mrg lt_cv_dlopen=dyld 1993 1.1 mrg lt_cv_dlopen_libs= 1994 1.1 mrg lt_cv_dlopen_self=yes 1995 1.1 mrg ]) 1996 1.1 mrg ;; 1997 1.1 mrg 1998 1.1 mrg tpf*) 1999 1.1 mrg # Don't try to run any link tests for TPF. We know it's impossible 2000 1.1 mrg # because TPF is a cross-compiler, and we know how we open DSOs. 2001 1.1 mrg lt_cv_dlopen=dlopen 2002 1.1 mrg lt_cv_dlopen_libs= 2003 1.1 mrg lt_cv_dlopen_self=no 2004 1.1 mrg ;; 2005 1.1 mrg 2006 1.1 mrg *) 2007 1.1 mrg AC_CHECK_FUNC([shl_load], 2008 1.1 mrg [lt_cv_dlopen=shl_load], 2009 1.1 mrg [AC_CHECK_LIB([dld], [shl_load], 2010 1.1 mrg [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld], 2011 1.1 mrg [AC_CHECK_FUNC([dlopen], 2012 1.1 mrg [lt_cv_dlopen=dlopen], 2013 1.1 mrg [AC_CHECK_LIB([dl], [dlopen], 2014 1.1 mrg [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl], 2015 1.1 mrg [AC_CHECK_LIB([svld], [dlopen], 2016 1.1 mrg [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld], 2017 1.1 mrg [AC_CHECK_LIB([dld], [dld_link], 2018 1.1 mrg [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld]) 2019 1.1 mrg ]) 2020 1.1 mrg ]) 2021 1.1 mrg ]) 2022 1.1 mrg ]) 2023 1.1 mrg ]) 2024 1.1 mrg ;; 2025 1.1 mrg esac 2026 1.1 mrg 2027 1.1 mrg if test no = "$lt_cv_dlopen"; then 2028 1.1 mrg enable_dlopen=no 2029 1.1 mrg else 2030 1.1 mrg enable_dlopen=yes 2031 1.1 mrg fi 2032 1.1 mrg 2033 1.1 mrg case $lt_cv_dlopen in 2034 1.1 mrg dlopen) 2035 1.1 mrg save_CPPFLAGS=$CPPFLAGS 2036 1.1 mrg test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" 2037 1.1 mrg 2038 1.1 mrg save_LDFLAGS=$LDFLAGS 2039 1.1 mrg wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" 2040 1.1 mrg 2041 1.1 mrg save_LIBS=$LIBS 2042 1.1 mrg LIBS="$lt_cv_dlopen_libs $LIBS" 2043 1.1 mrg 2044 1.1 mrg AC_CACHE_CHECK([whether a program can dlopen itself], 2045 1.1 mrg lt_cv_dlopen_self, [dnl 2046 1.1 mrg _LT_TRY_DLOPEN_SELF( 2047 1.1 mrg lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, 2048 1.1 mrg lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) 2049 1.1 mrg ]) 2050 1.1 mrg 2051 1.1 mrg if test yes = "$lt_cv_dlopen_self"; then 2052 1.1 mrg wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" 2053 1.1 mrg AC_CACHE_CHECK([whether a statically linked program can dlopen itself], 2054 1.1 mrg lt_cv_dlopen_self_static, [dnl 2055 1.1 mrg _LT_TRY_DLOPEN_SELF( 2056 1.1 mrg lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, 2057 1.1 mrg lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) 2058 1.1 mrg ]) 2059 1.1 mrg fi 2060 1.1 mrg 2061 1.1 mrg CPPFLAGS=$save_CPPFLAGS 2062 1.1 mrg LDFLAGS=$save_LDFLAGS 2063 1.1 mrg LIBS=$save_LIBS 2064 1.1 mrg ;; 2065 1.1 mrg esac 2066 1.1 mrg 2067 1.1 mrg case $lt_cv_dlopen_self in 2068 1.1 mrg yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; 2069 1.1 mrg *) enable_dlopen_self=unknown ;; 2070 1.1 mrg esac 2071 1.1 mrg 2072 1.1 mrg case $lt_cv_dlopen_self_static in 2073 1.1 mrg yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; 2074 1.1 mrg *) enable_dlopen_self_static=unknown ;; 2075 1.1 mrg esac 2076 1.1 mrg fi 2077 1.1 mrg _LT_DECL([dlopen_support], [enable_dlopen], [0], 2078 1.1 mrg [Whether dlopen is supported]) 2079 1.1 mrg _LT_DECL([dlopen_self], [enable_dlopen_self], [0], 2080 1.1 mrg [Whether dlopen of programs is supported]) 2081 1.1 mrg _LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0], 2082 1.1 mrg [Whether dlopen of statically linked programs is supported]) 2083 1.1 mrg ])# LT_SYS_DLOPEN_SELF 2084 1.1 mrg 2085 1.1 mrg # Old name: 2086 1.1 mrg AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF]) 2087 1.1 mrg dnl aclocal-1.4 backwards compatibility: 2088 1.1 mrg dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], []) 2089 1.1 mrg 2090 1.1 mrg 2091 1.1 mrg # _LT_COMPILER_C_O([TAGNAME]) 2092 1.1 mrg # --------------------------- 2093 1.1 mrg # Check to see if options -c and -o are simultaneously supported by compiler. 2094 1.1 mrg # This macro does not hard code the compiler like AC_PROG_CC_C_O. 2095 1.1 mrg m4_defun([_LT_COMPILER_C_O], 2096 1.1 mrg [m4_require([_LT_DECL_SED])dnl 2097 1.1 mrg m4_require([_LT_FILEUTILS_DEFAULTS])dnl 2098 1.1 mrg m4_require([_LT_TAG_COMPILER])dnl 2099 1.1 mrg AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], 2100 1.1 mrg [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)], 2101 1.1 mrg [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no 2102 1.1 mrg $RM -r conftest 2>/dev/null 2103 1.1 mrg mkdir conftest 2104 1.1 mrg cd conftest 2105 1.1 mrg mkdir out 2106 1.1 mrg echo "$lt_simple_compile_test_code" > conftest.$ac_ext 2107 1.1 mrg 2108 1.1 mrg lt_compiler_flag="-o out/conftest2.$ac_objext" 2109 1.1 mrg # Insert the option either (1) after the last *FLAGS variable, or 2110 1.1 mrg # (2) before a word containing "conftest.", or (3) at the end. 2111 1.1 mrg # Note that $ac_compile itself does not contain backslashes and begins 2112 1.1 mrg # with a dollar sign (not a hyphen), so the echo should work correctly. 2113 1.1 mrg lt_compile=`echo "$ac_compile" | $SED \ 2114 1.1 mrg -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ 2115 1.1 mrg -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ 2116 1.1 mrg -e 's:$: $lt_compiler_flag:'` 2117 1.1 mrg (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) 2118 1.1 mrg (eval "$lt_compile" 2>out/conftest.err) 2119 1.1 mrg ac_status=$? 2120 1.1 mrg cat out/conftest.err >&AS_MESSAGE_LOG_FD 2121 1.1 mrg echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD 2122 1.1 mrg if (exit $ac_status) && test -s out/conftest2.$ac_objext 2123 1.1 mrg then 2124 1.1 mrg # The compiler can only warn and ignore the option if not recognized 2125 1.1 mrg # So say no if there are warnings 2126 1.1 mrg $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp 2127 1.1 mrg $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 2128 1.1 mrg if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then 2129 1.1 mrg _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes 2130 1.1 mrg fi 2131 1.1 mrg fi 2132 1.1 mrg chmod u+w . 2>&AS_MESSAGE_LOG_FD 2133 1.1 mrg $RM conftest* 2134 1.1 mrg # SGI C++ compiler will create directory out/ii_files/ for 2135 1.1 mrg # template instantiation 2136 1.1 mrg test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files 2137 1.1 mrg $RM out/* && rmdir out 2138 1.1 mrg cd .. 2139 1.1 mrg $RM -r conftest 2140 1.1 mrg $RM conftest* 2141 1.1 mrg ]) 2142 1.1 mrg _LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1], 2143 1.1 mrg [Does compiler simultaneously support -c and -o options?]) 2144 1.1 mrg ])# _LT_COMPILER_C_O 2145 1.1 mrg 2146 1.1 mrg 2147 1.1 mrg # _LT_COMPILER_FILE_LOCKS([TAGNAME]) 2148 1.1 mrg # ---------------------------------- 2149 1.1 mrg # Check to see if we can do hard links to lock some files if needed 2150 1.1 mrg m4_defun([_LT_COMPILER_FILE_LOCKS], 2151 1.1 mrg [m4_require([_LT_ENABLE_LOCK])dnl 2152 1.1 mrg m4_require([_LT_FILEUTILS_DEFAULTS])dnl 2153 1.1 mrg _LT_COMPILER_C_O([$1]) 2154 1.1 mrg 2155 1.1 mrg hard_links=nottested 2156 1.1 mrg if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then 2157 1.1 mrg # do not overwrite the value of need_locks provided by the user 2158 1.1 mrg AC_MSG_CHECKING([if we can lock with hard links]) 2159 1.1 mrg hard_links=yes 2160 1.1 mrg $RM conftest* 2161 1.1 mrg ln conftest.a conftest.b 2>/dev/null && hard_links=no 2162 1.1 mrg touch conftest.a 2163 1.1 mrg ln conftest.a conftest.b 2>&5 || hard_links=no 2164 1.1 mrg ln conftest.a conftest.b 2>/dev/null && hard_links=no 2165 1.1 mrg AC_MSG_RESULT([$hard_links]) 2166 1.1 mrg if test no = "$hard_links"; then 2167 1.1 mrg AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe]) 2168 1.1 mrg need_locks=warn 2169 1.1 mrg fi 2170 1.1 mrg else 2171 1.1 mrg need_locks=no 2172 1.1 mrg fi 2173 1.1 mrg _LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?]) 2174 1.1 mrg ])# _LT_COMPILER_FILE_LOCKS 2175 1.1 mrg 2176 1.1 mrg 2177 1.1 mrg # _LT_CHECK_OBJDIR 2178 1.1 mrg # ---------------- 2179 1.1 mrg m4_defun([_LT_CHECK_OBJDIR], 2180 1.1 mrg [AC_CACHE_CHECK([for objdir], [lt_cv_objdir], 2181 1.1 mrg [rm -f .libs 2>/dev/null 2182 1.1 mrg mkdir .libs 2>/dev/null 2183 1.1 mrg if test -d .libs; then 2184 1.1 mrg lt_cv_objdir=.libs 2185 1.1 mrg else 2186 1.1 mrg # MS-DOS does not allow filenames that begin with a dot. 2187 1.1 mrg lt_cv_objdir=_libs 2188 1.1 mrg fi 2189 1.1 mrg rmdir .libs 2>/dev/null]) 2190 1.1 mrg objdir=$lt_cv_objdir 2191 1.1 mrg _LT_DECL([], [objdir], [0], 2192 1.1 mrg [The name of the directory that contains temporary libtool files])dnl 2193 1.1 mrg m4_pattern_allow([LT_OBJDIR])dnl 2194 1.1 mrg AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/", 2195 1.1 mrg [Define to the sub-directory where libtool stores uninstalled libraries.]) 2196 1.1 mrg ])# _LT_CHECK_OBJDIR 2197 1.1 mrg 2198 1.1 mrg 2199 1.1 mrg # _LT_LINKER_HARDCODE_LIBPATH([TAGNAME]) 2200 1.1 mrg # -------------------------------------- 2201 1.1 mrg # Check hardcoding attributes. 2202 1.1 mrg m4_defun([_LT_LINKER_HARDCODE_LIBPATH], 2203 1.1 mrg [AC_MSG_CHECKING([how to hardcode library paths into programs]) 2204 1.1 mrg _LT_TAGVAR(hardcode_action, $1)= 2205 1.1 mrg if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" || 2206 1.1 mrg test -n "$_LT_TAGVAR(runpath_var, $1)" || 2207 1.1 mrg test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then 2208 1.1 mrg 2209 1.1 mrg # We can hardcode non-existent directories. 2210 1.1 mrg if test no != "$_LT_TAGVAR(hardcode_direct, $1)" && 2211 1.1 mrg # If the only mechanism to avoid hardcoding is shlibpath_var, we 2212 1.1 mrg # have to relink, otherwise we might link with an installed library 2213 1.1 mrg # when we should be linking with a yet-to-be-installed one 2214 1.1 mrg ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" && 2215 1.1 mrg test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then 2216 1.1 mrg # Linking always hardcodes the temporary library directory. 2217 1.1 mrg _LT_TAGVAR(hardcode_action, $1)=relink 2218 1.1 mrg else 2219 1.1 mrg # We can link without hardcoding, and we can hardcode nonexisting dirs. 2220 1.1 mrg _LT_TAGVAR(hardcode_action, $1)=immediate 2221 1.1 mrg fi 2222 1.1 mrg else 2223 1.1 mrg # We cannot hardcode anything, or else we can only hardcode existing 2224 1.1 mrg # directories. 2225 1.1 mrg _LT_TAGVAR(hardcode_action, $1)=unsupported 2226 1.1 mrg fi 2227 1.1 mrg AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)]) 2228 1.1 mrg 2229 1.1 mrg if test relink = "$_LT_TAGVAR(hardcode_action, $1)" || 2230 1.1 mrg test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then 2231 1.1 mrg # Fast installation is not supported 2232 1.1 mrg enable_fast_install=no 2233 1.1 mrg elif test yes = "$shlibpath_overrides_runpath" || 2234 1.1 mrg test no = "$enable_shared"; then 2235 1.1 mrg # Fast installation is not necessary 2236 1.1 mrg enable_fast_install=needless 2237 1.1 mrg fi 2238 1.1 mrg _LT_TAGDECL([], [hardcode_action], [0], 2239 1.1 mrg [How to hardcode a shared library path into an executable]) 2240 1.1 mrg ])# _LT_LINKER_HARDCODE_LIBPATH 2241 1.1 mrg 2242 1.1 mrg 2243 1.1 mrg # _LT_CMD_STRIPLIB 2244 1.1 mrg # ---------------- 2245 1.1 mrg m4_defun([_LT_CMD_STRIPLIB], 2246 1.1 mrg [m4_require([_LT_DECL_EGREP]) 2247 1.1 mrg striplib= 2248 1.1 mrg old_striplib= 2249 1.1 mrg AC_MSG_CHECKING([whether stripping libraries is possible]) 2250 1.1 mrg if test -z "$STRIP"; then 2251 1.1 mrg AC_MSG_RESULT([no]) 2252 1.1 mrg else 2253 1.1 mrg if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then 2254 1.1 mrg old_striplib="$STRIP --strip-debug" 2255 1.1 mrg striplib="$STRIP --strip-unneeded" 2256 1.1 mrg AC_MSG_RESULT([yes]) 2257 1.1 mrg else 2258 1.1 mrg case $host_os in 2259 1.1 mrg darwin*) 2260 1.1 mrg # FIXME - insert some real tests, host_os isn't really good enough 2261 1.1 mrg striplib="$STRIP -x" 2262 1.1 mrg old_striplib="$STRIP -S" 2263 1.1 mrg AC_MSG_RESULT([yes]) 2264 1.1 mrg ;; 2265 1.1 mrg freebsd*) 2266 1.1 mrg if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then 2267 1.1 mrg old_striplib="$STRIP --strip-debug" 2268 1.1 mrg striplib="$STRIP --strip-unneeded" 2269 1.1 mrg AC_MSG_RESULT([yes]) 2270 1.1 mrg else 2271 1.1 mrg AC_MSG_RESULT([no]) 2272 1.1 mrg fi 2273 1.1 mrg ;; 2274 1.1 mrg *) 2275 1.1 mrg AC_MSG_RESULT([no]) 2276 1.1 mrg ;; 2277 1.1 mrg esac 2278 1.1 mrg fi 2279 1.1 mrg fi 2280 1.1 mrg _LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) 2281 1.1 mrg _LT_DECL([], [striplib], [1]) 2282 1.1 mrg ])# _LT_CMD_STRIPLIB 2283 1.1 mrg 2284 1.1 mrg 2285 1.1 mrg # _LT_PREPARE_MUNGE_PATH_LIST 2286 1.1 mrg # --------------------------- 2287 1.1 mrg # Make sure func_munge_path_list() is defined correctly. 2288 1.1 mrg m4_defun([_LT_PREPARE_MUNGE_PATH_LIST], 2289 1.1 mrg [[# func_munge_path_list VARIABLE PATH 2290 1.1 mrg # ----------------------------------- 2291 1.1 mrg # VARIABLE is name of variable containing _space_ separated list of 2292 1.1 mrg # directories to be munged by the contents of PATH, which is string 2293 1.1 mrg # having a format: 2294 1.1 mrg # "DIR[:DIR]:" 2295 1.1 mrg # string "DIR[ DIR]" will be prepended to VARIABLE 2296 1.1 mrg # ":DIR[:DIR]" 2297 1.1 mrg # string "DIR[ DIR]" will be appended to VARIABLE 2298 1.1 mrg # "DIRP[:DIRP]::[DIRA:]DIRA" 2299 1.1 mrg # string "DIRP[ DIRP]" will be prepended to VARIABLE and string 2300 1.1 mrg # "DIRA[ DIRA]" will be appended to VARIABLE 2301 1.1 mrg # "DIR[:DIR]" 2302 1.1 mrg # VARIABLE will be replaced by "DIR[ DIR]" 2303 1.1 mrg func_munge_path_list () 2304 1.1 mrg { 2305 1.1 mrg case x@S|@2 in 2306 1.1 mrg x) 2307 1.1 mrg ;; 2308 1.1 mrg *:) 2309 1.1 mrg eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\" 2310 1.1 mrg ;; 2311 1.1 mrg x:*) 2312 1.1 mrg eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\" 2313 1.1 mrg ;; 2314 1.1 mrg *::*) 2315 1.1 mrg eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" 2316 1.1 mrg eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\" 2317 1.1 mrg ;; 2318 1.1 mrg *) 2319 1.1 mrg eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\" 2320 1.1 mrg ;; 2321 1.1 mrg esac 2322 1.1 mrg } 2323 1.1 mrg ]])# _LT_PREPARE_PATH_LIST 2324 1.1 mrg 2325 1.1 mrg 2326 1.1 mrg # _LT_SYS_DYNAMIC_LINKER([TAG]) 2327 1.1 mrg # ----------------------------- 2328 1.1 mrg # PORTME Fill in your ld.so characteristics 2329 1.1 mrg m4_defun([_LT_SYS_DYNAMIC_LINKER], 2330 1.1 mrg [AC_REQUIRE([AC_CANONICAL_HOST])dnl 2331 1.1 mrg m4_require([_LT_DECL_EGREP])dnl 2332 1.1 mrg m4_require([_LT_FILEUTILS_DEFAULTS])dnl 2333 1.1 mrg m4_require([_LT_DECL_OBJDUMP])dnl 2334 1.1 mrg m4_require([_LT_DECL_SED])dnl 2335 1.1 mrg m4_require([_LT_CHECK_SHELL_FEATURES])dnl 2336 1.1 mrg m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl 2337 1.1 mrg AC_MSG_CHECKING([dynamic linker characteristics]) 2338 1.1 mrg m4_if([$1], 2339 1.1 mrg [], [ 2340 1.1 mrg if test yes = "$GCC"; then 2341 1.1 mrg case $host_os in 2342 1.1 mrg darwin*) lt_awk_arg='/^libraries:/,/LR/' ;; 2343 1.1 mrg *) lt_awk_arg='/^libraries:/' ;; 2344 1.1 mrg esac 2345 1.1 mrg case $host_os in 2346 1.1 mrg mingw* | windows* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;; 2347 1.1 mrg *) lt_sed_strip_eq='s|=/|/|g' ;; 2348 1.1 mrg esac 2349 1.1 mrg lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` 2350 1.1 mrg case $lt_search_path_spec in 2351 1.1 mrg *\;*) 2352 1.1 mrg # if the path contains ";" then we assume it to be the separator 2353 1.1 mrg # otherwise default to the standard path separator (i.e. ":") - it is 2354 1.1 mrg # assumed that no part of a normal pathname contains ";" but that should 2355 1.1 mrg # okay in the real world where ";" in dirpaths is itself problematic. 2356 1.1 mrg lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'` 2357 1.1 mrg ;; 2358 1.1 mrg *) 2359 1.1 mrg lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` 2360 1.1 mrg ;; 2361 1.1 mrg esac 2362 1.1 mrg # Ok, now we have the path, separated by spaces, we can step through it 2363 1.1 mrg # and add multilib dir if necessary... 2364 1.1 mrg lt_tmp_lt_search_path_spec= 2365 1.1 mrg lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` 2366 1.1 mrg # ...but if some path component already ends with the multilib dir we assume 2367 1.1 mrg # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer). 2368 1.1 mrg case "$lt_multi_os_dir; $lt_search_path_spec " in 2369 1.1 mrg "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*) 2370 1.1 mrg lt_multi_os_dir= 2371 1.1 mrg ;; 2372 1.1 mrg esac 2373 1.1 mrg for lt_sys_path in $lt_search_path_spec; do 2374 1.1 mrg if test -d "$lt_sys_path$lt_multi_os_dir"; then 2375 1.1 mrg lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir" 2376 1.1 mrg elif test -n "$lt_multi_os_dir"; then 2377 1.1 mrg test -d "$lt_sys_path" && \ 2378 1.1 mrg lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" 2379 1.1 mrg fi 2380 1.1 mrg done 2381 1.1 mrg lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' 2382 1.1 mrg BEGIN {RS = " "; FS = "/|\n";} { 2383 1.1 mrg lt_foo = ""; 2384 1.1 mrg lt_count = 0; 2385 1.1 mrg for (lt_i = NF; lt_i > 0; lt_i--) { 2386 1.1 mrg if ($lt_i != "" && $lt_i != ".") { 2387 1.1 mrg if ($lt_i == "..") { 2388 1.1 mrg lt_count++; 2389 1.1 mrg } else { 2390 1.1 mrg if (lt_count == 0) { 2391 1.1 mrg lt_foo = "/" $lt_i lt_foo; 2392 1.1 mrg } else { 2393 1.1 mrg lt_count--; 2394 1.1 mrg } 2395 1.1 mrg } 2396 1.1 mrg } 2397 1.1 mrg } 2398 1.1 mrg if (lt_foo != "") { lt_freq[[lt_foo]]++; } 2399 1.1 mrg if (lt_freq[[lt_foo]] == 1) { print lt_foo; } 2400 1.1 mrg }'` 2401 1.1 mrg # AWK program above erroneously prepends '/' to C:/dos/paths 2402 1.1 mrg # for these hosts. 2403 1.1 mrg case $host_os in 2404 1.1 mrg mingw* | windows* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ 2405 1.1 mrg $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;; 2406 1.1 mrg esac 2407 1.1 mrg sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` 2408 1.1 mrg else 2409 1.1 mrg sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" 2410 1.1 mrg fi]) 2411 1.1 mrg library_names_spec= 2412 1.1 mrg libname_spec='lib$name' 2413 1.1 mrg soname_spec= 2414 1.1 mrg shrext_cmds=.so 2415 1.1 mrg postinstall_cmds= 2416 1.1 mrg postuninstall_cmds= 2417 1.1 mrg finish_cmds= 2418 1.1 mrg finish_eval= 2419 1.1 mrg shlibpath_var= 2420 1.1 mrg shlibpath_overrides_runpath=unknown 2421 1.1 mrg version_type=none 2422 1.1 mrg dynamic_linker="$host_os ld.so" 2423 1.1 mrg sys_lib_dlsearch_path_spec="/lib /usr/lib" 2424 1.1 mrg need_lib_prefix=unknown 2425 1.1 mrg hardcode_into_libs=no 2426 1.1 mrg 2427 1.1 mrg # when you set need_version to no, make sure it does not cause -set_version 2428 1.1 mrg # flags to be left without arguments 2429 1.1 mrg need_version=unknown 2430 1.1 mrg 2431 1.1 mrg AC_ARG_VAR([LT_SYS_LIBRARY_PATH], 2432 1.1 mrg [User-defined run-time library search path.]) 2433 1.1 mrg 2434 1.1 mrg case $host_os in 2435 1.1 mrg aix3*) 2436 1.1 mrg version_type=linux # correct to gnu/linux during the next big refactor 2437 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname.a' 2438 1.1 mrg shlibpath_var=LIBPATH 2439 1.1 mrg 2440 1.1 mrg # AIX 3 has no versioning support, so we append a major version to the name. 2441 1.1 mrg soname_spec='$libname$release$shared_ext$major' 2442 1.1 mrg ;; 2443 1.1 mrg 2444 1.1 mrg aix[[4-9]]*) 2445 1.1 mrg version_type=linux # correct to gnu/linux during the next big refactor 2446 1.1 mrg need_lib_prefix=no 2447 1.1 mrg need_version=no 2448 1.1 mrg hardcode_into_libs=yes 2449 1.1 mrg if test ia64 = "$host_cpu"; then 2450 1.1 mrg # AIX 5 supports IA64 2451 1.1 mrg library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext' 2452 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 2453 1.1 mrg else 2454 1.1 mrg # With GCC up to 2.95.x, collect2 would create an import file 2455 1.1 mrg # for dependence libraries. The import file would start with 2456 1.1 mrg # the line '#! .'. This would cause the generated library to 2457 1.1 mrg # depend on '.', always an invalid library. This was fixed in 2458 1.1 mrg # development snapshots of GCC prior to 3.0. 2459 1.1 mrg case $host_os in 2460 1.1 mrg aix4 | aix4.[[01]] | aix4.[[01]].*) 2461 1.1 mrg if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' 2462 1.1 mrg echo ' yes ' 2463 1.1 mrg echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then 2464 1.1 mrg : 2465 1.1 mrg else 2466 1.1 mrg can_build_shared=no 2467 1.1 mrg fi 2468 1.1 mrg ;; 2469 1.1 mrg esac 2470 1.1 mrg # Using Import Files as archive members, it is possible to support 2471 1.1 mrg # filename-based versioning of shared library archives on AIX. While 2472 1.1 mrg # this would work for both with and without runtime linking, it will 2473 1.1 mrg # prevent static linking of such archives. So we do filename-based 2474 1.1 mrg # shared library versioning with .so extension only, which is used 2475 1.1 mrg # when both runtime linking and shared linking is enabled. 2476 1.1 mrg # Unfortunately, runtime linking may impact performance, so we do 2477 1.1 mrg # not want this to be the default eventually. Also, we use the 2478 1.1 mrg # versioned .so libs for executables only if there is the -brtl 2479 1.1 mrg # linker flag in LDFLAGS as well, or --enable-aix-soname=svr4 only. 2480 1.1 mrg # To allow for filename-based versioning support, we need to create 2481 1.1 mrg # libNAME.so.V as an archive file, containing: 2482 1.1 mrg # *) an Import File, referring to the versioned filename of the 2483 1.1 mrg # archive as well as the shared archive member, telling the 2484 1.1 mrg # bitwidth (32 or 64) of that shared object, and providing the 2485 1.1 mrg # list of exported symbols of that shared object, eventually 2486 1.1 mrg # decorated with the 'weak' keyword 2487 1.1 mrg # *) the shared object with the F_LOADONLY flag set, to really avoid 2488 1.1 mrg # it being seen by the linker. 2489 1.1 mrg # At run time we better use the real file rather than another symlink, 2490 1.1 mrg # but for link time we create the symlink libNAME.so -> libNAME.so.V 2491 1.1 mrg 2492 1.1 mrg case $with_aix_soname,$aix_use_runtimelinking in 2493 1.1 mrg # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct 2494 1.1 mrg # soname into executable. Probably we can add versioning support to 2495 1.1 mrg # collect2, so additional links can be useful in future. 2496 1.1 mrg aix,yes) # traditional libtool 2497 1.1 mrg dynamic_linker='AIX unversionable lib.so' 2498 1.1 mrg # If using run time linking (on AIX 4.2 or later) use lib<name>.so 2499 1.1 mrg # instead of lib<name>.a to let people know that these are not 2500 1.1 mrg # typical AIX shared libraries. 2501 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 2502 1.1 mrg ;; 2503 1.1 mrg aix,no) # traditional AIX only 2504 1.1 mrg dynamic_linker='AIX lib.a[(]lib.so.V[)]' 2505 1.1 mrg # We preserve .a as extension for shared libraries through AIX4.2 2506 1.1 mrg # and later when we are not doing run time linking. 2507 1.1 mrg library_names_spec='$libname$release.a $libname.a' 2508 1.1 mrg soname_spec='$libname$release$shared_ext$major' 2509 1.1 mrg ;; 2510 1.1 mrg svr4,*) # full svr4 only 2511 1.1 mrg dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]" 2512 1.1 mrg library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' 2513 1.1 mrg # We do not specify a path in Import Files, so LIBPATH fires. 2514 1.1 mrg shlibpath_overrides_runpath=yes 2515 1.1 mrg ;; 2516 1.1 mrg *,yes) # both, prefer svr4 2517 1.1 mrg dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]" 2518 1.1 mrg library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' 2519 1.1 mrg # unpreferred sharedlib libNAME.a needs extra handling 2520 1.1 mrg postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"' 2521 1.1 mrg postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"' 2522 1.1 mrg # We do not specify a path in Import Files, so LIBPATH fires. 2523 1.1 mrg shlibpath_overrides_runpath=yes 2524 1.1 mrg ;; 2525 1.1 mrg *,no) # both, prefer aix 2526 1.1 mrg dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]" 2527 1.1 mrg library_names_spec='$libname$release.a $libname.a' 2528 1.1 mrg soname_spec='$libname$release$shared_ext$major' 2529 1.1 mrg # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling 2530 1.1 mrg postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)' 2531 1.1 mrg postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"' 2532 1.1 mrg ;; 2533 1.1 mrg esac 2534 1.1 mrg shlibpath_var=LIBPATH 2535 1.1 mrg fi 2536 1.1 mrg ;; 2537 1.1 mrg 2538 1.1 mrg amigaos*) 2539 1.1 mrg case $host_cpu in 2540 1.1 mrg powerpc) 2541 1.1 mrg # Since July 2007 AmigaOS4 officially supports .so libraries. 2542 1.1 mrg # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. 2543 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 2544 1.1 mrg ;; 2545 1.1 mrg m68k) 2546 1.1 mrg library_names_spec='$libname.ixlibrary $libname.a' 2547 1.1 mrg # Create ${libname}_ixlibrary.a entries in /sys/libs. 2548 1.1 mrg finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; $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' 2549 1.1 mrg ;; 2550 1.1 mrg esac 2551 1.1 mrg ;; 2552 1.1 mrg 2553 1.1 mrg beos*) 2554 1.1 mrg library_names_spec='$libname$shared_ext' 2555 1.1 mrg dynamic_linker="$host_os ld.so" 2556 1.1 mrg shlibpath_var=LIBRARY_PATH 2557 1.1 mrg ;; 2558 1.1 mrg 2559 1.1 mrg bsdi[[45]]*) 2560 1.1 mrg version_type=linux # correct to gnu/linux during the next big refactor 2561 1.1 mrg need_version=no 2562 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 2563 1.1 mrg soname_spec='$libname$release$shared_ext$major' 2564 1.1 mrg finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' 2565 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 2566 1.1 mrg sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" 2567 1.1 mrg sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" 2568 1.1 mrg # the default ld.so.conf also contains /usr/contrib/lib and 2569 1.1 mrg # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow 2570 1.1 mrg # libtool to hard-code these into programs 2571 1.1 mrg ;; 2572 1.1 mrg 2573 1.1 mrg cygwin* | mingw* | windows* | pw32* | cegcc*) 2574 1.1 mrg version_type=windows 2575 1.1 mrg shrext_cmds=.dll 2576 1.1 mrg need_version=no 2577 1.1 mrg need_lib_prefix=no 2578 1.1 mrg 2579 1.1 mrg case $GCC,$cc_basename in 2580 1.1 mrg yes,*) 2581 1.1 mrg # gcc 2582 1.1 mrg library_names_spec='$libname.dll.a' 2583 1.1 mrg # DLL is installed to $(libdir)/../bin by postinstall_cmds 2584 1.1 mrg # If user builds GCC with multilib enabled, 2585 1.1 mrg # it should just install on $(libdir) 2586 1.1 mrg # not on $(libdir)/../bin or 32 bits dlls would override 64 bit ones. 2587 1.1 mrg if test xyes = x"$multilib"; then 2588 1.1 mrg postinstall_cmds='base_file=`basename \$file`~ 2589 1.1 mrg dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ 2590 1.1 mrg dldir=$destdir/`dirname \$dlpath`~ 2591 1.1 mrg $install_prog $dir/$dlname $destdir/$dlname~ 2592 1.1 mrg chmod a+x $destdir/$dlname~ 2593 1.1 mrg if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then 2594 1.1 mrg eval '\''$striplib $destdir/$dlname'\'' || exit \$?; 2595 1.1 mrg fi' 2596 1.1 mrg else 2597 1.1 mrg postinstall_cmds='base_file=`basename \$file`~ 2598 1.1 mrg dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ 2599 1.1 mrg dldir=$destdir/`dirname \$dlpath`~ 2600 1.1 mrg test -d \$dldir || mkdir -p \$dldir~ 2601 1.1 mrg $install_prog $dir/$dlname \$dldir/$dlname~ 2602 1.1 mrg chmod a+x \$dldir/$dlname~ 2603 1.1 mrg if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then 2604 1.1 mrg eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; 2605 1.1 mrg fi' 2606 1.1 mrg fi 2607 1.1 mrg postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ 2608 1.1 mrg dlpath=$dir/\$dldll~ 2609 1.1 mrg $RM \$dlpath' 2610 1.1 mrg shlibpath_overrides_runpath=yes 2611 1.1 mrg 2612 1.1 mrg case $host_os in 2613 1.1 mrg cygwin*) 2614 1.1 mrg # Cygwin DLLs use 'cyg' prefix rather than 'lib' 2615 1.1 mrg soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' 2616 1.1 mrg m4_if([$1], [],[ 2617 1.1 mrg sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) 2618 1.1 mrg ;; 2619 1.1 mrg mingw* | windows* | cegcc*) 2620 1.1 mrg # MinGW DLLs use traditional 'lib' prefix 2621 1.1 mrg soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' 2622 1.1 mrg ;; 2623 1.1 mrg pw32*) 2624 1.1 mrg # pw32 DLLs use 'pw' prefix rather than 'lib' 2625 1.1 mrg library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' 2626 1.1 mrg ;; 2627 1.1 mrg esac 2628 1.1 mrg dynamic_linker='Win32 ld.exe' 2629 1.1 mrg ;; 2630 1.1 mrg 2631 1.1 mrg *,cl* | *,icl*) 2632 1.1 mrg # Native MSVC or ICC 2633 1.1 mrg libname_spec='$name' 2634 1.1 mrg soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' 2635 1.1 mrg library_names_spec='$libname.dll.lib' 2636 1.1 mrg 2637 1.1 mrg case $build_os in 2638 1.1 mrg mingw* | windows*) 2639 1.1 mrg sys_lib_search_path_spec= 2640 1.1 mrg lt_save_ifs=$IFS 2641 1.1 mrg IFS=';' 2642 1.1 mrg for lt_path in $LIB 2643 1.1 mrg do 2644 1.1 mrg IFS=$lt_save_ifs 2645 1.1 mrg # Let DOS variable expansion print the short 8.3 style file name. 2646 1.1 mrg lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` 2647 1.1 mrg sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" 2648 1.1 mrg done 2649 1.1 mrg IFS=$lt_save_ifs 2650 1.1 mrg # Convert to MSYS style. 2651 1.1 mrg sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` 2652 1.1 mrg ;; 2653 1.1 mrg cygwin*) 2654 1.1 mrg # Convert to unix form, then to dos form, then back to unix form 2655 1.1 mrg # but this time dos style (no spaces!) so that the unix form looks 2656 1.1 mrg # like /cygdrive/c/PROGRA~1:/cygdr... 2657 1.1 mrg sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` 2658 1.1 mrg sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` 2659 1.1 mrg sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` 2660 1.1 mrg ;; 2661 1.1 mrg *) 2662 1.1 mrg sys_lib_search_path_spec=$LIB 2663 1.1 mrg if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then 2664 1.1 mrg # It is most probably a Windows format PATH. 2665 1.1 mrg sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` 2666 1.1 mrg else 2667 1.1 mrg sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` 2668 1.1 mrg fi 2669 1.1 mrg # FIXME: find the short name or the path components, as spaces are 2670 1.1 mrg # common. (e.g. "Program Files" -> "PROGRA~1") 2671 1.1 mrg ;; 2672 1.1 mrg esac 2673 1.1 mrg 2674 1.1 mrg # DLL is installed to $(libdir)/../bin by postinstall_cmds 2675 1.1 mrg postinstall_cmds='base_file=`basename \$file`~ 2676 1.1 mrg dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ 2677 1.1 mrg dldir=$destdir/`dirname \$dlpath`~ 2678 1.1 mrg test -d \$dldir || mkdir -p \$dldir~ 2679 1.1 mrg $install_prog $dir/$dlname \$dldir/$dlname' 2680 1.1 mrg postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ 2681 1.1 mrg dlpath=$dir/\$dldll~ 2682 1.1 mrg $RM \$dlpath' 2683 1.1 mrg shlibpath_overrides_runpath=yes 2684 1.1 mrg dynamic_linker='Win32 link.exe' 2685 1.1 mrg ;; 2686 1.1 mrg 2687 1.1 mrg *) 2688 1.1 mrg # Assume MSVC and ICC wrapper 2689 1.1 mrg library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib' 2690 1.1 mrg dynamic_linker='Win32 ld.exe' 2691 1.1 mrg ;; 2692 1.1 mrg esac 2693 1.1 mrg # FIXME: first we should search . and the directory the executable is in 2694 1.1 mrg shlibpath_var=PATH 2695 1.1 mrg ;; 2696 1.1 mrg 2697 1.1 mrg darwin* | rhapsody*) 2698 1.1 mrg dynamic_linker="$host_os dyld" 2699 1.1 mrg version_type=darwin 2700 1.1 mrg need_lib_prefix=no 2701 1.1 mrg need_version=no 2702 1.1 mrg library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' 2703 1.1 mrg soname_spec='$libname$release$major$shared_ext' 2704 1.1 mrg shlibpath_overrides_runpath=yes 2705 1.1 mrg shlibpath_var=DYLD_LIBRARY_PATH 2706 1.1 mrg shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' 2707 1.1 mrg m4_if([$1], [],[ 2708 1.1 mrg sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"]) 2709 1.1 mrg sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' 2710 1.1 mrg ;; 2711 1.1 mrg 2712 1.1 mrg dgux*) 2713 1.1 mrg version_type=linux # correct to gnu/linux during the next big refactor 2714 1.1 mrg need_lib_prefix=no 2715 1.1 mrg need_version=no 2716 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 2717 1.1 mrg soname_spec='$libname$release$shared_ext$major' 2718 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 2719 1.1 mrg ;; 2720 1.1 mrg 2721 1.1 mrg freebsd* | dragonfly* | midnightbsd*) 2722 1.1 mrg # DragonFly does not have aout. When/if they implement a new 2723 1.1 mrg # versioning mechanism, adjust this. 2724 1.1 mrg if test -x /usr/bin/objformat; then 2725 1.1 mrg objformat=`/usr/bin/objformat` 2726 1.1 mrg else 2727 1.1 mrg case $host_os in 2728 1.1 mrg freebsd[[23]].*) objformat=aout ;; 2729 1.1 mrg *) objformat=elf ;; 2730 1.1 mrg esac 2731 1.1 mrg fi 2732 1.1 mrg version_type=freebsd-$objformat 2733 1.1 mrg case $version_type in 2734 1.1 mrg freebsd-elf*) 2735 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 2736 1.1 mrg soname_spec='$libname$release$shared_ext$major' 2737 1.1 mrg need_version=no 2738 1.1 mrg need_lib_prefix=no 2739 1.1 mrg ;; 2740 1.1 mrg freebsd-*) 2741 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' 2742 1.1 mrg need_version=yes 2743 1.1 mrg ;; 2744 1.1 mrg esac 2745 1.1 mrg case $host_cpu in 2746 1.1 mrg powerpc64) 2747 1.1 mrg # On FreeBSD bi-arch platforms, a different variable is used for 32-bit 2748 1.1 mrg # binaries. See <https://man.freebsd.org/cgi/man.cgi?query=ld.so>. 2749 1.1 mrg AC_COMPILE_IFELSE( 2750 1.1 mrg [AC_LANG_SOURCE( 2751 1.1 mrg [[int test_pointer_size[sizeof (void *) - 5]; 2752 1.1 mrg ]])], 2753 1.1 mrg [shlibpath_var=LD_LIBRARY_PATH], 2754 1.1 mrg [shlibpath_var=LD_32_LIBRARY_PATH]) 2755 1.1 mrg ;; 2756 1.1 mrg *) 2757 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 2758 1.1 mrg ;; 2759 1.1 mrg esac 2760 1.1 mrg case $host_os in 2761 1.1 mrg freebsd2.*) 2762 1.1 mrg shlibpath_overrides_runpath=yes 2763 1.1 mrg ;; 2764 1.1 mrg freebsd3.[[01]]* | freebsdelf3.[[01]]*) 2765 1.1 mrg shlibpath_overrides_runpath=yes 2766 1.1 mrg hardcode_into_libs=yes 2767 1.1 mrg ;; 2768 1.1 mrg freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \ 2769 1.1 mrg freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1) 2770 1.1 mrg shlibpath_overrides_runpath=no 2771 1.1 mrg hardcode_into_libs=yes 2772 1.1 mrg ;; 2773 1.1 mrg *) # from 4.6 on, and DragonFly 2774 1.1 mrg shlibpath_overrides_runpath=yes 2775 1.1 mrg hardcode_into_libs=yes 2776 1.1 mrg ;; 2777 1.1 mrg esac 2778 1.1 mrg ;; 2779 1.1 mrg 2780 1.1 mrg haiku*) 2781 1.1 mrg version_type=linux # correct to gnu/linux during the next big refactor 2782 1.1 mrg need_lib_prefix=no 2783 1.1 mrg need_version=no 2784 1.1 mrg dynamic_linker="$host_os runtime_loader" 2785 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 2786 1.1 mrg soname_spec='$libname$release$shared_ext$major' 2787 1.1 mrg shlibpath_var=LIBRARY_PATH 2788 1.1 mrg shlibpath_overrides_runpath=no 2789 1.1 mrg sys_lib_search_path_spec='/boot/system/non-packaged/develop/lib /boot/system/develop/lib' 2790 1.1 mrg sys_lib_dlsearch_path_spec='/boot/home/config/non-packaged/lib /boot/home/config/lib /boot/system/non-packaged/lib /boot/system/lib' 2791 1.1 mrg hardcode_into_libs=no 2792 1.1 mrg ;; 2793 1.1 mrg 2794 1.1 mrg hpux9* | hpux10* | hpux11*) 2795 1.1 mrg # Give a soname corresponding to the major version so that dld.sl refuses to 2796 1.1 mrg # link against other versions. 2797 1.1 mrg version_type=sunos 2798 1.1 mrg need_lib_prefix=no 2799 1.1 mrg need_version=no 2800 1.1 mrg case $host_cpu in 2801 1.1 mrg ia64*) 2802 1.1 mrg shrext_cmds='.so' 2803 1.1 mrg hardcode_into_libs=yes 2804 1.1 mrg dynamic_linker="$host_os dld.so" 2805 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 2806 1.1 mrg shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. 2807 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 2808 1.1 mrg soname_spec='$libname$release$shared_ext$major' 2809 1.1 mrg if test 32 = "$HPUX_IA64_MODE"; then 2810 1.1 mrg sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" 2811 1.1 mrg sys_lib_dlsearch_path_spec=/usr/lib/hpux32 2812 1.1 mrg else 2813 1.1 mrg sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" 2814 1.1 mrg sys_lib_dlsearch_path_spec=/usr/lib/hpux64 2815 1.1 mrg fi 2816 1.1 mrg ;; 2817 1.1 mrg hppa*64*) 2818 1.1 mrg shrext_cmds='.sl' 2819 1.1 mrg hardcode_into_libs=yes 2820 1.1 mrg dynamic_linker="$host_os dld.sl" 2821 1.1 mrg shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH 2822 1.1 mrg shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. 2823 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 2824 1.1 mrg soname_spec='$libname$release$shared_ext$major' 2825 1.1 mrg sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" 2826 1.1 mrg sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec 2827 1.1 mrg ;; 2828 1.1 mrg *) 2829 1.1 mrg shrext_cmds='.sl' 2830 1.1 mrg dynamic_linker="$host_os dld.sl" 2831 1.1 mrg shlibpath_var=SHLIB_PATH 2832 1.1 mrg shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH 2833 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 2834 1.1 mrg soname_spec='$libname$release$shared_ext$major' 2835 1.1 mrg ;; 2836 1.1 mrg esac 2837 1.1 mrg # HP-UX runs *really* slowly unless shared libraries are mode 555, ... 2838 1.1 mrg postinstall_cmds='chmod 555 $lib' 2839 1.1 mrg # or fails outright, so override atomically: 2840 1.1 mrg install_override_mode=555 2841 1.1 mrg ;; 2842 1.1 mrg 2843 1.1 mrg interix[[3-9]]*) 2844 1.1 mrg version_type=linux # correct to gnu/linux during the next big refactor 2845 1.1 mrg need_lib_prefix=no 2846 1.1 mrg need_version=no 2847 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 2848 1.1 mrg soname_spec='$libname$release$shared_ext$major' 2849 1.1 mrg dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' 2850 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 2851 1.1 mrg shlibpath_overrides_runpath=no 2852 1.1 mrg hardcode_into_libs=yes 2853 1.1 mrg ;; 2854 1.1 mrg 2855 1.1 mrg irix5* | irix6* | nonstopux*) 2856 1.1 mrg case $host_os in 2857 1.1 mrg nonstopux*) version_type=nonstopux ;; 2858 1.1 mrg *) 2859 1.1 mrg if test yes = "$lt_cv_prog_gnu_ld"; then 2860 1.1 mrg version_type=linux # correct to gnu/linux during the next big refactor 2861 1.1 mrg else 2862 1.1 mrg version_type=irix 2863 1.1 mrg fi ;; 2864 1.1 mrg esac 2865 1.1 mrg need_lib_prefix=no 2866 1.1 mrg need_version=no 2867 1.1 mrg soname_spec='$libname$release$shared_ext$major' 2868 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext' 2869 1.1 mrg case $host_os in 2870 1.1 mrg irix5* | nonstopux*) 2871 1.1 mrg libsuff= shlibsuff= 2872 1.1 mrg ;; 2873 1.1 mrg *) 2874 1.1 mrg case $LD in # libtool.m4 will add one of these switches to LD 2875 1.1 mrg *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") 2876 1.1 mrg libsuff= shlibsuff= libmagic=32-bit;; 2877 1.1 mrg *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") 2878 1.1 mrg libsuff=32 shlibsuff=N32 libmagic=N32;; 2879 1.1 mrg *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") 2880 1.1 mrg libsuff=64 shlibsuff=64 libmagic=64-bit;; 2881 1.1 mrg *) libsuff= shlibsuff= libmagic=never-match;; 2882 1.1 mrg esac 2883 1.1 mrg ;; 2884 1.1 mrg esac 2885 1.1 mrg shlibpath_var=LD_LIBRARY${shlibsuff}_PATH 2886 1.1 mrg shlibpath_overrides_runpath=no 2887 1.1 mrg sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff" 2888 1.1 mrg sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff" 2889 1.1 mrg hardcode_into_libs=yes 2890 1.1 mrg ;; 2891 1.1 mrg 2892 1.1 mrg # No shared lib support for Linux oldld, aout, or coff. 2893 1.1 mrg linux*oldld* | linux*aout* | linux*coff*) 2894 1.1 mrg dynamic_linker=no 2895 1.1 mrg ;; 2896 1.1 mrg 2897 1.1 mrg linux*android*) 2898 1.1 mrg version_type=none # Android doesn't support versioned libraries. 2899 1.1 mrg need_lib_prefix=no 2900 1.1 mrg need_version=no 2901 1.1 mrg library_names_spec='$libname$release$shared_ext $libname$shared_ext' 2902 1.1 mrg soname_spec='$libname$release$shared_ext' 2903 1.1 mrg finish_cmds= 2904 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 2905 1.1 mrg shlibpath_overrides_runpath=yes 2906 1.1 mrg 2907 1.1 mrg # This implies no fast_install, which is unacceptable. 2908 1.1 mrg # Some rework will be needed to allow for fast_install 2909 1.1 mrg # before this can be enabled. 2910 1.1 mrg hardcode_into_libs=yes 2911 1.1 mrg 2912 1.1 mrg dynamic_linker='Android linker' 2913 1.1 mrg # -rpath works at least for libraries that are not overridden by 2914 1.1 mrg # libraries installed in system locations. 2915 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 2916 1.1 mrg ;; 2917 1.1 mrg 2918 1.1 mrg # This must be glibc/ELF. 2919 1.1 mrg linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) 2920 1.1 mrg version_type=linux # correct to gnu/linux during the next big refactor 2921 1.1 mrg need_lib_prefix=no 2922 1.1 mrg need_version=no 2923 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 2924 1.1 mrg soname_spec='$libname$release$shared_ext$major' 2925 1.1 mrg finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' 2926 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 2927 1.1 mrg shlibpath_overrides_runpath=no 2928 1.1 mrg 2929 1.1 mrg # Some binutils ld are patched to set DT_RUNPATH 2930 1.1 mrg AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath], 2931 1.1 mrg [lt_cv_shlibpath_overrides_runpath=no 2932 1.1 mrg save_LDFLAGS=$LDFLAGS 2933 1.1 mrg save_libdir=$libdir 2934 1.1 mrg eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \ 2935 1.1 mrg LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\"" 2936 1.1 mrg AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], 2937 1.1 mrg [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null], 2938 1.1 mrg [lt_cv_shlibpath_overrides_runpath=yes])]) 2939 1.1 mrg LDFLAGS=$save_LDFLAGS 2940 1.1 mrg libdir=$save_libdir 2941 1.1 mrg ]) 2942 1.1 mrg shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath 2943 1.1 mrg 2944 1.1 mrg # This implies no fast_install, which is unacceptable. 2945 1.1 mrg # Some rework will be needed to allow for fast_install 2946 1.1 mrg # before this can be enabled. 2947 1.1 mrg hardcode_into_libs=yes 2948 1.1 mrg 2949 1.1 mrg # Ideally, we could use ldconfig to report *all* directories which are 2950 1.1 mrg # searched for libraries, however this is still not possible. Aside from not 2951 1.1 mrg # being certain /sbin/ldconfig is available, command 2952 1.1 mrg # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, 2953 1.1 mrg # even though it is searched at run-time. Try to do the best guess by 2954 1.1 mrg # appending ld.so.conf contents (and includes) to the search path. 2955 1.1 mrg if test -f /etc/ld.so.conf; then 2956 1.1 mrg 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' ' '` 2957 1.1 mrg sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" 2958 1.1 mrg fi 2959 1.1 mrg 2960 1.1 mrg # We used to test for /lib/ld.so.1 and disable shared libraries on 2961 1.1 mrg # powerpc, because MkLinux only supported shared libraries with the 2962 1.1 mrg # GNU dynamic linker. Since this was broken with cross compilers, 2963 1.1 mrg # most powerpc-linux boxes support dynamic linking these days and 2964 1.1 mrg # people can always --disable-shared, the test was removed, and we 2965 1.1 mrg # assume the GNU/Linux dynamic linker is in use. 2966 1.1 mrg dynamic_linker='GNU/Linux ld.so' 2967 1.1 mrg ;; 2968 1.1 mrg 2969 1.1 mrg netbsdelf*-gnu) 2970 1.1 mrg version_type=linux 2971 1.1 mrg need_lib_prefix=no 2972 1.1 mrg need_version=no 2973 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 2974 1.1 mrg soname_spec='$libname$release$shared_ext$major' 2975 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 2976 1.1 mrg shlibpath_overrides_runpath=no 2977 1.1 mrg hardcode_into_libs=yes 2978 1.1 mrg dynamic_linker='NetBSD ld.elf_so' 2979 1.1 mrg ;; 2980 1.1 mrg 2981 1.1 mrg netbsd*) 2982 1.1 mrg version_type=sunos 2983 1.1 mrg need_lib_prefix=no 2984 1.1 mrg need_version=no 2985 1.1 mrg if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then 2986 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' 2987 1.1 mrg finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' 2988 1.1 mrg dynamic_linker='NetBSD (a.out) ld.so' 2989 1.1 mrg else 2990 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 2991 1.1 mrg soname_spec='$libname$release$shared_ext$major' 2992 1.1 mrg dynamic_linker='NetBSD ld.elf_so' 2993 1.1 mrg fi 2994 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 2995 1.1 mrg shlibpath_overrides_runpath=yes 2996 1.1 mrg hardcode_into_libs=yes 2997 1.1 mrg ;; 2998 1.1 mrg 2999 1.1 mrg *-mlibc) 3000 1.1 mrg version_type=linux # correct to gnu/linux during the next big refactor 3001 1.1 mrg need_lib_prefix=no 3002 1.1 mrg need_version=no 3003 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 3004 1.1 mrg soname_spec='$libname$release$shared_ext$major' 3005 1.1 mrg dynamic_linker='mlibc ld.so' 3006 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 3007 1.1 mrg shlibpath_overrides_runpath=no 3008 1.1 mrg hardcode_into_libs=yes 3009 1.1 mrg ;; 3010 1.1 mrg 3011 1.1 mrg newsos6) 3012 1.1 mrg version_type=linux # correct to gnu/linux during the next big refactor 3013 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 3014 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 3015 1.1 mrg shlibpath_overrides_runpath=yes 3016 1.1 mrg ;; 3017 1.1 mrg 3018 1.1 mrg *nto* | *qnx*) 3019 1.1 mrg version_type=qnx 3020 1.1 mrg need_lib_prefix=no 3021 1.1 mrg need_version=no 3022 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 3023 1.1 mrg soname_spec='$libname$release$shared_ext$major' 3024 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 3025 1.1 mrg shlibpath_overrides_runpath=no 3026 1.1 mrg hardcode_into_libs=yes 3027 1.1 mrg dynamic_linker='ldqnx.so' 3028 1.1 mrg ;; 3029 1.1 mrg 3030 1.1 mrg openbsd*) 3031 1.1 mrg version_type=sunos 3032 1.1 mrg sys_lib_dlsearch_path_spec=/usr/lib 3033 1.1 mrg need_lib_prefix=no 3034 1.1 mrg if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then 3035 1.1 mrg need_version=no 3036 1.1 mrg else 3037 1.1 mrg need_version=yes 3038 1.1 mrg fi 3039 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' 3040 1.1 mrg finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' 3041 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 3042 1.1 mrg shlibpath_overrides_runpath=yes 3043 1.1 mrg ;; 3044 1.1 mrg 3045 1.1 mrg os2*) 3046 1.1 mrg libname_spec='$name' 3047 1.1 mrg version_type=windows 3048 1.1 mrg shrext_cmds=.dll 3049 1.1 mrg need_version=no 3050 1.1 mrg need_lib_prefix=no 3051 1.1 mrg # OS/2 can only load a DLL with a base name of 8 characters or less. 3052 1.1 mrg soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; 3053 1.1 mrg v=$($ECHO $release$versuffix | tr -d .-); 3054 1.1 mrg n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); 3055 1.1 mrg $ECHO $n$v`$shared_ext' 3056 1.1 mrg library_names_spec='${libname}_dll.$libext' 3057 1.1 mrg dynamic_linker='OS/2 ld.exe' 3058 1.1 mrg shlibpath_var=BEGINLIBPATH 3059 1.1 mrg sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" 3060 1.1 mrg sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec 3061 1.1 mrg postinstall_cmds='base_file=`basename \$file`~ 3062 1.1 mrg dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~ 3063 1.1 mrg dldir=$destdir/`dirname \$dlpath`~ 3064 1.1 mrg test -d \$dldir || mkdir -p \$dldir~ 3065 1.1 mrg $install_prog $dir/$dlname \$dldir/$dlname~ 3066 1.1 mrg chmod a+x \$dldir/$dlname~ 3067 1.1 mrg if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then 3068 1.1 mrg eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; 3069 1.1 mrg fi' 3070 1.1 mrg postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~ 3071 1.1 mrg dlpath=$dir/\$dldll~ 3072 1.1 mrg $RM \$dlpath' 3073 1.1 mrg ;; 3074 1.1 mrg 3075 1.1 mrg osf3* | osf4* | osf5*) 3076 1.1 mrg version_type=osf 3077 1.1 mrg need_lib_prefix=no 3078 1.1 mrg need_version=no 3079 1.1 mrg soname_spec='$libname$release$shared_ext$major' 3080 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 3081 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 3082 1.1 mrg sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" 3083 1.1 mrg sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec 3084 1.1 mrg ;; 3085 1.1 mrg 3086 1.1 mrg rdos*) 3087 1.1 mrg dynamic_linker=no 3088 1.1 mrg ;; 3089 1.1 mrg 3090 1.1 mrg serenity*) 3091 1.1 mrg version_type=linux # correct to gnu/linux during the next big refactor 3092 1.1 mrg need_lib_prefix=no 3093 1.1 mrg need_version=no 3094 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 3095 1.1 mrg soname_spec='$libname$release$shared_ext$major' 3096 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 3097 1.1 mrg shlibpath_overrides_runpath=no 3098 1.1 mrg dynamic_linker='SerenityOS LibELF' 3099 1.1 mrg ;; 3100 1.1 mrg 3101 1.1 mrg solaris*) 3102 1.1 mrg version_type=linux # correct to gnu/linux during the next big refactor 3103 1.1 mrg need_lib_prefix=no 3104 1.1 mrg need_version=no 3105 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 3106 1.1 mrg soname_spec='$libname$release$shared_ext$major' 3107 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 3108 1.1 mrg shlibpath_overrides_runpath=yes 3109 1.1 mrg hardcode_into_libs=yes 3110 1.1 mrg # ldd complains unless libraries are executable 3111 1.1 mrg postinstall_cmds='chmod +x $lib' 3112 1.1 mrg ;; 3113 1.1 mrg 3114 1.1 mrg sunos4*) 3115 1.1 mrg version_type=sunos 3116 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' 3117 1.1 mrg finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' 3118 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 3119 1.1 mrg shlibpath_overrides_runpath=yes 3120 1.1 mrg if test yes = "$with_gnu_ld"; then 3121 1.1 mrg need_lib_prefix=no 3122 1.1 mrg fi 3123 1.1 mrg need_version=yes 3124 1.1 mrg ;; 3125 1.1 mrg 3126 1.1 mrg sysv4 | sysv4.3*) 3127 1.1 mrg version_type=linux # correct to gnu/linux during the next big refactor 3128 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 3129 1.1 mrg soname_spec='$libname$release$shared_ext$major' 3130 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 3131 1.1 mrg case $host_vendor in 3132 1.1 mrg sni) 3133 1.1 mrg shlibpath_overrides_runpath=no 3134 1.1 mrg need_lib_prefix=no 3135 1.1 mrg runpath_var=LD_RUN_PATH 3136 1.1 mrg ;; 3137 1.1 mrg siemens) 3138 1.1 mrg need_lib_prefix=no 3139 1.1 mrg ;; 3140 1.1 mrg motorola) 3141 1.1 mrg need_lib_prefix=no 3142 1.1 mrg need_version=no 3143 1.1 mrg shlibpath_overrides_runpath=no 3144 1.1 mrg sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' 3145 1.1 mrg ;; 3146 1.1 mrg esac 3147 1.1 mrg ;; 3148 1.1 mrg 3149 1.1 mrg sysv4*MP*) 3150 1.1 mrg if test -d /usr/nec; then 3151 1.1 mrg version_type=linux # correct to gnu/linux during the next big refactor 3152 1.1 mrg library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext' 3153 1.1 mrg soname_spec='$libname$shared_ext.$major' 3154 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 3155 1.1 mrg fi 3156 1.1 mrg ;; 3157 1.1 mrg 3158 1.1 mrg sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) 3159 1.1 mrg version_type=sco 3160 1.1 mrg need_lib_prefix=no 3161 1.1 mrg need_version=no 3162 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext' 3163 1.1 mrg soname_spec='$libname$release$shared_ext$major' 3164 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 3165 1.1 mrg shlibpath_overrides_runpath=yes 3166 1.1 mrg hardcode_into_libs=yes 3167 1.1 mrg if test yes = "$with_gnu_ld"; then 3168 1.1 mrg sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' 3169 1.1 mrg else 3170 1.1 mrg sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' 3171 1.1 mrg case $host_os in 3172 1.1 mrg sco3.2v5*) 3173 1.1 mrg sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" 3174 1.1 mrg ;; 3175 1.1 mrg esac 3176 1.1 mrg fi 3177 1.1 mrg sys_lib_dlsearch_path_spec='/usr/lib' 3178 1.1 mrg ;; 3179 1.1 mrg 3180 1.1 mrg tpf*) 3181 1.1 mrg # TPF is a cross-target only. Preferred cross-host = GNU/Linux. 3182 1.1 mrg version_type=linux # correct to gnu/linux during the next big refactor 3183 1.1 mrg need_lib_prefix=no 3184 1.1 mrg need_version=no 3185 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 3186 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 3187 1.1 mrg shlibpath_overrides_runpath=no 3188 1.1 mrg hardcode_into_libs=yes 3189 1.1 mrg ;; 3190 1.1 mrg 3191 1.1 mrg uts4*) 3192 1.1 mrg version_type=linux # correct to gnu/linux during the next big refactor 3193 1.1 mrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 3194 1.1 mrg soname_spec='$libname$release$shared_ext$major' 3195 1.1 mrg shlibpath_var=LD_LIBRARY_PATH 3196 1.1 mrg ;; 3197 1.1 mrg 3198 1.1 mrg emscripten*) 3199 1.1 mrg version_type=none 3200 1.1 mrg need_lib_prefix=no 3201 1.1 mrg need_version=no 3202 1.1 mrg library_names_spec='$libname$release$shared_ext' 3203 1.1 mrg soname_spec='$libname$release$shared_ext' 3204 1.1 mrg finish_cmds= 3205 1.1 mrg dynamic_linker="Emscripten linker" 3206 1.1 mrg _LT_COMPILER_PIC($1)='-fPIC' 3207 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -sSIDE_MODULE=2 -shared $libobjs $deplibs $compiler_flags -o $lib' 3208 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -sSIDE_MODULE=2 -shared $libobjs $deplibs $compiler_flags -o $lib -s EXPORTED_FUNCTIONS=@$output_objdir/$soname.expsym' 3209 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 3210 1.1 mrg _LT_TAGVAR(no_undefined_flag, $1)= 3211 1.1 mrg ;; 3212 1.1 mrg 3213 1.1 mrg *) 3214 1.1 mrg dynamic_linker=no 3215 1.1 mrg ;; 3216 1.1 mrg esac 3217 1.1 mrg AC_MSG_RESULT([$dynamic_linker]) 3218 1.1 mrg test no = "$dynamic_linker" && can_build_shared=no 3219 1.1 mrg 3220 1.1 mrg variables_saved_for_relink="PATH $shlibpath_var $runpath_var" 3221 1.1 mrg if test yes = "$GCC"; then 3222 1.1 mrg variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" 3223 1.1 mrg fi 3224 1.1 mrg 3225 1.1 mrg if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then 3226 1.1 mrg sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec 3227 1.1 mrg fi 3228 1.1 mrg 3229 1.1 mrg if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then 3230 1.1 mrg sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec 3231 1.1 mrg fi 3232 1.1 mrg 3233 1.1 mrg # remember unaugmented sys_lib_dlsearch_path content for libtool script decls... 3234 1.1 mrg configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec 3235 1.1 mrg 3236 1.1 mrg # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code 3237 1.1 mrg func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" 3238 1.1 mrg 3239 1.1 mrg # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool 3240 1.1 mrg configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH 3241 1.1 mrg 3242 1.1 mrg _LT_DECL([], [variables_saved_for_relink], [1], 3243 1.1 mrg [Variables whose values should be saved in libtool wrapper scripts and 3244 1.1 mrg restored at link time]) 3245 1.1 mrg _LT_DECL([], [need_lib_prefix], [0], 3246 1.1 mrg [Do we need the "lib" prefix for modules?]) 3247 1.1 mrg _LT_DECL([], [need_version], [0], [Do we need a version for libraries?]) 3248 1.1 mrg _LT_DECL([], [version_type], [0], [Library versioning type]) 3249 1.1 mrg _LT_DECL([], [runpath_var], [0], [Shared library runtime path variable]) 3250 1.1 mrg _LT_DECL([], [shlibpath_var], [0],[Shared library path variable]) 3251 1.1 mrg _LT_DECL([], [shlibpath_overrides_runpath], [0], 3252 1.1 mrg [Is shlibpath searched before the hard-coded library search path?]) 3253 1.1 mrg _LT_DECL([], [libname_spec], [1], [Format of library name prefix]) 3254 1.1 mrg _LT_DECL([], [library_names_spec], [1], 3255 1.1 mrg [[List of archive names. First name is the real one, the rest are links. 3256 1.1 mrg The last name is the one that the linker finds with -lNAME]]) 3257 1.1 mrg _LT_DECL([], [soname_spec], [1], 3258 1.1 mrg [[The coded name of the library, if different from the real name]]) 3259 1.1 mrg _LT_DECL([], [install_override_mode], [1], 3260 1.1 mrg [Permission mode override for installation of shared libraries]) 3261 1.1 mrg _LT_DECL([], [postinstall_cmds], [2], 3262 1.1 mrg [Command to use after installation of a shared archive]) 3263 1.1 mrg _LT_DECL([], [postuninstall_cmds], [2], 3264 1.1 mrg [Command to use after uninstallation of a shared archive]) 3265 1.1 mrg _LT_DECL([], [finish_cmds], [2], 3266 1.1 mrg [Commands used to finish a libtool library installation in a directory]) 3267 1.1 mrg _LT_DECL([], [finish_eval], [1], 3268 1.1 mrg [[As "finish_cmds", except a single script fragment to be evaled but 3269 1.1 mrg not shown]]) 3270 1.1 mrg _LT_DECL([], [hardcode_into_libs], [0], 3271 1.1 mrg [Whether we should hardcode library paths into libraries]) 3272 1.1 mrg _LT_DECL([], [sys_lib_search_path_spec], [2], 3273 1.1 mrg [Compile-time system search path for libraries]) 3274 1.1 mrg _LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2], 3275 1.1 mrg [Detected run-time system search path for libraries]) 3276 1.1 mrg _LT_DECL([], [configure_time_lt_sys_library_path], [2], 3277 1.1 mrg [Explicit LT_SYS_LIBRARY_PATH set during ./configure time]) 3278 1.1 mrg ])# _LT_SYS_DYNAMIC_LINKER 3279 1.1 mrg 3280 1.1 mrg 3281 1.1 mrg # _LT_PATH_TOOL_PREFIX(TOOL) 3282 1.1 mrg # -------------------------- 3283 1.1 mrg # find a file program that can recognize shared library 3284 1.1 mrg AC_DEFUN([_LT_PATH_TOOL_PREFIX], 3285 1.1 mrg [m4_require([_LT_DECL_EGREP])dnl 3286 1.1 mrg AC_MSG_CHECKING([for $1]) 3287 1.1 mrg AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, 3288 1.1 mrg [case $MAGIC_CMD in 3289 1.1 mrg [[\\/*] | ?:[\\/]*]) 3290 1.1 mrg lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. 3291 1.1 mrg ;; 3292 1.1 mrg *) 3293 1.1 mrg lt_save_MAGIC_CMD=$MAGIC_CMD 3294 1.1 mrg lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR 3295 1.1 mrg dnl $ac_dummy forces splitting on constant user-supplied paths. 3296 1.1 mrg dnl POSIX.2 word splitting is done only on the output of word expansions, 3297 1.1 mrg dnl not every word. This closes a longstanding sh security hole. 3298 1.1 mrg ac_dummy="m4_if([$2], , $PATH, [$2])" 3299 1.1 mrg for ac_dir in $ac_dummy; do 3300 1.1 mrg IFS=$lt_save_ifs 3301 1.1 mrg test -z "$ac_dir" && ac_dir=. 3302 1.1 mrg if test -f "$ac_dir/$1"; then 3303 1.1 mrg lt_cv_path_MAGIC_CMD=$ac_dir/"$1" 3304 1.1 mrg if test -n "$file_magic_test_file"; then 3305 1.1 mrg case $deplibs_check_method in 3306 1.1 mrg "file_magic "*) 3307 1.1 mrg file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` 3308 1.1 mrg MAGIC_CMD=$lt_cv_path_MAGIC_CMD 3309 1.1 mrg if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | 3310 1.1 mrg $EGREP "$file_magic_regex" > /dev/null; then 3311 1.1 mrg : 3312 1.1 mrg else 3313 1.1 mrg cat <<_LT_EOF 1>&2 3314 1.1 mrg 3315 1.1 mrg *** Warning: the command libtool uses to detect shared libraries, 3316 1.1 mrg *** $file_magic_cmd, produces output that libtool cannot recognize. 3317 1.1 mrg *** The result is that libtool may fail to recognize shared libraries 3318 1.1 mrg *** as such. This will affect the creation of libtool libraries that 3319 1.1 mrg *** depend on shared libraries, but programs linked with such libtool 3320 1.1 mrg *** libraries will work regardless of this problem. Nevertheless, you 3321 1.1 mrg *** may want to report the problem to your system manager and/or to 3322 1.1 mrg *** bug-libtool (a] gnu.org 3323 1.1 mrg 3324 1.1 mrg _LT_EOF 3325 1.1 mrg fi ;; 3326 1.1 mrg esac 3327 1.1 mrg fi 3328 1.1 mrg break 3329 1.1 mrg fi 3330 1.1 mrg done 3331 1.1 mrg IFS=$lt_save_ifs 3332 1.1 mrg MAGIC_CMD=$lt_save_MAGIC_CMD 3333 1.1 mrg ;; 3334 1.1 mrg esac]) 3335 1.1 mrg MAGIC_CMD=$lt_cv_path_MAGIC_CMD 3336 1.1 mrg if test -n "$MAGIC_CMD"; then 3337 1.1 mrg AC_MSG_RESULT($MAGIC_CMD) 3338 1.1 mrg else 3339 1.1 mrg AC_MSG_RESULT(no) 3340 1.1 mrg fi 3341 1.1 mrg _LT_DECL([], [MAGIC_CMD], [0], 3342 1.1 mrg [Used to examine libraries when file_magic_cmd begins with "file"])dnl 3343 1.1 mrg ])# _LT_PATH_TOOL_PREFIX 3344 1.1 mrg 3345 1.1 mrg # Old name: 3346 1.1 mrg AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX]) 3347 1.1 mrg dnl aclocal-1.4 backwards compatibility: 3348 1.1 mrg dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], []) 3349 1.1 mrg 3350 1.1 mrg 3351 1.1 mrg # _LT_PATH_MAGIC 3352 1.1 mrg # -------------- 3353 1.1 mrg # find a file program that can recognize a shared library 3354 1.1 mrg m4_defun([_LT_PATH_MAGIC], 3355 1.1 mrg [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) 3356 1.1 mrg if test -z "$lt_cv_path_MAGIC_CMD"; then 3357 1.1 mrg if test -n "$ac_tool_prefix"; then 3358 1.1 mrg _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) 3359 1.1 mrg else 3360 1.1 mrg MAGIC_CMD=: 3361 1.1 mrg fi 3362 1.1 mrg fi 3363 1.1 mrg ])# _LT_PATH_MAGIC 3364 1.1 mrg 3365 1.1 mrg 3366 1.1 mrg # LT_PATH_LD 3367 1.1 mrg # ---------- 3368 1.1 mrg # find the pathname to the GNU or non-GNU linker 3369 1.1 mrg AC_DEFUN([LT_PATH_LD], 3370 1.1 mrg [AC_REQUIRE([AC_PROG_CC])dnl 3371 1.1 mrg AC_REQUIRE([AC_CANONICAL_HOST])dnl 3372 1.1 mrg AC_REQUIRE([AC_CANONICAL_BUILD])dnl 3373 1.1 mrg m4_require([_LT_DECL_SED])dnl 3374 1.1 mrg m4_require([_LT_DECL_EGREP])dnl 3375 1.1 mrg m4_require([_LT_PROG_ECHO_BACKSLASH])dnl 3376 1.1 mrg 3377 1.1 mrg AC_ARG_WITH([gnu-ld], 3378 1.1 mrg [AS_HELP_STRING([--with-gnu-ld], 3379 1.1 mrg [assume the C compiler uses GNU ld @<:@default=no@:>@])], 3380 1.1 mrg [test no = "$withval" || with_gnu_ld=yes], 3381 1.1 mrg [with_gnu_ld=no])dnl 3382 1.1 mrg 3383 1.1 mrg ac_prog=ld 3384 1.1 mrg if test yes = "$GCC"; then 3385 1.1 mrg # Check if gcc -print-prog-name=ld gives a path. 3386 1.1 mrg AC_MSG_CHECKING([for ld used by $CC]) 3387 1.1 mrg case $host in 3388 1.1 mrg *-*-mingw* | *-*-windows*) 3389 1.1 mrg # gcc leaves a trailing carriage return, which upsets mingw 3390 1.1 mrg ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; 3391 1.1 mrg *) 3392 1.1 mrg ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; 3393 1.1 mrg esac 3394 1.1 mrg case $ac_prog in 3395 1.1 mrg # Accept absolute paths. 3396 1.1 mrg [[\\/]]* | ?:[[\\/]]*) 3397 1.1 mrg re_direlt='/[[^/]][[^/]]*/\.\./' 3398 1.1 mrg # Canonicalize the pathname of ld 3399 1.1 mrg ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` 3400 1.1 mrg while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do 3401 1.1 mrg ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` 3402 1.1 mrg done 3403 1.1 mrg test -z "$LD" && LD=$ac_prog 3404 1.1 mrg ;; 3405 1.1 mrg "") 3406 1.1 mrg # If it fails, then pretend we aren't using GCC. 3407 1.1 mrg ac_prog=ld 3408 1.1 mrg ;; 3409 1.1 mrg *) 3410 1.1 mrg # If it is relative, then search for the first ld in PATH. 3411 1.1 mrg with_gnu_ld=unknown 3412 1.1 mrg ;; 3413 1.1 mrg esac 3414 1.1 mrg elif test yes = "$with_gnu_ld"; then 3415 1.1 mrg AC_MSG_CHECKING([for GNU ld]) 3416 1.1 mrg else 3417 1.1 mrg AC_MSG_CHECKING([for non-GNU ld]) 3418 1.1 mrg fi 3419 1.1 mrg AC_CACHE_VAL(lt_cv_path_LD, 3420 1.1 mrg [if test -z "$LD"; then 3421 1.1 mrg lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR 3422 1.1 mrg for ac_dir in $PATH; do 3423 1.1 mrg IFS=$lt_save_ifs 3424 1.1 mrg test -z "$ac_dir" && ac_dir=. 3425 1.1 mrg if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then 3426 1.1 mrg lt_cv_path_LD=$ac_dir/$ac_prog 3427 1.1 mrg # Check to see if the program is GNU ld. I'd rather use --version, 3428 1.1 mrg # but apparently some variants of GNU ld only accept -v. 3429 1.1 mrg # Break only if it was the GNU/non-GNU ld that we prefer. 3430 1.1 mrg case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in 3431 1.1 mrg *GNU* | *'with BFD'*) 3432 1.1 mrg test no != "$with_gnu_ld" && break 3433 1.1 mrg ;; 3434 1.1 mrg *) 3435 1.1 mrg test yes != "$with_gnu_ld" && break 3436 1.1 mrg ;; 3437 1.1 mrg esac 3438 1.1 mrg fi 3439 1.1 mrg done 3440 1.1 mrg IFS=$lt_save_ifs 3441 1.1 mrg else 3442 1.1 mrg lt_cv_path_LD=$LD # Let the user override the test with a path. 3443 1.1 mrg fi]) 3444 1.1 mrg LD=$lt_cv_path_LD 3445 1.1 mrg if test -n "$LD"; then 3446 1.1 mrg AC_MSG_RESULT($LD) 3447 1.1 mrg else 3448 1.1 mrg AC_MSG_RESULT(no) 3449 1.1 mrg fi 3450 1.1 mrg test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) 3451 1.1 mrg _LT_PATH_LD_GNU 3452 1.1 mrg AC_SUBST([LD]) 3453 1.1 mrg 3454 1.1 mrg _LT_TAGDECL([], [LD], [1], [The linker used to build libraries]) 3455 1.1 mrg ])# LT_PATH_LD 3456 1.1 mrg 3457 1.1 mrg # Old names: 3458 1.1 mrg AU_ALIAS([AM_PROG_LD], [LT_PATH_LD]) 3459 1.1 mrg AU_ALIAS([AC_PROG_LD], [LT_PATH_LD]) 3460 1.1 mrg dnl aclocal-1.4 backwards compatibility: 3461 1.1 mrg dnl AC_DEFUN([AM_PROG_LD], []) 3462 1.1 mrg dnl AC_DEFUN([AC_PROG_LD], []) 3463 1.1 mrg 3464 1.1 mrg 3465 1.1 mrg # _LT_PATH_LD_GNU 3466 1.1 mrg #- -------------- 3467 1.1 mrg m4_defun([_LT_PATH_LD_GNU], 3468 1.1 mrg [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, 3469 1.1 mrg [# I'd rather use --version here, but apparently some GNU lds only accept -v. 3470 1.1 mrg case `$LD -v 2>&1 </dev/null` in 3471 1.1 mrg *GNU* | *'with BFD'*) 3472 1.1 mrg lt_cv_prog_gnu_ld=yes 3473 1.1 mrg ;; 3474 1.1 mrg *) 3475 1.1 mrg lt_cv_prog_gnu_ld=no 3476 1.1 mrg ;; 3477 1.1 mrg esac]) 3478 1.1 mrg with_gnu_ld=$lt_cv_prog_gnu_ld 3479 1.1 mrg ])# _LT_PATH_LD_GNU 3480 1.1 mrg 3481 1.1 mrg 3482 1.1 mrg # _LT_CMD_RELOAD 3483 1.1 mrg # -------------- 3484 1.1 mrg # find reload flag for linker 3485 1.1 mrg # -- PORTME Some linkers may need a different reload flag. 3486 1.1 mrg m4_defun([_LT_CMD_RELOAD], 3487 1.1 mrg [AC_CACHE_CHECK([for $LD option to reload object files], 3488 1.1 mrg lt_cv_ld_reload_flag, 3489 1.1 mrg [lt_cv_ld_reload_flag='-r']) 3490 1.1 mrg reload_flag=$lt_cv_ld_reload_flag 3491 1.1 mrg case $reload_flag in 3492 1.1 mrg "" | " "*) ;; 3493 1.1 mrg *) reload_flag=" $reload_flag" ;; 3494 1.1 mrg esac 3495 1.1 mrg reload_cmds='$LD$reload_flag -o $output$reload_objs' 3496 1.1 mrg case $host_os in 3497 1.1 mrg cygwin* | mingw* | windows* | pw32* | cegcc*) 3498 1.1 mrg if test yes != "$GCC"; then 3499 1.1 mrg reload_cmds=false 3500 1.1 mrg fi 3501 1.1 mrg ;; 3502 1.1 mrg darwin*) 3503 1.1 mrg if test yes = "$GCC"; then 3504 1.1 mrg reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs' 3505 1.1 mrg else 3506 1.1 mrg reload_cmds='$LD$reload_flag -o $output$reload_objs' 3507 1.1 mrg fi 3508 1.1 mrg ;; 3509 1.1 mrg esac 3510 1.1 mrg _LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl 3511 1.1 mrg _LT_TAGDECL([], [reload_cmds], [2])dnl 3512 1.1 mrg ])# _LT_CMD_RELOAD 3513 1.1 mrg 3514 1.1 mrg 3515 1.1 mrg # _LT_PATH_DD 3516 1.1 mrg # ----------- 3517 1.1 mrg # find a working dd 3518 1.1 mrg m4_defun([_LT_PATH_DD], 3519 1.1 mrg [AC_CACHE_CHECK([for a working dd], [ac_cv_path_lt_DD], 3520 1.1 mrg [printf 0123456789abcdef0123456789abcdef >conftest.i 3521 1.1 mrg cat conftest.i conftest.i >conftest2.i 3522 1.1 mrg : ${lt_DD:=$DD} 3523 1.1 mrg AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd], 3524 1.1 mrg [if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then 3525 1.1 mrg cmp -s conftest.i conftest.out \ 3526 1.1 mrg && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=: 3527 1.1 mrg fi]) 3528 1.1 mrg rm -f conftest.i conftest2.i conftest.out]) 3529 1.1 mrg ])# _LT_PATH_DD 3530 1.1 mrg 3531 1.1 mrg 3532 1.1 mrg # _LT_CMD_TRUNCATE 3533 1.1 mrg # ---------------- 3534 1.1 mrg # find command to truncate a binary pipe 3535 1.1 mrg m4_defun([_LT_CMD_TRUNCATE], 3536 1.1 mrg [m4_require([_LT_PATH_DD]) 3537 1.1 mrg AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin], 3538 1.1 mrg [printf 0123456789abcdef0123456789abcdef >conftest.i 3539 1.1 mrg cat conftest.i conftest.i >conftest2.i 3540 1.1 mrg lt_cv_truncate_bin= 3541 1.1 mrg if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then 3542 1.1 mrg cmp -s conftest.i conftest.out \ 3543 1.1 mrg && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1" 3544 1.1 mrg fi 3545 1.1 mrg rm -f conftest.i conftest2.i conftest.out 3546 1.1 mrg test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"]) 3547 1.1 mrg _LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1], 3548 1.1 mrg [Command to truncate a binary pipe]) 3549 1.1 mrg ])# _LT_CMD_TRUNCATE 3550 1.1 mrg 3551 1.1 mrg 3552 1.1 mrg # _LT_CHECK_MAGIC_METHOD 3553 1.1 mrg # ---------------------- 3554 1.1 mrg # how to check for library dependencies 3555 1.1 mrg # -- PORTME fill in with the dynamic library characteristics 3556 1.1 mrg m4_defun([_LT_CHECK_MAGIC_METHOD], 3557 1.1 mrg [m4_require([_LT_DECL_EGREP]) 3558 1.1 mrg m4_require([_LT_DECL_OBJDUMP]) 3559 1.1 mrg AC_CACHE_CHECK([how to recognize dependent libraries], 3560 1.1 mrg lt_cv_deplibs_check_method, 3561 1.1 mrg [lt_cv_file_magic_cmd='$MAGIC_CMD' 3562 1.1 mrg lt_cv_file_magic_test_file= 3563 1.1 mrg lt_cv_deplibs_check_method='unknown' 3564 1.1 mrg # Need to set the preceding variable on all platforms that support 3565 1.1 mrg # interlibrary dependencies. 3566 1.1 mrg # 'none' -- dependencies not supported. 3567 1.1 mrg # 'unknown' -- same as none, but documents that we really don't know. 3568 1.1 mrg # 'pass_all' -- all dependencies passed with no checks. 3569 1.1 mrg # 'file_magic [[regex]]' -- check by looking for files in library path 3570 1.1 mrg # that responds to the $file_magic_cmd with a given extended regex. 3571 1.1 mrg # If you have 'file' or equivalent on your system and you're not sure 3572 1.1 mrg # whether 'pass_all' will *always* work, you probably want this one. 3573 1.1 mrg 3574 1.1 mrg case $host_os in 3575 1.1 mrg aix[[4-9]]*) 3576 1.1 mrg lt_cv_deplibs_check_method=pass_all 3577 1.1 mrg ;; 3578 1.1 mrg 3579 1.1 mrg beos*) 3580 1.1 mrg lt_cv_deplibs_check_method=pass_all 3581 1.1 mrg ;; 3582 1.1 mrg 3583 1.1 mrg bsdi[[45]]*) 3584 1.1 mrg lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' 3585 1.1 mrg lt_cv_file_magic_cmd='$FILECMD -L' 3586 1.1 mrg lt_cv_file_magic_test_file=/shlib/libc.so 3587 1.1 mrg ;; 3588 1.1 mrg 3589 1.1 mrg cygwin*) 3590 1.1 mrg # func_win32_libid is a shell function defined in ltmain.sh 3591 1.1 mrg lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' 3592 1.1 mrg lt_cv_file_magic_cmd='func_win32_libid' 3593 1.1 mrg ;; 3594 1.1 mrg 3595 1.1 mrg mingw* | windows* | pw32*) 3596 1.1 mrg # Base MSYS/MinGW do not provide the 'file' command needed by 3597 1.1 mrg # func_win32_libid shell function, so use a weaker test based on 'objdump', 3598 1.1 mrg # unless we find 'file', for example because we are cross-compiling. 3599 1.1 mrg if ( file / ) >/dev/null 2>&1; then 3600 1.1 mrg lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' 3601 1.1 mrg lt_cv_file_magic_cmd='func_win32_libid' 3602 1.1 mrg else 3603 1.1 mrg # Keep this pattern in sync with the one in func_win32_libid. 3604 1.1 mrg lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64|pe-aarch64)' 3605 1.1 mrg lt_cv_file_magic_cmd='$OBJDUMP -f' 3606 1.1 mrg fi 3607 1.1 mrg ;; 3608 1.1 mrg 3609 1.1 mrg cegcc*) 3610 1.1 mrg # use the weaker test based on 'objdump'. See mingw*. 3611 1.1 mrg lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' 3612 1.1 mrg lt_cv_file_magic_cmd='$OBJDUMP -f' 3613 1.1 mrg ;; 3614 1.1 mrg 3615 1.1 mrg darwin* | rhapsody*) 3616 1.1 mrg lt_cv_deplibs_check_method=pass_all 3617 1.1 mrg ;; 3618 1.1 mrg 3619 1.1 mrg freebsd* | dragonfly* | midnightbsd*) 3620 1.1 mrg if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then 3621 1.1 mrg case $host_cpu in 3622 1.1 mrg i*86 ) 3623 1.1 mrg # Not sure whether the presence of OpenBSD here was a mistake. 3624 1.1 mrg # Let's accept both of them until this is cleared up. 3625 1.1 mrg lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' 3626 1.1 mrg lt_cv_file_magic_cmd=$FILECMD 3627 1.1 mrg lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` 3628 1.1 mrg ;; 3629 1.1 mrg esac 3630 1.1 mrg else 3631 1.1 mrg lt_cv_deplibs_check_method=pass_all 3632 1.1 mrg fi 3633 1.1 mrg ;; 3634 1.1 mrg 3635 1.1 mrg haiku*) 3636 1.1 mrg lt_cv_deplibs_check_method=pass_all 3637 1.1 mrg ;; 3638 1.1 mrg 3639 1.1 mrg hpux10.20* | hpux11*) 3640 1.1 mrg lt_cv_file_magic_cmd=$FILECMD 3641 1.1 mrg case $host_cpu in 3642 1.1 mrg ia64*) 3643 1.1 mrg lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' 3644 1.1 mrg lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so 3645 1.1 mrg ;; 3646 1.1 mrg hppa*64*) 3647 1.1 mrg [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]'] 3648 1.1 mrg lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl 3649 1.1 mrg ;; 3650 1.1 mrg *) 3651 1.1 mrg lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library' 3652 1.1 mrg lt_cv_file_magic_test_file=/usr/lib/libc.sl 3653 1.1 mrg ;; 3654 1.1 mrg esac 3655 1.1 mrg ;; 3656 1.1 mrg 3657 1.1 mrg interix[[3-9]]*) 3658 1.1 mrg # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here 3659 1.1 mrg lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$' 3660 1.1 mrg ;; 3661 1.1 mrg 3662 1.1 mrg irix5* | irix6* | nonstopux*) 3663 1.1 mrg case $LD in 3664 1.1 mrg *-32|*"-32 ") libmagic=32-bit;; 3665 1.1 mrg *-n32|*"-n32 ") libmagic=N32;; 3666 1.1 mrg *-64|*"-64 ") libmagic=64-bit;; 3667 1.1 mrg *) libmagic=never-match;; 3668 1.1 mrg esac 3669 1.1 mrg lt_cv_deplibs_check_method=pass_all 3670 1.1 mrg ;; 3671 1.1 mrg 3672 1.1 mrg # This must be glibc/ELF. 3673 1.1 mrg linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) 3674 1.1 mrg lt_cv_deplibs_check_method=pass_all 3675 1.1 mrg ;; 3676 1.1 mrg 3677 1.1 mrg *-mlibc) 3678 1.1 mrg lt_cv_deplibs_check_method=pass_all 3679 1.1 mrg ;; 3680 1.1 mrg 3681 1.1 mrg netbsd* | netbsdelf*-gnu) 3682 1.1 mrg if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then 3683 1.1 mrg lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' 3684 1.1 mrg else 3685 1.1 mrg lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' 3686 1.1 mrg fi 3687 1.1 mrg ;; 3688 1.1 mrg 3689 1.1 mrg newos6*) 3690 1.1 mrg lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' 3691 1.1 mrg lt_cv_file_magic_cmd=$FILECMD 3692 1.1 mrg lt_cv_file_magic_test_file=/usr/lib/libnls.so 3693 1.1 mrg ;; 3694 1.1 mrg 3695 1.1 mrg *nto* | *qnx*) 3696 1.1 mrg lt_cv_deplibs_check_method=pass_all 3697 1.1 mrg ;; 3698 1.1 mrg 3699 1.1 mrg openbsd*) 3700 1.1 mrg if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then 3701 1.1 mrg lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$' 3702 1.1 mrg else 3703 1.1 mrg lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' 3704 1.1 mrg fi 3705 1.1 mrg ;; 3706 1.1 mrg 3707 1.1 mrg osf3* | osf4* | osf5*) 3708 1.1 mrg lt_cv_deplibs_check_method=pass_all 3709 1.1 mrg ;; 3710 1.1 mrg 3711 1.1 mrg rdos*) 3712 1.1 mrg lt_cv_deplibs_check_method=pass_all 3713 1.1 mrg ;; 3714 1.1 mrg 3715 1.1 mrg serenity*) 3716 1.1 mrg lt_cv_deplibs_check_method=pass_all 3717 1.1 mrg ;; 3718 1.1 mrg 3719 1.1 mrg solaris*) 3720 1.1 mrg lt_cv_deplibs_check_method=pass_all 3721 1.1 mrg ;; 3722 1.1 mrg 3723 1.1 mrg sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) 3724 1.1 mrg lt_cv_deplibs_check_method=pass_all 3725 1.1 mrg ;; 3726 1.1 mrg 3727 1.1 mrg sysv4 | sysv4.3*) 3728 1.1 mrg case $host_vendor in 3729 1.1 mrg motorola) 3730 1.1 mrg 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]]' 3731 1.1 mrg lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` 3732 1.1 mrg ;; 3733 1.1 mrg ncr) 3734 1.1 mrg lt_cv_deplibs_check_method=pass_all 3735 1.1 mrg ;; 3736 1.1 mrg sequent) 3737 1.1 mrg lt_cv_file_magic_cmd='/bin/file' 3738 1.1 mrg lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' 3739 1.1 mrg ;; 3740 1.1 mrg sni) 3741 1.1 mrg lt_cv_file_magic_cmd='/bin/file' 3742 1.1 mrg lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" 3743 1.1 mrg lt_cv_file_magic_test_file=/lib/libc.so 3744 1.1 mrg ;; 3745 1.1 mrg siemens) 3746 1.1 mrg lt_cv_deplibs_check_method=pass_all 3747 1.1 mrg ;; 3748 1.1 mrg pc) 3749 1.1 mrg lt_cv_deplibs_check_method=pass_all 3750 1.1 mrg ;; 3751 1.1 mrg esac 3752 1.1 mrg ;; 3753 1.1 mrg 3754 1.1 mrg tpf*) 3755 1.1 mrg lt_cv_deplibs_check_method=pass_all 3756 1.1 mrg ;; 3757 1.1 mrg os2*) 3758 1.1 mrg lt_cv_deplibs_check_method=pass_all 3759 1.1 mrg ;; 3760 1.1 mrg esac 3761 1.1 mrg ]) 3762 1.1 mrg 3763 1.1 mrg file_magic_glob= 3764 1.1 mrg want_nocaseglob=no 3765 1.1 mrg if test "$build" = "$host"; then 3766 1.1 mrg case $host_os in 3767 1.1 mrg mingw* | windows* | pw32*) 3768 1.1 mrg if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then 3769 1.1 mrg want_nocaseglob=yes 3770 1.1 mrg else 3771 1.1 mrg file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"` 3772 1.1 mrg fi 3773 1.1 mrg ;; 3774 1.1 mrg esac 3775 1.1 mrg fi 3776 1.1 mrg 3777 1.1 mrg file_magic_cmd=$lt_cv_file_magic_cmd 3778 1.1 mrg deplibs_check_method=$lt_cv_deplibs_check_method 3779 1.1 mrg test -z "$deplibs_check_method" && deplibs_check_method=unknown 3780 1.1 mrg 3781 1.1 mrg _LT_DECL([], [deplibs_check_method], [1], 3782 1.1 mrg [Method to check whether dependent libraries are shared objects]) 3783 1.1 mrg _LT_DECL([], [file_magic_cmd], [1], 3784 1.1 mrg [Command to use when deplibs_check_method = "file_magic"]) 3785 1.1 mrg _LT_DECL([], [file_magic_glob], [1], 3786 1.1 mrg [How to find potential files when deplibs_check_method = "file_magic"]) 3787 1.1 mrg _LT_DECL([], [want_nocaseglob], [1], 3788 1.1 mrg [Find potential files using nocaseglob when deplibs_check_method = "file_magic"]) 3789 1.1 mrg ])# _LT_CHECK_MAGIC_METHOD 3790 1.1 mrg 3791 1.1 mrg 3792 1.1 mrg # LT_PATH_NM 3793 1.1 mrg # ---------- 3794 1.1 mrg # find the pathname to a BSD- or MS-compatible name lister 3795 1.1 mrg AC_DEFUN([LT_PATH_NM], 3796 1.1 mrg [AC_REQUIRE([AC_PROG_CC])dnl 3797 1.1 mrg AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM, 3798 1.1 mrg [if test -n "$NM"; then 3799 1.1 mrg # Let the user override the test. 3800 1.1 mrg lt_cv_path_NM=$NM 3801 1.1 mrg else 3802 1.1 mrg lt_nm_to_check=${ac_tool_prefix}nm 3803 1.1 mrg if test -n "$ac_tool_prefix" && test "$build" = "$host"; then 3804 1.1 mrg lt_nm_to_check="$lt_nm_to_check nm" 3805 1.1 mrg fi 3806 1.1 mrg for lt_tmp_nm in $lt_nm_to_check; do 3807 1.1 mrg lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR 3808 1.1 mrg for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do 3809 1.1 mrg IFS=$lt_save_ifs 3810 1.1 mrg test -z "$ac_dir" && ac_dir=. 3811 1.1 mrg tmp_nm=$ac_dir/$lt_tmp_nm 3812 1.1 mrg if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then 3813 1.1 mrg # Check to see if the nm accepts a BSD-compat flag. 3814 1.1 mrg # Adding the 'sed 1q' prevents false positives on HP-UX, which says: 3815 1.1 mrg # nm: unknown option "B" ignored 3816 1.1 mrg # Tru64's nm complains that /dev/null is an invalid object file 3817 1.1 mrg # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty 3818 1.1 mrg case $build_os in 3819 1.1 mrg mingw* | windows*) lt_bad_file=conftest.nm/nofile ;; 3820 1.1 mrg *) lt_bad_file=/dev/null ;; 3821 1.1 mrg esac 3822 1.1 mrg case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in 3823 1.1 mrg *$lt_bad_file* | *'Invalid file or object type'*) 3824 1.1 mrg lt_cv_path_NM="$tmp_nm -B" 3825 1.1 mrg break 2 3826 1.1 mrg ;; 3827 1.1 mrg *) 3828 1.1 mrg case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in 3829 1.1 mrg */dev/null*) 3830 1.1 mrg lt_cv_path_NM="$tmp_nm -p" 3831 1.1 mrg break 2 3832 1.1 mrg ;; 3833 1.1 mrg *) 3834 1.1 mrg lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but 3835 1.1 mrg continue # so that we can try to find one that supports BSD flags 3836 1.1 mrg ;; 3837 1.1 mrg esac 3838 1.1 mrg ;; 3839 1.1 mrg esac 3840 1.1 mrg fi 3841 1.1 mrg done 3842 1.1 mrg IFS=$lt_save_ifs 3843 1.1 mrg done 3844 1.1 mrg : ${lt_cv_path_NM=no} 3845 1.1 mrg fi]) 3846 1.1 mrg if test no != "$lt_cv_path_NM"; then 3847 1.1 mrg NM=$lt_cv_path_NM 3848 1.1 mrg else 3849 1.1 mrg # Didn't find any BSD compatible name lister, look for dumpbin. 3850 1.1 mrg if test -n "$DUMPBIN"; then : 3851 1.1 mrg # Let the user override the test. 3852 1.1 mrg else 3853 1.1 mrg AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :) 3854 1.1 mrg case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in 3855 1.1 mrg *COFF*) 3856 1.1 mrg DUMPBIN="$DUMPBIN -symbols -headers" 3857 1.1 mrg ;; 3858 1.1 mrg *) 3859 1.1 mrg DUMPBIN=: 3860 1.1 mrg ;; 3861 1.1 mrg esac 3862 1.1 mrg fi 3863 1.1 mrg AC_SUBST([DUMPBIN]) 3864 1.1 mrg if test : != "$DUMPBIN"; then 3865 1.1 mrg NM=$DUMPBIN 3866 1.1 mrg fi 3867 1.1 mrg fi 3868 1.1 mrg test -z "$NM" && NM=nm 3869 1.1 mrg AC_SUBST([NM]) 3870 1.1 mrg _LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl 3871 1.1 mrg 3872 1.1 mrg AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface], 3873 1.1 mrg [lt_cv_nm_interface="BSD nm" 3874 1.1 mrg echo "int some_variable = 0;" > conftest.$ac_ext 3875 1.1 mrg (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD) 3876 1.1 mrg (eval "$ac_compile" 2>conftest.err) 3877 1.1 mrg cat conftest.err >&AS_MESSAGE_LOG_FD 3878 1.1 mrg (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD) 3879 1.1 mrg (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) 3880 1.1 mrg cat conftest.err >&AS_MESSAGE_LOG_FD 3881 1.1 mrg (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD) 3882 1.1 mrg cat conftest.out >&AS_MESSAGE_LOG_FD 3883 1.1 mrg if $GREP 'External.*some_variable' conftest.out > /dev/null; then 3884 1.1 mrg lt_cv_nm_interface="MS dumpbin" 3885 1.1 mrg fi 3886 1.1 mrg rm -f conftest*]) 3887 1.1 mrg ])# LT_PATH_NM 3888 1.1 mrg 3889 1.1 mrg # Old names: 3890 1.1 mrg AU_ALIAS([AM_PROG_NM], [LT_PATH_NM]) 3891 1.1 mrg AU_ALIAS([AC_PROG_NM], [LT_PATH_NM]) 3892 1.1 mrg dnl aclocal-1.4 backwards compatibility: 3893 1.1 mrg dnl AC_DEFUN([AM_PROG_NM], []) 3894 1.1 mrg dnl AC_DEFUN([AC_PROG_NM], []) 3895 1.1 mrg 3896 1.1 mrg # _LT_CHECK_SHAREDLIB_FROM_LINKLIB 3897 1.1 mrg # -------------------------------- 3898 1.1 mrg # how to determine the name of the shared library 3899 1.1 mrg # associated with a specific link library. 3900 1.1 mrg # -- PORTME fill in with the dynamic library characteristics 3901 1.1 mrg m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB], 3902 1.1 mrg [m4_require([_LT_DECL_EGREP]) 3903 1.1 mrg m4_require([_LT_DECL_OBJDUMP]) 3904 1.1 mrg m4_require([_LT_DECL_DLLTOOL]) 3905 1.1 mrg AC_CACHE_CHECK([how to associate runtime and link libraries], 3906 1.1 mrg lt_cv_sharedlib_from_linklib_cmd, 3907 1.1 mrg [lt_cv_sharedlib_from_linklib_cmd='unknown' 3908 1.1 mrg 3909 1.1 mrg case $host_os in 3910 1.1 mrg cygwin* | mingw* | windows* | pw32* | cegcc*) 3911 1.1 mrg # two different shell functions defined in ltmain.sh; 3912 1.1 mrg # decide which one to use based on capabilities of $DLLTOOL 3913 1.1 mrg case `$DLLTOOL --help 2>&1` in 3914 1.1 mrg *--identify-strict*) 3915 1.1 mrg lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib 3916 1.1 mrg ;; 3917 1.1 mrg *) 3918 1.1 mrg lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback 3919 1.1 mrg ;; 3920 1.1 mrg esac 3921 1.1 mrg ;; 3922 1.1 mrg *) 3923 1.1 mrg # fallback: assume linklib IS sharedlib 3924 1.1 mrg lt_cv_sharedlib_from_linklib_cmd=$ECHO 3925 1.1 mrg ;; 3926 1.1 mrg esac 3927 1.1 mrg ]) 3928 1.1 mrg sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd 3929 1.1 mrg test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO 3930 1.1 mrg 3931 1.1 mrg _LT_DECL([], [sharedlib_from_linklib_cmd], [1], 3932 1.1 mrg [Command to associate shared and link libraries]) 3933 1.1 mrg ])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB 3934 1.1 mrg 3935 1.1 mrg 3936 1.1 mrg # _LT_PATH_MANIFEST_TOOL 3937 1.1 mrg # ---------------------- 3938 1.1 mrg # locate the manifest tool 3939 1.1 mrg m4_defun([_LT_PATH_MANIFEST_TOOL], 3940 1.1 mrg [AC_CHECK_TOOL(MANIFEST_TOOL, mt, :) 3941 1.1 mrg test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt 3942 1.1 mrg AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_manifest_tool], 3943 1.1 mrg [lt_cv_path_manifest_tool=no 3944 1.1 mrg echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD 3945 1.1 mrg $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out 3946 1.1 mrg cat conftest.err >&AS_MESSAGE_LOG_FD 3947 1.1 mrg if $GREP 'Manifest Tool' conftest.out > /dev/null; then 3948 1.1 mrg lt_cv_path_manifest_tool=yes 3949 1.1 mrg fi 3950 1.1 mrg rm -f conftest*]) 3951 1.1 mrg if test yes != "$lt_cv_path_manifest_tool"; then 3952 1.1 mrg MANIFEST_TOOL=: 3953 1.1 mrg fi 3954 1.1 mrg _LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl 3955 1.1 mrg ])# _LT_PATH_MANIFEST_TOOL 3956 1.1 mrg 3957 1.1 mrg 3958 1.1 mrg # _LT_DLL_DEF_P([FILE]) 3959 1.1 mrg # --------------------- 3960 1.1 mrg # True iff FILE is a Windows DLL '.def' file. 3961 1.1 mrg # Keep in sync with func_dll_def_p in the libtool script 3962 1.1 mrg AC_DEFUN([_LT_DLL_DEF_P], 3963 1.1 mrg [dnl 3964 1.1 mrg test DEF = "`$SED -n dnl 3965 1.1 mrg -e '\''s/^[[ ]]*//'\'' dnl Strip leading whitespace 3966 1.1 mrg -e '\''/^\(;.*\)*$/d'\'' dnl Delete empty lines and comments 3967 1.1 mrg -e '\''s/^\(EXPORTS\|LIBRARY\)\([[ ]].*\)*$/DEF/p'\'' dnl 3968 1.1 mrg -e q dnl Only consider the first "real" line 3969 1.1 mrg $1`" dnl 3970 1.1 mrg ])# _LT_DLL_DEF_P 3971 1.1 mrg 3972 1.1 mrg 3973 1.1 mrg # LT_LIB_M 3974 1.1 mrg # -------- 3975 1.1 mrg # check for math library 3976 1.1 mrg AC_DEFUN([LT_LIB_M], 3977 1.1 mrg [AC_REQUIRE([AC_CANONICAL_HOST])dnl 3978 1.1 mrg LIBM= 3979 1.1 mrg case $host in 3980 1.1 mrg *-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-mingw* | *-*-pw32* | *-*-darwin*) 3981 1.1 mrg # These system don't have libm, or don't need it 3982 1.1 mrg ;; 3983 1.1 mrg *-ncr-sysv4.3*) 3984 1.1 mrg AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw) 3985 1.1 mrg AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") 3986 1.1 mrg ;; 3987 1.1 mrg *) 3988 1.1 mrg AC_CHECK_LIB(m, cos, LIBM=-lm) 3989 1.1 mrg ;; 3990 1.1 mrg esac 3991 1.1 mrg AC_SUBST([LIBM]) 3992 1.1 mrg ])# LT_LIB_M 3993 1.1 mrg 3994 1.1 mrg # Old name: 3995 1.1 mrg AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M]) 3996 1.1 mrg dnl aclocal-1.4 backwards compatibility: 3997 1.1 mrg dnl AC_DEFUN([AC_CHECK_LIBM], []) 3998 1.1 mrg 3999 1.1 mrg 4000 1.1 mrg # _LT_COMPILER_NO_RTTI([TAGNAME]) 4001 1.1 mrg # ------------------------------- 4002 1.1 mrg m4_defun([_LT_COMPILER_NO_RTTI], 4003 1.1 mrg [m4_require([_LT_TAG_COMPILER])dnl 4004 1.1 mrg 4005 1.1 mrg _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= 4006 1.1 mrg 4007 1.1 mrg if test yes = "$GCC"; then 4008 1.1 mrg case $cc_basename in 4009 1.1 mrg nvcc*) 4010 1.1 mrg _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;; 4011 1.1 mrg *) 4012 1.1 mrg _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;; 4013 1.1 mrg esac 4014 1.1 mrg 4015 1.1 mrg _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], 4016 1.1 mrg lt_cv_prog_compiler_rtti_exceptions, 4017 1.1 mrg [-fno-rtti -fno-exceptions], [], 4018 1.1 mrg [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) 4019 1.1 mrg fi 4020 1.1 mrg _LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1], 4021 1.1 mrg [Compiler flag to turn off builtin functions]) 4022 1.1 mrg ])# _LT_COMPILER_NO_RTTI 4023 1.1 mrg 4024 1.1 mrg 4025 1.1 mrg # _LT_CMD_GLOBAL_SYMBOLS 4026 1.1 mrg # ---------------------- 4027 1.1 mrg m4_defun([_LT_CMD_GLOBAL_SYMBOLS], 4028 1.1 mrg [AC_REQUIRE([AC_CANONICAL_HOST])dnl 4029 1.1 mrg AC_REQUIRE([AC_PROG_CC])dnl 4030 1.1 mrg AC_REQUIRE([AC_PROG_AWK])dnl 4031 1.1 mrg AC_REQUIRE([LT_PATH_NM])dnl 4032 1.1 mrg AC_REQUIRE([LT_PATH_LD])dnl 4033 1.1 mrg m4_require([_LT_DECL_SED])dnl 4034 1.1 mrg m4_require([_LT_DECL_EGREP])dnl 4035 1.1 mrg m4_require([_LT_TAG_COMPILER])dnl 4036 1.1 mrg 4037 1.1 mrg # Check for command to grab the raw symbol name followed by C symbol from nm. 4038 1.1 mrg AC_MSG_CHECKING([command to parse $NM output from $compiler object]) 4039 1.1 mrg AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], 4040 1.1 mrg [ 4041 1.1 mrg # These are sane defaults that work on at least a few old systems. 4042 1.1 mrg # [They come from Ultrix. What could be older than Ultrix?!! ;)] 4043 1.1 mrg 4044 1.1 mrg # Character class describing NM global symbol codes. 4045 1.1 mrg symcode='[[BCDEGRST]]' 4046 1.1 mrg 4047 1.1 mrg # Regexp to match symbols that can be accessed directly from C. 4048 1.1 mrg sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' 4049 1.1 mrg 4050 1.1 mrg # Define system-specific variables. 4051 1.1 mrg case $host_os in 4052 1.1 mrg aix*) 4053 1.1 mrg symcode='[[BCDT]]' 4054 1.1 mrg ;; 4055 1.1 mrg cygwin* | mingw* | windows* | pw32* | cegcc*) 4056 1.1 mrg symcode='[[ABCDGISTW]]' 4057 1.1 mrg ;; 4058 1.1 mrg hpux*) 4059 1.1 mrg if test ia64 = "$host_cpu"; then 4060 1.1 mrg symcode='[[ABCDEGRST]]' 4061 1.1 mrg fi 4062 1.1 mrg ;; 4063 1.1 mrg irix* | nonstopux*) 4064 1.1 mrg symcode='[[BCDEGRST]]' 4065 1.1 mrg ;; 4066 1.1 mrg osf*) 4067 1.1 mrg symcode='[[BCDEGQRST]]' 4068 1.1 mrg ;; 4069 1.1 mrg solaris*) 4070 1.1 mrg symcode='[[BCDRT]]' 4071 1.1 mrg ;; 4072 1.1 mrg sco3.2v5*) 4073 1.1 mrg symcode='[[DT]]' 4074 1.1 mrg ;; 4075 1.1 mrg sysv4.2uw2*) 4076 1.1 mrg symcode='[[DT]]' 4077 1.1 mrg ;; 4078 1.1 mrg sysv5* | sco5v6* | unixware* | OpenUNIX*) 4079 1.1 mrg symcode='[[ABDT]]' 4080 1.1 mrg ;; 4081 1.1 mrg sysv4) 4082 1.1 mrg symcode='[[DFNSTU]]' 4083 1.1 mrg ;; 4084 1.1 mrg esac 4085 1.1 mrg 4086 1.1 mrg # If we're using GNU nm, then use its standard symbol codes. 4087 1.1 mrg case `$NM -V 2>&1` in 4088 1.1 mrg *GNU* | *'with BFD'*) 4089 1.1 mrg symcode='[[ABCDGIRSTW]]' ;; 4090 1.1 mrg esac 4091 1.1 mrg 4092 1.1 mrg if test "$lt_cv_nm_interface" = "MS dumpbin"; then 4093 1.1 mrg # Gets list of data symbols to import. 4094 1.1 mrg lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'" 4095 1.1 mrg # Adjust the below global symbol transforms to fixup imported variables. 4096 1.1 mrg lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" 4097 1.1 mrg lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" 4098 1.1 mrg lt_c_name_lib_hook="\ 4099 1.1 mrg -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\ 4100 1.1 mrg -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'" 4101 1.1 mrg else 4102 1.1 mrg # Disable hooks by default. 4103 1.1 mrg lt_cv_sys_global_symbol_to_import= 4104 1.1 mrg lt_cdecl_hook= 4105 1.1 mrg lt_c_name_hook= 4106 1.1 mrg lt_c_name_lib_hook= 4107 1.1 mrg fi 4108 1.1 mrg 4109 1.1 mrg # Transform an extracted symbol line into a proper C declaration. 4110 1.1 mrg # Some systems (esp. on ia64) link data and code symbols differently, 4111 1.1 mrg # so use this general approach. 4112 1.1 mrg lt_cv_sys_global_symbol_to_cdecl="$SED -n"\ 4113 1.1 mrg $lt_cdecl_hook\ 4114 1.1 mrg " -e 's/^T .* \(.*\)$/extern int \1();/p'"\ 4115 1.1 mrg " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" 4116 1.1 mrg 4117 1.1 mrg # Transform an extracted symbol line into symbol name and symbol address 4118 1.1 mrg lt_cv_sys_global_symbol_to_c_name_address="$SED -n"\ 4119 1.1 mrg $lt_c_name_hook\ 4120 1.1 mrg " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ 4121 1.1 mrg " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" 4122 1.1 mrg 4123 1.1 mrg # Transform an extracted symbol line into symbol name with lib prefix and 4124 1.1 mrg # symbol address. 4125 1.1 mrg lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\ 4126 1.1 mrg $lt_c_name_lib_hook\ 4127 1.1 mrg " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ 4128 1.1 mrg " -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ 4129 1.1 mrg " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'" 4130 1.1 mrg 4131 1.1 mrg # Handle CRLF in mingw tool chain 4132 1.1 mrg opt_cr= 4133 1.1 mrg case $build_os in 4134 1.1 mrg mingw* | windows*) 4135 1.1 mrg opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp 4136 1.1 mrg ;; 4137 1.1 mrg esac 4138 1.1 mrg 4139 1.1 mrg # Try without a prefix underscore, then with it. 4140 1.1 mrg for ac_symprfx in "" "_"; do 4141 1.1 mrg 4142 1.1 mrg # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. 4143 1.1 mrg symxfrm="\\1 $ac_symprfx\\2 \\2" 4144 1.1 mrg 4145 1.1 mrg # Write the raw and C identifiers. 4146 1.1 mrg if test "$lt_cv_nm_interface" = "MS dumpbin"; then 4147 1.1 mrg # Fake it for dumpbin and say T for any non-static function, 4148 1.1 mrg # D for any global variable and I for any imported variable. 4149 1.1 mrg # Also find C++ and __fastcall symbols from MSVC++ or ICC, 4150 1.1 mrg # which start with @ or ?. 4151 1.1 mrg lt_cv_sys_global_symbol_pipe="$AWK ['"\ 4152 1.1 mrg " {last_section=section; section=\$ 3};"\ 4153 1.1 mrg " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ 4154 1.1 mrg " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ 4155 1.1 mrg " /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\ 4156 1.1 mrg " /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\ 4157 1.1 mrg " /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\ 4158 1.1 mrg " \$ 0!~/External *\|/{next};"\ 4159 1.1 mrg " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ 4160 1.1 mrg " {if(hide[section]) next};"\ 4161 1.1 mrg " {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\ 4162 1.1 mrg " {split(\$ 0,a,/\||\r/); split(a[2],s)};"\ 4163 1.1 mrg " s[1]~/^[@?]/{print f,s[1],s[1]; next};"\ 4164 1.1 mrg " s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ 4165 1.1 mrg " ' prfx=^$ac_symprfx]" 4166 1.1 mrg else 4167 1.1 mrg lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" 4168 1.1 mrg fi 4169 1.1 mrg lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'" 4170 1.1 mrg 4171 1.1 mrg # Check to see that the pipe works correctly. 4172 1.1 mrg pipe_works=no 4173 1.1 mrg 4174 1.1 mrg rm -f conftest* 4175 1.1 mrg cat > conftest.$ac_ext <<_LT_EOF 4176 1.1 mrg #ifdef __cplusplus 4177 1.1 mrg extern "C" { 4178 1.1 mrg #endif 4179 1.1 mrg char nm_test_var; 4180 1.1 mrg void nm_test_func(void); 4181 1.1 mrg void nm_test_func(void){} 4182 1.1 mrg #ifdef __cplusplus 4183 1.1 mrg } 4184 1.1 mrg #endif 4185 1.1 mrg int main(void){nm_test_var='a';nm_test_func();return(0);} 4186 1.1 mrg _LT_EOF 4187 1.1 mrg 4188 1.1 mrg if AC_TRY_EVAL(ac_compile); then 4189 1.1 mrg # Now try to grab the symbols. 4190 1.1 mrg nlist=conftest.nm 4191 1.1 mrg $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&AS_MESSAGE_LOG_FD 4192 1.1 mrg if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&AS_MESSAGE_LOG_FD && test -s "$nlist"; then 4193 1.1 mrg # Try sorting and uniquifying the output. 4194 1.1 mrg if sort "$nlist" | uniq > "$nlist"T; then 4195 1.1 mrg mv -f "$nlist"T "$nlist" 4196 1.1 mrg else 4197 1.1 mrg rm -f "$nlist"T 4198 1.1 mrg fi 4199 1.1 mrg 4200 1.1 mrg # Make sure that we snagged all the symbols we need. 4201 1.1 mrg if $GREP ' nm_test_var$' "$nlist" >/dev/null; then 4202 1.1 mrg if $GREP ' nm_test_func$' "$nlist" >/dev/null; then 4203 1.1 mrg cat <<_LT_EOF > conftest.$ac_ext 4204 1.1 mrg /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ 4205 1.1 mrg #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE 4206 1.1 mrg /* DATA imports from DLLs on WIN32 can't be const, because runtime 4207 1.1 mrg relocations are performed -- see ld's documentation on pseudo-relocs. */ 4208 1.1 mrg # define LT@&t@_DLSYM_CONST 4209 1.1 mrg #elif defined __osf__ 4210 1.1 mrg /* This system does not cope well with relocations in const data. */ 4211 1.1 mrg # define LT@&t@_DLSYM_CONST 4212 1.1 mrg #else 4213 1.1 mrg # define LT@&t@_DLSYM_CONST const 4214 1.1 mrg #endif 4215 1.1 mrg 4216 1.1 mrg #ifdef __cplusplus 4217 1.1 mrg extern "C" { 4218 1.1 mrg #endif 4219 1.1 mrg 4220 1.1 mrg _LT_EOF 4221 1.1 mrg # Now generate the symbol file. 4222 1.1 mrg eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' 4223 1.1 mrg 4224 1.1 mrg cat <<_LT_EOF >> conftest.$ac_ext 4225 1.1 mrg 4226 1.1 mrg /* The mapping between symbol names and symbols. */ 4227 1.1 mrg LT@&t@_DLSYM_CONST struct { 4228 1.1 mrg const char *name; 4229 1.1 mrg void *address; 4230 1.1 mrg } 4231 1.1 mrg lt__PROGRAM__LTX_preloaded_symbols[[]] = 4232 1.1 mrg { 4233 1.1 mrg { "@PROGRAM@", (void *) 0 }, 4234 1.1 mrg _LT_EOF 4235 1.1 mrg $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext 4236 1.1 mrg cat <<\_LT_EOF >> conftest.$ac_ext 4237 1.1 mrg {0, (void *) 0} 4238 1.1 mrg }; 4239 1.1 mrg 4240 1.1 mrg /* This works around a problem in FreeBSD linker */ 4241 1.1 mrg #ifdef FREEBSD_WORKAROUND 4242 1.1 mrg static const void *lt_preloaded_setup() { 4243 1.1 mrg return lt__PROGRAM__LTX_preloaded_symbols; 4244 1.1 mrg } 4245 1.1 mrg #endif 4246 1.1 mrg 4247 1.1 mrg #ifdef __cplusplus 4248 1.1 mrg } 4249 1.1 mrg #endif 4250 1.1 mrg _LT_EOF 4251 1.1 mrg # Now try linking the two files. 4252 1.1 mrg mv conftest.$ac_objext conftstm.$ac_objext 4253 1.1 mrg lt_globsym_save_LIBS=$LIBS 4254 1.1 mrg lt_globsym_save_CFLAGS=$CFLAGS 4255 1.1 mrg LIBS=conftstm.$ac_objext 4256 1.1 mrg CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" 4257 1.1 mrg if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then 4258 1.1 mrg pipe_works=yes 4259 1.1 mrg fi 4260 1.1 mrg LIBS=$lt_globsym_save_LIBS 4261 1.1 mrg CFLAGS=$lt_globsym_save_CFLAGS 4262 1.1 mrg else 4263 1.1 mrg echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD 4264 1.1 mrg fi 4265 1.1 mrg else 4266 1.1 mrg echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD 4267 1.1 mrg fi 4268 1.1 mrg else 4269 1.1 mrg echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD 4270 1.1 mrg fi 4271 1.1 mrg else 4272 1.1 mrg echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD 4273 1.1 mrg cat conftest.$ac_ext >&5 4274 1.1 mrg fi 4275 1.1 mrg rm -rf conftest* conftst* 4276 1.1 mrg 4277 1.1 mrg # Do not use the global_symbol_pipe unless it works. 4278 1.1 mrg if test yes = "$pipe_works"; then 4279 1.1 mrg break 4280 1.1 mrg else 4281 1.1 mrg lt_cv_sys_global_symbol_pipe= 4282 1.1 mrg fi 4283 1.1 mrg done 4284 1.1 mrg ]) 4285 1.1 mrg if test -z "$lt_cv_sys_global_symbol_pipe"; then 4286 1.1 mrg lt_cv_sys_global_symbol_to_cdecl= 4287 1.1 mrg fi 4288 1.1 mrg if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then 4289 1.1 mrg AC_MSG_RESULT(failed) 4290 1.1 mrg else 4291 1.1 mrg AC_MSG_RESULT(ok) 4292 1.1 mrg fi 4293 1.1 mrg 4294 1.1 mrg # Response file support. 4295 1.1 mrg if test "$lt_cv_nm_interface" = "MS dumpbin"; then 4296 1.1 mrg nm_file_list_spec='@' 4297 1.1 mrg elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then 4298 1.1 mrg nm_file_list_spec='@' 4299 1.1 mrg fi 4300 1.1 mrg 4301 1.1 mrg _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1], 4302 1.1 mrg [Take the output of nm and produce a listing of raw symbols and C names]) 4303 1.1 mrg _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1], 4304 1.1 mrg [Transform the output of nm in a proper C declaration]) 4305 1.1 mrg _LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1], 4306 1.1 mrg [Transform the output of nm into a list of symbols to manually relocate]) 4307 1.1 mrg _LT_DECL([global_symbol_to_c_name_address], 4308 1.1 mrg [lt_cv_sys_global_symbol_to_c_name_address], [1], 4309 1.1 mrg [Transform the output of nm in a C name address pair]) 4310 1.1 mrg _LT_DECL([global_symbol_to_c_name_address_lib_prefix], 4311 1.1 mrg [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1], 4312 1.1 mrg [Transform the output of nm in a C name address pair when lib prefix is needed]) 4313 1.1 mrg _LT_DECL([nm_interface], [lt_cv_nm_interface], [1], 4314 1.1 mrg [The name lister interface]) 4315 1.1 mrg _LT_DECL([], [nm_file_list_spec], [1], 4316 1.1 mrg [Specify filename containing input files for $NM]) 4317 1.1 mrg ]) # _LT_CMD_GLOBAL_SYMBOLS 4318 1.1 mrg 4319 1.1 mrg 4320 1.1 mrg # _LT_COMPILER_PIC([TAGNAME]) 4321 1.1 mrg # --------------------------- 4322 1.1 mrg m4_defun([_LT_COMPILER_PIC], 4323 1.1 mrg [m4_require([_LT_TAG_COMPILER])dnl 4324 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)= 4325 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)= 4326 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)= 4327 1.1 mrg 4328 1.1 mrg m4_if([$1], [CXX], [ 4329 1.1 mrg # C++ specific cases for pic, static, wl, etc. 4330 1.1 mrg if test yes = "$GXX"; then 4331 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4332 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 4333 1.1 mrg 4334 1.1 mrg case $host_os in 4335 1.1 mrg aix*) 4336 1.1 mrg # All AIX code is PIC. 4337 1.1 mrg if test ia64 = "$host_cpu"; then 4338 1.1 mrg # AIX 5 now supports IA64 processor 4339 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4340 1.1 mrg fi 4341 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4342 1.1 mrg ;; 4343 1.1 mrg 4344 1.1 mrg amigaos*) 4345 1.1 mrg case $host_cpu in 4346 1.1 mrg powerpc) 4347 1.1 mrg # see comment about AmigaOS4 .so support 4348 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4349 1.1 mrg ;; 4350 1.1 mrg m68k) 4351 1.1 mrg # FIXME: we need at least 68020 code to build shared libraries, but 4352 1.1 mrg # adding the '-m68020' flag to GCC prevents building anything better, 4353 1.1 mrg # like '-m68040'. 4354 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' 4355 1.1 mrg ;; 4356 1.1 mrg esac 4357 1.1 mrg ;; 4358 1.1 mrg 4359 1.1 mrg beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) 4360 1.1 mrg # PIC is the default for these OSes. 4361 1.1 mrg ;; 4362 1.1 mrg mingw* | windows* | cygwin* | os2* | pw32* | cegcc*) 4363 1.1 mrg # This hack is so that the source file can tell whether it is being 4364 1.1 mrg # built for inclusion in a dll (and should export symbols for example). 4365 1.1 mrg # Although the cygwin gcc ignores -fPIC, still need this for old-style 4366 1.1 mrg # (--disable-auto-import) libraries 4367 1.1 mrg m4_if([$1], [GCJ], [], 4368 1.1 mrg [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) 4369 1.1 mrg case $host_os in 4370 1.1 mrg os2*) 4371 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' 4372 1.1 mrg ;; 4373 1.1 mrg esac 4374 1.1 mrg ;; 4375 1.1 mrg darwin* | rhapsody*) 4376 1.1 mrg # PIC is the default on this platform 4377 1.1 mrg # Common symbols not allowed in MH_DYLIB files 4378 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' 4379 1.1 mrg ;; 4380 1.1 mrg *djgpp*) 4381 1.1 mrg # DJGPP does not support shared libraries at all 4382 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)= 4383 1.1 mrg ;; 4384 1.1 mrg haiku*) 4385 1.1 mrg # PIC is the default for Haiku. 4386 1.1 mrg # The "-static" flag exists, but is broken. 4387 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)= 4388 1.1 mrg ;; 4389 1.1 mrg interix[[3-9]]*) 4390 1.1 mrg # Interix 3.x gcc -fpic/-fPIC options generate broken code. 4391 1.1 mrg # Instead, we relocate shared libraries at runtime. 4392 1.1 mrg ;; 4393 1.1 mrg sysv4*MP*) 4394 1.1 mrg if test -d /usr/nec; then 4395 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic 4396 1.1 mrg fi 4397 1.1 mrg ;; 4398 1.1 mrg hpux*) 4399 1.1 mrg # PIC is the default for 64-bit PA HP-UX, but not for 32-bit 4400 1.1 mrg # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag 4401 1.1 mrg # sets the default TLS model and affects inlining. 4402 1.1 mrg case $host_cpu in 4403 1.1 mrg hppa*64*) 4404 1.1 mrg ;; 4405 1.1 mrg *) 4406 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4407 1.1 mrg ;; 4408 1.1 mrg esac 4409 1.1 mrg ;; 4410 1.1 mrg *qnx* | *nto*) 4411 1.1 mrg # QNX uses GNU C++, but need to define -shared option too, otherwise 4412 1.1 mrg # it will coredump. 4413 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' 4414 1.1 mrg ;; 4415 1.1 mrg *) 4416 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4417 1.1 mrg ;; 4418 1.1 mrg esac 4419 1.1 mrg else 4420 1.1 mrg case $host_os in 4421 1.1 mrg aix[[4-9]]*) 4422 1.1 mrg # All AIX code is PIC. 4423 1.1 mrg if test ia64 = "$host_cpu"; then 4424 1.1 mrg # AIX 5 now supports IA64 processor 4425 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4426 1.1 mrg else 4427 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' 4428 1.1 mrg fi 4429 1.1 mrg ;; 4430 1.1 mrg chorus*) 4431 1.1 mrg case $cc_basename in 4432 1.1 mrg cxch68*) 4433 1.1 mrg # Green Hills C++ Compiler 4434 1.1 mrg # _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" 4435 1.1 mrg ;; 4436 1.1 mrg esac 4437 1.1 mrg ;; 4438 1.1 mrg mingw* | windows* | cygwin* | os2* | pw32* | cegcc*) 4439 1.1 mrg # This hack is so that the source file can tell whether it is being 4440 1.1 mrg # built for inclusion in a dll (and should export symbols for example). 4441 1.1 mrg m4_if([$1], [GCJ], [], 4442 1.1 mrg [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) 4443 1.1 mrg ;; 4444 1.1 mrg dgux*) 4445 1.1 mrg case $cc_basename in 4446 1.1 mrg ec++*) 4447 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4448 1.1 mrg ;; 4449 1.1 mrg ghcx*) 4450 1.1 mrg # Green Hills C++ Compiler 4451 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' 4452 1.1 mrg ;; 4453 1.1 mrg *) 4454 1.1 mrg ;; 4455 1.1 mrg esac 4456 1.1 mrg ;; 4457 1.1 mrg freebsd* | dragonfly* | midnightbsd*) 4458 1.1 mrg # FreeBSD uses GNU C++ 4459 1.1 mrg ;; 4460 1.1 mrg hpux9* | hpux10* | hpux11*) 4461 1.1 mrg case $cc_basename in 4462 1.1 mrg CC*) 4463 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4464 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' 4465 1.1 mrg if test ia64 != "$host_cpu"; then 4466 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' 4467 1.1 mrg fi 4468 1.1 mrg ;; 4469 1.1 mrg aCC*) 4470 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4471 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' 4472 1.1 mrg case $host_cpu in 4473 1.1 mrg hppa*64*|ia64*) 4474 1.1 mrg # +Z the default 4475 1.1 mrg ;; 4476 1.1 mrg *) 4477 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' 4478 1.1 mrg ;; 4479 1.1 mrg esac 4480 1.1 mrg ;; 4481 1.1 mrg *) 4482 1.1 mrg ;; 4483 1.1 mrg esac 4484 1.1 mrg ;; 4485 1.1 mrg interix*) 4486 1.1 mrg # This is c89, which is MS Visual C++ (no shared libs) 4487 1.1 mrg # Anyone wants to do a port? 4488 1.1 mrg ;; 4489 1.1 mrg irix5* | irix6* | nonstopux*) 4490 1.1 mrg case $cc_basename in 4491 1.1 mrg CC*) 4492 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4493 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 4494 1.1 mrg # CC pic flag -KPIC is the default. 4495 1.1 mrg ;; 4496 1.1 mrg *) 4497 1.1 mrg ;; 4498 1.1 mrg esac 4499 1.1 mrg ;; 4500 1.1 mrg linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) 4501 1.1 mrg case $cc_basename in 4502 1.1 mrg KCC*) 4503 1.1 mrg # KAI C++ Compiler 4504 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' 4505 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4506 1.1 mrg ;; 4507 1.1 mrg ecpc* ) 4508 1.1 mrg # old Intel C++ for x86_64, which still supported -KPIC. 4509 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4510 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4511 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 4512 1.1 mrg ;; 4513 1.1 mrg icpc* ) 4514 1.1 mrg # Intel C++, used to be incompatible with GCC. 4515 1.1 mrg # ICC 10 doesn't accept -KPIC any more. 4516 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4517 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4518 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 4519 1.1 mrg ;; 4520 1.1 mrg pgCC* | pgcpp*) 4521 1.1 mrg # Portland Group C++ compiler 4522 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4523 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' 4524 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4525 1.1 mrg ;; 4526 1.1 mrg cxx*) 4527 1.1 mrg # Compaq C++ 4528 1.1 mrg # Make sure the PIC flag is empty. It appears that all Alpha 4529 1.1 mrg # Linux and Compaq Tru64 Unix objects are PIC. 4530 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)= 4531 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 4532 1.1 mrg ;; 4533 1.1 mrg xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*) 4534 1.1 mrg # IBM XL 8.0, 9.0 on PPC and BlueGene 4535 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4536 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' 4537 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' 4538 1.1 mrg ;; 4539 1.1 mrg *) 4540 1.1 mrg case `$CC -V 2>&1 | $SED 5q` in 4541 1.1 mrg *Sun\ C*) 4542 1.1 mrg # Sun C++ 5.9 4543 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4544 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4545 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' 4546 1.1 mrg ;; 4547 1.1 mrg esac 4548 1.1 mrg ;; 4549 1.1 mrg esac 4550 1.1 mrg ;; 4551 1.1 mrg lynxos*) 4552 1.1 mrg ;; 4553 1.1 mrg m88k*) 4554 1.1 mrg ;; 4555 1.1 mrg mvs*) 4556 1.1 mrg case $cc_basename in 4557 1.1 mrg cxx*) 4558 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' 4559 1.1 mrg ;; 4560 1.1 mrg *) 4561 1.1 mrg ;; 4562 1.1 mrg esac 4563 1.1 mrg ;; 4564 1.1 mrg netbsd* | netbsdelf*-gnu) 4565 1.1 mrg ;; 4566 1.1 mrg *-mlibc) 4567 1.1 mrg ;; 4568 1.1 mrg *qnx* | *nto*) 4569 1.1 mrg # QNX uses GNU C++, but need to define -shared option too, otherwise 4570 1.1 mrg # it will coredump. 4571 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' 4572 1.1 mrg ;; 4573 1.1 mrg osf3* | osf4* | osf5*) 4574 1.1 mrg case $cc_basename in 4575 1.1 mrg KCC*) 4576 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' 4577 1.1 mrg ;; 4578 1.1 mrg RCC*) 4579 1.1 mrg # Rational C++ 2.4.1 4580 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' 4581 1.1 mrg ;; 4582 1.1 mrg cxx*) 4583 1.1 mrg # Digital/Compaq C++ 4584 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4585 1.1 mrg # Make sure the PIC flag is empty. It appears that all Alpha 4586 1.1 mrg # Linux and Compaq Tru64 Unix objects are PIC. 4587 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)= 4588 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 4589 1.1 mrg ;; 4590 1.1 mrg *) 4591 1.1 mrg ;; 4592 1.1 mrg esac 4593 1.1 mrg ;; 4594 1.1 mrg psos*) 4595 1.1 mrg ;; 4596 1.1 mrg serenity*) 4597 1.1 mrg ;; 4598 1.1 mrg solaris*) 4599 1.1 mrg case $cc_basename in 4600 1.1 mrg CC* | sunCC*) 4601 1.1 mrg # Sun C++ 4.2, 5.x and Centerline C++ 4602 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4603 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4604 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' 4605 1.1 mrg ;; 4606 1.1 mrg gcx*) 4607 1.1 mrg # Green Hills C++ Compiler 4608 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' 4609 1.1 mrg ;; 4610 1.1 mrg *) 4611 1.1 mrg ;; 4612 1.1 mrg esac 4613 1.1 mrg ;; 4614 1.1 mrg sunos4*) 4615 1.1 mrg case $cc_basename in 4616 1.1 mrg CC*) 4617 1.1 mrg # Sun C++ 4.x 4618 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' 4619 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4620 1.1 mrg ;; 4621 1.1 mrg lcc*) 4622 1.1 mrg # Lucid 4623 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' 4624 1.1 mrg ;; 4625 1.1 mrg *) 4626 1.1 mrg ;; 4627 1.1 mrg esac 4628 1.1 mrg ;; 4629 1.1 mrg sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) 4630 1.1 mrg case $cc_basename in 4631 1.1 mrg CC*) 4632 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4633 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4634 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4635 1.1 mrg ;; 4636 1.1 mrg esac 4637 1.1 mrg ;; 4638 1.1 mrg tandem*) 4639 1.1 mrg case $cc_basename in 4640 1.1 mrg NCC*) 4641 1.1 mrg # NonStop-UX NCC 3.20 4642 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4643 1.1 mrg ;; 4644 1.1 mrg *) 4645 1.1 mrg ;; 4646 1.1 mrg esac 4647 1.1 mrg ;; 4648 1.1 mrg vxworks*) 4649 1.1 mrg ;; 4650 1.1 mrg *) 4651 1.1 mrg _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no 4652 1.1 mrg ;; 4653 1.1 mrg esac 4654 1.1 mrg fi 4655 1.1 mrg ], 4656 1.1 mrg [ 4657 1.1 mrg if test yes = "$GCC"; then 4658 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4659 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 4660 1.1 mrg 4661 1.1 mrg case $host_os in 4662 1.1 mrg aix*) 4663 1.1 mrg # All AIX code is PIC. 4664 1.1 mrg if test ia64 = "$host_cpu"; then 4665 1.1 mrg # AIX 5 now supports IA64 processor 4666 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4667 1.1 mrg fi 4668 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4669 1.1 mrg ;; 4670 1.1 mrg 4671 1.1 mrg amigaos*) 4672 1.1 mrg case $host_cpu in 4673 1.1 mrg powerpc) 4674 1.1 mrg # see comment about AmigaOS4 .so support 4675 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4676 1.1 mrg ;; 4677 1.1 mrg m68k) 4678 1.1 mrg # FIXME: we need at least 68020 code to build shared libraries, but 4679 1.1 mrg # adding the '-m68020' flag to GCC prevents building anything better, 4680 1.1 mrg # like '-m68040'. 4681 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' 4682 1.1 mrg ;; 4683 1.1 mrg esac 4684 1.1 mrg ;; 4685 1.1 mrg 4686 1.1 mrg beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) 4687 1.1 mrg # PIC is the default for these OSes. 4688 1.1 mrg ;; 4689 1.1 mrg 4690 1.1 mrg mingw* | windows* | cygwin* | pw32* | os2* | cegcc*) 4691 1.1 mrg # This hack is so that the source file can tell whether it is being 4692 1.1 mrg # built for inclusion in a dll (and should export symbols for example). 4693 1.1 mrg # Although the cygwin gcc ignores -fPIC, still need this for old-style 4694 1.1 mrg # (--disable-auto-import) libraries 4695 1.1 mrg m4_if([$1], [GCJ], [], 4696 1.1 mrg [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) 4697 1.1 mrg case $host_os in 4698 1.1 mrg os2*) 4699 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' 4700 1.1 mrg ;; 4701 1.1 mrg esac 4702 1.1 mrg ;; 4703 1.1 mrg 4704 1.1 mrg darwin* | rhapsody*) 4705 1.1 mrg # PIC is the default on this platform 4706 1.1 mrg # Common symbols not allowed in MH_DYLIB files 4707 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' 4708 1.1 mrg ;; 4709 1.1 mrg 4710 1.1 mrg haiku*) 4711 1.1 mrg # PIC is the default for Haiku. 4712 1.1 mrg # The "-static" flag exists, but is broken. 4713 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)= 4714 1.1 mrg ;; 4715 1.1 mrg 4716 1.1 mrg hpux*) 4717 1.1 mrg # PIC is the default for 64-bit PA HP-UX, but not for 32-bit 4718 1.1 mrg # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag 4719 1.1 mrg # sets the default TLS model and affects inlining. 4720 1.1 mrg case $host_cpu in 4721 1.1 mrg hppa*64*) 4722 1.1 mrg # +Z the default 4723 1.1 mrg ;; 4724 1.1 mrg *) 4725 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4726 1.1 mrg ;; 4727 1.1 mrg esac 4728 1.1 mrg ;; 4729 1.1 mrg 4730 1.1 mrg interix[[3-9]]*) 4731 1.1 mrg # Interix 3.x gcc -fpic/-fPIC options generate broken code. 4732 1.1 mrg # Instead, we relocate shared libraries at runtime. 4733 1.1 mrg ;; 4734 1.1 mrg 4735 1.1 mrg msdosdjgpp*) 4736 1.1 mrg # Just because we use GCC doesn't mean we suddenly get shared libraries 4737 1.1 mrg # on systems that don't support them. 4738 1.1 mrg _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no 4739 1.1 mrg enable_shared=no 4740 1.1 mrg ;; 4741 1.1 mrg 4742 1.1 mrg *nto* | *qnx*) 4743 1.1 mrg # QNX uses GNU C++, but need to define -shared option too, otherwise 4744 1.1 mrg # it will coredump. 4745 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' 4746 1.1 mrg ;; 4747 1.1 mrg 4748 1.1 mrg sysv4*MP*) 4749 1.1 mrg if test -d /usr/nec; then 4750 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic 4751 1.1 mrg fi 4752 1.1 mrg ;; 4753 1.1 mrg 4754 1.1 mrg *) 4755 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4756 1.1 mrg ;; 4757 1.1 mrg esac 4758 1.1 mrg 4759 1.1 mrg case $cc_basename in 4760 1.1 mrg nvcc*) # Cuda Compiler Driver 2.2 4761 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker ' 4762 1.1 mrg if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then 4763 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)" 4764 1.1 mrg fi 4765 1.1 mrg ;; 4766 1.1 mrg esac 4767 1.1 mrg else 4768 1.1 mrg # PORTME Check for flag to pass linker flags through the system compiler. 4769 1.1 mrg case $host_os in 4770 1.1 mrg aix*) 4771 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4772 1.1 mrg if test ia64 = "$host_cpu"; then 4773 1.1 mrg # AIX 5 now supports IA64 processor 4774 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4775 1.1 mrg else 4776 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' 4777 1.1 mrg fi 4778 1.1 mrg ;; 4779 1.1 mrg 4780 1.1 mrg darwin* | rhapsody*) 4781 1.1 mrg # PIC is the default on this platform 4782 1.1 mrg # Common symbols not allowed in MH_DYLIB files 4783 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' 4784 1.1 mrg case $cc_basename in 4785 1.1 mrg nagfor*) 4786 1.1 mrg # NAG Fortran compiler 4787 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' 4788 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' 4789 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4790 1.1 mrg ;; 4791 1.1 mrg esac 4792 1.1 mrg ;; 4793 1.1 mrg 4794 1.1 mrg mingw* | windows* | cygwin* | pw32* | os2* | cegcc*) 4795 1.1 mrg # This hack is so that the source file can tell whether it is being 4796 1.1 mrg # built for inclusion in a dll (and should export symbols for example). 4797 1.1 mrg m4_if([$1], [GCJ], [], 4798 1.1 mrg [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) 4799 1.1 mrg case $host_os in 4800 1.1 mrg os2*) 4801 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' 4802 1.1 mrg ;; 4803 1.1 mrg esac 4804 1.1 mrg ;; 4805 1.1 mrg 4806 1.1 mrg hpux9* | hpux10* | hpux11*) 4807 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4808 1.1 mrg # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but 4809 1.1 mrg # not for PA HP-UX. 4810 1.1 mrg case $host_cpu in 4811 1.1 mrg hppa*64*|ia64*) 4812 1.1 mrg # +Z the default 4813 1.1 mrg ;; 4814 1.1 mrg *) 4815 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' 4816 1.1 mrg ;; 4817 1.1 mrg esac 4818 1.1 mrg # Is there a better lt_prog_compiler_static that works with the bundled CC? 4819 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' 4820 1.1 mrg ;; 4821 1.1 mrg 4822 1.1 mrg irix5* | irix6* | nonstopux*) 4823 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4824 1.1 mrg # PIC (with -KPIC) is the default. 4825 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 4826 1.1 mrg ;; 4827 1.1 mrg 4828 1.1 mrg linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) 4829 1.1 mrg case $cc_basename in 4830 1.1 mrg # old Intel for x86_64, which still supported -KPIC. 4831 1.1 mrg ecc*) 4832 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4833 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4834 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 4835 1.1 mrg ;; 4836 1.1 mrg *flang* | ftn | f18* | f95*) 4837 1.1 mrg # Flang compiler. 4838 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4839 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4840 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 4841 1.1 mrg ;; 4842 1.1 mrg # icc used to be incompatible with GCC. 4843 1.1 mrg # ICC 10 doesn't accept -KPIC any more. 4844 1.1 mrg icc* | ifort*) 4845 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4846 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4847 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 4848 1.1 mrg ;; 4849 1.1 mrg # Lahey Fortran 8.1. 4850 1.1 mrg lf95*) 4851 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4852 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared' 4853 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='--static' 4854 1.1 mrg ;; 4855 1.1 mrg nagfor*) 4856 1.1 mrg # NAG Fortran compiler 4857 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' 4858 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' 4859 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4860 1.1 mrg ;; 4861 1.1 mrg tcc*) 4862 1.1 mrg # Fabrice Bellard et al's Tiny C Compiler 4863 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4864 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4865 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 4866 1.1 mrg ;; 4867 1.1 mrg pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) 4868 1.1 mrg # Portland Group compilers (*not* the Pentium gcc compiler, 4869 1.1 mrg # which looks to be a dead project) 4870 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4871 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' 4872 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4873 1.1 mrg ;; 4874 1.1 mrg ccc*) 4875 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4876 1.1 mrg # All Alpha code is PIC. 4877 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 4878 1.1 mrg ;; 4879 1.1 mrg xl* | bgxl* | bgf* | mpixl*) 4880 1.1 mrg # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene 4881 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4882 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' 4883 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' 4884 1.1 mrg ;; 4885 1.1 mrg *) 4886 1.1 mrg case `$CC -V 2>&1 | $SED 5q` in 4887 1.1 mrg *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*) 4888 1.1 mrg # Sun Fortran 8.3 passes all unrecognized flags to the linker 4889 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4890 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4891 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='' 4892 1.1 mrg ;; 4893 1.1 mrg *Sun\ F* | *Sun*Fortran*) 4894 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4895 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4896 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' 4897 1.1 mrg ;; 4898 1.1 mrg *Sun\ C*) 4899 1.1 mrg # Sun C 5.9 4900 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4901 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4902 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4903 1.1 mrg ;; 4904 1.1 mrg *Intel*\ [[CF]]*Compiler*) 4905 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4906 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4907 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 4908 1.1 mrg ;; 4909 1.1 mrg *Portland\ Group*) 4910 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4911 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' 4912 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4913 1.1 mrg ;; 4914 1.1 mrg esac 4915 1.1 mrg ;; 4916 1.1 mrg esac 4917 1.1 mrg ;; 4918 1.1 mrg 4919 1.1 mrg newsos6) 4920 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4921 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4922 1.1 mrg ;; 4923 1.1 mrg 4924 1.1 mrg *-mlibc) 4925 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4926 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 4927 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 4928 1.1 mrg ;; 4929 1.1 mrg 4930 1.1 mrg *nto* | *qnx*) 4931 1.1 mrg # QNX uses GNU C++, but need to define -shared option too, otherwise 4932 1.1 mrg # it will coredump. 4933 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' 4934 1.1 mrg ;; 4935 1.1 mrg 4936 1.1 mrg osf3* | osf4* | osf5*) 4937 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4938 1.1 mrg # All OSF/1 code is PIC. 4939 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 4940 1.1 mrg ;; 4941 1.1 mrg 4942 1.1 mrg rdos*) 4943 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 4944 1.1 mrg ;; 4945 1.1 mrg 4946 1.1 mrg serenity*) 4947 1.1 mrg ;; 4948 1.1 mrg 4949 1.1 mrg solaris*) 4950 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4951 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4952 1.1 mrg case $cc_basename in 4953 1.1 mrg f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) 4954 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; 4955 1.1 mrg *) 4956 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; 4957 1.1 mrg esac 4958 1.1 mrg ;; 4959 1.1 mrg 4960 1.1 mrg sunos4*) 4961 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' 4962 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' 4963 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4964 1.1 mrg ;; 4965 1.1 mrg 4966 1.1 mrg sysv4 | sysv4.2uw2* | sysv4.3*) 4967 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4968 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4969 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4970 1.1 mrg ;; 4971 1.1 mrg 4972 1.1 mrg sysv4*MP*) 4973 1.1 mrg if test -d /usr/nec; then 4974 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' 4975 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4976 1.1 mrg fi 4977 1.1 mrg ;; 4978 1.1 mrg 4979 1.1 mrg sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) 4980 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4981 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 4982 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4983 1.1 mrg ;; 4984 1.1 mrg 4985 1.1 mrg unicos*) 4986 1.1 mrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 4987 1.1 mrg _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no 4988 1.1 mrg ;; 4989 1.1 mrg 4990 1.1 mrg uts4*) 4991 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' 4992 1.1 mrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 4993 1.1 mrg ;; 4994 1.1 mrg 4995 1.1 mrg *) 4996 1.1 mrg _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no 4997 1.1 mrg ;; 4998 1.1 mrg esac 4999 1.1 mrg fi 5000 1.1 mrg ]) 5001 1.1 mrg case $host_os in 5002 1.1 mrg # For platforms that do not support PIC, -DPIC is meaningless: 5003 1.1 mrg *djgpp*) 5004 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)= 5005 1.1 mrg ;; 5006 1.1 mrg *) 5007 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])" 5008 1.1 mrg ;; 5009 1.1 mrg esac 5010 1.1 mrg 5011 1.1 mrg AC_CACHE_CHECK([for $compiler option to produce PIC], 5012 1.1 mrg [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)], 5013 1.1 mrg [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)]) 5014 1.1 mrg _LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1) 5015 1.1 mrg 5016 1.1 mrg # 5017 1.1 mrg # Check to make sure the PIC flag actually works. 5018 1.1 mrg # 5019 1.1 mrg if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then 5020 1.1 mrg _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works], 5021 1.1 mrg [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)], 5022 1.1 mrg [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [], 5023 1.1 mrg [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in 5024 1.1 mrg "" | " "*) ;; 5025 1.1 mrg *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;; 5026 1.1 mrg esac], 5027 1.1 mrg [_LT_TAGVAR(lt_prog_compiler_pic, $1)= 5028 1.1 mrg _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) 5029 1.1 mrg fi 5030 1.1 mrg _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1], 5031 1.1 mrg [Additional compiler flags for building library objects]) 5032 1.1 mrg 5033 1.1 mrg _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1], 5034 1.1 mrg [How to pass a linker flag through the compiler]) 5035 1.1 mrg # 5036 1.1 mrg # Check to make sure the static flag actually works. 5037 1.1 mrg # 5038 1.1 mrg wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\" 5039 1.1 mrg _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], 5040 1.1 mrg _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1), 5041 1.1 mrg $lt_tmp_static_flag, 5042 1.1 mrg [], 5043 1.1 mrg [_LT_TAGVAR(lt_prog_compiler_static, $1)=]) 5044 1.1 mrg _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1], 5045 1.1 mrg [Compiler flag to prevent dynamic linking]) 5046 1.1 mrg ])# _LT_COMPILER_PIC 5047 1.1 mrg 5048 1.1 mrg 5049 1.1 mrg # _LT_LINKER_SHLIBS([TAGNAME]) 5050 1.1 mrg # ---------------------------- 5051 1.1 mrg # See if the linker supports building shared libraries. 5052 1.1 mrg m4_defun([_LT_LINKER_SHLIBS], 5053 1.1 mrg [AC_REQUIRE([LT_PATH_LD])dnl 5054 1.1 mrg AC_REQUIRE([LT_PATH_NM])dnl 5055 1.1 mrg m4_require([_LT_PATH_MANIFEST_TOOL])dnl 5056 1.1 mrg m4_require([_LT_FILEUTILS_DEFAULTS])dnl 5057 1.1 mrg m4_require([_LT_DECL_EGREP])dnl 5058 1.1 mrg m4_require([_LT_DECL_SED])dnl 5059 1.1 mrg m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl 5060 1.1 mrg m4_require([_LT_TAG_COMPILER])dnl 5061 1.1 mrg AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) 5062 1.1 mrg m4_if([$1], [CXX], [ 5063 1.1 mrg _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' 5064 1.1 mrg _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] 5065 1.1 mrg case $host_os in 5066 1.1 mrg aix[[4-9]]*) 5067 1.1 mrg # If we're using GNU nm, then we don't want the "-C" option. 5068 1.1 mrg # -C means demangle to GNU nm, but means don't demangle to AIX nm. 5069 1.1 mrg # Without the "-l" option, or with the "-B" option, AIX nm treats 5070 1.1 mrg # weak defined symbols like other global defined symbols, whereas 5071 1.1 mrg # GNU nm marks them as "W". 5072 1.1 mrg # While the 'weak' keyword is ignored in the Export File, we need 5073 1.1 mrg # it in the Import File for the 'aix-soname' feature, so we have 5074 1.1 mrg # to replace the "-B" option with "-P" for AIX nm. 5075 1.1 mrg if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then 5076 1.1 mrg _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' 5077 1.1 mrg else 5078 1.1 mrg _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' 5079 1.1 mrg fi 5080 1.1 mrg ;; 5081 1.1 mrg pw32*) 5082 1.1 mrg _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds 5083 1.1 mrg ;; 5084 1.1 mrg cygwin* | mingw* | windows* | cegcc*) 5085 1.1 mrg case $cc_basename in 5086 1.1 mrg cl* | icl*) 5087 1.1 mrg _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' 5088 1.1 mrg ;; 5089 1.1 mrg *) 5090 1.1 mrg _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' 5091 1.1 mrg _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] 5092 1.1 mrg ;; 5093 1.1 mrg esac 5094 1.1 mrg ;; 5095 1.1 mrg *) 5096 1.1 mrg _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' 5097 1.1 mrg ;; 5098 1.1 mrg esac 5099 1.1 mrg ], [ 5100 1.1 mrg runpath_var= 5101 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)= 5102 1.1 mrg _LT_TAGVAR(always_export_symbols, $1)=no 5103 1.1 mrg _LT_TAGVAR(archive_cmds, $1)= 5104 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)= 5105 1.1 mrg _LT_TAGVAR(compiler_needs_object, $1)=no 5106 1.1 mrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no 5107 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)= 5108 1.1 mrg _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' 5109 1.1 mrg _LT_TAGVAR(hardcode_automatic, $1)=no 5110 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=no 5111 1.1 mrg _LT_TAGVAR(hardcode_direct_absolute, $1)=no 5112 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= 5113 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)= 5114 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=no 5115 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported 5116 1.1 mrg _LT_TAGVAR(inherit_rpath, $1)=no 5117 1.1 mrg _LT_TAGVAR(link_all_deplibs, $1)=unknown 5118 1.1 mrg _LT_TAGVAR(module_cmds, $1)= 5119 1.1 mrg _LT_TAGVAR(module_expsym_cmds, $1)= 5120 1.1 mrg _LT_TAGVAR(old_archive_from_new_cmds, $1)= 5121 1.1 mrg _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)= 5122 1.1 mrg _LT_TAGVAR(thread_safe_flag_spec, $1)= 5123 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)= 5124 1.1 mrg # include_expsyms should be a list of space-separated symbols to be *always* 5125 1.1 mrg # included in the symbol list 5126 1.1 mrg _LT_TAGVAR(include_expsyms, $1)= 5127 1.1 mrg # exclude_expsyms can be an extended regexp of symbols to exclude 5128 1.1 mrg # it will be wrapped by ' (' and ')$', so one must not match beginning or 5129 1.1 mrg # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc', 5130 1.1 mrg # as well as any symbol that contains 'd'. 5131 1.1 mrg _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] 5132 1.1 mrg # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out 5133 1.1 mrg # platforms (ab)use it in PIC code, but their linkers get confused if 5134 1.1 mrg # the symbol is explicitly referenced. Since portable code cannot 5135 1.1 mrg # rely on this symbol name, it's probably fine to never include it in 5136 1.1 mrg # preloaded symbol tables. 5137 1.1 mrg # Exclude shared library initialization/finalization symbols. 5138 1.1 mrg dnl Note also adjust exclude_expsyms for C++ above. 5139 1.1 mrg extract_expsyms_cmds= 5140 1.1 mrg 5141 1.1 mrg case $host_os in 5142 1.1 mrg cygwin* | mingw* | windows* | pw32* | cegcc*) 5143 1.1 mrg # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time 5144 1.1 mrg # When not using gcc, we currently assume that we are using 5145 1.1 mrg # Microsoft Visual C++ or Intel C++ Compiler. 5146 1.1 mrg if test yes != "$GCC"; then 5147 1.1 mrg with_gnu_ld=no 5148 1.1 mrg fi 5149 1.1 mrg ;; 5150 1.1 mrg interix*) 5151 1.1 mrg # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC) 5152 1.1 mrg with_gnu_ld=yes 5153 1.1 mrg ;; 5154 1.1 mrg esac 5155 1.1 mrg 5156 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=yes 5157 1.1 mrg 5158 1.1 mrg # On some targets, GNU ld is compatible enough with the native linker 5159 1.1 mrg # that we're better off using the native interface for both. 5160 1.1 mrg lt_use_gnu_ld_interface=no 5161 1.1 mrg if test yes = "$with_gnu_ld"; then 5162 1.1 mrg case $host_os in 5163 1.1 mrg aix*) 5164 1.1 mrg # The AIX port of GNU ld has always aspired to compatibility 5165 1.1 mrg # with the native linker. However, as the warning in the GNU ld 5166 1.1 mrg # block says, versions before 2.19.5* couldn't really create working 5167 1.1 mrg # shared libraries, regardless of the interface used. 5168 1.1 mrg case `$LD -v 2>&1` in 5169 1.1 mrg *\ \(GNU\ Binutils\)\ 2.19.5*) ;; 5170 1.1 mrg *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;; 5171 1.1 mrg *\ \(GNU\ Binutils\)\ [[3-9]]*) ;; 5172 1.1 mrg *) 5173 1.1 mrg lt_use_gnu_ld_interface=yes 5174 1.1 mrg ;; 5175 1.1 mrg esac 5176 1.1 mrg ;; 5177 1.1 mrg *) 5178 1.1 mrg lt_use_gnu_ld_interface=yes 5179 1.1 mrg ;; 5180 1.1 mrg esac 5181 1.1 mrg fi 5182 1.1 mrg 5183 1.1 mrg if test yes = "$lt_use_gnu_ld_interface"; then 5184 1.1 mrg # If archive_cmds runs LD, not CC, wlarc should be empty 5185 1.1 mrg wlarc='$wl' 5186 1.1 mrg 5187 1.1 mrg # Set some defaults for GNU ld with shared library support. These 5188 1.1 mrg # are reset later if shared libraries are not supported. Putting them 5189 1.1 mrg # here allows them to be overridden if necessary. 5190 1.1 mrg runpath_var=LD_RUN_PATH 5191 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 5192 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' 5193 1.1 mrg # ancient GNU ld didn't support --whole-archive et. al. 5194 1.1 mrg if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then 5195 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' 5196 1.1 mrg else 5197 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)= 5198 1.1 mrg fi 5199 1.1 mrg supports_anon_versioning=no 5200 1.1 mrg case `$LD -v | $SED -e 's/([[^)]]\+)\s\+//' 2>&1` in 5201 1.1 mrg *GNU\ gold*) supports_anon_versioning=yes ;; 5202 1.1 mrg *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 5203 1.1 mrg *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... 5204 1.1 mrg *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... 5205 1.1 mrg *\ 2.11.*) ;; # other 2.11 versions 5206 1.1 mrg *) supports_anon_versioning=yes ;; 5207 1.1 mrg esac 5208 1.1 mrg 5209 1.1 mrg # See if GNU ld supports shared libraries. 5210 1.1 mrg case $host_os in 5211 1.1 mrg aix[[3-9]]*) 5212 1.1 mrg # On AIX/PPC, the GNU linker is very broken 5213 1.1 mrg if test ia64 != "$host_cpu"; then 5214 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 5215 1.1 mrg cat <<_LT_EOF 1>&2 5216 1.1 mrg 5217 1.1 mrg *** Warning: the GNU linker, at least up to release 2.19, is reported 5218 1.1 mrg *** to be unable to reliably create shared libraries on AIX. 5219 1.1 mrg *** Therefore, libtool is disabling shared libraries support. If you 5220 1.1 mrg *** really care for shared libraries, you may want to install binutils 5221 1.1 mrg *** 2.20 or above, or modify your PATH so that a non-GNU linker is found. 5222 1.1 mrg *** You will then need to restart the configuration process. 5223 1.1 mrg 5224 1.1 mrg _LT_EOF 5225 1.1 mrg fi 5226 1.1 mrg ;; 5227 1.1 mrg 5228 1.1 mrg amigaos*) 5229 1.1 mrg case $host_cpu in 5230 1.1 mrg powerpc) 5231 1.1 mrg # see comment about AmigaOS4 .so support 5232 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 5233 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='' 5234 1.1 mrg ;; 5235 1.1 mrg m68k) 5236 1.1 mrg _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)' 5237 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 5238 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 5239 1.1 mrg ;; 5240 1.1 mrg esac 5241 1.1 mrg ;; 5242 1.1 mrg 5243 1.1 mrg beos*) 5244 1.1 mrg if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then 5245 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 5246 1.1 mrg # Joseph Beckenbach <jrb3 (a] best.com> says some releases of gcc 5247 1.1 mrg # support --undefined. This deserves some investigation. FIXME 5248 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 5249 1.1 mrg else 5250 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 5251 1.1 mrg fi 5252 1.1 mrg ;; 5253 1.1 mrg 5254 1.1 mrg cygwin* | mingw* | windows* | pw32* | cegcc*) 5255 1.1 mrg # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, 5256 1.1 mrg # as there is no search path for DLLs. 5257 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 5258 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols' 5259 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 5260 1.1 mrg _LT_TAGVAR(always_export_symbols, $1)=no 5261 1.1 mrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 5262 1.1 mrg _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' 5263 1.1 mrg _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] 5264 1.1 mrg _LT_TAGVAR(file_list_spec, $1)='@' 5265 1.1 mrg 5266 1.1 mrg if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then 5267 1.1 mrg _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' 5268 1.1 mrg # If the export-symbols file already is a .def file, use it as 5269 1.1 mrg # is; otherwise, prepend EXPORTS... 5270 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then 5271 1.1 mrg cp $export_symbols $output_objdir/$soname.def; 5272 1.1 mrg else 5273 1.1 mrg echo EXPORTS > $output_objdir/$soname.def; 5274 1.1 mrg cat $export_symbols >> $output_objdir/$soname.def; 5275 1.1 mrg fi~ 5276 1.1 mrg $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' 5277 1.1 mrg else 5278 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 5279 1.1 mrg fi 5280 1.1 mrg ;; 5281 1.1 mrg 5282 1.1 mrg haiku*) 5283 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 5284 1.1 mrg _LT_TAGVAR(link_all_deplibs, $1)=no 5285 1.1 mrg ;; 5286 1.1 mrg 5287 1.1 mrg os2*) 5288 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 5289 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 5290 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 5291 1.1 mrg shrext_cmds=.dll 5292 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ 5293 1.1 mrg $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ 5294 1.1 mrg $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ 5295 1.1 mrg $ECHO EXPORTS >> $output_objdir/$libname.def~ 5296 1.1 mrg emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ 5297 1.1 mrg $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ 5298 1.1 mrg emximp -o $lib $output_objdir/$libname.def' 5299 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ 5300 1.1 mrg $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ 5301 1.1 mrg $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ 5302 1.1 mrg $ECHO EXPORTS >> $output_objdir/$libname.def~ 5303 1.1 mrg prefix_cmds="$SED"~ 5304 1.1 mrg if test EXPORTS = "`$SED 1q $export_symbols`"; then 5305 1.1 mrg prefix_cmds="$prefix_cmds -e 1d"; 5306 1.1 mrg fi~ 5307 1.1 mrg prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ 5308 1.1 mrg cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ 5309 1.1 mrg $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ 5310 1.1 mrg emximp -o $lib $output_objdir/$libname.def' 5311 1.1 mrg _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' 5312 1.1 mrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 5313 1.1 mrg _LT_TAGVAR(file_list_spec, $1)='@' 5314 1.1 mrg ;; 5315 1.1 mrg 5316 1.1 mrg interix[[3-9]]*) 5317 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=no 5318 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5319 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' 5320 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 5321 1.1 mrg # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. 5322 1.1 mrg # Instead, shared libraries are loaded at an image base (0x10000000 by 5323 1.1 mrg # default) and relocated if they conflict, which is a slow very memory 5324 1.1 mrg # consuming and fragmenting process. To avoid this, we pick a random, 5325 1.1 mrg # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link 5326 1.1 mrg # time. Moving up from 0x10000000 also allows more sbrk(2) space. 5327 1.1 mrg _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' 5328 1.1 mrg _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' 5329 1.1 mrg ;; 5330 1.1 mrg 5331 1.1 mrg gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) 5332 1.1 mrg tmp_diet=no 5333 1.1 mrg if test linux-dietlibc = "$host_os"; then 5334 1.1 mrg case $cc_basename in 5335 1.1 mrg diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) 5336 1.1 mrg esac 5337 1.1 mrg fi 5338 1.1 mrg if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ 5339 1.1 mrg && test no = "$tmp_diet" 5340 1.1 mrg then 5341 1.1 mrg tmp_addflag=' $pic_flag' 5342 1.1 mrg tmp_sharedflag='-shared' 5343 1.1 mrg case $cc_basename,$host_cpu in 5344 1.1 mrg pgcc*) # Portland Group C compiler 5345 1.1 mrg _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' 5346 1.1 mrg tmp_addflag=' $pic_flag' 5347 1.1 mrg ;; 5348 1.1 mrg pgf77* | pgf90* | pgf95* | pgfortran*) 5349 1.1 mrg # Portland Group f77 and f90 compilers 5350 1.1 mrg _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' 5351 1.1 mrg tmp_addflag=' $pic_flag -Mnomain' ;; 5352 1.1 mrg ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 5353 1.1 mrg tmp_addflag=' -i_dynamic' ;; 5354 1.1 mrg efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 5355 1.1 mrg tmp_addflag=' -i_dynamic -nofor_main' ;; 5356 1.1 mrg ifc* | ifort*) # Intel Fortran compiler 5357 1.1 mrg tmp_addflag=' -nofor_main' ;; 5358 1.1 mrg lf95*) # Lahey Fortran 8.1 5359 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)= 5360 1.1 mrg tmp_sharedflag='--shared' ;; 5361 1.1 mrg nagfor*) # NAGFOR 5.3 5362 1.1 mrg tmp_sharedflag='-Wl,-shared' ;; 5363 1.1 mrg xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below) 5364 1.1 mrg tmp_sharedflag='-qmkshrobj' 5365 1.1 mrg tmp_addflag= ;; 5366 1.1 mrg nvcc*) # Cuda Compiler Driver 2.2 5367 1.1 mrg _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' 5368 1.1 mrg _LT_TAGVAR(compiler_needs_object, $1)=yes 5369 1.1 mrg ;; 5370 1.1 mrg esac 5371 1.1 mrg case `$CC -V 2>&1 | $SED 5q` in 5372 1.1 mrg *Sun\ C*) # Sun C 5.9 5373 1.1 mrg _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' 5374 1.1 mrg _LT_TAGVAR(compiler_needs_object, $1)=yes 5375 1.1 mrg tmp_sharedflag='-G' ;; 5376 1.1 mrg *Sun\ F*) # Sun Fortran 8.3 5377 1.1 mrg tmp_sharedflag='-G' ;; 5378 1.1 mrg esac 5379 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 5380 1.1 mrg 5381 1.1 mrg if test yes = "$supports_anon_versioning"; then 5382 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ 5383 1.1 mrg cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ 5384 1.1 mrg echo "local: *; };" >> $output_objdir/$libname.ver~ 5385 1.1 mrg $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' 5386 1.1 mrg fi 5387 1.1 mrg 5388 1.1 mrg case $cc_basename in 5389 1.1 mrg tcc*) 5390 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 5391 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic' 5392 1.1 mrg ;; 5393 1.1 mrg xlf* | bgf* | bgxlf* | mpixlf*) 5394 1.1 mrg # IBM XL Fortran 10.1 on PPC cannot create shared libs itself 5395 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive' 5396 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 5397 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' 5398 1.1 mrg if test yes = "$supports_anon_versioning"; then 5399 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ 5400 1.1 mrg cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ 5401 1.1 mrg echo "local: *; };" >> $output_objdir/$libname.ver~ 5402 1.1 mrg $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' 5403 1.1 mrg fi 5404 1.1 mrg ;; 5405 1.1 mrg esac 5406 1.1 mrg else 5407 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 5408 1.1 mrg fi 5409 1.1 mrg ;; 5410 1.1 mrg 5411 1.1 mrg *-mlibc) 5412 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 5413 1.1 mrg _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' 5414 1.1 mrg ;; 5415 1.1 mrg 5416 1.1 mrg netbsd* | netbsdelf*-gnu) 5417 1.1 mrg if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then 5418 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' 5419 1.1 mrg wlarc= 5420 1.1 mrg else 5421 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 5422 1.1 mrg _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' 5423 1.1 mrg fi 5424 1.1 mrg ;; 5425 1.1 mrg 5426 1.1 mrg solaris*) 5427 1.1 mrg if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then 5428 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 5429 1.1 mrg cat <<_LT_EOF 1>&2 5430 1.1 mrg 5431 1.1 mrg *** Warning: The releases 2.8.* of the GNU linker cannot reliably 5432 1.1 mrg *** create shared libraries on Solaris systems. Therefore, libtool 5433 1.1 mrg *** is disabling shared libraries support. We urge you to upgrade GNU 5434 1.1 mrg *** binutils to release 2.9.1 or newer. Another option is to modify 5435 1.1 mrg *** your PATH or compiler configuration so that the native linker is 5436 1.1 mrg *** used, and then restart. 5437 1.1 mrg 5438 1.1 mrg _LT_EOF 5439 1.1 mrg elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then 5440 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 5441 1.1 mrg _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' 5442 1.1 mrg else 5443 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 5444 1.1 mrg fi 5445 1.1 mrg ;; 5446 1.1 mrg 5447 1.1 mrg sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) 5448 1.1 mrg case `$LD -v 2>&1` in 5449 1.1 mrg *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) 5450 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 5451 1.1 mrg cat <<_LT_EOF 1>&2 5452 1.1 mrg 5453 1.1 mrg *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot 5454 1.1 mrg *** reliably create shared libraries on SCO systems. Therefore, libtool 5455 1.1 mrg *** is disabling shared libraries support. We urge you to upgrade GNU 5456 1.1 mrg *** binutils to release 2.16.91.0.3 or newer. Another option is to modify 5457 1.1 mrg *** your PATH or compiler configuration so that the native linker is 5458 1.1 mrg *** used, and then restart. 5459 1.1 mrg 5460 1.1 mrg _LT_EOF 5461 1.1 mrg ;; 5462 1.1 mrg *) 5463 1.1 mrg # For security reasons, it is highly recommended that you always 5464 1.1 mrg # use absolute paths for naming shared libraries, and exclude the 5465 1.1 mrg # DT_RUNPATH tag from executables and libraries. But doing so 5466 1.1 mrg # requires that you compile everything twice, which is a pain. 5467 1.1 mrg if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then 5468 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 5469 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 5470 1.1 mrg _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' 5471 1.1 mrg else 5472 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 5473 1.1 mrg fi 5474 1.1 mrg ;; 5475 1.1 mrg esac 5476 1.1 mrg ;; 5477 1.1 mrg 5478 1.1 mrg sunos4*) 5479 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' 5480 1.1 mrg wlarc= 5481 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes 5482 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5483 1.1 mrg ;; 5484 1.1 mrg 5485 1.1 mrg *) 5486 1.1 mrg if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then 5487 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 5488 1.1 mrg _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' 5489 1.1 mrg else 5490 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 5491 1.1 mrg fi 5492 1.1 mrg ;; 5493 1.1 mrg esac 5494 1.1 mrg 5495 1.1 mrg if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then 5496 1.1 mrg runpath_var= 5497 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= 5498 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)= 5499 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)= 5500 1.1 mrg fi 5501 1.1 mrg else 5502 1.1 mrg # PORTME fill in a description of your system's linker (not GNU ld) 5503 1.1 mrg case $host_os in 5504 1.1 mrg aix3*) 5505 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 5506 1.1 mrg _LT_TAGVAR(always_export_symbols, $1)=yes 5507 1.1 mrg _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' 5508 1.1 mrg # Note: this linker hardcodes the directories in LIBPATH if there 5509 1.1 mrg # are no directories specified by -L. 5510 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 5511 1.1 mrg if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then 5512 1.1 mrg # Neither direct hardcoding nor static linking is supported with a 5513 1.1 mrg # broken collect2. 5514 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=unsupported 5515 1.1 mrg fi 5516 1.1 mrg ;; 5517 1.1 mrg 5518 1.1 mrg aix[[4-9]]*) 5519 1.1 mrg if test ia64 = "$host_cpu"; then 5520 1.1 mrg # On IA64, the linker does run time linking by default, so we don't 5521 1.1 mrg # have to do anything special. 5522 1.1 mrg aix_use_runtimelinking=no 5523 1.1 mrg exp_sym_flag='-Bexport' 5524 1.1 mrg no_entry_flag= 5525 1.1 mrg else 5526 1.1 mrg # If we're using GNU nm, then we don't want the "-C" option. 5527 1.1 mrg # -C means demangle to GNU nm, but means don't demangle to AIX nm. 5528 1.1 mrg # Without the "-l" option, or with the "-B" option, AIX nm treats 5529 1.1 mrg # weak defined symbols like other global defined symbols, whereas 5530 1.1 mrg # GNU nm marks them as "W". 5531 1.1 mrg # While the 'weak' keyword is ignored in the Export File, we need 5532 1.1 mrg # it in the Import File for the 'aix-soname' feature, so we have 5533 1.1 mrg # to replace the "-B" option with "-P" for AIX nm. 5534 1.1 mrg if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then 5535 1.1 mrg _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' 5536 1.1 mrg else 5537 1.1 mrg _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' 5538 1.1 mrg fi 5539 1.1 mrg aix_use_runtimelinking=no 5540 1.1 mrg 5541 1.1 mrg # Test if we are trying to use run time linking or normal 5542 1.1 mrg # AIX style linking. If -brtl is somewhere in LDFLAGS, we 5543 1.1 mrg # have runtime linking enabled, and use it for executables. 5544 1.1 mrg # For shared libraries, we enable/disable runtime linking 5545 1.1 mrg # depending on the kind of the shared library created - 5546 1.1 mrg # when "with_aix_soname,aix_use_runtimelinking" is: 5547 1.1 mrg # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables 5548 1.1 mrg # "aix,yes" lib.so shared, rtl:yes, for executables 5549 1.1 mrg # lib.a static archive 5550 1.1 mrg # "both,no" lib.so.V(shr.o) shared, rtl:yes 5551 1.1 mrg # lib.a(lib.so.V) shared, rtl:no, for executables 5552 1.1 mrg # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables 5553 1.1 mrg # lib.a(lib.so.V) shared, rtl:no 5554 1.1 mrg # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables 5555 1.1 mrg # lib.a static archive 5556 1.1 mrg case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) 5557 1.1 mrg for ld_flag in $LDFLAGS; do 5558 1.1 mrg if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then 5559 1.1 mrg aix_use_runtimelinking=yes 5560 1.1 mrg break 5561 1.1 mrg fi 5562 1.1 mrg done 5563 1.1 mrg if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then 5564 1.1 mrg # With aix-soname=svr4, we create the lib.so.V shared archives only, 5565 1.1 mrg # so we don't have lib.a shared libs to link our executables. 5566 1.1 mrg # We have to force runtime linking in this case. 5567 1.1 mrg aix_use_runtimelinking=yes 5568 1.1 mrg LDFLAGS="$LDFLAGS -Wl,-brtl" 5569 1.1 mrg fi 5570 1.1 mrg ;; 5571 1.1 mrg esac 5572 1.1 mrg 5573 1.1 mrg exp_sym_flag='-bexport' 5574 1.1 mrg no_entry_flag='-bnoentry' 5575 1.1 mrg fi 5576 1.1 mrg 5577 1.1 mrg # When large executables or shared objects are built, AIX ld can 5578 1.1 mrg # have problems creating the table of contents. If linking a library 5579 1.1 mrg # or program results in "error TOC overflow" add -mminimal-toc to 5580 1.1 mrg # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not 5581 1.1 mrg # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. 5582 1.1 mrg 5583 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='' 5584 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes 5585 1.1 mrg _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 5586 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=':' 5587 1.1 mrg _LT_TAGVAR(link_all_deplibs, $1)=yes 5588 1.1 mrg _LT_TAGVAR(file_list_spec, $1)='$wl-f,' 5589 1.1 mrg case $with_aix_soname,$aix_use_runtimelinking in 5590 1.1 mrg aix,*) ;; # traditional, no import file 5591 1.1 mrg svr4,* | *,yes) # use import file 5592 1.1 mrg # The Import File defines what to hardcode. 5593 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=no 5594 1.1 mrg _LT_TAGVAR(hardcode_direct_absolute, $1)=no 5595 1.1 mrg ;; 5596 1.1 mrg esac 5597 1.1 mrg 5598 1.1 mrg if test yes = "$GCC"; then 5599 1.1 mrg case $host_os in aix4.[[012]]|aix4.[[012]].*) 5600 1.1 mrg # We only want to do this on AIX 4.2 and lower, the check 5601 1.1 mrg # below for broken collect2 doesn't work under 4.3+ 5602 1.1 mrg collect2name=`$CC -print-prog-name=collect2` 5603 1.1 mrg if test -f "$collect2name" && 5604 1.1 mrg strings "$collect2name" | $GREP resolve_lib_name >/dev/null 5605 1.1 mrg then 5606 1.1 mrg # We have reworked collect2 5607 1.1 mrg : 5608 1.1 mrg else 5609 1.1 mrg # We have old collect2 5610 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=unsupported 5611 1.1 mrg # It fails to find uninstalled libraries when the uninstalled 5612 1.1 mrg # path is not listed in the libpath. Setting hardcode_minus_L 5613 1.1 mrg # to unsupported forces relinking 5614 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 5615 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 5616 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)= 5617 1.1 mrg fi 5618 1.1 mrg ;; 5619 1.1 mrg esac 5620 1.1 mrg shared_flag='-shared' 5621 1.1 mrg if test yes = "$aix_use_runtimelinking"; then 5622 1.1 mrg shared_flag="$shared_flag "'$wl-G' 5623 1.1 mrg fi 5624 1.1 mrg # Need to ensure runtime linking is disabled for the traditional 5625 1.1 mrg # shared library, or the linker may eventually find shared libraries 5626 1.1 mrg # /with/ Import File - we do not want to mix them. 5627 1.1 mrg shared_flag_aix='-shared' 5628 1.1 mrg shared_flag_svr4='-shared $wl-G' 5629 1.1 mrg else 5630 1.1 mrg # not using gcc 5631 1.1 mrg if test ia64 = "$host_cpu"; then 5632 1.1 mrg # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release 5633 1.1 mrg # chokes on -Wl,-G. The following line is correct: 5634 1.1 mrg shared_flag='-G' 5635 1.1 mrg else 5636 1.1 mrg if test yes = "$aix_use_runtimelinking"; then 5637 1.1 mrg shared_flag='$wl-G' 5638 1.1 mrg else 5639 1.1 mrg shared_flag='$wl-bM:SRE' 5640 1.1 mrg fi 5641 1.1 mrg shared_flag_aix='$wl-bM:SRE' 5642 1.1 mrg shared_flag_svr4='$wl-G' 5643 1.1 mrg fi 5644 1.1 mrg fi 5645 1.1 mrg 5646 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall' 5647 1.1 mrg # It seems that -bexpall does not export symbols beginning with 5648 1.1 mrg # underscore (_), so it is better to generate a list of symbols to export. 5649 1.1 mrg _LT_TAGVAR(always_export_symbols, $1)=yes 5650 1.1 mrg if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then 5651 1.1 mrg # Warning - without using the other runtime loading flags (-brtl), 5652 1.1 mrg # -berok will link without error, but may produce a broken library. 5653 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)='-berok' 5654 1.1 mrg # Determine the default libpath from the value encoded in an 5655 1.1 mrg # empty executable. 5656 1.1 mrg _LT_SYS_MODULE_PATH_AIX([$1]) 5657 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" 5658 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag 5659 1.1 mrg else 5660 1.1 mrg if test ia64 = "$host_cpu"; then 5661 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib' 5662 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" 5663 1.1 mrg _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" 5664 1.1 mrg else 5665 1.1 mrg # Determine the default libpath from the value encoded in an 5666 1.1 mrg # empty executable. 5667 1.1 mrg _LT_SYS_MODULE_PATH_AIX([$1]) 5668 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" 5669 1.1 mrg # Warning - without using the other run time loading flags, 5670 1.1 mrg # -berok will link without error, but may produce a broken library. 5671 1.1 mrg _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok' 5672 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok' 5673 1.1 mrg if test yes = "$with_gnu_ld"; then 5674 1.1 mrg # We only use this code for GNU lds that support --whole-archive. 5675 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' 5676 1.1 mrg else 5677 1.1 mrg # Exported symbols can be pulled into shared objects from archives 5678 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' 5679 1.1 mrg fi 5680 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)=yes 5681 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' 5682 1.1 mrg # -brtl affects multiple linker settings, -berok does not and is overridden later 5683 1.1 mrg compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`' 5684 1.1 mrg if test svr4 != "$with_aix_soname"; then 5685 1.1 mrg # This is similar to how AIX traditionally builds its shared libraries. 5686 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' 5687 1.1 mrg fi 5688 1.1 mrg if test aix != "$with_aix_soname"; then 5689 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' 5690 1.1 mrg else 5691 1.1 mrg # used by -dlpreopen to get the symbols 5692 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir' 5693 1.1 mrg fi 5694 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d' 5695 1.1 mrg fi 5696 1.1 mrg fi 5697 1.1 mrg ;; 5698 1.1 mrg 5699 1.1 mrg amigaos*) 5700 1.1 mrg case $host_cpu in 5701 1.1 mrg powerpc) 5702 1.1 mrg # see comment about AmigaOS4 .so support 5703 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 5704 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='' 5705 1.1 mrg ;; 5706 1.1 mrg m68k) 5707 1.1 mrg _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)' 5708 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 5709 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 5710 1.1 mrg ;; 5711 1.1 mrg esac 5712 1.1 mrg ;; 5713 1.1 mrg 5714 1.1 mrg bsdi[[45]]*) 5715 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic 5716 1.1 mrg ;; 5717 1.1 mrg 5718 1.1 mrg cygwin* | mingw* | windows* | pw32* | cegcc*) 5719 1.1 mrg # When not using gcc, we currently assume that we are using 5720 1.1 mrg # Microsoft Visual C++ or Intel C++ Compiler. 5721 1.1 mrg # hardcode_libdir_flag_spec is actually meaningless, as there is 5722 1.1 mrg # no search path for DLLs. 5723 1.1 mrg case $cc_basename in 5724 1.1 mrg cl* | icl*) 5725 1.1 mrg # Native MSVC or ICC 5726 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' 5727 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 5728 1.1 mrg _LT_TAGVAR(always_export_symbols, $1)=yes 5729 1.1 mrg _LT_TAGVAR(file_list_spec, $1)='@' 5730 1.1 mrg # Tell ltmain to make .lib files, not .a files. 5731 1.1 mrg libext=lib 5732 1.1 mrg # Tell ltmain to make .dll files, not .so files. 5733 1.1 mrg shrext_cmds=.dll 5734 1.1 mrg # FIXME: Setting linknames here is a bad hack. 5735 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -Fe$output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' 5736 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then 5737 1.1 mrg cp "$export_symbols" "$output_objdir/$soname.def"; 5738 1.1 mrg echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; 5739 1.1 mrg else 5740 1.1 mrg $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; 5741 1.1 mrg fi~ 5742 1.1 mrg $CC -Fe$tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ 5743 1.1 mrg linknames=' 5744 1.1 mrg # The linker will not automatically build a static lib if we build a DLL. 5745 1.1 mrg # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' 5746 1.1 mrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 5747 1.1 mrg _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' 5748 1.1 mrg _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' 5749 1.1 mrg # Don't use ranlib 5750 1.1 mrg _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' 5751 1.1 mrg _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ 5752 1.1 mrg lt_tool_outputfile="@TOOL_OUTPUT@"~ 5753 1.1 mrg case $lt_outputfile in 5754 1.1 mrg *.exe|*.EXE) ;; 5755 1.1 mrg *) 5756 1.1 mrg lt_outputfile=$lt_outputfile.exe 5757 1.1 mrg lt_tool_outputfile=$lt_tool_outputfile.exe 5758 1.1 mrg ;; 5759 1.1 mrg esac~ 5760 1.1 mrg if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then 5761 1.1 mrg $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; 5762 1.1 mrg $RM "$lt_outputfile.manifest"; 5763 1.1 mrg fi' 5764 1.1 mrg ;; 5765 1.1 mrg *) 5766 1.1 mrg # Assume MSVC and ICC wrapper 5767 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' 5768 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 5769 1.1 mrg # Tell ltmain to make .lib files, not .a files. 5770 1.1 mrg libext=lib 5771 1.1 mrg # Tell ltmain to make .dll files, not .so files. 5772 1.1 mrg shrext_cmds=.dll 5773 1.1 mrg # FIXME: Setting linknames here is a bad hack. 5774 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' 5775 1.1 mrg # The linker will automatically build a .lib file if we build a DLL. 5776 1.1 mrg _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' 5777 1.1 mrg # FIXME: Should let the user specify the lib program. 5778 1.1 mrg _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs' 5779 1.1 mrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 5780 1.1 mrg ;; 5781 1.1 mrg esac 5782 1.1 mrg ;; 5783 1.1 mrg 5784 1.1 mrg darwin* | rhapsody*) 5785 1.1 mrg _LT_DARWIN_LINKER_FEATURES($1) 5786 1.1 mrg ;; 5787 1.1 mrg 5788 1.1 mrg dgux*) 5789 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 5790 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 5791 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5792 1.1 mrg ;; 5793 1.1 mrg 5794 1.1 mrg # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor 5795 1.1 mrg # support. Future versions do this automatically, but an explicit c++rt0.o 5796 1.1 mrg # does not break anything, and helps significantly (at the cost of a little 5797 1.1 mrg # extra space). 5798 1.1 mrg freebsd2.2*) 5799 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' 5800 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 5801 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes 5802 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5803 1.1 mrg ;; 5804 1.1 mrg 5805 1.1 mrg # Unfortunately, older versions of FreeBSD 2 do not have this feature. 5806 1.1 mrg freebsd2.*) 5807 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' 5808 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes 5809 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 5810 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5811 1.1 mrg ;; 5812 1.1 mrg 5813 1.1 mrg # FreeBSD 3 and greater uses gcc -shared to do shared libraries. 5814 1.1 mrg freebsd* | dragonfly* | midnightbsd*) 5815 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' 5816 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 5817 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes 5818 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5819 1.1 mrg ;; 5820 1.1 mrg 5821 1.1 mrg hpux9*) 5822 1.1 mrg if test yes = "$GCC"; then 5823 1.1 mrg _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 "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' 5824 1.1 mrg else 5825 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' 5826 1.1 mrg fi 5827 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' 5828 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 5829 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes 5830 1.1 mrg 5831 1.1 mrg # hardcode_minus_L: Not really in the search PATH, 5832 1.1 mrg # but as the default location of the library. 5833 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 5834 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 5835 1.1 mrg ;; 5836 1.1 mrg 5837 1.1 mrg hpux10*) 5838 1.1 mrg if test yes,no = "$GCC,$with_gnu_ld"; then 5839 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' 5840 1.1 mrg else 5841 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' 5842 1.1 mrg fi 5843 1.1 mrg if test no = "$with_gnu_ld"; then 5844 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' 5845 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 5846 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes 5847 1.1 mrg _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 5848 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 5849 1.1 mrg # hardcode_minus_L: Not really in the search PATH, 5850 1.1 mrg # but as the default location of the library. 5851 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 5852 1.1 mrg fi 5853 1.1 mrg ;; 5854 1.1 mrg 5855 1.1 mrg hpux11*) 5856 1.1 mrg if test yes,no = "$GCC,$with_gnu_ld"; then 5857 1.1 mrg case $host_cpu in 5858 1.1 mrg hppa*64*) 5859 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' 5860 1.1 mrg ;; 5861 1.1 mrg ia64*) 5862 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' 5863 1.1 mrg ;; 5864 1.1 mrg *) 5865 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' 5866 1.1 mrg ;; 5867 1.1 mrg esac 5868 1.1 mrg else 5869 1.1 mrg case $host_cpu in 5870 1.1 mrg hppa*64*) 5871 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' 5872 1.1 mrg ;; 5873 1.1 mrg ia64*) 5874 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' 5875 1.1 mrg ;; 5876 1.1 mrg *) 5877 1.1 mrg m4_if($1, [], [ 5878 1.1 mrg # Older versions of the 11.00 compiler do not understand -b yet 5879 1.1 mrg # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) 5880 1.1 mrg _LT_LINKER_OPTION([if $CC understands -b], 5881 1.1 mrg _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b], 5882 1.1 mrg [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'], 5883 1.1 mrg [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])], 5884 1.1 mrg [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags']) 5885 1.1 mrg ;; 5886 1.1 mrg esac 5887 1.1 mrg fi 5888 1.1 mrg if test no = "$with_gnu_ld"; then 5889 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' 5890 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 5891 1.1 mrg 5892 1.1 mrg case $host_cpu in 5893 1.1 mrg hppa*64*|ia64*) 5894 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=no 5895 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5896 1.1 mrg ;; 5897 1.1 mrg *) 5898 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes 5899 1.1 mrg _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 5900 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 5901 1.1 mrg 5902 1.1 mrg # hardcode_minus_L: Not really in the search PATH, 5903 1.1 mrg # but as the default location of the library. 5904 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 5905 1.1 mrg ;; 5906 1.1 mrg esac 5907 1.1 mrg fi 5908 1.1 mrg ;; 5909 1.1 mrg 5910 1.1 mrg irix5* | irix6* | nonstopux*) 5911 1.1 mrg if test yes = "$GCC"; then 5912 1.1 mrg _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' 5913 1.1 mrg # Try to use the -exported_symbol ld option, if it does not 5914 1.1 mrg # work, assume that -exports_file does not work either and 5915 1.1 mrg # implicitly export all symbols. 5916 1.1 mrg # This should be the same for all languages, so no per-tag cache variable. 5917 1.1 mrg AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol], 5918 1.1 mrg [lt_cv_irix_exported_symbol], 5919 1.1 mrg [save_LDFLAGS=$LDFLAGS 5920 1.1 mrg LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null" 5921 1.1 mrg AC_LINK_IFELSE( 5922 1.1 mrg [AC_LANG_SOURCE( 5923 1.1 mrg [AC_LANG_CASE([C], [[int foo (void) { return 0; }]], 5924 1.1 mrg [C++], [[int foo (void) { return 0; }]], 5925 1.1 mrg [Fortran 77], [[ 5926 1.1 mrg subroutine foo 5927 1.1 mrg end]], 5928 1.1 mrg [Fortran], [[ 5929 1.1 mrg subroutine foo 5930 1.1 mrg end]])])], 5931 1.1 mrg [lt_cv_irix_exported_symbol=yes], 5932 1.1 mrg [lt_cv_irix_exported_symbol=no]) 5933 1.1 mrg LDFLAGS=$save_LDFLAGS]) 5934 1.1 mrg if test yes = "$lt_cv_irix_exported_symbol"; then 5935 1.1 mrg _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' 5936 1.1 mrg fi 5937 1.1 mrg else 5938 1.1 mrg _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' 5939 1.1 mrg _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' 5940 1.1 mrg fi 5941 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)='no' 5942 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 5943 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 5944 1.1 mrg _LT_TAGVAR(inherit_rpath, $1)=yes 5945 1.1 mrg _LT_TAGVAR(link_all_deplibs, $1)=yes 5946 1.1 mrg ;; 5947 1.1 mrg 5948 1.1 mrg linux*) 5949 1.1 mrg case $cc_basename in 5950 1.1 mrg tcc*) 5951 1.1 mrg # Fabrice Bellard et al's Tiny C Compiler 5952 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=yes 5953 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' 5954 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 5955 1.1 mrg ;; 5956 1.1 mrg esac 5957 1.1 mrg ;; 5958 1.1 mrg 5959 1.1 mrg *-mlibc) 5960 1.1 mrg ;; 5961 1.1 mrg 5962 1.1 mrg netbsd* | netbsdelf*-gnu) 5963 1.1 mrg if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then 5964 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out 5965 1.1 mrg else 5966 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF 5967 1.1 mrg fi 5968 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 5969 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes 5970 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5971 1.1 mrg ;; 5972 1.1 mrg 5973 1.1 mrg newsos6) 5974 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 5975 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes 5976 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 5977 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 5978 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5979 1.1 mrg ;; 5980 1.1 mrg 5981 1.1 mrg *nto* | *qnx*) 5982 1.1 mrg ;; 5983 1.1 mrg 5984 1.1 mrg openbsd*) 5985 1.1 mrg if test -f /usr/libexec/ld.so; then 5986 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes 5987 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 5988 1.1 mrg _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 5989 1.1 mrg if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then 5990 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' 5991 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols' 5992 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' 5993 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 5994 1.1 mrg else 5995 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' 5996 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' 5997 1.1 mrg fi 5998 1.1 mrg else 5999 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 6000 1.1 mrg fi 6001 1.1 mrg ;; 6002 1.1 mrg 6003 1.1 mrg os2*) 6004 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 6005 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 6006 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 6007 1.1 mrg shrext_cmds=.dll 6008 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ 6009 1.1 mrg $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ 6010 1.1 mrg $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ 6011 1.1 mrg $ECHO EXPORTS >> $output_objdir/$libname.def~ 6012 1.1 mrg emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ 6013 1.1 mrg $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ 6014 1.1 mrg emximp -o $lib $output_objdir/$libname.def' 6015 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ 6016 1.1 mrg $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ 6017 1.1 mrg $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ 6018 1.1 mrg $ECHO EXPORTS >> $output_objdir/$libname.def~ 6019 1.1 mrg prefix_cmds="$SED"~ 6020 1.1 mrg if test EXPORTS = "`$SED 1q $export_symbols`"; then 6021 1.1 mrg prefix_cmds="$prefix_cmds -e 1d"; 6022 1.1 mrg fi~ 6023 1.1 mrg prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ 6024 1.1 mrg cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ 6025 1.1 mrg $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ 6026 1.1 mrg emximp -o $lib $output_objdir/$libname.def' 6027 1.1 mrg _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' 6028 1.1 mrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 6029 1.1 mrg _LT_TAGVAR(file_list_spec, $1)='@' 6030 1.1 mrg ;; 6031 1.1 mrg 6032 1.1 mrg osf3*) 6033 1.1 mrg if test yes = "$GCC"; then 6034 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' 6035 1.1 mrg _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' 6036 1.1 mrg else 6037 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' 6038 1.1 mrg _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' 6039 1.1 mrg fi 6040 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)='no' 6041 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 6042 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 6043 1.1 mrg ;; 6044 1.1 mrg 6045 1.1 mrg osf4* | osf5*) # as osf3* with the addition of -msym flag 6046 1.1 mrg if test yes = "$GCC"; then 6047 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' 6048 1.1 mrg _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' 6049 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 6050 1.1 mrg else 6051 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' 6052 1.1 mrg _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' 6053 1.1 mrg _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~ 6054 1.1 mrg $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' 6055 1.1 mrg 6056 1.1 mrg # Both c and cxx compiler support -rpath directly 6057 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' 6058 1.1 mrg fi 6059 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)='no' 6060 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 6061 1.1 mrg ;; 6062 1.1 mrg 6063 1.1 mrg serenity*) 6064 1.1 mrg ;; 6065 1.1 mrg 6066 1.1 mrg solaris*) 6067 1.1 mrg _LT_TAGVAR(no_undefined_flag, $1)=' -z defs' 6068 1.1 mrg if test yes = "$GCC"; then 6069 1.1 mrg wlarc='$wl' 6070 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' 6071 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 6072 1.1 mrg $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' 6073 1.1 mrg else 6074 1.1 mrg case `$CC -V 2>&1` in 6075 1.1 mrg *"Compilers 5.0"*) 6076 1.1 mrg wlarc='' 6077 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags' 6078 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 6079 1.1 mrg $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' 6080 1.1 mrg ;; 6081 1.1 mrg *) 6082 1.1 mrg wlarc='$wl' 6083 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags' 6084 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 6085 1.1 mrg $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' 6086 1.1 mrg ;; 6087 1.1 mrg esac 6088 1.1 mrg fi 6089 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 6090 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 6091 1.1 mrg case $host_os in 6092 1.1 mrg solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; 6093 1.1 mrg *) 6094 1.1 mrg # The compiler driver will combine and reorder linker options, 6095 1.1 mrg # but understands '-z linker_flag'. GCC discards it without '$wl', 6096 1.1 mrg # but is careful enough not to reorder. 6097 1.1 mrg # Supported since Solaris 2.6 (maybe 2.5.1?) 6098 1.1 mrg if test yes = "$GCC"; then 6099 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' 6100 1.1 mrg else 6101 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' 6102 1.1 mrg fi 6103 1.1 mrg ;; 6104 1.1 mrg esac 6105 1.1 mrg _LT_TAGVAR(link_all_deplibs, $1)=yes 6106 1.1 mrg ;; 6107 1.1 mrg 6108 1.1 mrg sunos4*) 6109 1.1 mrg if test sequent = "$host_vendor"; then 6110 1.1 mrg # Use $CC to link under sequent, because it throws in some extra .o 6111 1.1 mrg # files that make .init and .fini sections work. 6112 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags' 6113 1.1 mrg else 6114 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' 6115 1.1 mrg fi 6116 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 6117 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes 6118 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 6119 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 6120 1.1 mrg ;; 6121 1.1 mrg 6122 1.1 mrg sysv4) 6123 1.1 mrg case $host_vendor in 6124 1.1 mrg sni) 6125 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 6126 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true??? 6127 1.1 mrg ;; 6128 1.1 mrg siemens) 6129 1.1 mrg ## LD is ld it makes a PLAMLIB 6130 1.1 mrg ## CC just makes a GrossModule. 6131 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' 6132 1.1 mrg _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' 6133 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=no 6134 1.1 mrg ;; 6135 1.1 mrg motorola) 6136 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 6137 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie 6138 1.1 mrg ;; 6139 1.1 mrg esac 6140 1.1 mrg runpath_var='LD_RUN_PATH' 6141 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 6142 1.1 mrg ;; 6143 1.1 mrg 6144 1.1 mrg sysv4.3*) 6145 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 6146 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 6147 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' 6148 1.1 mrg ;; 6149 1.1 mrg 6150 1.1 mrg sysv4*MP*) 6151 1.1 mrg if test -d /usr/nec; then 6152 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 6153 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 6154 1.1 mrg runpath_var=LD_RUN_PATH 6155 1.1 mrg hardcode_runpath_var=yes 6156 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=yes 6157 1.1 mrg fi 6158 1.1 mrg ;; 6159 1.1 mrg 6160 1.1 mrg sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) 6161 1.1 mrg _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' 6162 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 6163 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 6164 1.1 mrg runpath_var='LD_RUN_PATH' 6165 1.1 mrg 6166 1.1 mrg if test yes = "$GCC"; then 6167 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 6168 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 6169 1.1 mrg else 6170 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 6171 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 6172 1.1 mrg fi 6173 1.1 mrg ;; 6174 1.1 mrg 6175 1.1 mrg sysv5* | sco3.2v5* | sco5v6*) 6176 1.1 mrg # Note: We CANNOT use -z defs as we might desire, because we do not 6177 1.1 mrg # link with -lc, and that would cause any symbols used from libc to 6178 1.1 mrg # always be unresolved, which means just about no library would 6179 1.1 mrg # ever link correctly. If we're not using GNU ld we use -z text 6180 1.1 mrg # though, which does catch some bad symbols but isn't as heavy-handed 6181 1.1 mrg # as -z defs. 6182 1.1 mrg _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' 6183 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs' 6184 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 6185 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 6186 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir' 6187 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=':' 6188 1.1 mrg _LT_TAGVAR(link_all_deplibs, $1)=yes 6189 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport' 6190 1.1 mrg runpath_var='LD_RUN_PATH' 6191 1.1 mrg 6192 1.1 mrg if test yes = "$GCC"; then 6193 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 6194 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 6195 1.1 mrg else 6196 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 6197 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 6198 1.1 mrg fi 6199 1.1 mrg ;; 6200 1.1 mrg 6201 1.1 mrg uts4*) 6202 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 6203 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 6204 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 6205 1.1 mrg ;; 6206 1.1 mrg 6207 1.1 mrg *) 6208 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 6209 1.1 mrg ;; 6210 1.1 mrg esac 6211 1.1 mrg 6212 1.1 mrg if test sni = "$host_vendor"; then 6213 1.1 mrg case $host in 6214 1.1 mrg sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) 6215 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym' 6216 1.1 mrg ;; 6217 1.1 mrg esac 6218 1.1 mrg fi 6219 1.1 mrg fi 6220 1.1 mrg ]) 6221 1.1 mrg AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) 6222 1.1 mrg test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no 6223 1.1 mrg 6224 1.1 mrg _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld 6225 1.1 mrg 6226 1.1 mrg _LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl 6227 1.1 mrg _LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl 6228 1.1 mrg _LT_DECL([], [extract_expsyms_cmds], [2], 6229 1.1 mrg [The commands to extract the exported symbol list from a shared archive]) 6230 1.1 mrg 6231 1.1 mrg # 6232 1.1 mrg # Do we need to explicitly link libc? 6233 1.1 mrg # 6234 1.1 mrg case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in 6235 1.1 mrg x|xyes) 6236 1.1 mrg # Assume -lc should be added 6237 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)=yes 6238 1.1 mrg 6239 1.1 mrg if test yes,yes = "$GCC,$enable_shared"; then 6240 1.1 mrg case $_LT_TAGVAR(archive_cmds, $1) in 6241 1.1 mrg *'~'*) 6242 1.1 mrg # FIXME: we may have to deal with multi-command sequences. 6243 1.1 mrg ;; 6244 1.1 mrg '$CC '*) 6245 1.1 mrg # Test whether the compiler implicitly links with -lc since on some 6246 1.1 mrg # systems, -lgcc has to come before -lc. If gcc already passes -lc 6247 1.1 mrg # to ld, don't add -lc before -lgcc. 6248 1.1 mrg AC_CACHE_CHECK([whether -lc should be explicitly linked in], 6249 1.1 mrg [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1), 6250 1.1 mrg [$RM conftest* 6251 1.1 mrg echo "$lt_simple_compile_test_code" > conftest.$ac_ext 6252 1.1 mrg 6253 1.1 mrg if AC_TRY_EVAL(ac_compile) 2>conftest.err; then 6254 1.1 mrg soname=conftest 6255 1.1 mrg lib=conftest 6256 1.1 mrg libobjs=conftest.$ac_objext 6257 1.1 mrg deplibs= 6258 1.1 mrg wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) 6259 1.1 mrg pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1) 6260 1.1 mrg compiler_flags=-v 6261 1.1 mrg linker_flags=-v 6262 1.1 mrg verstring= 6263 1.1 mrg output_objdir=. 6264 1.1 mrg libname=conftest 6265 1.1 mrg lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1) 6266 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)= 6267 1.1 mrg if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 6268 1.1 mrg then 6269 1.1 mrg lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no 6270 1.1 mrg else 6271 1.1 mrg lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes 6272 1.1 mrg fi 6273 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag 6274 1.1 mrg else 6275 1.1 mrg cat conftest.err 1>&5 6276 1.1 mrg fi 6277 1.1 mrg $RM conftest* 6278 1.1 mrg ]) 6279 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1) 6280 1.1 mrg ;; 6281 1.1 mrg esac 6282 1.1 mrg fi 6283 1.1 mrg ;; 6284 1.1 mrg esac 6285 1.1 mrg 6286 1.1 mrg _LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0], 6287 1.1 mrg [Whether or not to add -lc for building shared libraries]) 6288 1.1 mrg _LT_TAGDECL([allow_libtool_libs_with_static_runtimes], 6289 1.1 mrg [enable_shared_with_static_runtimes], [0], 6290 1.1 mrg [Whether or not to disallow shared libs when runtime libs are static]) 6291 1.1 mrg _LT_TAGDECL([], [export_dynamic_flag_spec], [1], 6292 1.1 mrg [Compiler flag to allow reflexive dlopens]) 6293 1.1 mrg _LT_TAGDECL([], [whole_archive_flag_spec], [1], 6294 1.1 mrg [Compiler flag to generate shared objects directly from archives]) 6295 1.1 mrg _LT_TAGDECL([], [compiler_needs_object], [1], 6296 1.1 mrg [Whether the compiler copes with passing no objects directly]) 6297 1.1 mrg _LT_TAGDECL([], [old_archive_from_new_cmds], [2], 6298 1.1 mrg [Create an old-style archive from a shared archive]) 6299 1.1 mrg _LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2], 6300 1.1 mrg [Create a temporary old-style archive to link instead of a shared archive]) 6301 1.1 mrg _LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive]) 6302 1.1 mrg _LT_TAGDECL([], [archive_expsym_cmds], [2]) 6303 1.1 mrg _LT_TAGDECL([], [module_cmds], [2], 6304 1.1 mrg [Commands used to build a loadable module if different from building 6305 1.1 mrg a shared archive.]) 6306 1.1 mrg _LT_TAGDECL([], [module_expsym_cmds], [2]) 6307 1.1 mrg _LT_TAGDECL([], [with_gnu_ld], [1], 6308 1.1 mrg [Whether we are building with GNU ld or not]) 6309 1.1 mrg _LT_TAGDECL([], [allow_undefined_flag], [1], 6310 1.1 mrg [Flag that allows shared libraries with undefined symbols to be built]) 6311 1.1 mrg _LT_TAGDECL([], [no_undefined_flag], [1], 6312 1.1 mrg [Flag that enforces no undefined symbols]) 6313 1.1 mrg _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1], 6314 1.1 mrg [Flag to hardcode $libdir into a binary during linking. 6315 1.1 mrg This must work even if $libdir does not exist]) 6316 1.1 mrg _LT_TAGDECL([], [hardcode_libdir_separator], [1], 6317 1.1 mrg [Whether we need a single "-rpath" flag with a separated argument]) 6318 1.1 mrg _LT_TAGDECL([], [hardcode_direct], [0], 6319 1.1 mrg [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes 6320 1.1 mrg DIR into the resulting binary]) 6321 1.1 mrg _LT_TAGDECL([], [hardcode_direct_absolute], [0], 6322 1.1 mrg [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes 6323 1.1 mrg DIR into the resulting binary and the resulting library dependency is 6324 1.1 mrg "absolute", i.e. impossible to change by setting $shlibpath_var if the 6325 1.1 mrg library is relocated]) 6326 1.1 mrg _LT_TAGDECL([], [hardcode_minus_L], [0], 6327 1.1 mrg [Set to "yes" if using the -LDIR flag during linking hardcodes DIR 6328 1.1 mrg into the resulting binary]) 6329 1.1 mrg _LT_TAGDECL([], [hardcode_shlibpath_var], [0], 6330 1.1 mrg [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR 6331 1.1 mrg into the resulting binary]) 6332 1.1 mrg _LT_TAGDECL([], [hardcode_automatic], [0], 6333 1.1 mrg [Set to "yes" if building a shared library automatically hardcodes DIR 6334 1.1 mrg into the library and all subsequent libraries and executables linked 6335 1.1 mrg against it]) 6336 1.1 mrg _LT_TAGDECL([], [inherit_rpath], [0], 6337 1.1 mrg [Set to yes if linker adds runtime paths of dependent libraries 6338 1.1 mrg to runtime path list]) 6339 1.1 mrg _LT_TAGDECL([], [link_all_deplibs], [0], 6340 1.1 mrg [Whether libtool must link a program against all its dependency libraries]) 6341 1.1 mrg _LT_TAGDECL([], [always_export_symbols], [0], 6342 1.1 mrg [Set to "yes" if exported symbols are required]) 6343 1.1 mrg _LT_TAGDECL([], [export_symbols_cmds], [2], 6344 1.1 mrg [The commands to list exported symbols]) 6345 1.1 mrg _LT_TAGDECL([], [exclude_expsyms], [1], 6346 1.1 mrg [Symbols that should not be listed in the preloaded symbols]) 6347 1.1 mrg _LT_TAGDECL([], [include_expsyms], [1], 6348 1.1 mrg [Symbols that must always be exported]) 6349 1.1 mrg _LT_TAGDECL([], [prelink_cmds], [2], 6350 1.1 mrg [Commands necessary for linking programs (against libraries) with templates]) 6351 1.1 mrg _LT_TAGDECL([], [postlink_cmds], [2], 6352 1.1 mrg [Commands necessary for finishing linking programs]) 6353 1.1 mrg _LT_TAGDECL([], [file_list_spec], [1], 6354 1.1 mrg [Specify filename containing input files]) 6355 1.1 mrg dnl FIXME: Not yet implemented 6356 1.1 mrg dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1], 6357 1.1 mrg dnl [Compiler flag to generate thread safe objects]) 6358 1.1 mrg ])# _LT_LINKER_SHLIBS 6359 1.1 mrg 6360 1.1 mrg 6361 1.1 mrg # _LT_LANG_C_CONFIG([TAG]) 6362 1.1 mrg # ------------------------ 6363 1.1 mrg # Ensure that the configuration variables for a C compiler are suitably 6364 1.1 mrg # defined. These variables are subsequently used by _LT_CONFIG to write 6365 1.1 mrg # the compiler configuration to 'libtool'. 6366 1.1 mrg m4_defun([_LT_LANG_C_CONFIG], 6367 1.1 mrg [m4_require([_LT_DECL_EGREP])dnl 6368 1.1 mrg lt_save_CC=$CC 6369 1.1 mrg AC_LANG_PUSH(C) 6370 1.1 mrg 6371 1.1 mrg # Source file extension for C test sources. 6372 1.1 mrg ac_ext=c 6373 1.1 mrg 6374 1.1 mrg # Object file extension for compiled C test sources. 6375 1.1 mrg objext=o 6376 1.1 mrg _LT_TAGVAR(objext, $1)=$objext 6377 1.1 mrg 6378 1.1 mrg # Code to be used in simple compile tests 6379 1.1 mrg lt_simple_compile_test_code="int some_variable = 0;" 6380 1.1 mrg 6381 1.1 mrg # Code to be used in simple link tests 6382 1.1 mrg lt_simple_link_test_code='int main(void){return(0);}' 6383 1.1 mrg 6384 1.1 mrg _LT_TAG_COMPILER 6385 1.1 mrg # Save the default compiler, since it gets overwritten when the other 6386 1.1 mrg # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. 6387 1.1 mrg compiler_DEFAULT=$CC 6388 1.1 mrg 6389 1.1 mrg # save warnings/boilerplate of simple test code 6390 1.1 mrg _LT_COMPILER_BOILERPLATE 6391 1.1 mrg _LT_LINKER_BOILERPLATE 6392 1.1 mrg 6393 1.1 mrg ## CAVEAT EMPTOR: 6394 1.1 mrg ## There is no encapsulation within the following macros, do not change 6395 1.1 mrg ## the running order or otherwise move them around unless you know exactly 6396 1.1 mrg ## what you are doing... 6397 1.1 mrg if test -n "$compiler"; then 6398 1.1 mrg _LT_COMPILER_NO_RTTI($1) 6399 1.1 mrg _LT_COMPILER_PIC($1) 6400 1.1 mrg _LT_COMPILER_C_O($1) 6401 1.1 mrg _LT_COMPILER_FILE_LOCKS($1) 6402 1.1 mrg _LT_LINKER_SHLIBS($1) 6403 1.1 mrg _LT_SYS_DYNAMIC_LINKER($1) 6404 1.1 mrg _LT_LINKER_HARDCODE_LIBPATH($1) 6405 1.1 mrg LT_SYS_DLOPEN_SELF 6406 1.1 mrg _LT_CMD_STRIPLIB 6407 1.1 mrg 6408 1.1 mrg # Report what library types will actually be built 6409 1.1 mrg AC_MSG_CHECKING([if libtool supports shared libraries]) 6410 1.1 mrg AC_MSG_RESULT([$can_build_shared]) 6411 1.1 mrg 6412 1.1 mrg AC_MSG_CHECKING([whether to build shared libraries]) 6413 1.1 mrg test no = "$can_build_shared" && enable_shared=no 6414 1.1 mrg 6415 1.1 mrg # On AIX, shared libraries and static libraries use the same namespace, and 6416 1.1 mrg # are all built from PIC. 6417 1.1 mrg case $host_os in 6418 1.1 mrg aix3*) 6419 1.1 mrg test yes = "$enable_shared" && enable_static=no 6420 1.1 mrg if test -n "$RANLIB"; then 6421 1.1 mrg archive_cmds="$archive_cmds~\$RANLIB \$lib" 6422 1.1 mrg postinstall_cmds='$RANLIB $lib' 6423 1.1 mrg fi 6424 1.1 mrg ;; 6425 1.1 mrg 6426 1.1 mrg aix[[4-9]]*) 6427 1.1 mrg if test ia64 != "$host_cpu"; then 6428 1.1 mrg case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in 6429 1.1 mrg yes,aix,yes) ;; # shared object as lib.so file only 6430 1.1 mrg yes,svr4,*) ;; # shared object as lib.so archive member only 6431 1.1 mrg yes,*) enable_static=no ;; # shared object in lib.a archive as well 6432 1.1 mrg esac 6433 1.1 mrg fi 6434 1.1 mrg ;; 6435 1.1 mrg esac 6436 1.1 mrg AC_MSG_RESULT([$enable_shared]) 6437 1.1 mrg 6438 1.1 mrg AC_MSG_CHECKING([whether to build static libraries]) 6439 1.1 mrg # Make sure either enable_shared or enable_static is yes. 6440 1.1 mrg test yes = "$enable_shared" || enable_static=yes 6441 1.1 mrg AC_MSG_RESULT([$enable_static]) 6442 1.1 mrg 6443 1.1 mrg _LT_CONFIG($1) 6444 1.1 mrg fi 6445 1.1 mrg AC_LANG_POP 6446 1.1 mrg CC=$lt_save_CC 6447 1.1 mrg ])# _LT_LANG_C_CONFIG 6448 1.1 mrg 6449 1.1 mrg 6450 1.1 mrg # _LT_LANG_CXX_CONFIG([TAG]) 6451 1.1 mrg # -------------------------- 6452 1.1 mrg # Ensure that the configuration variables for a C++ compiler are suitably 6453 1.1 mrg # defined. These variables are subsequently used by _LT_CONFIG to write 6454 1.1 mrg # the compiler configuration to 'libtool'. 6455 1.1 mrg m4_defun([_LT_LANG_CXX_CONFIG], 6456 1.1 mrg [m4_require([_LT_FILEUTILS_DEFAULTS])dnl 6457 1.1 mrg m4_require([_LT_DECL_EGREP])dnl 6458 1.1 mrg m4_require([_LT_PATH_MANIFEST_TOOL])dnl 6459 1.1 mrg if test -n "$CXX" && ( test no != "$CXX" && 6460 1.1 mrg ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) || 6461 1.1 mrg (test g++ != "$CXX"))); then 6462 1.1 mrg AC_PROG_CXXCPP 6463 1.1 mrg else 6464 1.1 mrg _lt_caught_CXX_error=yes 6465 1.1 mrg fi 6466 1.1 mrg 6467 1.1 mrg AC_LANG_PUSH(C++) 6468 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 6469 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)= 6470 1.1 mrg _LT_TAGVAR(always_export_symbols, $1)=no 6471 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)= 6472 1.1 mrg _LT_TAGVAR(compiler_needs_object, $1)=no 6473 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)= 6474 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=no 6475 1.1 mrg _LT_TAGVAR(hardcode_direct_absolute, $1)=no 6476 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= 6477 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)= 6478 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=no 6479 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported 6480 1.1 mrg _LT_TAGVAR(hardcode_automatic, $1)=no 6481 1.1 mrg _LT_TAGVAR(inherit_rpath, $1)=no 6482 1.1 mrg _LT_TAGVAR(module_cmds, $1)= 6483 1.1 mrg _LT_TAGVAR(module_expsym_cmds, $1)= 6484 1.1 mrg _LT_TAGVAR(link_all_deplibs, $1)=unknown 6485 1.1 mrg _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds 6486 1.1 mrg _LT_TAGVAR(reload_flag, $1)=$reload_flag 6487 1.1 mrg _LT_TAGVAR(reload_cmds, $1)=$reload_cmds 6488 1.1 mrg _LT_TAGVAR(no_undefined_flag, $1)= 6489 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)= 6490 1.1 mrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no 6491 1.1 mrg 6492 1.1 mrg # Source file extension for C++ test sources. 6493 1.1 mrg ac_ext=cpp 6494 1.1 mrg 6495 1.1 mrg # Object file extension for compiled C++ test sources. 6496 1.1 mrg objext=o 6497 1.1 mrg _LT_TAGVAR(objext, $1)=$objext 6498 1.1 mrg 6499 1.1 mrg # No sense in running all these tests if we already determined that 6500 1.1 mrg # the CXX compiler isn't working. Some variables (like enable_shared) 6501 1.1 mrg # are currently assumed to apply to all compilers on this platform, 6502 1.1 mrg # and will be corrupted by setting them based on a non-working compiler. 6503 1.1 mrg if test yes != "$_lt_caught_CXX_error"; then 6504 1.1 mrg # Code to be used in simple compile tests 6505 1.1 mrg lt_simple_compile_test_code="int some_variable = 0;" 6506 1.1 mrg 6507 1.1 mrg # Code to be used in simple link tests 6508 1.1 mrg lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }' 6509 1.1 mrg 6510 1.1 mrg # ltmain only uses $CC for tagged configurations so make sure $CC is set. 6511 1.1 mrg _LT_TAG_COMPILER 6512 1.1 mrg 6513 1.1 mrg # save warnings/boilerplate of simple test code 6514 1.1 mrg _LT_COMPILER_BOILERPLATE 6515 1.1 mrg _LT_LINKER_BOILERPLATE 6516 1.1 mrg 6517 1.1 mrg # Allow CC to be a program name with arguments. 6518 1.1 mrg lt_save_CC=$CC 6519 1.1 mrg lt_save_CFLAGS=$CFLAGS 6520 1.1 mrg lt_save_LD=$LD 6521 1.1 mrg lt_save_GCC=$GCC 6522 1.1 mrg GCC=$GXX 6523 1.1 mrg lt_save_with_gnu_ld=$with_gnu_ld 6524 1.1 mrg lt_save_path_LD=$lt_cv_path_LD 6525 1.1 mrg if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then 6526 1.1 mrg lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx 6527 1.1 mrg else 6528 1.1 mrg $as_unset lt_cv_prog_gnu_ld 6529 1.1 mrg fi 6530 1.1 mrg if test -n "${lt_cv_path_LDCXX+set}"; then 6531 1.1 mrg lt_cv_path_LD=$lt_cv_path_LDCXX 6532 1.1 mrg else 6533 1.1 mrg $as_unset lt_cv_path_LD 6534 1.1 mrg fi 6535 1.1 mrg test -z "${LDCXX+set}" || LD=$LDCXX 6536 1.1 mrg CC=${CXX-"c++"} 6537 1.1 mrg CFLAGS=$CXXFLAGS 6538 1.1 mrg compiler=$CC 6539 1.1 mrg _LT_TAGVAR(compiler, $1)=$CC 6540 1.1 mrg _LT_CC_BASENAME([$compiler]) 6541 1.1 mrg 6542 1.1 mrg if test -n "$compiler"; then 6543 1.1 mrg # We don't want -fno-exception when compiling C++ code, so set the 6544 1.1 mrg # no_builtin_flag separately 6545 1.1 mrg if test yes = "$GXX"; then 6546 1.1 mrg _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' 6547 1.1 mrg else 6548 1.1 mrg _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= 6549 1.1 mrg fi 6550 1.1 mrg 6551 1.1 mrg if test yes = "$GXX"; then 6552 1.1 mrg # Set up default GNU C++ configuration 6553 1.1 mrg 6554 1.1 mrg LT_PATH_LD 6555 1.1 mrg 6556 1.1 mrg # Check if GNU C++ uses GNU ld as the underlying linker, since the 6557 1.1 mrg # archiving commands below assume that GNU ld is being used. 6558 1.1 mrg if test yes = "$with_gnu_ld"; then 6559 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' 6560 1.1 mrg _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' 6561 1.1 mrg 6562 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 6563 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' 6564 1.1 mrg 6565 1.1 mrg # If archive_cmds runs LD, not CC, wlarc should be empty 6566 1.1 mrg # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to 6567 1.1 mrg # investigate it a little bit more. (MM) 6568 1.1 mrg wlarc='$wl' 6569 1.1 mrg 6570 1.1 mrg # ancient GNU ld didn't support --whole-archive et. al. 6571 1.1 mrg if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then 6572 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' 6573 1.1 mrg else 6574 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)= 6575 1.1 mrg fi 6576 1.1 mrg else 6577 1.1 mrg with_gnu_ld=no 6578 1.1 mrg wlarc= 6579 1.1 mrg 6580 1.1 mrg # A generic and very simple default shared library creation 6581 1.1 mrg # command for GNU C++ for the case where it uses the native 6582 1.1 mrg # linker, instead of GNU ld. If possible, this setting should 6583 1.1 mrg # overridden to take advantage of the native linker features on 6584 1.1 mrg # the platform it is being used on. 6585 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' 6586 1.1 mrg fi 6587 1.1 mrg 6588 1.1 mrg # Commands to make compiler produce verbose output that lists 6589 1.1 mrg # what "hidden" libraries, object files and flags are used when 6590 1.1 mrg # linking a shared library. 6591 1.1 mrg output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [[-]]L"' 6592 1.1 mrg 6593 1.1 mrg else 6594 1.1 mrg GXX=no 6595 1.1 mrg with_gnu_ld=no 6596 1.1 mrg wlarc= 6597 1.1 mrg fi 6598 1.1 mrg 6599 1.1 mrg # PORTME: fill in a description of your system's C++ link characteristics 6600 1.1 mrg AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) 6601 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=yes 6602 1.1 mrg case $host_os in 6603 1.1 mrg aix3*) 6604 1.1 mrg # FIXME: insert proper C++ library support 6605 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 6606 1.1 mrg ;; 6607 1.1 mrg aix[[4-9]]*) 6608 1.1 mrg if test ia64 = "$host_cpu"; then 6609 1.1 mrg # On IA64, the linker does run time linking by default, so we don't 6610 1.1 mrg # have to do anything special. 6611 1.1 mrg aix_use_runtimelinking=no 6612 1.1 mrg exp_sym_flag='-Bexport' 6613 1.1 mrg no_entry_flag= 6614 1.1 mrg else 6615 1.1 mrg aix_use_runtimelinking=no 6616 1.1 mrg 6617 1.1 mrg # Test if we are trying to use run time linking or normal 6618 1.1 mrg # AIX style linking. If -brtl is somewhere in LDFLAGS, we 6619 1.1 mrg # have runtime linking enabled, and use it for executables. 6620 1.1 mrg # For shared libraries, we enable/disable runtime linking 6621 1.1 mrg # depending on the kind of the shared library created - 6622 1.1 mrg # when "with_aix_soname,aix_use_runtimelinking" is: 6623 1.1 mrg # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables 6624 1.1 mrg # "aix,yes" lib.so shared, rtl:yes, for executables 6625 1.1 mrg # lib.a static archive 6626 1.1 mrg # "both,no" lib.so.V(shr.o) shared, rtl:yes 6627 1.1 mrg # lib.a(lib.so.V) shared, rtl:no, for executables 6628 1.1 mrg # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables 6629 1.1 mrg # lib.a(lib.so.V) shared, rtl:no 6630 1.1 mrg # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables 6631 1.1 mrg # lib.a static archive 6632 1.1 mrg case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) 6633 1.1 mrg for ld_flag in $LDFLAGS; do 6634 1.1 mrg case $ld_flag in 6635 1.1 mrg *-brtl*) 6636 1.1 mrg aix_use_runtimelinking=yes 6637 1.1 mrg break 6638 1.1 mrg ;; 6639 1.1 mrg esac 6640 1.1 mrg done 6641 1.1 mrg if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then 6642 1.1 mrg # With aix-soname=svr4, we create the lib.so.V shared archives only, 6643 1.1 mrg # so we don't have lib.a shared libs to link our executables. 6644 1.1 mrg # We have to force runtime linking in this case. 6645 1.1 mrg aix_use_runtimelinking=yes 6646 1.1 mrg LDFLAGS="$LDFLAGS -Wl,-brtl" 6647 1.1 mrg fi 6648 1.1 mrg ;; 6649 1.1 mrg esac 6650 1.1 mrg 6651 1.1 mrg exp_sym_flag='-bexport' 6652 1.1 mrg no_entry_flag='-bnoentry' 6653 1.1 mrg fi 6654 1.1 mrg 6655 1.1 mrg # When large executables or shared objects are built, AIX ld can 6656 1.1 mrg # have problems creating the table of contents. If linking a library 6657 1.1 mrg # or program results in "error TOC overflow" add -mminimal-toc to 6658 1.1 mrg # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not 6659 1.1 mrg # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. 6660 1.1 mrg 6661 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='' 6662 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes 6663 1.1 mrg _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 6664 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=':' 6665 1.1 mrg _LT_TAGVAR(link_all_deplibs, $1)=yes 6666 1.1 mrg _LT_TAGVAR(file_list_spec, $1)='$wl-f,' 6667 1.1 mrg case $with_aix_soname,$aix_use_runtimelinking in 6668 1.1 mrg aix,*) ;; # no import file 6669 1.1 mrg svr4,* | *,yes) # use import file 6670 1.1 mrg # The Import File defines what to hardcode. 6671 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=no 6672 1.1 mrg _LT_TAGVAR(hardcode_direct_absolute, $1)=no 6673 1.1 mrg ;; 6674 1.1 mrg esac 6675 1.1 mrg 6676 1.1 mrg if test yes = "$GXX"; then 6677 1.1 mrg case $host_os in aix4.[[012]]|aix4.[[012]].*) 6678 1.1 mrg # We only want to do this on AIX 4.2 and lower, the check 6679 1.1 mrg # below for broken collect2 doesn't work under 4.3+ 6680 1.1 mrg collect2name=`$CC -print-prog-name=collect2` 6681 1.1 mrg if test -f "$collect2name" && 6682 1.1 mrg strings "$collect2name" | $GREP resolve_lib_name >/dev/null 6683 1.1 mrg then 6684 1.1 mrg # We have reworked collect2 6685 1.1 mrg : 6686 1.1 mrg else 6687 1.1 mrg # We have old collect2 6688 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=unsupported 6689 1.1 mrg # It fails to find uninstalled libraries when the uninstalled 6690 1.1 mrg # path is not listed in the libpath. Setting hardcode_minus_L 6691 1.1 mrg # to unsupported forces relinking 6692 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 6693 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 6694 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)= 6695 1.1 mrg fi 6696 1.1 mrg esac 6697 1.1 mrg shared_flag='-shared' 6698 1.1 mrg if test yes = "$aix_use_runtimelinking"; then 6699 1.1 mrg shared_flag=$shared_flag' $wl-G' 6700 1.1 mrg fi 6701 1.1 mrg # Need to ensure runtime linking is disabled for the traditional 6702 1.1 mrg # shared library, or the linker may eventually find shared libraries 6703 1.1 mrg # /with/ Import File - we do not want to mix them. 6704 1.1 mrg shared_flag_aix='-shared' 6705 1.1 mrg shared_flag_svr4='-shared $wl-G' 6706 1.1 mrg else 6707 1.1 mrg # not using gcc 6708 1.1 mrg if test ia64 = "$host_cpu"; then 6709 1.1 mrg # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release 6710 1.1 mrg # chokes on -Wl,-G. The following line is correct: 6711 1.1 mrg shared_flag='-G' 6712 1.1 mrg else 6713 1.1 mrg if test yes = "$aix_use_runtimelinking"; then 6714 1.1 mrg shared_flag='$wl-G' 6715 1.1 mrg else 6716 1.1 mrg shared_flag='$wl-bM:SRE' 6717 1.1 mrg fi 6718 1.1 mrg shared_flag_aix='$wl-bM:SRE' 6719 1.1 mrg shared_flag_svr4='$wl-G' 6720 1.1 mrg fi 6721 1.1 mrg fi 6722 1.1 mrg 6723 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall' 6724 1.1 mrg # It seems that -bexpall does not export symbols beginning with 6725 1.1 mrg # underscore (_), so it is better to generate a list of symbols to 6726 1.1 mrg # export. 6727 1.1 mrg _LT_TAGVAR(always_export_symbols, $1)=yes 6728 1.1 mrg if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then 6729 1.1 mrg # Warning - without using the other runtime loading flags (-brtl), 6730 1.1 mrg # -berok will link without error, but may produce a broken library. 6731 1.1 mrg # The "-G" linker flag allows undefined symbols. 6732 1.1 mrg _LT_TAGVAR(no_undefined_flag, $1)='-bernotok' 6733 1.1 mrg # Determine the default libpath from the value encoded in an empty 6734 1.1 mrg # executable. 6735 1.1 mrg _LT_SYS_MODULE_PATH_AIX([$1]) 6736 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" 6737 1.1 mrg 6738 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag 6739 1.1 mrg else 6740 1.1 mrg if test ia64 = "$host_cpu"; then 6741 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib' 6742 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" 6743 1.1 mrg _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" 6744 1.1 mrg else 6745 1.1 mrg # Determine the default libpath from the value encoded in an 6746 1.1 mrg # empty executable. 6747 1.1 mrg _LT_SYS_MODULE_PATH_AIX([$1]) 6748 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" 6749 1.1 mrg # Warning - without using the other run time loading flags, 6750 1.1 mrg # -berok will link without error, but may produce a broken library. 6751 1.1 mrg _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok' 6752 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok' 6753 1.1 mrg if test yes = "$with_gnu_ld"; then 6754 1.1 mrg # We only use this code for GNU lds that support --whole-archive. 6755 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' 6756 1.1 mrg else 6757 1.1 mrg # Exported symbols can be pulled into shared objects from archives 6758 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' 6759 1.1 mrg fi 6760 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)=yes 6761 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' 6762 1.1 mrg # -brtl affects multiple linker settings, -berok does not and is overridden later 6763 1.1 mrg compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`' 6764 1.1 mrg if test svr4 != "$with_aix_soname"; then 6765 1.1 mrg # This is similar to how AIX traditionally builds its shared 6766 1.1 mrg # libraries. Need -bnortl late, we may have -brtl in LDFLAGS. 6767 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' 6768 1.1 mrg fi 6769 1.1 mrg if test aix != "$with_aix_soname"; then 6770 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' 6771 1.1 mrg else 6772 1.1 mrg # used by -dlpreopen to get the symbols 6773 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir' 6774 1.1 mrg fi 6775 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d' 6776 1.1 mrg fi 6777 1.1 mrg fi 6778 1.1 mrg ;; 6779 1.1 mrg 6780 1.1 mrg beos*) 6781 1.1 mrg if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then 6782 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 6783 1.1 mrg # Joseph Beckenbach <jrb3 (a] best.com> says some releases of gcc 6784 1.1 mrg # support --undefined. This deserves some investigation. FIXME 6785 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 6786 1.1 mrg else 6787 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 6788 1.1 mrg fi 6789 1.1 mrg ;; 6790 1.1 mrg 6791 1.1 mrg chorus*) 6792 1.1 mrg case $cc_basename in 6793 1.1 mrg *) 6794 1.1 mrg # FIXME: insert proper C++ library support 6795 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 6796 1.1 mrg ;; 6797 1.1 mrg esac 6798 1.1 mrg ;; 6799 1.1 mrg 6800 1.1 mrg cygwin* | mingw* | windows* | pw32* | cegcc*) 6801 1.1 mrg case $GXX,$cc_basename in 6802 1.1 mrg ,cl* | no,cl* | ,icl* | no,icl*) 6803 1.1 mrg # Native MSVC or ICC 6804 1.1 mrg # hardcode_libdir_flag_spec is actually meaningless, as there is 6805 1.1 mrg # no search path for DLLs. 6806 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' 6807 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 6808 1.1 mrg _LT_TAGVAR(always_export_symbols, $1)=yes 6809 1.1 mrg _LT_TAGVAR(file_list_spec, $1)='@' 6810 1.1 mrg # Tell ltmain to make .lib files, not .a files. 6811 1.1 mrg libext=lib 6812 1.1 mrg # Tell ltmain to make .dll files, not .so files. 6813 1.1 mrg shrext_cmds=.dll 6814 1.1 mrg # FIXME: Setting linknames here is a bad hack. 6815 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' 6816 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then 6817 1.1 mrg cp "$export_symbols" "$output_objdir/$soname.def"; 6818 1.1 mrg echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; 6819 1.1 mrg else 6820 1.1 mrg $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; 6821 1.1 mrg fi~ 6822 1.1 mrg $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ 6823 1.1 mrg linknames=' 6824 1.1 mrg # The linker will not automatically build a static lib if we build a DLL. 6825 1.1 mrg # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' 6826 1.1 mrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 6827 1.1 mrg # Don't use ranlib 6828 1.1 mrg _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' 6829 1.1 mrg _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ 6830 1.1 mrg lt_tool_outputfile="@TOOL_OUTPUT@"~ 6831 1.1 mrg case $lt_outputfile in 6832 1.1 mrg *.exe|*.EXE) ;; 6833 1.1 mrg *) 6834 1.1 mrg lt_outputfile=$lt_outputfile.exe 6835 1.1 mrg lt_tool_outputfile=$lt_tool_outputfile.exe 6836 1.1 mrg ;; 6837 1.1 mrg esac~ 6838 1.1 mrg func_to_tool_file "$lt_outputfile"~ 6839 1.1 mrg if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then 6840 1.1 mrg $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; 6841 1.1 mrg $RM "$lt_outputfile.manifest"; 6842 1.1 mrg fi' 6843 1.1 mrg ;; 6844 1.1 mrg *) 6845 1.1 mrg # g++ 6846 1.1 mrg # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, 6847 1.1 mrg # as there is no search path for DLLs. 6848 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 6849 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols' 6850 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 6851 1.1 mrg _LT_TAGVAR(always_export_symbols, $1)=no 6852 1.1 mrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 6853 1.1 mrg _LT_TAGVAR(file_list_spec, $1)='@' 6854 1.1 mrg 6855 1.1 mrg if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then 6856 1.1 mrg _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' 6857 1.1 mrg # If the export-symbols file already is a .def file, use it as 6858 1.1 mrg # is; otherwise, prepend EXPORTS... 6859 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then 6860 1.1 mrg cp $export_symbols $output_objdir/$soname.def; 6861 1.1 mrg else 6862 1.1 mrg echo EXPORTS > $output_objdir/$soname.def; 6863 1.1 mrg cat $export_symbols >> $output_objdir/$soname.def; 6864 1.1 mrg fi~ 6865 1.1 mrg $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' 6866 1.1 mrg else 6867 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 6868 1.1 mrg fi 6869 1.1 mrg ;; 6870 1.1 mrg esac 6871 1.1 mrg ;; 6872 1.1 mrg darwin* | rhapsody*) 6873 1.1 mrg _LT_DARWIN_LINKER_FEATURES($1) 6874 1.1 mrg ;; 6875 1.1 mrg 6876 1.1 mrg os2*) 6877 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 6878 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 6879 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 6880 1.1 mrg shrext_cmds=.dll 6881 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ 6882 1.1 mrg $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ 6883 1.1 mrg $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ 6884 1.1 mrg $ECHO EXPORTS >> $output_objdir/$libname.def~ 6885 1.1 mrg emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ 6886 1.1 mrg $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ 6887 1.1 mrg emximp -o $lib $output_objdir/$libname.def' 6888 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ 6889 1.1 mrg $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ 6890 1.1 mrg $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ 6891 1.1 mrg $ECHO EXPORTS >> $output_objdir/$libname.def~ 6892 1.1 mrg prefix_cmds="$SED"~ 6893 1.1 mrg if test EXPORTS = "`$SED 1q $export_symbols`"; then 6894 1.1 mrg prefix_cmds="$prefix_cmds -e 1d"; 6895 1.1 mrg fi~ 6896 1.1 mrg prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ 6897 1.1 mrg cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ 6898 1.1 mrg $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ 6899 1.1 mrg emximp -o $lib $output_objdir/$libname.def' 6900 1.1 mrg _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' 6901 1.1 mrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 6902 1.1 mrg _LT_TAGVAR(file_list_spec, $1)='@' 6903 1.1 mrg ;; 6904 1.1 mrg 6905 1.1 mrg dgux*) 6906 1.1 mrg case $cc_basename in 6907 1.1 mrg ec++*) 6908 1.1 mrg # FIXME: insert proper C++ library support 6909 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 6910 1.1 mrg ;; 6911 1.1 mrg ghcx*) 6912 1.1 mrg # Green Hills C++ Compiler 6913 1.1 mrg # FIXME: insert proper C++ library support 6914 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 6915 1.1 mrg ;; 6916 1.1 mrg *) 6917 1.1 mrg # FIXME: insert proper C++ library support 6918 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 6919 1.1 mrg ;; 6920 1.1 mrg esac 6921 1.1 mrg ;; 6922 1.1 mrg 6923 1.1 mrg freebsd2.*) 6924 1.1 mrg # C++ shared libraries reported to be fairly broken before 6925 1.1 mrg # switch to ELF 6926 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 6927 1.1 mrg ;; 6928 1.1 mrg 6929 1.1 mrg freebsd-elf*) 6930 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 6931 1.1 mrg ;; 6932 1.1 mrg 6933 1.1 mrg freebsd* | dragonfly* | midnightbsd*) 6934 1.1 mrg # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF 6935 1.1 mrg # conventions 6936 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=yes 6937 1.1 mrg ;; 6938 1.1 mrg 6939 1.1 mrg haiku*) 6940 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 6941 1.1 mrg _LT_TAGVAR(link_all_deplibs, $1)=no 6942 1.1 mrg ;; 6943 1.1 mrg 6944 1.1 mrg hpux9*) 6945 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' 6946 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 6947 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 6948 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes 6949 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, 6950 1.1 mrg # but as the default 6951 1.1 mrg # location of the library. 6952 1.1 mrg 6953 1.1 mrg case $cc_basename in 6954 1.1 mrg CC*) 6955 1.1 mrg # FIXME: insert proper C++ library support 6956 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 6957 1.1 mrg ;; 6958 1.1 mrg aCC*) 6959 1.1 mrg _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 "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' 6960 1.1 mrg # Commands to make compiler produce verbose output that lists 6961 1.1 mrg # what "hidden" libraries, object files and flags are used when 6962 1.1 mrg # linking a shared library. 6963 1.1 mrg # 6964 1.1 mrg # There doesn't appear to be a way to prevent this compiler from 6965 1.1 mrg # explicitly linking system object files so we need to strip them 6966 1.1 mrg # from the output so that they don't get included in the library 6967 1.1 mrg # dependencies. 6968 1.1 mrg 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"' 6969 1.1 mrg ;; 6970 1.1 mrg *) 6971 1.1 mrg if test yes = "$GXX"; then 6972 1.1 mrg _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 "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' 6973 1.1 mrg else 6974 1.1 mrg # FIXME: insert proper C++ library support 6975 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 6976 1.1 mrg fi 6977 1.1 mrg ;; 6978 1.1 mrg esac 6979 1.1 mrg ;; 6980 1.1 mrg 6981 1.1 mrg hpux10*|hpux11*) 6982 1.1 mrg if test no = "$with_gnu_ld"; then 6983 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' 6984 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 6985 1.1 mrg 6986 1.1 mrg case $host_cpu in 6987 1.1 mrg hppa*64*|ia64*) 6988 1.1 mrg ;; 6989 1.1 mrg *) 6990 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 6991 1.1 mrg ;; 6992 1.1 mrg esac 6993 1.1 mrg fi 6994 1.1 mrg case $host_cpu in 6995 1.1 mrg hppa*64*|ia64*) 6996 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=no 6997 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 6998 1.1 mrg ;; 6999 1.1 mrg *) 7000 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes 7001 1.1 mrg _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 7002 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, 7003 1.1 mrg # but as the default 7004 1.1 mrg # location of the library. 7005 1.1 mrg ;; 7006 1.1 mrg esac 7007 1.1 mrg 7008 1.1 mrg case $cc_basename in 7009 1.1 mrg CC*) 7010 1.1 mrg # FIXME: insert proper C++ library support 7011 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 7012 1.1 mrg ;; 7013 1.1 mrg aCC*) 7014 1.1 mrg case $host_cpu in 7015 1.1 mrg hppa*64*) 7016 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 7017 1.1 mrg ;; 7018 1.1 mrg ia64*) 7019 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 7020 1.1 mrg ;; 7021 1.1 mrg *) 7022 1.1 mrg _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' 7023 1.1 mrg ;; 7024 1.1 mrg esac 7025 1.1 mrg # Commands to make compiler produce verbose output that lists 7026 1.1 mrg # what "hidden" libraries, object files and flags are used when 7027 1.1 mrg # linking a shared library. 7028 1.1 mrg # 7029 1.1 mrg # There doesn't appear to be a way to prevent this compiler from 7030 1.1 mrg # explicitly linking system object files so we need to strip them 7031 1.1 mrg # from the output so that they don't get included in the library 7032 1.1 mrg # dependencies. 7033 1.1 mrg 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"' 7034 1.1 mrg ;; 7035 1.1 mrg *) 7036 1.1 mrg if test yes = "$GXX"; then 7037 1.1 mrg if test no = "$with_gnu_ld"; then 7038 1.1 mrg case $host_cpu in 7039 1.1 mrg hppa*64*) 7040 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 7041 1.1 mrg ;; 7042 1.1 mrg ia64*) 7043 1.1 mrg _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' 7044 1.1 mrg ;; 7045 1.1 mrg *) 7046 1.1 mrg _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' 7047 1.1 mrg ;; 7048 1.1 mrg esac 7049 1.1 mrg fi 7050 1.1 mrg else 7051 1.1 mrg # FIXME: insert proper C++ library support 7052 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 7053 1.1 mrg fi 7054 1.1 mrg ;; 7055 1.1 mrg esac 7056 1.1 mrg ;; 7057 1.1 mrg 7058 1.1 mrg interix[[3-9]]*) 7059 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=no 7060 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 7061 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' 7062 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 7063 1.1 mrg # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. 7064 1.1 mrg # Instead, shared libraries are loaded at an image base (0x10000000 by 7065 1.1 mrg # default) and relocated if they conflict, which is a slow very memory 7066 1.1 mrg # consuming and fragmenting process. To avoid this, we pick a random, 7067 1.1 mrg # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link 7068 1.1 mrg # time. Moving up from 0x10000000 also allows more sbrk(2) space. 7069 1.1 mrg _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' 7070 1.1 mrg _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' 7071 1.1 mrg ;; 7072 1.1 mrg irix5* | irix6*) 7073 1.1 mrg case $cc_basename in 7074 1.1 mrg CC*) 7075 1.1 mrg # SGI C++ 7076 1.1 mrg _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' 7077 1.1 mrg 7078 1.1 mrg # Archives containing C++ object files must be created using 7079 1.1 mrg # "CC -ar", where "CC" is the IRIX C++ compiler. This is 7080 1.1 mrg # necessary to make sure instantiated templates are included 7081 1.1 mrg # in the archive. 7082 1.1 mrg _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' 7083 1.1 mrg ;; 7084 1.1 mrg *) 7085 1.1 mrg if test yes = "$GXX"; then 7086 1.1 mrg if test no = "$with_gnu_ld"; then 7087 1.1 mrg _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' 7088 1.1 mrg else 7089 1.1 mrg _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' 7090 1.1 mrg fi 7091 1.1 mrg fi 7092 1.1 mrg _LT_TAGVAR(link_all_deplibs, $1)=yes 7093 1.1 mrg ;; 7094 1.1 mrg esac 7095 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 7096 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 7097 1.1 mrg _LT_TAGVAR(inherit_rpath, $1)=yes 7098 1.1 mrg ;; 7099 1.1 mrg 7100 1.1 mrg linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) 7101 1.1 mrg case $cc_basename in 7102 1.1 mrg KCC*) 7103 1.1 mrg # Kuck and Associates, Inc. (KAI) C++ Compiler 7104 1.1 mrg 7105 1.1 mrg # KCC will only create a shared library if the output file 7106 1.1 mrg # ends with ".so" (or ".sl" for HP-UX), so rename the library 7107 1.1 mrg # to its proper name (with version) after linking. 7108 1.1 mrg _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' 7109 1.1 mrg _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' 7110 1.1 mrg # Commands to make compiler produce verbose output that lists 7111 1.1 mrg # what "hidden" libraries, object files and flags are used when 7112 1.1 mrg # linking a shared library. 7113 1.1 mrg # 7114 1.1 mrg # There doesn't appear to be a way to prevent this compiler from 7115 1.1 mrg # explicitly linking system object files so we need to strip them 7116 1.1 mrg # from the output so that they don't get included in the library 7117 1.1 mrg # dependencies. 7118 1.1 mrg 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"' 7119 1.1 mrg 7120 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' 7121 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' 7122 1.1 mrg 7123 1.1 mrg # Archives containing C++ object files must be created using 7124 1.1 mrg # "CC -Bstatic", where "CC" is the KAI C++ compiler. 7125 1.1 mrg _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' 7126 1.1 mrg ;; 7127 1.1 mrg icpc* | ecpc* ) 7128 1.1 mrg # Intel C++ 7129 1.1 mrg with_gnu_ld=yes 7130 1.1 mrg # version 8.0 and above of icpc choke on multiply defined symbols 7131 1.1 mrg # if we add $predep_objects and $postdep_objects, however 7.1 and 7132 1.1 mrg # earlier do not add the objects themselves. 7133 1.1 mrg case `$CC -V 2>&1` in 7134 1.1 mrg *"Version 7."*) 7135 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' 7136 1.1 mrg _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' 7137 1.1 mrg ;; 7138 1.1 mrg *) # Version 8.0 or newer 7139 1.1 mrg tmp_idyn= 7140 1.1 mrg case $host_cpu in 7141 1.1 mrg ia64*) tmp_idyn=' -i_dynamic';; 7142 1.1 mrg esac 7143 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 7144 1.1 mrg _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' 7145 1.1 mrg ;; 7146 1.1 mrg esac 7147 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 7148 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' 7149 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' 7150 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' 7151 1.1 mrg ;; 7152 1.1 mrg pgCC* | pgcpp*) 7153 1.1 mrg # Portland Group C++ compiler 7154 1.1 mrg case `$CC -V` in 7155 1.1 mrg *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*) 7156 1.1 mrg _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~ 7157 1.1 mrg rm -rf $tpldir~ 7158 1.1 mrg $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ 7159 1.1 mrg compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"' 7160 1.1 mrg _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~ 7161 1.1 mrg rm -rf $tpldir~ 7162 1.1 mrg $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ 7163 1.1 mrg $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~ 7164 1.1 mrg $RANLIB $oldlib' 7165 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~ 7166 1.1 mrg rm -rf $tpldir~ 7167 1.1 mrg $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ 7168 1.1 mrg $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' 7169 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~ 7170 1.1 mrg rm -rf $tpldir~ 7171 1.1 mrg $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ 7172 1.1 mrg $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' 7173 1.1 mrg ;; 7174 1.1 mrg *) # Version 6 and above use weak symbols 7175 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' 7176 1.1 mrg _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' 7177 1.1 mrg ;; 7178 1.1 mrg esac 7179 1.1 mrg 7180 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir' 7181 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' 7182 1.1 mrg _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' 7183 1.1 mrg ;; 7184 1.1 mrg cxx*) 7185 1.1 mrg # Compaq C++ 7186 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' 7187 1.1 mrg _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' 7188 1.1 mrg 7189 1.1 mrg runpath_var=LD_RUN_PATH 7190 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' 7191 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 7192 1.1 mrg 7193 1.1 mrg # Commands to make compiler produce verbose output that lists 7194 1.1 mrg # what "hidden" libraries, object files and flags are used when 7195 1.1 mrg # linking a shared library. 7196 1.1 mrg # 7197 1.1 mrg # There doesn't appear to be a way to prevent this compiler from 7198 1.1 mrg # explicitly linking system object files so we need to strip them 7199 1.1 mrg # from the output so that they don't get included in the library 7200 1.1 mrg # dependencies. 7201 1.1 mrg 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' 7202 1.1 mrg ;; 7203 1.1 mrg xl* | mpixl* | bgxl*) 7204 1.1 mrg # IBM XL 8.0 on PPC, with GNU ld 7205 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 7206 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' 7207 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 7208 1.1 mrg if test yes = "$supports_anon_versioning"; then 7209 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ 7210 1.1 mrg cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ 7211 1.1 mrg echo "local: *; };" >> $output_objdir/$libname.ver~ 7212 1.1 mrg $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' 7213 1.1 mrg fi 7214 1.1 mrg ;; 7215 1.1 mrg *) 7216 1.1 mrg case `$CC -V 2>&1 | $SED 5q` in 7217 1.1 mrg *Sun\ C*) 7218 1.1 mrg # Sun C++ 5.9 7219 1.1 mrg _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' 7220 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 7221 1.1 mrg _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' 7222 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 7223 1.1 mrg _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' 7224 1.1 mrg _LT_TAGVAR(compiler_needs_object, $1)=yes 7225 1.1 mrg 7226 1.1 mrg # Not sure whether something based on 7227 1.1 mrg # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 7228 1.1 mrg # would be better. 7229 1.1 mrg output_verbose_link_cmd='func_echo_all' 7230 1.1 mrg 7231 1.1 mrg # Archives containing C++ object files must be created using 7232 1.1 mrg # "CC -xar", where "CC" is the Sun C++ compiler. This is 7233 1.1 mrg # necessary to make sure instantiated templates are included 7234 1.1 mrg # in the archive. 7235 1.1 mrg _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' 7236 1.1 mrg ;; 7237 1.1 mrg esac 7238 1.1 mrg ;; 7239 1.1 mrg esac 7240 1.1 mrg ;; 7241 1.1 mrg 7242 1.1 mrg lynxos*) 7243 1.1 mrg # FIXME: insert proper C++ library support 7244 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 7245 1.1 mrg ;; 7246 1.1 mrg 7247 1.1 mrg m88k*) 7248 1.1 mrg # FIXME: insert proper C++ library support 7249 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 7250 1.1 mrg ;; 7251 1.1 mrg 7252 1.1 mrg mvs*) 7253 1.1 mrg case $cc_basename in 7254 1.1 mrg cxx*) 7255 1.1 mrg # FIXME: insert proper C++ library support 7256 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 7257 1.1 mrg ;; 7258 1.1 mrg *) 7259 1.1 mrg # FIXME: insert proper C++ library support 7260 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 7261 1.1 mrg ;; 7262 1.1 mrg esac 7263 1.1 mrg ;; 7264 1.1 mrg 7265 1.1 mrg *-mlibc) 7266 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=yes 7267 1.1 mrg ;; 7268 1.1 mrg 7269 1.1 mrg netbsd*) 7270 1.1 mrg if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then 7271 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' 7272 1.1 mrg wlarc= 7273 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 7274 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes 7275 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 7276 1.1 mrg fi 7277 1.1 mrg # Workaround some broken pre-1.5 toolchains 7278 1.1 mrg output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' 7279 1.1 mrg ;; 7280 1.1 mrg 7281 1.1 mrg *nto* | *qnx*) 7282 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=yes 7283 1.1 mrg ;; 7284 1.1 mrg 7285 1.1 mrg openbsd*) 7286 1.1 mrg if test -f /usr/libexec/ld.so; then 7287 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=yes 7288 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 7289 1.1 mrg _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 7290 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' 7291 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' 7292 1.1 mrg if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then 7293 1.1 mrg _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' 7294 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 7295 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' 7296 1.1 mrg fi 7297 1.1 mrg output_verbose_link_cmd=func_echo_all 7298 1.1 mrg else 7299 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 7300 1.1 mrg fi 7301 1.1 mrg ;; 7302 1.1 mrg 7303 1.1 mrg osf3* | osf4* | osf5*) 7304 1.1 mrg case $cc_basename in 7305 1.1 mrg KCC*) 7306 1.1 mrg # Kuck and Associates, Inc. (KAI) C++ Compiler 7307 1.1 mrg 7308 1.1 mrg # KCC will only create a shared library if the output file 7309 1.1 mrg # ends with ".so" (or ".sl" for HP-UX), so rename the library 7310 1.1 mrg # to its proper name (with version) after linking. 7311 1.1 mrg _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' 7312 1.1 mrg 7313 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' 7314 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 7315 1.1 mrg 7316 1.1 mrg # Archives containing C++ object files must be created using 7317 1.1 mrg # the KAI C++ compiler. 7318 1.1 mrg case $host in 7319 1.1 mrg osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; 7320 1.1 mrg *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;; 7321 1.1 mrg esac 7322 1.1 mrg ;; 7323 1.1 mrg RCC*) 7324 1.1 mrg # Rational C++ 2.4.1 7325 1.1 mrg # FIXME: insert proper C++ library support 7326 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 7327 1.1 mrg ;; 7328 1.1 mrg cxx*) 7329 1.1 mrg case $host in 7330 1.1 mrg osf3*) 7331 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' 7332 1.1 mrg _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' 7333 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 7334 1.1 mrg ;; 7335 1.1 mrg *) 7336 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' 7337 1.1 mrg _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' 7338 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ 7339 1.1 mrg echo "-hidden">> $lib.exp~ 7340 1.1 mrg $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~ 7341 1.1 mrg $RM $lib.exp' 7342 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' 7343 1.1 mrg ;; 7344 1.1 mrg esac 7345 1.1 mrg 7346 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 7347 1.1 mrg 7348 1.1 mrg # Commands to make compiler produce verbose output that lists 7349 1.1 mrg # what "hidden" libraries, object files and flags are used when 7350 1.1 mrg # linking a shared library. 7351 1.1 mrg # 7352 1.1 mrg # There doesn't appear to be a way to prevent this compiler from 7353 1.1 mrg # explicitly linking system object files so we need to strip them 7354 1.1 mrg # from the output so that they don't get included in the library 7355 1.1 mrg # dependencies. 7356 1.1 mrg 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"' 7357 1.1 mrg ;; 7358 1.1 mrg *) 7359 1.1 mrg if test yes,no = "$GXX,$with_gnu_ld"; then 7360 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' 7361 1.1 mrg case $host in 7362 1.1 mrg osf3*) 7363 1.1 mrg _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' 7364 1.1 mrg ;; 7365 1.1 mrg *) 7366 1.1 mrg _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' 7367 1.1 mrg ;; 7368 1.1 mrg esac 7369 1.1 mrg 7370 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 7371 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 7372 1.1 mrg 7373 1.1 mrg # Commands to make compiler produce verbose output that lists 7374 1.1 mrg # what "hidden" libraries, object files and flags are used when 7375 1.1 mrg # linking a shared library. 7376 1.1 mrg output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [[-]]L"' 7377 1.1 mrg 7378 1.1 mrg else 7379 1.1 mrg # FIXME: insert proper C++ library support 7380 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 7381 1.1 mrg fi 7382 1.1 mrg ;; 7383 1.1 mrg esac 7384 1.1 mrg ;; 7385 1.1 mrg 7386 1.1 mrg psos*) 7387 1.1 mrg # FIXME: insert proper C++ library support 7388 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 7389 1.1 mrg ;; 7390 1.1 mrg 7391 1.1 mrg serenity*) 7392 1.1 mrg ;; 7393 1.1 mrg 7394 1.1 mrg sunos4*) 7395 1.1 mrg case $cc_basename in 7396 1.1 mrg CC*) 7397 1.1 mrg # Sun C++ 4.x 7398 1.1 mrg # FIXME: insert proper C++ library support 7399 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 7400 1.1 mrg ;; 7401 1.1 mrg lcc*) 7402 1.1 mrg # Lucid 7403 1.1 mrg # FIXME: insert proper C++ library support 7404 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 7405 1.1 mrg ;; 7406 1.1 mrg *) 7407 1.1 mrg # FIXME: insert proper C++ library support 7408 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 7409 1.1 mrg ;; 7410 1.1 mrg esac 7411 1.1 mrg ;; 7412 1.1 mrg 7413 1.1 mrg solaris*) 7414 1.1 mrg case $cc_basename in 7415 1.1 mrg CC* | sunCC*) 7416 1.1 mrg # Sun C++ 4.2, 5.x and Centerline C++ 7417 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc,$1)=yes 7418 1.1 mrg _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' 7419 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 7420 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 7421 1.1 mrg $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' 7422 1.1 mrg 7423 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 7424 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 7425 1.1 mrg case $host_os in 7426 1.1 mrg solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; 7427 1.1 mrg *) 7428 1.1 mrg # The compiler driver will combine and reorder linker options, 7429 1.1 mrg # but understands '-z linker_flag'. 7430 1.1 mrg # Supported since Solaris 2.6 (maybe 2.5.1?) 7431 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' 7432 1.1 mrg ;; 7433 1.1 mrg esac 7434 1.1 mrg _LT_TAGVAR(link_all_deplibs, $1)=yes 7435 1.1 mrg 7436 1.1 mrg output_verbose_link_cmd='func_echo_all' 7437 1.1 mrg 7438 1.1 mrg # Archives containing C++ object files must be created using 7439 1.1 mrg # "CC -xar", where "CC" is the Sun C++ compiler. This is 7440 1.1 mrg # necessary to make sure instantiated templates are included 7441 1.1 mrg # in the archive. 7442 1.1 mrg _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' 7443 1.1 mrg ;; 7444 1.1 mrg gcx*) 7445 1.1 mrg # Green Hills C++ Compiler 7446 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' 7447 1.1 mrg 7448 1.1 mrg # The C++ compiler must be used to create the archive. 7449 1.1 mrg _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' 7450 1.1 mrg ;; 7451 1.1 mrg *) 7452 1.1 mrg # GNU C++ compiler with Solaris linker 7453 1.1 mrg if test yes,no = "$GXX,$with_gnu_ld"; then 7454 1.1 mrg _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs' 7455 1.1 mrg if $CC --version | $GREP -v '^2\.7' > /dev/null; then 7456 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' 7457 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 7458 1.1 mrg $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' 7459 1.1 mrg 7460 1.1 mrg # Commands to make compiler produce verbose output that lists 7461 1.1 mrg # what "hidden" libraries, object files and flags are used when 7462 1.1 mrg # linking a shared library. 7463 1.1 mrg output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [[-]]L"' 7464 1.1 mrg else 7465 1.1 mrg # g++ 2.7 appears to require '-G' NOT '-shared' on this 7466 1.1 mrg # platform. 7467 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' 7468 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 7469 1.1 mrg $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' 7470 1.1 mrg 7471 1.1 mrg # Commands to make compiler produce verbose output that lists 7472 1.1 mrg # what "hidden" libraries, object files and flags are used when 7473 1.1 mrg # linking a shared library. 7474 1.1 mrg output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [[-]]L"' 7475 1.1 mrg fi 7476 1.1 mrg 7477 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir' 7478 1.1 mrg case $host_os in 7479 1.1 mrg solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; 7480 1.1 mrg *) 7481 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' 7482 1.1 mrg ;; 7483 1.1 mrg esac 7484 1.1 mrg fi 7485 1.1 mrg ;; 7486 1.1 mrg esac 7487 1.1 mrg ;; 7488 1.1 mrg 7489 1.1 mrg sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) 7490 1.1 mrg _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' 7491 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 7492 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 7493 1.1 mrg runpath_var='LD_RUN_PATH' 7494 1.1 mrg 7495 1.1 mrg case $cc_basename in 7496 1.1 mrg CC*) 7497 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 7498 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 7499 1.1 mrg ;; 7500 1.1 mrg *) 7501 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 7502 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 7503 1.1 mrg ;; 7504 1.1 mrg esac 7505 1.1 mrg ;; 7506 1.1 mrg 7507 1.1 mrg sysv5* | sco3.2v5* | sco5v6*) 7508 1.1 mrg # Note: We CANNOT use -z defs as we might desire, because we do not 7509 1.1 mrg # link with -lc, and that would cause any symbols used from libc to 7510 1.1 mrg # always be unresolved, which means just about no library would 7511 1.1 mrg # ever link correctly. If we're not using GNU ld we use -z text 7512 1.1 mrg # though, which does catch some bad symbols but isn't as heavy-handed 7513 1.1 mrg # as -z defs. 7514 1.1 mrg _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' 7515 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs' 7516 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 7517 1.1 mrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 7518 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir' 7519 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)=':' 7520 1.1 mrg _LT_TAGVAR(link_all_deplibs, $1)=yes 7521 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport' 7522 1.1 mrg runpath_var='LD_RUN_PATH' 7523 1.1 mrg 7524 1.1 mrg case $cc_basename in 7525 1.1 mrg CC*) 7526 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 7527 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 7528 1.1 mrg _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~ 7529 1.1 mrg '"$_LT_TAGVAR(old_archive_cmds, $1)" 7530 1.1 mrg _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~ 7531 1.1 mrg '"$_LT_TAGVAR(reload_cmds, $1)" 7532 1.1 mrg ;; 7533 1.1 mrg *) 7534 1.1 mrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 7535 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 7536 1.1 mrg ;; 7537 1.1 mrg esac 7538 1.1 mrg ;; 7539 1.1 mrg 7540 1.1 mrg tandem*) 7541 1.1 mrg case $cc_basename in 7542 1.1 mrg NCC*) 7543 1.1 mrg # NonStop-UX NCC 3.20 7544 1.1 mrg # FIXME: insert proper C++ library support 7545 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 7546 1.1 mrg ;; 7547 1.1 mrg *) 7548 1.1 mrg # FIXME: insert proper C++ library support 7549 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 7550 1.1 mrg ;; 7551 1.1 mrg esac 7552 1.1 mrg ;; 7553 1.1 mrg 7554 1.1 mrg vxworks*) 7555 1.1 mrg # FIXME: insert proper C++ library support 7556 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 7557 1.1 mrg ;; 7558 1.1 mrg 7559 1.1 mrg *) 7560 1.1 mrg # FIXME: insert proper C++ library support 7561 1.1 mrg _LT_TAGVAR(ld_shlibs, $1)=no 7562 1.1 mrg ;; 7563 1.1 mrg esac 7564 1.1 mrg 7565 1.1 mrg AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) 7566 1.1 mrg test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no 7567 1.1 mrg 7568 1.1 mrg _LT_TAGVAR(GCC, $1)=$GXX 7569 1.1 mrg _LT_TAGVAR(LD, $1)=$LD 7570 1.1 mrg 7571 1.1 mrg ## CAVEAT EMPTOR: 7572 1.1 mrg ## There is no encapsulation within the following macros, do not change 7573 1.1 mrg ## the running order or otherwise move them around unless you know exactly 7574 1.1 mrg ## what you are doing... 7575 1.1 mrg _LT_SYS_HIDDEN_LIBDEPS($1) 7576 1.1 mrg _LT_COMPILER_PIC($1) 7577 1.1 mrg _LT_COMPILER_C_O($1) 7578 1.1 mrg _LT_COMPILER_FILE_LOCKS($1) 7579 1.1 mrg _LT_LINKER_SHLIBS($1) 7580 1.1 mrg _LT_SYS_DYNAMIC_LINKER($1) 7581 1.1 mrg _LT_LINKER_HARDCODE_LIBPATH($1) 7582 1.1 mrg 7583 1.1 mrg _LT_CONFIG($1) 7584 1.1 mrg fi # test -n "$compiler" 7585 1.1 mrg 7586 1.1 mrg CC=$lt_save_CC 7587 1.1 mrg CFLAGS=$lt_save_CFLAGS 7588 1.1 mrg LDCXX=$LD 7589 1.1 mrg LD=$lt_save_LD 7590 1.1 mrg GCC=$lt_save_GCC 7591 1.1 mrg with_gnu_ld=$lt_save_with_gnu_ld 7592 1.1 mrg lt_cv_path_LDCXX=$lt_cv_path_LD 7593 1.1 mrg lt_cv_path_LD=$lt_save_path_LD 7594 1.1 mrg lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld 7595 1.1 mrg lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld 7596 1.1 mrg fi # test yes != "$_lt_caught_CXX_error" 7597 1.1 mrg 7598 1.1 mrg AC_LANG_POP 7599 1.1 mrg ])# _LT_LANG_CXX_CONFIG 7600 1.1 mrg 7601 1.1 mrg 7602 1.1 mrg # _LT_FUNC_STRIPNAME_CNF 7603 1.1 mrg # ---------------------- 7604 1.1 mrg # func_stripname_cnf prefix suffix name 7605 1.1 mrg # strip PREFIX and SUFFIX off of NAME. 7606 1.1 mrg # PREFIX and SUFFIX must not contain globbing or regex special 7607 1.1 mrg # characters, hashes, percent signs, but SUFFIX may contain a leading 7608 1.1 mrg # dot (in which case that matches only a dot). 7609 1.1 mrg # 7610 1.1 mrg # This function is identical to the (non-XSI) version of func_stripname, 7611 1.1 mrg # except this one can be used by m4 code that may be executed by configure, 7612 1.1 mrg # rather than the libtool script. 7613 1.1 mrg m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl 7614 1.1 mrg AC_REQUIRE([_LT_DECL_SED]) 7615 1.1 mrg AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH]) 7616 1.1 mrg func_stripname_cnf () 7617 1.1 mrg { 7618 1.1 mrg case @S|@2 in 7619 1.1 mrg .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;; 7620 1.1 mrg *) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;; 7621 1.1 mrg esac 7622 1.1 mrg } # func_stripname_cnf 7623 1.1 mrg ])# _LT_FUNC_STRIPNAME_CNF 7624 1.1 mrg 7625 1.1 mrg 7626 1.1 mrg # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME]) 7627 1.1 mrg # --------------------------------- 7628 1.1 mrg # Figure out "hidden" library dependencies from verbose 7629 1.1 mrg # compiler output when linking a shared library. 7630 1.1 mrg # Parse the compiler output and extract the necessary 7631 1.1 mrg # objects, libraries and library flags. 7632 1.1 mrg m4_defun([_LT_SYS_HIDDEN_LIBDEPS], 7633 1.1 mrg [m4_require([_LT_FILEUTILS_DEFAULTS])dnl 7634 1.1 mrg AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl 7635 1.1 mrg # Dependencies to place before and after the object being linked: 7636 1.1 mrg _LT_TAGVAR(predep_objects, $1)= 7637 1.1 mrg _LT_TAGVAR(postdep_objects, $1)= 7638 1.1 mrg _LT_TAGVAR(predeps, $1)= 7639 1.1 mrg _LT_TAGVAR(postdeps, $1)= 7640 1.1 mrg _LT_TAGVAR(compiler_lib_search_path, $1)= 7641 1.1 mrg 7642 1.1 mrg dnl we can't use the lt_simple_compile_test_code here, 7643 1.1 mrg dnl because it contains code intended for an executable, 7644 1.1 mrg dnl not a library. It's possible we should let each 7645 1.1 mrg dnl tag define a new lt_????_link_test_code variable, 7646 1.1 mrg dnl but it's only used here... 7647 1.1 mrg m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF 7648 1.1 mrg int a; 7649 1.1 mrg void foo (void) { a = 0; } 7650 1.1 mrg _LT_EOF 7651 1.1 mrg ], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF 7652 1.1 mrg class Foo 7653 1.1 mrg { 7654 1.1 mrg public: 7655 1.1 mrg Foo (void) { a = 0; } 7656 1.1 mrg private: 7657 1.1 mrg int a; 7658 1.1 mrg }; 7659 1.1 mrg _LT_EOF 7660 1.1 mrg ], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF 7661 1.1 mrg subroutine foo 7662 1.1 mrg implicit none 7663 1.1 mrg integer*4 a 7664 1.1 mrg a=0 7665 1.1 mrg return 7666 1.1 mrg end 7667 1.1 mrg _LT_EOF 7668 1.1 mrg ], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF 7669 1.1 mrg subroutine foo 7670 1.1 mrg implicit none 7671 1.1 mrg integer a 7672 1.1 mrg a=0 7673 1.1 mrg return 7674 1.1 mrg end 7675 1.1 mrg _LT_EOF 7676 1.1 mrg ], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF 7677 1.1 mrg public class foo { 7678 1.1 mrg private int a; 7679 1.1 mrg public void bar (void) { 7680 1.1 mrg a = 0; 7681 1.1 mrg } 7682 1.1 mrg }; 7683 1.1 mrg _LT_EOF 7684 1.1 mrg ], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF 7685 1.1 mrg package foo 7686 1.1 mrg func foo() { 7687 1.1 mrg } 7688 1.1 mrg _LT_EOF 7689 1.1 mrg ]) 7690 1.1 mrg 7691 1.1 mrg _lt_libdeps_save_CFLAGS=$CFLAGS 7692 1.1 mrg case "$CC $CFLAGS " in #( 7693 1.1 mrg *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;; 7694 1.1 mrg *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;; 7695 1.1 mrg *\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;; 7696 1.1 mrg esac 7697 1.1 mrg 7698 1.1 mrg dnl Parse the compiler output and extract the necessary 7699 1.1 mrg dnl objects, libraries and library flags. 7700 1.1 mrg if AC_TRY_EVAL(ac_compile); then 7701 1.1 mrg # Parse the compiler output and extract the necessary 7702 1.1 mrg # objects, libraries and library flags. 7703 1.1 mrg 7704 1.1 mrg # Sentinel used to keep track of whether or not we are before 7705 1.1 mrg # the conftest object file. 7706 1.1 mrg pre_test_object_deps_done=no 7707 1.1 mrg 7708 1.1 mrg for p in `eval "$output_verbose_link_cmd"`; do 7709 1.1 mrg case $prev$p in 7710 1.1 mrg 7711 1.1 mrg -L* | -R* | -l*) 7712 1.1 mrg # Some compilers place space between "-{L,R,l}" and the path. 7713 1.1 mrg # Remove the space. 7714 1.1 mrg if test x-L = x"$p" || 7715 1.1 mrg test x-R = x"$p" || 7716 1.1 mrg test x-l = x"$p"; then 7717 1.1 mrg prev=$p 7718 1.1 mrg continue 7719 1.1 mrg fi 7720 1.1 mrg 7721 1.1 mrg # Expand the sysroot to ease extracting the directories later. 7722 1.1 mrg if test -z "$prev"; then 7723 1.1 mrg case $p in 7724 1.1 mrg -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;; 7725 1.1 mrg -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;; 7726 1.1 mrg -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;; 7727 1.1 mrg esac 7728 1.1 mrg fi 7729 1.1 mrg case $p in 7730 1.1 mrg =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;; 7731 1.1 mrg esac 7732 1.1 mrg if test no = "$pre_test_object_deps_done"; then 7733 1.1 mrg case $prev in 7734 1.1 mrg -L | -R) 7735 1.1 mrg # Internal compiler library paths should come after those 7736 1.1 mrg # provided the user. The postdeps already come after the 7737 1.1 mrg # user supplied libs so there is no need to process them. 7738 1.1 mrg if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then 7739 1.1 mrg _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p 7740 1.1 mrg else 7741 1.1 mrg _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p" 7742 1.1 mrg fi 7743 1.1 mrg ;; 7744 1.1 mrg # The "-l" case would never come before the object being 7745 1.1 mrg # linked, so don't bother handling this case. 7746 1.1 mrg esac 7747 1.1 mrg else 7748 1.1 mrg if test -z "$_LT_TAGVAR(postdeps, $1)"; then 7749 1.1 mrg _LT_TAGVAR(postdeps, $1)=$prev$p 7750 1.1 mrg else 7751 1.1 mrg _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p" 7752 1.1 mrg fi 7753 1.1 mrg fi 7754 1.1 mrg prev= 7755 1.1 mrg ;; 7756 1.1 mrg 7757 1.1 mrg *.lto.$objext) ;; # Ignore GCC LTO objects 7758 1.1 mrg *.$objext) 7759 1.1 mrg # This assumes that the test object file only shows up 7760 1.1 mrg # once in the compiler output. 7761 1.1 mrg if test "$p" = "conftest.$objext"; then 7762 1.1 mrg pre_test_object_deps_done=yes 7763 1.1 mrg continue 7764 1.1 mrg fi 7765 1.1 mrg 7766 1.1 mrg if test no = "$pre_test_object_deps_done"; then 7767 1.1 mrg if test -z "$_LT_TAGVAR(predep_objects, $1)"; then 7768 1.1 mrg _LT_TAGVAR(predep_objects, $1)=$p 7769 1.1 mrg else 7770 1.1 mrg _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p" 7771 1.1 mrg fi 7772 1.1 mrg else 7773 1.1 mrg if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then 7774 1.1 mrg _LT_TAGVAR(postdep_objects, $1)=$p 7775 1.1 mrg else 7776 1.1 mrg _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p" 7777 1.1 mrg fi 7778 1.1 mrg fi 7779 1.1 mrg ;; 7780 1.1 mrg 7781 1.1 mrg *) ;; # Ignore the rest. 7782 1.1 mrg 7783 1.1 mrg esac 7784 1.1 mrg done 7785 1.1 mrg 7786 1.1 mrg # Clean up. 7787 1.1 mrg rm -f a.out a.exe 7788 1.1 mrg else 7789 1.1 mrg echo "libtool.m4: error: problem compiling $1 test program" 7790 1.1 mrg fi 7791 1.1 mrg 7792 1.1 mrg $RM -f confest.$objext 7793 1.1 mrg CFLAGS=$_lt_libdeps_save_CFLAGS 7794 1.1 mrg 7795 1.1 mrg # PORTME: override above test on systems where it is broken 7796 1.1 mrg m4_if([$1], [CXX], 7797 1.1 mrg [case $host_os in 7798 1.1 mrg interix[[3-9]]*) 7799 1.1 mrg # Interix 3.5 installs completely hosed .la files for C++, so rather than 7800 1.1 mrg # hack all around it, let's just trust "g++" to DTRT. 7801 1.1 mrg _LT_TAGVAR(predep_objects,$1)= 7802 1.1 mrg _LT_TAGVAR(postdep_objects,$1)= 7803 1.1 mrg _LT_TAGVAR(postdeps,$1)= 7804 1.1 mrg ;; 7805 1.1 mrg esac 7806 1.1 mrg ]) 7807 1.1 mrg 7808 1.1 mrg case " $_LT_TAGVAR(postdeps, $1) " in 7809 1.1 mrg *" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; 7810 1.1 mrg esac 7811 1.1 mrg _LT_TAGVAR(compiler_lib_search_dirs, $1)= 7812 1.1 mrg if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then 7813 1.1 mrg _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'` 7814 1.1 mrg fi 7815 1.1 mrg _LT_TAGDECL([], [compiler_lib_search_dirs], [1], 7816 1.1 mrg [The directories searched by this compiler when creating a shared library]) 7817 1.1 mrg _LT_TAGDECL([], [predep_objects], [1], 7818 1.1 mrg [Dependencies to place before and after the objects being linked to 7819 1.1 mrg create a shared library]) 7820 1.1 mrg _LT_TAGDECL([], [postdep_objects], [1]) 7821 1.1 mrg _LT_TAGDECL([], [predeps], [1]) 7822 1.1 mrg _LT_TAGDECL([], [postdeps], [1]) 7823 1.1 mrg _LT_TAGDECL([], [compiler_lib_search_path], [1], 7824 1.1 mrg [The library search path used internally by the compiler when linking 7825 1.1 mrg a shared library]) 7826 1.1 mrg ])# _LT_SYS_HIDDEN_LIBDEPS 7827 1.1 mrg 7828 1.1 mrg 7829 1.1 mrg # _LT_LANG_F77_CONFIG([TAG]) 7830 1.1 mrg # -------------------------- 7831 1.1 mrg # Ensure that the configuration variables for a Fortran 77 compiler are 7832 1.1 mrg # suitably defined. These variables are subsequently used by _LT_CONFIG 7833 1.1 mrg # to write the compiler configuration to 'libtool'. 7834 1.1 mrg m4_defun([_LT_LANG_F77_CONFIG], 7835 1.1 mrg [AC_LANG_PUSH(Fortran 77) 7836 1.1 mrg if test -z "$F77" || test no = "$F77"; then 7837 1.1 mrg _lt_disable_F77=yes 7838 1.1 mrg fi 7839 1.1 mrg 7840 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 7841 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)= 7842 1.1 mrg _LT_TAGVAR(always_export_symbols, $1)=no 7843 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)= 7844 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)= 7845 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=no 7846 1.1 mrg _LT_TAGVAR(hardcode_direct_absolute, $1)=no 7847 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= 7848 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)= 7849 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=no 7850 1.1 mrg _LT_TAGVAR(hardcode_automatic, $1)=no 7851 1.1 mrg _LT_TAGVAR(inherit_rpath, $1)=no 7852 1.1 mrg _LT_TAGVAR(module_cmds, $1)= 7853 1.1 mrg _LT_TAGVAR(module_expsym_cmds, $1)= 7854 1.1 mrg _LT_TAGVAR(link_all_deplibs, $1)=unknown 7855 1.1 mrg _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds 7856 1.1 mrg _LT_TAGVAR(reload_flag, $1)=$reload_flag 7857 1.1 mrg _LT_TAGVAR(reload_cmds, $1)=$reload_cmds 7858 1.1 mrg _LT_TAGVAR(no_undefined_flag, $1)= 7859 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)= 7860 1.1 mrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no 7861 1.1 mrg 7862 1.1 mrg # Source file extension for f77 test sources. 7863 1.1 mrg ac_ext=f 7864 1.1 mrg 7865 1.1 mrg # Object file extension for compiled f77 test sources. 7866 1.1 mrg objext=o 7867 1.1 mrg _LT_TAGVAR(objext, $1)=$objext 7868 1.1 mrg 7869 1.1 mrg # No sense in running all these tests if we already determined that 7870 1.1 mrg # the F77 compiler isn't working. Some variables (like enable_shared) 7871 1.1 mrg # are currently assumed to apply to all compilers on this platform, 7872 1.1 mrg # and will be corrupted by setting them based on a non-working compiler. 7873 1.1 mrg if test yes != "$_lt_disable_F77"; then 7874 1.1 mrg # Code to be used in simple compile tests 7875 1.1 mrg lt_simple_compile_test_code="\ 7876 1.1 mrg subroutine t 7877 1.1 mrg return 7878 1.1 mrg end 7879 1.1 mrg " 7880 1.1 mrg 7881 1.1 mrg # Code to be used in simple link tests 7882 1.1 mrg lt_simple_link_test_code="\ 7883 1.1 mrg program t 7884 1.1 mrg end 7885 1.1 mrg " 7886 1.1 mrg 7887 1.1 mrg # ltmain only uses $CC for tagged configurations so make sure $CC is set. 7888 1.1 mrg _LT_TAG_COMPILER 7889 1.1 mrg 7890 1.1 mrg # save warnings/boilerplate of simple test code 7891 1.1 mrg _LT_COMPILER_BOILERPLATE 7892 1.1 mrg _LT_LINKER_BOILERPLATE 7893 1.1 mrg 7894 1.1 mrg # Allow CC to be a program name with arguments. 7895 1.1 mrg lt_save_CC=$CC 7896 1.1 mrg lt_save_GCC=$GCC 7897 1.1 mrg lt_save_CFLAGS=$CFLAGS 7898 1.1 mrg CC=${F77-"f77"} 7899 1.1 mrg CFLAGS=$FFLAGS 7900 1.1 mrg compiler=$CC 7901 1.1 mrg _LT_TAGVAR(compiler, $1)=$CC 7902 1.1 mrg _LT_CC_BASENAME([$compiler]) 7903 1.1 mrg GCC=$G77 7904 1.1 mrg if test -n "$compiler"; then 7905 1.1 mrg AC_MSG_CHECKING([if libtool supports shared libraries]) 7906 1.1 mrg AC_MSG_RESULT([$can_build_shared]) 7907 1.1 mrg 7908 1.1 mrg AC_MSG_CHECKING([whether to build shared libraries]) 7909 1.1 mrg test no = "$can_build_shared" && enable_shared=no 7910 1.1 mrg 7911 1.1 mrg # On AIX, shared libraries and static libraries use the same namespace, and 7912 1.1 mrg # are all built from PIC. 7913 1.1 mrg case $host_os in 7914 1.1 mrg aix3*) 7915 1.1 mrg test yes = "$enable_shared" && enable_static=no 7916 1.1 mrg if test -n "$RANLIB"; then 7917 1.1 mrg archive_cmds="$archive_cmds~\$RANLIB \$lib" 7918 1.1 mrg postinstall_cmds='$RANLIB $lib' 7919 1.1 mrg fi 7920 1.1 mrg ;; 7921 1.1 mrg aix[[4-9]]*) 7922 1.1 mrg if test ia64 != "$host_cpu"; then 7923 1.1 mrg case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in 7924 1.1 mrg yes,aix,yes) ;; # shared object as lib.so file only 7925 1.1 mrg yes,svr4,*) ;; # shared object as lib.so archive member only 7926 1.1 mrg yes,*) enable_static=no ;; # shared object in lib.a archive as well 7927 1.1 mrg esac 7928 1.1 mrg fi 7929 1.1 mrg ;; 7930 1.1 mrg esac 7931 1.1 mrg AC_MSG_RESULT([$enable_shared]) 7932 1.1 mrg 7933 1.1 mrg AC_MSG_CHECKING([whether to build static libraries]) 7934 1.1 mrg # Make sure either enable_shared or enable_static is yes. 7935 1.1 mrg test yes = "$enable_shared" || enable_static=yes 7936 1.1 mrg AC_MSG_RESULT([$enable_static]) 7937 1.1 mrg 7938 1.1 mrg _LT_TAGVAR(GCC, $1)=$G77 7939 1.1 mrg _LT_TAGVAR(LD, $1)=$LD 7940 1.1 mrg 7941 1.1 mrg ## CAVEAT EMPTOR: 7942 1.1 mrg ## There is no encapsulation within the following macros, do not change 7943 1.1 mrg ## the running order or otherwise move them around unless you know exactly 7944 1.1 mrg ## what you are doing... 7945 1.1 mrg _LT_COMPILER_PIC($1) 7946 1.1 mrg _LT_COMPILER_C_O($1) 7947 1.1 mrg _LT_COMPILER_FILE_LOCKS($1) 7948 1.1 mrg _LT_LINKER_SHLIBS($1) 7949 1.1 mrg _LT_SYS_DYNAMIC_LINKER($1) 7950 1.1 mrg _LT_LINKER_HARDCODE_LIBPATH($1) 7951 1.1 mrg 7952 1.1 mrg _LT_CONFIG($1) 7953 1.1 mrg fi # test -n "$compiler" 7954 1.1 mrg 7955 1.1 mrg GCC=$lt_save_GCC 7956 1.1 mrg CC=$lt_save_CC 7957 1.1 mrg CFLAGS=$lt_save_CFLAGS 7958 1.1 mrg fi # test yes != "$_lt_disable_F77" 7959 1.1 mrg 7960 1.1 mrg AC_LANG_POP 7961 1.1 mrg ])# _LT_LANG_F77_CONFIG 7962 1.1 mrg 7963 1.1 mrg 7964 1.1 mrg # _LT_LANG_FC_CONFIG([TAG]) 7965 1.1 mrg # ------------------------- 7966 1.1 mrg # Ensure that the configuration variables for a Fortran compiler are 7967 1.1 mrg # suitably defined. These variables are subsequently used by _LT_CONFIG 7968 1.1 mrg # to write the compiler configuration to 'libtool'. 7969 1.1 mrg m4_defun([_LT_LANG_FC_CONFIG], 7970 1.1 mrg [AC_LANG_PUSH(Fortran) 7971 1.1 mrg 7972 1.1 mrg if test -z "$FC" || test no = "$FC"; then 7973 1.1 mrg _lt_disable_FC=yes 7974 1.1 mrg fi 7975 1.1 mrg 7976 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 7977 1.1 mrg _LT_TAGVAR(allow_undefined_flag, $1)= 7978 1.1 mrg _LT_TAGVAR(always_export_symbols, $1)=no 7979 1.1 mrg _LT_TAGVAR(archive_expsym_cmds, $1)= 7980 1.1 mrg _LT_TAGVAR(export_dynamic_flag_spec, $1)= 7981 1.1 mrg _LT_TAGVAR(hardcode_direct, $1)=no 7982 1.1 mrg _LT_TAGVAR(hardcode_direct_absolute, $1)=no 7983 1.1 mrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= 7984 1.1 mrg _LT_TAGVAR(hardcode_libdir_separator, $1)= 7985 1.1 mrg _LT_TAGVAR(hardcode_minus_L, $1)=no 7986 1.1 mrg _LT_TAGVAR(hardcode_automatic, $1)=no 7987 1.1 mrg _LT_TAGVAR(inherit_rpath, $1)=no 7988 1.1 mrg _LT_TAGVAR(module_cmds, $1)= 7989 1.1 mrg _LT_TAGVAR(module_expsym_cmds, $1)= 7990 1.1 mrg _LT_TAGVAR(link_all_deplibs, $1)=unknown 7991 1.1 mrg _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds 7992 1.1 mrg _LT_TAGVAR(reload_flag, $1)=$reload_flag 7993 1.1 mrg _LT_TAGVAR(reload_cmds, $1)=$reload_cmds 7994 1.1 mrg _LT_TAGVAR(no_undefined_flag, $1)= 7995 1.1 mrg _LT_TAGVAR(whole_archive_flag_spec, $1)= 7996 1.1 mrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no 7997 1.1 mrg 7998 1.1 mrg # Source file extension for fc test sources. 7999 1.1 mrg ac_ext=${ac_fc_srcext-f} 8000 1.1 mrg 8001 1.1 mrg # Object file extension for compiled fc test sources. 8002 1.1 mrg objext=o 8003 1.1 mrg _LT_TAGVAR(objext, $1)=$objext 8004 1.1 mrg 8005 1.1 mrg # No sense in running all these tests if we already determined that 8006 1.1 mrg # the FC compiler isn't working. Some variables (like enable_shared) 8007 1.1 mrg # are currently assumed to apply to all compilers on this platform, 8008 1.1 mrg # and will be corrupted by setting them based on a non-working compiler. 8009 1.1 mrg if test yes != "$_lt_disable_FC"; then 8010 1.1 mrg # Code to be used in simple compile tests 8011 1.1 mrg lt_simple_compile_test_code="\ 8012 1.1 mrg subroutine t 8013 1.1 mrg return 8014 1.1 mrg end 8015 1.1 mrg " 8016 1.1 mrg 8017 1.1 mrg # Code to be used in simple link tests 8018 1.1 mrg lt_simple_link_test_code="\ 8019 1.1 mrg program t 8020 1.1 mrg end 8021 1.1 mrg " 8022 1.1 mrg 8023 1.1 mrg # ltmain only uses $CC for tagged configurations so make sure $CC is set. 8024 1.1 mrg _LT_TAG_COMPILER 8025 1.1 mrg 8026 1.1 mrg # save warnings/boilerplate of simple test code 8027 1.1 mrg _LT_COMPILER_BOILERPLATE 8028 1.1 mrg _LT_LINKER_BOILERPLATE 8029 1.1 mrg 8030 1.1 mrg # Allow CC to be a program name with arguments. 8031 1.1 mrg lt_save_CC=$CC 8032 1.1 mrg lt_save_GCC=$GCC 8033 1.1 mrg lt_save_CFLAGS=$CFLAGS 8034 1.1 mrg CC=${FC-"f95"} 8035 1.1 mrg CFLAGS=$FCFLAGS 8036 1.1 mrg compiler=$CC 8037 1.1 mrg GCC=$ac_cv_fc_compiler_gnu 8038 1.1 mrg 8039 1.1 mrg _LT_TAGVAR(compiler, $1)=$CC 8040 1.1 mrg _LT_CC_BASENAME([$compiler]) 8041 1.1 mrg 8042 1.1 mrg if test -n "$compiler"; then 8043 1.1 mrg AC_MSG_CHECKING([if libtool supports shared libraries]) 8044 1.1 mrg AC_MSG_RESULT([$can_build_shared]) 8045 1.1 mrg 8046 1.1 mrg AC_MSG_CHECKING([whether to build shared libraries]) 8047 1.1 mrg test no = "$can_build_shared" && enable_shared=no 8048 1.1 mrg 8049 1.1 mrg # On AIX, shared libraries and static libraries use the same namespace, and 8050 1.1 mrg # are all built from PIC. 8051 1.1 mrg case $host_os in 8052 1.1 mrg aix3*) 8053 1.1 mrg test yes = "$enable_shared" && enable_static=no 8054 1.1 mrg if test -n "$RANLIB"; then 8055 1.1 mrg archive_cmds="$archive_cmds~\$RANLIB \$lib" 8056 1.1 mrg postinstall_cmds='$RANLIB $lib' 8057 1.1 mrg fi 8058 1.1 mrg ;; 8059 1.1 mrg aix[[4-9]]*) 8060 1.1 mrg if test ia64 != "$host_cpu"; then 8061 1.1 mrg case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in 8062 1.1 mrg yes,aix,yes) ;; # shared object as lib.so file only 8063 1.1 mrg yes,svr4,*) ;; # shared object as lib.so archive member only 8064 1.1 mrg yes,*) enable_static=no ;; # shared object in lib.a archive as well 8065 1.1 mrg esac 8066 1.1 mrg fi 8067 1.1 mrg ;; 8068 1.1 mrg esac 8069 1.1 mrg AC_MSG_RESULT([$enable_shared]) 8070 1.1 mrg 8071 1.1 mrg AC_MSG_CHECKING([whether to build static libraries]) 8072 1.1 mrg # Make sure either enable_shared or enable_static is yes. 8073 1.1 mrg test yes = "$enable_shared" || enable_static=yes 8074 1.1 mrg AC_MSG_RESULT([$enable_static]) 8075 1.1 mrg 8076 1.1 mrg _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu 8077 1.1 mrg _LT_TAGVAR(LD, $1)=$LD 8078 1.1 mrg 8079 1.1 mrg ## CAVEAT EMPTOR: 8080 1.1 mrg ## There is no encapsulation within the following macros, do not change 8081 1.1 mrg ## the running order or otherwise move them around unless you know exactly 8082 1.1 mrg ## what you are doing... 8083 1.1 mrg _LT_SYS_HIDDEN_LIBDEPS($1) 8084 1.1 mrg _LT_COMPILER_PIC($1) 8085 1.1 mrg _LT_COMPILER_C_O($1) 8086 1.1 mrg _LT_COMPILER_FILE_LOCKS($1) 8087 1.1 mrg _LT_LINKER_SHLIBS($1) 8088 1.1 mrg _LT_SYS_DYNAMIC_LINKER($1) 8089 1.1 mrg _LT_LINKER_HARDCODE_LIBPATH($1) 8090 1.1 mrg 8091 1.1 mrg _LT_CONFIG($1) 8092 1.1 mrg fi # test -n "$compiler" 8093 1.1 mrg 8094 1.1 mrg GCC=$lt_save_GCC 8095 1.1 mrg CC=$lt_save_CC 8096 1.1 mrg CFLAGS=$lt_save_CFLAGS 8097 1.1 mrg fi # test yes != "$_lt_disable_FC" 8098 1.1 mrg 8099 1.1 mrg AC_LANG_POP 8100 1.1 mrg ])# _LT_LANG_FC_CONFIG 8101 1.1 mrg 8102 1.1 mrg 8103 1.1 mrg # _LT_LANG_GCJ_CONFIG([TAG]) 8104 1.1 mrg # -------------------------- 8105 1.1 mrg # Ensure that the configuration variables for the GNU Java Compiler compiler 8106 1.1 mrg # are suitably defined. These variables are subsequently used by _LT_CONFIG 8107 1.1 mrg # to write the compiler configuration to 'libtool'. 8108 1.1 mrg m4_defun([_LT_LANG_GCJ_CONFIG], 8109 1.1 mrg [AC_REQUIRE([LT_PROG_GCJ])dnl 8110 1.1 mrg AC_LANG_SAVE 8111 1.1 mrg 8112 1.1 mrg # Source file extension for Java test sources. 8113 1.1 mrg ac_ext=java 8114 1.1 mrg 8115 1.1 mrg # Object file extension for compiled Java test sources. 8116 1.1 mrg objext=o 8117 1.1 mrg _LT_TAGVAR(objext, $1)=$objext 8118 1.1 mrg 8119 1.1 mrg # Code to be used in simple compile tests 8120 1.1 mrg lt_simple_compile_test_code="class foo {}" 8121 1.1 mrg 8122 1.1 mrg # Code to be used in simple link tests 8123 1.1 mrg lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }' 8124 1.1 mrg 8125 1.1 mrg # ltmain only uses $CC for tagged configurations so make sure $CC is set. 8126 1.1 mrg _LT_TAG_COMPILER 8127 1.1 mrg 8128 1.1 mrg # save warnings/boilerplate of simple test code 8129 1.1 mrg _LT_COMPILER_BOILERPLATE 8130 1.1 mrg _LT_LINKER_BOILERPLATE 8131 1.1 mrg 8132 1.1 mrg # Allow CC to be a program name with arguments. 8133 1.1 mrg lt_save_CC=$CC 8134 1.1 mrg lt_save_CFLAGS=$CFLAGS 8135 1.1 mrg lt_save_GCC=$GCC 8136 1.1 mrg GCC=yes 8137 1.1 mrg CC=${GCJ-"gcj"} 8138 1.1 mrg CFLAGS=$GCJFLAGS 8139 1.1 mrg compiler=$CC 8140 1.1 mrg _LT_TAGVAR(compiler, $1)=$CC 8141 1.1 mrg _LT_TAGVAR(LD, $1)=$LD 8142 1.1 mrg _LT_CC_BASENAME([$compiler]) 8143 1.1 mrg 8144 1.1 mrg # GCJ did not exist at the time GCC didn't implicitly link libc in. 8145 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 8146 1.1 mrg 8147 1.1 mrg _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds 8148 1.1 mrg _LT_TAGVAR(reload_flag, $1)=$reload_flag 8149 1.1 mrg _LT_TAGVAR(reload_cmds, $1)=$reload_cmds 8150 1.1 mrg 8151 1.1 mrg ## CAVEAT EMPTOR: 8152 1.1 mrg ## There is no encapsulation within the following macros, do not change 8153 1.1 mrg ## the running order or otherwise move them around unless you know exactly 8154 1.1 mrg ## what you are doing... 8155 1.1 mrg if test -n "$compiler"; then 8156 1.1 mrg _LT_COMPILER_NO_RTTI($1) 8157 1.1 mrg _LT_COMPILER_PIC($1) 8158 1.1 mrg _LT_COMPILER_C_O($1) 8159 1.1 mrg _LT_COMPILER_FILE_LOCKS($1) 8160 1.1 mrg _LT_LINKER_SHLIBS($1) 8161 1.1 mrg _LT_LINKER_HARDCODE_LIBPATH($1) 8162 1.1 mrg 8163 1.1 mrg _LT_CONFIG($1) 8164 1.1 mrg fi 8165 1.1 mrg 8166 1.1 mrg AC_LANG_RESTORE 8167 1.1 mrg 8168 1.1 mrg GCC=$lt_save_GCC 8169 1.1 mrg CC=$lt_save_CC 8170 1.1 mrg CFLAGS=$lt_save_CFLAGS 8171 1.1 mrg ])# _LT_LANG_GCJ_CONFIG 8172 1.1 mrg 8173 1.1 mrg 8174 1.1 mrg # _LT_LANG_GO_CONFIG([TAG]) 8175 1.1 mrg # -------------------------- 8176 1.1 mrg # Ensure that the configuration variables for the GNU Go compiler 8177 1.1 mrg # are suitably defined. These variables are subsequently used by _LT_CONFIG 8178 1.1 mrg # to write the compiler configuration to 'libtool'. 8179 1.1 mrg m4_defun([_LT_LANG_GO_CONFIG], 8180 1.1 mrg [AC_REQUIRE([LT_PROG_GO])dnl 8181 1.1 mrg AC_LANG_SAVE 8182 1.1 mrg 8183 1.1 mrg # Source file extension for Go test sources. 8184 1.1 mrg ac_ext=go 8185 1.1 mrg 8186 1.1 mrg # Object file extension for compiled Go test sources. 8187 1.1 mrg objext=o 8188 1.1 mrg _LT_TAGVAR(objext, $1)=$objext 8189 1.1 mrg 8190 1.1 mrg # Code to be used in simple compile tests 8191 1.1 mrg lt_simple_compile_test_code="package main; func main() { }" 8192 1.1 mrg 8193 1.1 mrg # Code to be used in simple link tests 8194 1.1 mrg lt_simple_link_test_code='package main; func main() { }' 8195 1.1 mrg 8196 1.1 mrg # ltmain only uses $CC for tagged configurations so make sure $CC is set. 8197 1.1 mrg _LT_TAG_COMPILER 8198 1.1 mrg 8199 1.1 mrg # save warnings/boilerplate of simple test code 8200 1.1 mrg _LT_COMPILER_BOILERPLATE 8201 1.1 mrg _LT_LINKER_BOILERPLATE 8202 1.1 mrg 8203 1.1 mrg # Allow CC to be a program name with arguments. 8204 1.1 mrg lt_save_CC=$CC 8205 1.1 mrg lt_save_CFLAGS=$CFLAGS 8206 1.1 mrg lt_save_GCC=$GCC 8207 1.1 mrg GCC=yes 8208 1.1 mrg CC=${GOC-"gccgo"} 8209 1.1 mrg CFLAGS=$GOFLAGS 8210 1.1 mrg compiler=$CC 8211 1.1 mrg _LT_TAGVAR(compiler, $1)=$CC 8212 1.1 mrg _LT_TAGVAR(LD, $1)=$LD 8213 1.1 mrg _LT_CC_BASENAME([$compiler]) 8214 1.1 mrg 8215 1.1 mrg # Go did not exist at the time GCC didn't implicitly link libc in. 8216 1.1 mrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 8217 1.1 mrg 8218 1.1 mrg _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds 8219 1.1 mrg _LT_TAGVAR(reload_flag, $1)=$reload_flag 8220 1.1 mrg _LT_TAGVAR(reload_cmds, $1)=$reload_cmds 8221 1.1 mrg 8222 1.1 mrg ## CAVEAT EMPTOR: 8223 1.1 mrg ## There is no encapsulation within the following macros, do not change 8224 1.1 mrg ## the running order or otherwise move them around unless you know exactly 8225 1.1 mrg ## what you are doing... 8226 1.1 mrg if test -n "$compiler"; then 8227 1.1 mrg _LT_COMPILER_NO_RTTI($1) 8228 1.1 mrg _LT_COMPILER_PIC($1) 8229 1.1 mrg _LT_COMPILER_C_O($1) 8230 1.1 mrg _LT_COMPILER_FILE_LOCKS($1) 8231 1.1 mrg _LT_LINKER_SHLIBS($1) 8232 1.1 mrg _LT_LINKER_HARDCODE_LIBPATH($1) 8233 1.1 mrg 8234 1.1 mrg _LT_CONFIG($1) 8235 1.1 mrg fi 8236 1.1 mrg 8237 1.1 mrg AC_LANG_RESTORE 8238 1.1 mrg 8239 1.1 mrg GCC=$lt_save_GCC 8240 1.1 mrg CC=$lt_save_CC 8241 1.1 mrg CFLAGS=$lt_save_CFLAGS 8242 1.1 mrg ])# _LT_LANG_GO_CONFIG 8243 1.1 mrg 8244 1.1 mrg 8245 1.1 mrg # _LT_LANG_RC_CONFIG([TAG]) 8246 1.1 mrg # ------------------------- 8247 1.1 mrg # Ensure that the configuration variables for the Windows resource compiler 8248 1.1 mrg # are suitably defined. These variables are subsequently used by _LT_CONFIG 8249 1.1 mrg # to write the compiler configuration to 'libtool'. 8250 1.1 mrg m4_defun([_LT_LANG_RC_CONFIG], 8251 1.1 mrg [AC_REQUIRE([LT_PROG_RC])dnl 8252 1.1 mrg AC_LANG_SAVE 8253 1.1 mrg 8254 1.1 mrg # Source file extension for RC test sources. 8255 1.1 mrg ac_ext=rc 8256 1.1 mrg 8257 1.1 mrg # Object file extension for compiled RC test sources. 8258 1.1 mrg objext=o 8259 1.1 mrg _LT_TAGVAR(objext, $1)=$objext 8260 1.1 mrg 8261 1.1 mrg # Code to be used in simple compile tests 8262 1.1 mrg lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }' 8263 1.1 mrg 8264 1.1 mrg # Code to be used in simple link tests 8265 1.1 mrg lt_simple_link_test_code=$lt_simple_compile_test_code 8266 1.1 mrg 8267 1.1 mrg # ltmain only uses $CC for tagged configurations so make sure $CC is set. 8268 1.1 mrg _LT_TAG_COMPILER 8269 1.1 mrg 8270 1.1 mrg # save warnings/boilerplate of simple test code 8271 1.1 mrg _LT_COMPILER_BOILERPLATE 8272 1.1 mrg _LT_LINKER_BOILERPLATE 8273 1.1 mrg 8274 1.1 mrg # Allow CC to be a program name with arguments. 8275 1.1 mrg lt_save_CC=$CC 8276 1.1 mrg lt_save_CFLAGS=$CFLAGS 8277 1.1 mrg lt_save_GCC=$GCC 8278 1.1 mrg GCC= 8279 1.1 mrg CC=${RC-"windres"} 8280 1.1 mrg CFLAGS= 8281 1.1 mrg compiler=$CC 8282 1.1 mrg _LT_TAGVAR(compiler, $1)=$CC 8283 1.1 mrg _LT_CC_BASENAME([$compiler]) 8284 1.1 mrg _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes 8285 1.1 mrg 8286 1.1 mrg if test -n "$compiler"; then 8287 1.1 mrg : 8288 1.1 mrg _LT_CONFIG($1) 8289 1.1 mrg fi 8290 1.1 mrg 8291 1.1 mrg GCC=$lt_save_GCC 8292 1.1 mrg AC_LANG_RESTORE 8293 1.1 mrg CC=$lt_save_CC 8294 1.1 mrg CFLAGS=$lt_save_CFLAGS 8295 1.1 mrg ])# _LT_LANG_RC_CONFIG 8296 1.1 mrg 8297 1.1 mrg 8298 1.1 mrg # LT_PROG_GCJ 8299 1.1 mrg # ----------- 8300 1.1 mrg AC_DEFUN([LT_PROG_GCJ], 8301 1.1 mrg [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ], 8302 1.1 mrg [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ], 8303 1.1 mrg [AC_CHECK_TOOL(GCJ, gcj,) 8304 1.1 mrg test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2" 8305 1.1 mrg AC_SUBST(GCJFLAGS)])])[]dnl 8306 1.1 mrg ]) 8307 1.1 mrg 8308 1.1 mrg # Old name: 8309 1.1 mrg AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ]) 8310 1.1 mrg dnl aclocal-1.4 backwards compatibility: 8311 1.1 mrg dnl AC_DEFUN([LT_AC_PROG_GCJ], []) 8312 1.1 mrg 8313 1.1 mrg 8314 1.1 mrg # LT_PROG_GO 8315 1.1 mrg # ---------- 8316 1.1 mrg AC_DEFUN([LT_PROG_GO], 8317 1.1 mrg [AC_CHECK_TOOL(GOC, gccgo,) 8318 1.1 mrg ]) 8319 1.1 mrg 8320 1.1 mrg 8321 1.1 mrg # LT_PROG_RC 8322 1.1 mrg # ---------- 8323 1.1 mrg AC_DEFUN([LT_PROG_RC], 8324 1.1 mrg [AC_CHECK_TOOL(RC, windres,) 8325 1.1 mrg ]) 8326 1.1 mrg 8327 1.1 mrg # Old name: 8328 1.1 mrg AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC]) 8329 1.1 mrg dnl aclocal-1.4 backwards compatibility: 8330 1.1 mrg dnl AC_DEFUN([LT_AC_PROG_RC], []) 8331 1.1 mrg 8332 1.1 mrg 8333 1.1 mrg # _LT_DECL_EGREP 8334 1.1 mrg # -------------- 8335 1.1 mrg # If we don't have a new enough Autoconf to choose the best grep 8336 1.1 mrg # available, choose the one first in the user's PATH. 8337 1.1 mrg m4_defun([_LT_DECL_EGREP], 8338 1.1 mrg [AC_REQUIRE([AC_PROG_EGREP])dnl 8339 1.1 mrg AC_REQUIRE([AC_PROG_FGREP])dnl 8340 1.1 mrg test -z "$GREP" && GREP=grep 8341 1.1 mrg _LT_DECL([], [GREP], [1], [A grep program that handles long lines]) 8342 1.1 mrg _LT_DECL([], [EGREP], [1], [An ERE matcher]) 8343 1.1 mrg _LT_DECL([], [FGREP], [1], [A literal string matcher]) 8344 1.1 mrg dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too 8345 1.1 mrg AC_SUBST([GREP]) 8346 1.1 mrg ]) 8347 1.1 mrg 8348 1.1 mrg 8349 1.1 mrg # _LT_DECL_OBJDUMP 8350 1.1 mrg # -------------- 8351 1.1 mrg # If we don't have a new enough Autoconf to choose the best objdump 8352 1.1 mrg # available, choose the one first in the user's PATH. 8353 1.1 mrg m4_defun([_LT_DECL_OBJDUMP], 8354 1.1 mrg [AC_CHECK_TOOL(OBJDUMP, objdump, false) 8355 1.1 mrg test -z "$OBJDUMP" && OBJDUMP=objdump 8356 1.1 mrg _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper]) 8357 1.1 mrg AC_SUBST([OBJDUMP]) 8358 1.1 mrg ]) 8359 1.1 mrg 8360 1.1 mrg # _LT_DECL_DLLTOOL 8361 1.1 mrg # ---------------- 8362 1.1 mrg # Ensure DLLTOOL variable is set. 8363 1.1 mrg m4_defun([_LT_DECL_DLLTOOL], 8364 1.1 mrg [AC_CHECK_TOOL(DLLTOOL, dlltool, false) 8365 1.1 mrg test -z "$DLLTOOL" && DLLTOOL=dlltool 8366 1.1 mrg _LT_DECL([], [DLLTOOL], [1], [DLL creation program]) 8367 1.1 mrg AC_SUBST([DLLTOOL]) 8368 1.1 mrg ]) 8369 1.1 mrg 8370 1.1 mrg # _LT_DECL_FILECMD 8371 1.1 mrg # ---------------- 8372 1.1 mrg # Check for a file(cmd) program that can be used to detect file type and magic 8373 1.1 mrg m4_defun([_LT_DECL_FILECMD], 8374 1.1 mrg [AC_CHECK_PROG([FILECMD], [file], [file], [:]) 8375 1.1 mrg _LT_DECL([], [FILECMD], [1], [A file(cmd) program that detects file types]) 8376 1.1 mrg ])# _LD_DECL_FILECMD 8377 1.1 mrg 8378 1.1 mrg # _LT_DECL_SED 8379 1.1 mrg # ------------ 8380 1.1 mrg # Check for a fully-functional sed program, that truncates 8381 1.1 mrg # as few characters as possible. Prefer GNU sed if found. 8382 1.1 mrg m4_defun([_LT_DECL_SED], 8383 1.1 mrg [AC_PROG_SED 8384 1.1 mrg test -z "$SED" && SED=sed 8385 1.1 mrg Xsed="$SED -e 1s/^X//" 8386 1.1 mrg _LT_DECL([], [SED], [1], [A sed program that does not truncate output]) 8387 1.1 mrg _LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"], 8388 1.1 mrg [Sed that helps us avoid accidentally triggering echo(1) options like -n]) 8389 1.1 mrg ])# _LT_DECL_SED 8390 1.1 mrg dnl aclocal-1.4 backwards compatibility: 8391 1.1 mrg dnl AC_DEFUN([LT_AC_PROG_SED], []) 8392 1.1 mrg 8393 1.1 mrg 8394 1.1 mrg # _LT_CHECK_SHELL_FEATURES 8395 1.1 mrg # ------------------------ 8396 1.1 mrg # Find out whether the shell is Bourne or XSI compatible, 8397 1.1 mrg # or has some other useful features. 8398 1.1 mrg m4_defun([_LT_CHECK_SHELL_FEATURES], 8399 1.1 mrg [if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then 8400 1.1 mrg lt_unset=unset 8401 1.1 mrg else 8402 1.1 mrg lt_unset=false 8403 1.1 mrg fi 8404 1.1 mrg _LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl 8405 1.1 mrg 8406 1.1 mrg # test EBCDIC or ASCII 8407 1.1 mrg case `echo X|tr X '\101'` in 8408 1.1 mrg A) # ASCII based system 8409 1.1 mrg # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr 8410 1.1 mrg lt_SP2NL='tr \040 \012' 8411 1.1 mrg lt_NL2SP='tr \015\012 \040\040' 8412 1.1 mrg ;; 8413 1.1 mrg *) # EBCDIC based system 8414 1.1 mrg lt_SP2NL='tr \100 \n' 8415 1.1 mrg lt_NL2SP='tr \r\n \100\100' 8416 1.1 mrg ;; 8417 1.1 mrg esac 8418 1.1 mrg _LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl 8419 1.1 mrg _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl 8420 1.1 mrg ])# _LT_CHECK_SHELL_FEATURES 8421 1.1 mrg 8422 1.1 mrg 8423 1.1 mrg # _LT_PATH_CONVERSION_FUNCTIONS 8424 1.1 mrg # ----------------------------- 8425 1.1 mrg # Determine what file name conversion functions should be used by 8426 1.1 mrg # func_to_host_file (and, implicitly, by func_to_host_path). These are needed 8427 1.1 mrg # for certain cross-compile configurations and native mingw. 8428 1.1 mrg m4_defun([_LT_PATH_CONVERSION_FUNCTIONS], 8429 1.1 mrg [AC_REQUIRE([AC_CANONICAL_HOST])dnl 8430 1.1 mrg AC_REQUIRE([AC_CANONICAL_BUILD])dnl 8431 1.1 mrg AC_MSG_CHECKING([how to convert $build file names to $host format]) 8432 1.1 mrg AC_CACHE_VAL(lt_cv_to_host_file_cmd, 8433 1.1 mrg [case $host in 8434 1.1 mrg *-*-mingw* ) 8435 1.1 mrg case $build in 8436 1.1 mrg *-*-mingw* | *-*-windows* ) # actually msys 8437 1.1 mrg lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 8438 1.1 mrg ;; 8439 1.1 mrg *-*-cygwin* ) 8440 1.1 mrg lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 8441 1.1 mrg ;; 8442 1.1 mrg * ) # otherwise, assume *nix 8443 1.1 mrg lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 8444 1.1 mrg ;; 8445 1.1 mrg esac 8446 1.1 mrg ;; 8447 1.1 mrg *-*-cygwin* ) 8448 1.1 mrg case $build in 8449 1.1 mrg *-*-mingw* | *-*-windows* ) # actually msys 8450 1.1 mrg lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin 8451 1.1 mrg ;; 8452 1.1 mrg *-*-cygwin* ) 8453 1.1 mrg lt_cv_to_host_file_cmd=func_convert_file_noop 8454 1.1 mrg ;; 8455 1.1 mrg * ) # otherwise, assume *nix 8456 1.1 mrg lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin 8457 1.1 mrg ;; 8458 1.1 mrg esac 8459 1.1 mrg ;; 8460 1.1 mrg * ) # unhandled hosts (and "normal" native builds) 8461 1.1 mrg lt_cv_to_host_file_cmd=func_convert_file_noop 8462 1.1 mrg ;; 8463 1.1 mrg esac 8464 1.1 mrg ]) 8465 1.1 mrg to_host_file_cmd=$lt_cv_to_host_file_cmd 8466 1.1 mrg AC_MSG_RESULT([$lt_cv_to_host_file_cmd]) 8467 1.1 mrg _LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd], 8468 1.1 mrg [0], [convert $build file names to $host format])dnl 8469 1.1 mrg 8470 1.1 mrg AC_MSG_CHECKING([how to convert $build file names to toolchain format]) 8471 1.1 mrg AC_CACHE_VAL(lt_cv_to_tool_file_cmd, 8472 1.1 mrg [#assume ordinary cross tools, or native build. 8473 1.1 mrg lt_cv_to_tool_file_cmd=func_convert_file_noop 8474 1.1 mrg case $host in 8475 1.1 mrg *-*-mingw* | *-*-windows* ) 8476 1.1 mrg case $build in 8477 1.1 mrg *-*-mingw* | *-*-windows* ) # actually msys 8478 1.1 mrg lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 8479 1.1 mrg ;; 8480 1.1 mrg esac 8481 1.1 mrg ;; 8482 1.1 mrg esac 8483 1.1 mrg ]) 8484 1.1 mrg to_tool_file_cmd=$lt_cv_to_tool_file_cmd 8485 1.1 mrg AC_MSG_RESULT([$lt_cv_to_tool_file_cmd]) 8486 1.1 mrg _LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd], 8487 1.1 mrg [0], [convert $build files to toolchain format])dnl 8488 1.1 mrg ])# _LT_PATH_CONVERSION_FUNCTIONS 8489