Bruce A. Mah | 6e9d852 | 2018-06-22 14:10:41 -0700 | [diff] [blame] | 1 | # generated automatically by aclocal 1.16.1 -*- Autoconf -*- |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 3 | # Copyright (C) 1996-2018 Free Software Foundation, Inc. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5 | # This file is free software; the Free Software Foundation |
| 6 | # gives unlimited permission to copy and/or distribute it, |
| 7 | # with or without modifications, as long as this notice is preserved. |
| 8 | |
| 9 | # This program is distributed in the hope that it will be useful, |
| 10 | # but WITHOUT ANY WARRANTY, to the extent permitted by law; without |
| 11 | # even the implied warranty of MERCHANTABILITY or FITNESS FOR A |
| 12 | # PARTICULAR PURPOSE. |
| 13 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 14 | m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 15 | m4_ifndef([AC_AUTOCONF_VERSION], |
| 16 | [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 17 | m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],, |
| 18 | [m4_warning([this file was generated for autoconf 2.69. |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 19 | You have another version of autoconf. It may work, but is not guaranteed to. |
| 20 | If you have problems, you may need to regenerate the build system entirely. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 21 | To do so, use the procedure documented by the package, typically 'autoreconf'.])]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 22 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 23 | # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 24 | # |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 25 | # Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 26 | # Written by Gordon Matzigkeit, 1996 |
| 27 | # |
| 28 | # This file is free software; the Free Software Foundation gives |
| 29 | # unlimited permission to copy and/or distribute it, with or without |
| 30 | # modifications, as long as this notice is preserved. |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 31 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 32 | m4_define([_LT_COPYING], [dnl |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 33 | # Copyright (C) 2014 Free Software Foundation, Inc. |
| 34 | # This is free software; see the source for copying conditions. There is NO |
| 35 | # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
| 36 | |
| 37 | # GNU Libtool is free software; you can redistribute it and/or modify |
| 38 | # it under the terms of the GNU General Public License as published by |
| 39 | # the Free Software Foundation; either version 2 of of the License, or |
| 40 | # (at your option) any later version. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 41 | # |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 42 | # As a special exception to the GNU General Public License, if you |
| 43 | # distribute this file as part of a program or library that is built |
| 44 | # using GNU Libtool, you may include this file under the same |
| 45 | # distribution terms that you use for the rest of that program. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 46 | # |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 47 | # GNU Libtool is distributed in the hope that it will be useful, but |
| 48 | # WITHOUT ANY WARRANTY; without even the implied warranty of |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 49 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 50 | # GNU General Public License for more details. |
| 51 | # |
| 52 | # You should have received a copy of the GNU General Public License |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 53 | # along with this program. If not, see <http://www.gnu.org/licenses/>. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 54 | ]) |
| 55 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 56 | # serial 58 LT_INIT |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 57 | |
| 58 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 59 | # LT_PREREQ(VERSION) |
| 60 | # ------------------ |
| 61 | # Complain and exit if this libtool version is less that VERSION. |
| 62 | m4_defun([LT_PREREQ], |
| 63 | [m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1, |
| 64 | [m4_default([$3], |
| 65 | [m4_fatal([Libtool version $1 or higher is required], |
| 66 | 63)])], |
| 67 | [$2])]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 68 | |
| 69 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 70 | # _LT_CHECK_BUILDDIR |
| 71 | # ------------------ |
| 72 | # Complain if the absolute build directory name contains unusual characters |
| 73 | m4_defun([_LT_CHECK_BUILDDIR], |
| 74 | [case `pwd` in |
| 75 | *\ * | *\ *) |
| 76 | AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;; |
| 77 | esac |
| 78 | ]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 79 | |
| 80 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 81 | # LT_INIT([OPTIONS]) |
| 82 | # ------------------ |
| 83 | AC_DEFUN([LT_INIT], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 84 | [AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 85 | AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 86 | AC_BEFORE([$0], [LT_LANG])dnl |
| 87 | AC_BEFORE([$0], [LT_OUTPUT])dnl |
| 88 | AC_BEFORE([$0], [LTDL_INIT])dnl |
| 89 | m4_require([_LT_CHECK_BUILDDIR])dnl |
| 90 | |
| 91 | dnl Autoconf doesn't catch unexpanded LT_ macros by default: |
| 92 | m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl |
| 93 | m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl |
| 94 | dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4 |
| 95 | dnl unless we require an AC_DEFUNed macro: |
| 96 | AC_REQUIRE([LTOPTIONS_VERSION])dnl |
| 97 | AC_REQUIRE([LTSUGAR_VERSION])dnl |
| 98 | AC_REQUIRE([LTVERSION_VERSION])dnl |
| 99 | AC_REQUIRE([LTOBSOLETE_VERSION])dnl |
| 100 | m4_require([_LT_PROG_LTMAIN])dnl |
| 101 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 102 | _LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}]) |
| 103 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 104 | dnl Parse OPTIONS |
| 105 | _LT_SET_OPTIONS([$0], [$1]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 106 | |
| 107 | # This can be used to rebuild libtool when needed |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 108 | LIBTOOL_DEPS=$ltmain |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 109 | |
| 110 | # Always use our own libtool. |
| 111 | LIBTOOL='$(SHELL) $(top_builddir)/libtool' |
| 112 | AC_SUBST(LIBTOOL)dnl |
| 113 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 114 | _LT_SETUP |
| 115 | |
| 116 | # Only expand once: |
| 117 | m4_define([LT_INIT]) |
| 118 | ])# LT_INIT |
| 119 | |
| 120 | # Old names: |
| 121 | AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT]) |
| 122 | AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT]) |
| 123 | dnl aclocal-1.4 backwards compatibility: |
| 124 | dnl AC_DEFUN([AC_PROG_LIBTOOL], []) |
| 125 | dnl AC_DEFUN([AM_PROG_LIBTOOL], []) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 126 | |
| 127 | |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 128 | # _LT_PREPARE_CC_BASENAME |
| 129 | # ----------------------- |
| 130 | m4_defun([_LT_PREPARE_CC_BASENAME], [ |
| 131 | # Calculate cc_basename. Skip known compiler wrappers and cross-prefix. |
| 132 | func_cc_basename () |
| 133 | { |
| 134 | for cc_temp in @S|@*""; do |
| 135 | case $cc_temp in |
| 136 | compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; |
| 137 | distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; |
| 138 | \-*) ;; |
| 139 | *) break;; |
| 140 | esac |
| 141 | done |
| 142 | func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` |
| 143 | } |
| 144 | ])# _LT_PREPARE_CC_BASENAME |
| 145 | |
| 146 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 147 | # _LT_CC_BASENAME(CC) |
| 148 | # ------------------- |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 149 | # It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME, |
| 150 | # but that macro is also expanded into generated libtool script, which |
| 151 | # arranges for $SED and $ECHO to be set by different means. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 152 | m4_defun([_LT_CC_BASENAME], |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 153 | [m4_require([_LT_PREPARE_CC_BASENAME])dnl |
| 154 | AC_REQUIRE([_LT_DECL_SED])dnl |
| 155 | AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl |
| 156 | func_cc_basename $1 |
| 157 | cc_basename=$func_cc_basename_result |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 158 | ]) |
| 159 | |
| 160 | |
| 161 | # _LT_FILEUTILS_DEFAULTS |
| 162 | # ---------------------- |
| 163 | # It is okay to use these file commands and assume they have been set |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 164 | # sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 165 | m4_defun([_LT_FILEUTILS_DEFAULTS], |
| 166 | [: ${CP="cp -f"} |
| 167 | : ${MV="mv -f"} |
| 168 | : ${RM="rm -f"} |
| 169 | ])# _LT_FILEUTILS_DEFAULTS |
| 170 | |
| 171 | |
| 172 | # _LT_SETUP |
| 173 | # --------- |
| 174 | m4_defun([_LT_SETUP], |
| 175 | [AC_REQUIRE([AC_CANONICAL_HOST])dnl |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 176 | AC_REQUIRE([AC_CANONICAL_BUILD])dnl |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 177 | AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl |
| 178 | AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl |
| 179 | |
| 180 | _LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl |
| 181 | dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 182 | _LT_DECL([], [host_alias], [0], [The host system])dnl |
| 183 | _LT_DECL([], [host], [0])dnl |
| 184 | _LT_DECL([], [host_os], [0])dnl |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 185 | dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 186 | _LT_DECL([], [build_alias], [0], [The build system])dnl |
| 187 | _LT_DECL([], [build], [0])dnl |
| 188 | _LT_DECL([], [build_os], [0])dnl |
| 189 | dnl |
| 190 | AC_REQUIRE([AC_PROG_CC])dnl |
| 191 | AC_REQUIRE([LT_PATH_LD])dnl |
| 192 | AC_REQUIRE([LT_PATH_NM])dnl |
| 193 | dnl |
| 194 | AC_REQUIRE([AC_PROG_LN_S])dnl |
| 195 | test -z "$LN_S" && LN_S="ln -s" |
| 196 | _LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl |
| 197 | dnl |
| 198 | AC_REQUIRE([LT_CMD_MAX_LEN])dnl |
| 199 | _LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl |
| 200 | _LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl |
| 201 | dnl |
| 202 | m4_require([_LT_FILEUTILS_DEFAULTS])dnl |
| 203 | m4_require([_LT_CHECK_SHELL_FEATURES])dnl |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 204 | m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 205 | m4_require([_LT_CMD_RELOAD])dnl |
| 206 | m4_require([_LT_CHECK_MAGIC_METHOD])dnl |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 207 | m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 208 | m4_require([_LT_CMD_OLD_ARCHIVE])dnl |
| 209 | m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 210 | m4_require([_LT_WITH_SYSROOT])dnl |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 211 | m4_require([_LT_CMD_TRUNCATE])dnl |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 212 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 213 | _LT_CONFIG_LIBTOOL_INIT([ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 214 | # See if we are running on zsh, and set the options that allow our |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 215 | # commands through without removal of \ escapes INIT. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 216 | if test -n "\${ZSH_VERSION+set}"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 217 | setopt NO_GLOB_SUBST |
| 218 | fi |
| 219 | ]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 220 | if test -n "${ZSH_VERSION+set}"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 221 | setopt NO_GLOB_SUBST |
| 222 | fi |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 223 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 224 | _LT_CHECK_OBJDIR |
| 225 | |
| 226 | m4_require([_LT_TAG_COMPILER])dnl |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 227 | |
| 228 | case $host_os in |
| 229 | aix3*) |
| 230 | # AIX sometimes has problems with the GCC collect2 program. For some |
| 231 | # reason, if we set the COLLECT_NAMES environment variable, the problems |
| 232 | # vanish in a puff of smoke. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 233 | if test set != "${COLLECT_NAMES+set}"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 234 | COLLECT_NAMES= |
| 235 | export COLLECT_NAMES |
| 236 | fi |
| 237 | ;; |
| 238 | esac |
| 239 | |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 240 | # Global variables: |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 241 | ofile=libtool |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 242 | can_build_shared=yes |
| 243 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 244 | # All known linkers require a '.a' archive for static linking (except MSVC, |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 245 | # which needs '.lib'). |
| 246 | libext=a |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 247 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 248 | with_gnu_ld=$lt_cv_prog_gnu_ld |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 249 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 250 | old_CC=$CC |
| 251 | old_CFLAGS=$CFLAGS |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 252 | |
| 253 | # Set sane defaults for various variables |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 254 | test -z "$CC" && CC=cc |
| 255 | test -z "$LTCC" && LTCC=$CC |
| 256 | test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 257 | test -z "$LD" && LD=ld |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 258 | test -z "$ac_objext" && ac_objext=o |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 259 | |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 260 | _LT_CC_BASENAME([$compiler]) |
| 261 | |
| 262 | # Only perform the check for file, if the check method requires it |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 263 | test -z "$MAGIC_CMD" && MAGIC_CMD=file |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 264 | case $deplibs_check_method in |
| 265 | file_magic*) |
| 266 | if test "$file_magic_cmd" = '$MAGIC_CMD'; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 267 | _LT_PATH_MAGIC |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 268 | fi |
| 269 | ;; |
Jon Dugan | 9286415 | 2010-09-20 21:50:12 +0000 | [diff] [blame] | 270 | esac |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 271 | |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 272 | # Use C for the default configuration in the libtool script |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 273 | LT_SUPPORTED_TAG([CC]) |
| 274 | _LT_LANG_C_CONFIG |
| 275 | _LT_LANG_DEFAULT_CONFIG |
| 276 | _LT_CONFIG_COMMANDS |
| 277 | ])# _LT_SETUP |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 278 | |
| 279 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 280 | # _LT_PREPARE_SED_QUOTE_VARS |
| 281 | # -------------------------- |
| 282 | # Define a few sed substitution that help us do robust quoting. |
| 283 | m4_defun([_LT_PREPARE_SED_QUOTE_VARS], |
| 284 | [# Backslashify metacharacters that are still active within |
| 285 | # double-quoted strings. |
| 286 | sed_quote_subst='s/\([["`$\\]]\)/\\\1/g' |
| 287 | |
| 288 | # Same as above, but do not quote variable references. |
| 289 | double_quote_subst='s/\([["`\\]]\)/\\\1/g' |
| 290 | |
| 291 | # Sed substitution to delay expansion of an escaped shell variable in a |
| 292 | # double_quote_subst'ed string. |
| 293 | delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' |
| 294 | |
| 295 | # Sed substitution to delay expansion of an escaped single quote. |
| 296 | delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' |
| 297 | |
| 298 | # Sed substitution to avoid accidental globbing in evaled expressions |
| 299 | no_glob_subst='s/\*/\\\*/g' |
| 300 | ]) |
| 301 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 302 | # _LT_PROG_LTMAIN |
| 303 | # --------------- |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 304 | # Note that this code is called both from 'configure', and 'config.status' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 305 | # now that we use AC_CONFIG_COMMANDS to generate libtool. Notably, |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 306 | # 'config.status' has no value for ac_aux_dir unless we are using Automake, |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 307 | # so we pass a copy along to make sure it has a sensible value anyway. |
| 308 | m4_defun([_LT_PROG_LTMAIN], |
| 309 | [m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl |
| 310 | _LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir']) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 311 | ltmain=$ac_aux_dir/ltmain.sh |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 312 | ])# _LT_PROG_LTMAIN |
| 313 | |
| 314 | |
| 315 | |
| 316 | # So that we can recreate a full libtool script including additional |
| 317 | # tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 318 | # in macros and then make a single call at the end using the 'libtool' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 319 | # label. |
| 320 | |
| 321 | |
| 322 | # _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS]) |
| 323 | # ---------------------------------------- |
| 324 | # Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later. |
| 325 | m4_define([_LT_CONFIG_LIBTOOL_INIT], |
| 326 | [m4_ifval([$1], |
| 327 | [m4_append([_LT_OUTPUT_LIBTOOL_INIT], |
| 328 | [$1 |
| 329 | ])])]) |
| 330 | |
| 331 | # Initialize. |
| 332 | m4_define([_LT_OUTPUT_LIBTOOL_INIT]) |
| 333 | |
| 334 | |
| 335 | # _LT_CONFIG_LIBTOOL([COMMANDS]) |
| 336 | # ------------------------------ |
| 337 | # Register COMMANDS to be passed to AC_CONFIG_COMMANDS later. |
| 338 | m4_define([_LT_CONFIG_LIBTOOL], |
| 339 | [m4_ifval([$1], |
| 340 | [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS], |
| 341 | [$1 |
| 342 | ])])]) |
| 343 | |
| 344 | # Initialize. |
| 345 | m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS]) |
| 346 | |
| 347 | |
| 348 | # _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS]) |
| 349 | # ----------------------------------------------------- |
| 350 | m4_defun([_LT_CONFIG_SAVE_COMMANDS], |
| 351 | [_LT_CONFIG_LIBTOOL([$1]) |
| 352 | _LT_CONFIG_LIBTOOL_INIT([$2]) |
| 353 | ]) |
| 354 | |
| 355 | |
| 356 | # _LT_FORMAT_COMMENT([COMMENT]) |
| 357 | # ----------------------------- |
| 358 | # Add leading comment marks to the start of each line, and a trailing |
| 359 | # full-stop to the whole comment if one is not present already. |
| 360 | m4_define([_LT_FORMAT_COMMENT], |
| 361 | [m4_ifval([$1], [ |
| 362 | m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])], |
| 363 | [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.]) |
| 364 | )]) |
| 365 | |
| 366 | |
| 367 | |
| 368 | |
| 369 | |
| 370 | # _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?]) |
| 371 | # ------------------------------------------------------------------- |
| 372 | # CONFIGNAME is the name given to the value in the libtool script. |
| 373 | # VARNAME is the (base) name used in the configure script. |
| 374 | # VALUE may be 0, 1 or 2 for a computed quote escaped value based on |
| 375 | # VARNAME. Any other value will be used directly. |
| 376 | m4_define([_LT_DECL], |
| 377 | [lt_if_append_uniq([lt_decl_varnames], [$2], [, ], |
| 378 | [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name], |
| 379 | [m4_ifval([$1], [$1], [$2])]) |
| 380 | lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3]) |
| 381 | m4_ifval([$4], |
| 382 | [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])]) |
| 383 | lt_dict_add_subkey([lt_decl_dict], [$2], |
| 384 | [tagged?], [m4_ifval([$5], [yes], [no])])]) |
| 385 | ]) |
| 386 | |
| 387 | |
| 388 | # _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION]) |
| 389 | # -------------------------------------------------------- |
| 390 | m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])]) |
| 391 | |
| 392 | |
| 393 | # lt_decl_tag_varnames([SEPARATOR], [VARNAME1...]) |
| 394 | # ------------------------------------------------ |
| 395 | m4_define([lt_decl_tag_varnames], |
| 396 | [_lt_decl_filter([tagged?], [yes], $@)]) |
| 397 | |
| 398 | |
| 399 | # _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..]) |
| 400 | # --------------------------------------------------------- |
| 401 | m4_define([_lt_decl_filter], |
| 402 | [m4_case([$#], |
| 403 | [0], [m4_fatal([$0: too few arguments: $#])], |
| 404 | [1], [m4_fatal([$0: too few arguments: $#: $1])], |
| 405 | [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)], |
| 406 | [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)], |
| 407 | [lt_dict_filter([lt_decl_dict], $@)])[]dnl |
| 408 | ]) |
| 409 | |
| 410 | |
| 411 | # lt_decl_quote_varnames([SEPARATOR], [VARNAME1...]) |
| 412 | # -------------------------------------------------- |
| 413 | m4_define([lt_decl_quote_varnames], |
| 414 | [_lt_decl_filter([value], [1], $@)]) |
| 415 | |
| 416 | |
| 417 | # lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...]) |
| 418 | # --------------------------------------------------- |
| 419 | m4_define([lt_decl_dquote_varnames], |
| 420 | [_lt_decl_filter([value], [2], $@)]) |
| 421 | |
| 422 | |
| 423 | # lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...]) |
| 424 | # --------------------------------------------------- |
| 425 | m4_define([lt_decl_varnames_tagged], |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 426 | [m4_assert([$# <= 2])dnl |
| 427 | _$0(m4_quote(m4_default([$1], [[, ]])), |
| 428 | m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]), |
| 429 | m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))]) |
| 430 | m4_define([_lt_decl_varnames_tagged], |
| 431 | [m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 432 | |
| 433 | |
| 434 | # lt_decl_all_varnames([SEPARATOR], [VARNAME1...]) |
| 435 | # ------------------------------------------------ |
| 436 | m4_define([lt_decl_all_varnames], |
| 437 | [_$0(m4_quote(m4_default([$1], [[, ]])), |
| 438 | m4_if([$2], [], |
| 439 | m4_quote(lt_decl_varnames), |
| 440 | m4_quote(m4_shift($@))))[]dnl |
| 441 | ]) |
| 442 | m4_define([_lt_decl_all_varnames], |
| 443 | [lt_join($@, lt_decl_varnames_tagged([$1], |
| 444 | lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl |
| 445 | ]) |
| 446 | |
| 447 | |
| 448 | # _LT_CONFIG_STATUS_DECLARE([VARNAME]) |
| 449 | # ------------------------------------ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 450 | # Quote a variable value, and forward it to 'config.status' so that its |
| 451 | # declaration there will have the same value as in 'configure'. VARNAME |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 452 | # must have a single quote delimited value for this to work. |
| 453 | m4_define([_LT_CONFIG_STATUS_DECLARE], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 454 | [$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`']) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 455 | |
| 456 | |
| 457 | # _LT_CONFIG_STATUS_DECLARATIONS |
| 458 | # ------------------------------ |
| 459 | # We delimit libtool config variables with single quotes, so when |
| 460 | # we write them to config.status, we have to be sure to quote all |
| 461 | # embedded single quotes properly. In configure, this macro expands |
| 462 | # each variable declared with _LT_DECL (and _LT_TAGDECL) into: |
| 463 | # |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 464 | # <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 465 | m4_defun([_LT_CONFIG_STATUS_DECLARATIONS], |
| 466 | [m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames), |
| 467 | [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])]) |
| 468 | |
| 469 | |
| 470 | # _LT_LIBTOOL_TAGS |
| 471 | # ---------------- |
| 472 | # Output comment and list of tags supported by the script |
| 473 | m4_defun([_LT_LIBTOOL_TAGS], |
| 474 | [_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 475 | available_tags='_LT_TAGS'dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 476 | ]) |
| 477 | |
| 478 | |
| 479 | # _LT_LIBTOOL_DECLARE(VARNAME, [TAG]) |
| 480 | # ----------------------------------- |
| 481 | # Extract the dictionary values for VARNAME (optionally with TAG) and |
| 482 | # expand to a commented shell variable setting: |
| 483 | # |
| 484 | # # Some comment about what VAR is for. |
| 485 | # visible_name=$lt_internal_name |
| 486 | m4_define([_LT_LIBTOOL_DECLARE], |
| 487 | [_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], |
| 488 | [description])))[]dnl |
| 489 | m4_pushdef([_libtool_name], |
| 490 | m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl |
| 491 | m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])), |
| 492 | [0], [_libtool_name=[$]$1], |
| 493 | [1], [_libtool_name=$lt_[]$1], |
| 494 | [2], [_libtool_name=$lt_[]$1], |
| 495 | [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl |
| 496 | m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl |
| 497 | ]) |
| 498 | |
| 499 | |
| 500 | # _LT_LIBTOOL_CONFIG_VARS |
| 501 | # ----------------------- |
| 502 | # Produce commented declarations of non-tagged libtool config variables |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 503 | # suitable for insertion in the LIBTOOL CONFIG section of the 'libtool' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 504 | # script. Tagged libtool config variables (even for the LIBTOOL CONFIG |
| 505 | # section) are produced by _LT_LIBTOOL_TAG_VARS. |
| 506 | m4_defun([_LT_LIBTOOL_CONFIG_VARS], |
| 507 | [m4_foreach([_lt_var], |
| 508 | m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)), |
| 509 | [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])]) |
| 510 | |
| 511 | |
| 512 | # _LT_LIBTOOL_TAG_VARS(TAG) |
| 513 | # ------------------------- |
| 514 | m4_define([_LT_LIBTOOL_TAG_VARS], |
| 515 | [m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames), |
| 516 | [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])]) |
| 517 | |
| 518 | |
| 519 | # _LT_TAGVAR(VARNAME, [TAGNAME]) |
| 520 | # ------------------------------ |
| 521 | m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])]) |
| 522 | |
| 523 | |
| 524 | # _LT_CONFIG_COMMANDS |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 525 | # ------------------- |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 526 | # Send accumulated output to $CONFIG_STATUS. Thanks to the lists of |
| 527 | # variables for single and double quote escaping we saved from calls |
| 528 | # to _LT_DECL, we can put quote escaped variables declarations |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 529 | # into 'config.status', and then the shell code to quote escape them in |
| 530 | # for loops in 'config.status'. Finally, any additional code accumulated |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 531 | # from calls to _LT_CONFIG_LIBTOOL_INIT is expanded. |
| 532 | m4_defun([_LT_CONFIG_COMMANDS], |
| 533 | [AC_PROVIDE_IFELSE([LT_OUTPUT], |
| 534 | dnl If the libtool generation code has been placed in $CONFIG_LT, |
| 535 | dnl instead of duplicating it all over again into config.status, |
| 536 | dnl then we will have config.status run $CONFIG_LT later, so it |
| 537 | dnl needs to know what name is stored there: |
| 538 | [AC_CONFIG_COMMANDS([libtool], |
| 539 | [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])], |
| 540 | dnl If the libtool generation code is destined for config.status, |
| 541 | dnl expand the accumulated commands and init code now: |
| 542 | [AC_CONFIG_COMMANDS([libtool], |
| 543 | [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])]) |
| 544 | ])#_LT_CONFIG_COMMANDS |
| 545 | |
| 546 | |
| 547 | # Initialize. |
| 548 | m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT], |
| 549 | [ |
| 550 | |
| 551 | # The HP-UX ksh and POSIX shell print the target directory to stdout |
| 552 | # if CDPATH is set. |
| 553 | (unset CDPATH) >/dev/null 2>&1 && unset CDPATH |
| 554 | |
| 555 | sed_quote_subst='$sed_quote_subst' |
| 556 | double_quote_subst='$double_quote_subst' |
| 557 | delay_variable_subst='$delay_variable_subst' |
| 558 | _LT_CONFIG_STATUS_DECLARATIONS |
| 559 | LTCC='$LTCC' |
| 560 | LTCFLAGS='$LTCFLAGS' |
| 561 | compiler='$compiler_DEFAULT' |
| 562 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 563 | # A function that is used when there is no print builtin or printf. |
| 564 | func_fallback_echo () |
| 565 | { |
| 566 | eval 'cat <<_LTECHO_EOF |
| 567 | \$[]1 |
| 568 | _LTECHO_EOF' |
| 569 | } |
| 570 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 571 | # Quote evaled strings. |
| 572 | for var in lt_decl_all_varnames([[ \ |
| 573 | ]], lt_decl_quote_varnames); do |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 574 | case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 575 | *[[\\\\\\\`\\"\\\$]]*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 576 | eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 577 | ;; |
| 578 | *) |
| 579 | eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" |
| 580 | ;; |
| 581 | esac |
| 582 | done |
| 583 | |
| 584 | # Double-quote double-evaled strings. |
| 585 | for var in lt_decl_all_varnames([[ \ |
| 586 | ]], lt_decl_dquote_varnames); do |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 587 | case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 588 | *[[\\\\\\\`\\"\\\$]]*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 589 | eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 590 | ;; |
| 591 | *) |
| 592 | eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" |
| 593 | ;; |
| 594 | esac |
| 595 | done |
| 596 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 597 | _LT_OUTPUT_LIBTOOL_INIT |
| 598 | ]) |
| 599 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 600 | # _LT_GENERATED_FILE_INIT(FILE, [COMMENT]) |
| 601 | # ------------------------------------ |
| 602 | # Generate a child script FILE with all initialization necessary to |
| 603 | # reuse the environment learned by the parent script, and make the |
| 604 | # file executable. If COMMENT is supplied, it is inserted after the |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 605 | # '#!' sequence but before initialization text begins. After this |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 606 | # macro, additional text can be appended to FILE to form the body of |
| 607 | # the child script. The macro ends with non-zero status if the |
| 608 | # file could not be fully written (such as if the disk is full). |
| 609 | m4_ifdef([AS_INIT_GENERATED], |
| 610 | [m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])], |
| 611 | [m4_defun([_LT_GENERATED_FILE_INIT], |
| 612 | [m4_require([AS_PREPARE])]dnl |
| 613 | [m4_pushdef([AS_MESSAGE_LOG_FD])]dnl |
| 614 | [lt_write_fail=0 |
| 615 | cat >$1 <<_ASEOF || lt_write_fail=1 |
| 616 | #! $SHELL |
| 617 | # Generated by $as_me. |
| 618 | $2 |
| 619 | SHELL=\${CONFIG_SHELL-$SHELL} |
| 620 | export SHELL |
| 621 | _ASEOF |
| 622 | cat >>$1 <<\_ASEOF || lt_write_fail=1 |
| 623 | AS_SHELL_SANITIZE |
| 624 | _AS_PREPARE |
| 625 | exec AS_MESSAGE_FD>&1 |
| 626 | _ASEOF |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 627 | test 0 = "$lt_write_fail" && chmod +x $1[]dnl |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 628 | m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 629 | |
| 630 | # LT_OUTPUT |
| 631 | # --------- |
| 632 | # This macro allows early generation of the libtool script (before |
| 633 | # AC_OUTPUT is called), incase it is used in configure for compilation |
| 634 | # tests. |
| 635 | AC_DEFUN([LT_OUTPUT], |
| 636 | [: ${CONFIG_LT=./config.lt} |
| 637 | AC_MSG_NOTICE([creating $CONFIG_LT]) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 638 | _LT_GENERATED_FILE_INIT(["$CONFIG_LT"], |
| 639 | [# Run this file to recreate a libtool stub with the current configuration.]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 640 | |
| 641 | cat >>"$CONFIG_LT" <<\_LTEOF |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 642 | lt_cl_silent=false |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 643 | exec AS_MESSAGE_LOG_FD>>config.log |
| 644 | { |
| 645 | echo |
| 646 | AS_BOX([Running $as_me.]) |
| 647 | } >&AS_MESSAGE_LOG_FD |
| 648 | |
| 649 | lt_cl_help="\ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 650 | '$as_me' creates a local libtool stub from the current configuration, |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 651 | for use in further configure time tests before the real libtool is |
| 652 | generated. |
| 653 | |
| 654 | Usage: $[0] [[OPTIONS]] |
| 655 | |
| 656 | -h, --help print this help, then exit |
| 657 | -V, --version print version number, then exit |
| 658 | -q, --quiet do not print progress messages |
| 659 | -d, --debug don't remove temporary files |
| 660 | |
| 661 | Report bugs to <bug-libtool@gnu.org>." |
| 662 | |
| 663 | lt_cl_version="\ |
| 664 | m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl |
| 665 | m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION]) |
| 666 | configured by $[0], generated by m4_PACKAGE_STRING. |
| 667 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 668 | Copyright (C) 2011 Free Software Foundation, Inc. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 669 | This config.lt script is free software; the Free Software Foundation |
| 670 | gives unlimited permision to copy, distribute and modify it." |
| 671 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 672 | while test 0 != $[#] |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 673 | do |
| 674 | case $[1] in |
| 675 | --version | --v* | -V ) |
| 676 | echo "$lt_cl_version"; exit 0 ;; |
| 677 | --help | --h* | -h ) |
| 678 | echo "$lt_cl_help"; exit 0 ;; |
| 679 | --debug | --d* | -d ) |
| 680 | debug=: ;; |
| 681 | --quiet | --q* | --silent | --s* | -q ) |
| 682 | lt_cl_silent=: ;; |
| 683 | |
| 684 | -*) AC_MSG_ERROR([unrecognized option: $[1] |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 685 | Try '$[0] --help' for more information.]) ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 686 | |
| 687 | *) AC_MSG_ERROR([unrecognized argument: $[1] |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 688 | Try '$[0] --help' for more information.]) ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 689 | esac |
| 690 | shift |
| 691 | done |
| 692 | |
| 693 | if $lt_cl_silent; then |
| 694 | exec AS_MESSAGE_FD>/dev/null |
| 695 | fi |
| 696 | _LTEOF |
| 697 | |
| 698 | cat >>"$CONFIG_LT" <<_LTEOF |
| 699 | _LT_OUTPUT_LIBTOOL_COMMANDS_INIT |
| 700 | _LTEOF |
| 701 | |
| 702 | cat >>"$CONFIG_LT" <<\_LTEOF |
| 703 | AC_MSG_NOTICE([creating $ofile]) |
| 704 | _LT_OUTPUT_LIBTOOL_COMMANDS |
| 705 | AS_EXIT(0) |
| 706 | _LTEOF |
| 707 | chmod +x "$CONFIG_LT" |
| 708 | |
| 709 | # configure is writing to config.log, but config.lt does its own redirection, |
| 710 | # appending to config.log, which fails on DOS, as config.log is still kept |
| 711 | # open by configure. Here we exec the FD to /dev/null, effectively closing |
| 712 | # config.log, so it can be properly (re)opened and appended to by config.lt. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 713 | lt_cl_success=: |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 714 | test yes = "$silent" && |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 715 | lt_config_lt_args="$lt_config_lt_args --quiet" |
| 716 | exec AS_MESSAGE_LOG_FD>/dev/null |
| 717 | $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false |
| 718 | exec AS_MESSAGE_LOG_FD>>config.log |
| 719 | $lt_cl_success || AS_EXIT(1) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 720 | ])# LT_OUTPUT |
| 721 | |
| 722 | |
| 723 | # _LT_CONFIG(TAG) |
| 724 | # --------------- |
| 725 | # If TAG is the built-in tag, create an initial libtool script with a |
| 726 | # default configuration from the untagged config vars. Otherwise add code |
| 727 | # to config.status for appending the configuration named by TAG from the |
| 728 | # matching tagged config vars. |
| 729 | m4_defun([_LT_CONFIG], |
| 730 | [m4_require([_LT_FILEUTILS_DEFAULTS])dnl |
| 731 | _LT_CONFIG_SAVE_COMMANDS([ |
| 732 | m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl |
| 733 | m4_if(_LT_TAG, [C], [ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 734 | # See if we are running on zsh, and set the options that allow our |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 735 | # commands through without removal of \ escapes. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 736 | if test -n "${ZSH_VERSION+set}"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 737 | setopt NO_GLOB_SUBST |
| 738 | fi |
| 739 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 740 | cfgfile=${ofile}T |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 741 | trap "$RM \"$cfgfile\"; exit 1" 1 2 15 |
| 742 | $RM "$cfgfile" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 743 | |
| 744 | cat <<_LT_EOF >> "$cfgfile" |
| 745 | #! $SHELL |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 746 | # Generated automatically by $as_me ($PACKAGE) $VERSION |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 747 | # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: |
| 748 | # NOTE: Changes made to this file will be lost: look at ltmain.sh. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 749 | |
| 750 | # Provide generalized library-building support services. |
| 751 | # Written by Gordon Matzigkeit, 1996 |
| 752 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 753 | _LT_COPYING |
| 754 | _LT_LIBTOOL_TAGS |
| 755 | |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 756 | # Configured defaults for sys_lib_dlsearch_path munging. |
| 757 | : \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} |
| 758 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 759 | # ### BEGIN LIBTOOL CONFIG |
| 760 | _LT_LIBTOOL_CONFIG_VARS |
| 761 | _LT_LIBTOOL_TAG_VARS |
| 762 | # ### END LIBTOOL CONFIG |
| 763 | |
| 764 | _LT_EOF |
| 765 | |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 766 | cat <<'_LT_EOF' >> "$cfgfile" |
| 767 | |
| 768 | # ### BEGIN FUNCTIONS SHARED WITH CONFIGURE |
| 769 | |
| 770 | _LT_PREPARE_MUNGE_PATH_LIST |
| 771 | _LT_PREPARE_CC_BASENAME |
| 772 | |
| 773 | # ### END FUNCTIONS SHARED WITH CONFIGURE |
| 774 | |
| 775 | _LT_EOF |
| 776 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 777 | case $host_os in |
| 778 | aix3*) |
| 779 | cat <<\_LT_EOF >> "$cfgfile" |
| 780 | # AIX sometimes has problems with the GCC collect2 program. For some |
| 781 | # reason, if we set the COLLECT_NAMES environment variable, the problems |
| 782 | # vanish in a puff of smoke. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 783 | if test set != "${COLLECT_NAMES+set}"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 784 | COLLECT_NAMES= |
| 785 | export COLLECT_NAMES |
| 786 | fi |
| 787 | _LT_EOF |
| 788 | ;; |
| 789 | esac |
| 790 | |
| 791 | _LT_PROG_LTMAIN |
| 792 | |
| 793 | # We use sed instead of cat because bash on DJGPP gets confused if |
| 794 | # if finds mixed CR/LF and LF-only lines. Since sed operates in |
| 795 | # text mode, it properly converts lines to CR/LF. This bash problem |
| 796 | # is reportedly fixed, but why not run on old versions too? |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 797 | sed '$q' "$ltmain" >> "$cfgfile" \ |
| 798 | || (rm -f "$cfgfile"; exit 1) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 799 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 800 | mv -f "$cfgfile" "$ofile" || |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 801 | (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") |
| 802 | chmod +x "$ofile" |
| 803 | ], |
| 804 | [cat <<_LT_EOF >> "$ofile" |
| 805 | |
| 806 | dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded |
| 807 | dnl in a comment (ie after a #). |
| 808 | # ### BEGIN LIBTOOL TAG CONFIG: $1 |
| 809 | _LT_LIBTOOL_TAG_VARS(_LT_TAG) |
| 810 | # ### END LIBTOOL TAG CONFIG: $1 |
| 811 | _LT_EOF |
| 812 | ])dnl /m4_if |
| 813 | ], |
| 814 | [m4_if([$1], [], [ |
| 815 | PACKAGE='$PACKAGE' |
| 816 | VERSION='$VERSION' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 817 | RM='$RM' |
| 818 | ofile='$ofile'], []) |
| 819 | ])dnl /_LT_CONFIG_SAVE_COMMANDS |
| 820 | ])# _LT_CONFIG |
| 821 | |
| 822 | |
| 823 | # LT_SUPPORTED_TAG(TAG) |
| 824 | # --------------------- |
| 825 | # Trace this macro to discover what tags are supported by the libtool |
| 826 | # --tag option, using: |
| 827 | # autoconf --trace 'LT_SUPPORTED_TAG:$1' |
| 828 | AC_DEFUN([LT_SUPPORTED_TAG], []) |
| 829 | |
| 830 | |
| 831 | # C support is built-in for now |
| 832 | m4_define([_LT_LANG_C_enabled], []) |
| 833 | m4_define([_LT_TAGS], []) |
| 834 | |
| 835 | |
| 836 | # LT_LANG(LANG) |
| 837 | # ------------- |
| 838 | # Enable libtool support for the given language if not already enabled. |
| 839 | AC_DEFUN([LT_LANG], |
| 840 | [AC_BEFORE([$0], [LT_OUTPUT])dnl |
| 841 | m4_case([$1], |
| 842 | [C], [_LT_LANG(C)], |
| 843 | [C++], [_LT_LANG(CXX)], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 844 | [Go], [_LT_LANG(GO)], |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 845 | [Java], [_LT_LANG(GCJ)], |
| 846 | [Fortran 77], [_LT_LANG(F77)], |
| 847 | [Fortran], [_LT_LANG(FC)], |
| 848 | [Windows Resource], [_LT_LANG(RC)], |
| 849 | [m4_ifdef([_LT_LANG_]$1[_CONFIG], |
| 850 | [_LT_LANG($1)], |
| 851 | [m4_fatal([$0: unsupported language: "$1"])])])dnl |
| 852 | ])# LT_LANG |
| 853 | |
| 854 | |
| 855 | # _LT_LANG(LANGNAME) |
| 856 | # ------------------ |
| 857 | m4_defun([_LT_LANG], |
| 858 | [m4_ifdef([_LT_LANG_]$1[_enabled], [], |
| 859 | [LT_SUPPORTED_TAG([$1])dnl |
| 860 | m4_append([_LT_TAGS], [$1 ])dnl |
| 861 | m4_define([_LT_LANG_]$1[_enabled], [])dnl |
| 862 | _LT_LANG_$1_CONFIG($1)])dnl |
| 863 | ])# _LT_LANG |
| 864 | |
| 865 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 866 | m4_ifndef([AC_PROG_GO], [ |
| 867 | # NOTE: This macro has been submitted for inclusion into # |
| 868 | # GNU Autoconf as AC_PROG_GO. When it is available in # |
| 869 | # a released version of Autoconf we should remove this # |
| 870 | # macro and use it instead. # |
| 871 | m4_defun([AC_PROG_GO], |
| 872 | [AC_LANG_PUSH(Go)dnl |
| 873 | AC_ARG_VAR([GOC], [Go compiler command])dnl |
| 874 | AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl |
| 875 | _AC_ARG_VAR_LDFLAGS()dnl |
| 876 | AC_CHECK_TOOL(GOC, gccgo) |
| 877 | if test -z "$GOC"; then |
| 878 | if test -n "$ac_tool_prefix"; then |
| 879 | AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo]) |
| 880 | fi |
| 881 | fi |
| 882 | if test -z "$GOC"; then |
| 883 | AC_CHECK_PROG(GOC, gccgo, gccgo, false) |
| 884 | fi |
| 885 | ])#m4_defun |
| 886 | ])#m4_ifndef |
| 887 | |
| 888 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 889 | # _LT_LANG_DEFAULT_CONFIG |
| 890 | # ----------------------- |
| 891 | m4_defun([_LT_LANG_DEFAULT_CONFIG], |
| 892 | [AC_PROVIDE_IFELSE([AC_PROG_CXX], |
| 893 | [LT_LANG(CXX)], |
| 894 | [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])]) |
| 895 | |
| 896 | AC_PROVIDE_IFELSE([AC_PROG_F77], |
| 897 | [LT_LANG(F77)], |
| 898 | [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])]) |
| 899 | |
| 900 | AC_PROVIDE_IFELSE([AC_PROG_FC], |
| 901 | [LT_LANG(FC)], |
| 902 | [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])]) |
| 903 | |
| 904 | dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal |
| 905 | dnl pulling things in needlessly. |
| 906 | AC_PROVIDE_IFELSE([AC_PROG_GCJ], |
| 907 | [LT_LANG(GCJ)], |
| 908 | [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], |
| 909 | [LT_LANG(GCJ)], |
| 910 | [AC_PROVIDE_IFELSE([LT_PROG_GCJ], |
| 911 | [LT_LANG(GCJ)], |
| 912 | [m4_ifdef([AC_PROG_GCJ], |
| 913 | [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])]) |
| 914 | m4_ifdef([A][M_PROG_GCJ], |
| 915 | [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])]) |
| 916 | m4_ifdef([LT_PROG_GCJ], |
| 917 | [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])]) |
| 918 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 919 | AC_PROVIDE_IFELSE([AC_PROG_GO], |
| 920 | [LT_LANG(GO)], |
| 921 | [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])]) |
| 922 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 923 | AC_PROVIDE_IFELSE([LT_PROG_RC], |
| 924 | [LT_LANG(RC)], |
| 925 | [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])]) |
| 926 | ])# _LT_LANG_DEFAULT_CONFIG |
| 927 | |
| 928 | # Obsolete macros: |
| 929 | AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)]) |
| 930 | AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)]) |
| 931 | AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)]) |
| 932 | AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)]) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 933 | AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 934 | dnl aclocal-1.4 backwards compatibility: |
| 935 | dnl AC_DEFUN([AC_LIBTOOL_CXX], []) |
| 936 | dnl AC_DEFUN([AC_LIBTOOL_F77], []) |
| 937 | dnl AC_DEFUN([AC_LIBTOOL_FC], []) |
| 938 | dnl AC_DEFUN([AC_LIBTOOL_GCJ], []) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 939 | dnl AC_DEFUN([AC_LIBTOOL_RC], []) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 940 | |
| 941 | |
| 942 | # _LT_TAG_COMPILER |
| 943 | # ---------------- |
| 944 | m4_defun([_LT_TAG_COMPILER], |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 945 | [AC_REQUIRE([AC_PROG_CC])dnl |
| 946 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 947 | _LT_DECL([LTCC], [CC], [1], [A C compiler])dnl |
| 948 | _LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl |
| 949 | _LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl |
| 950 | _LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl |
| 951 | |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 952 | # If no C compiler was specified, use CC. |
| 953 | LTCC=${LTCC-"$CC"} |
| 954 | |
| 955 | # If no C compiler flags were specified, use CFLAGS. |
| 956 | LTCFLAGS=${LTCFLAGS-"$CFLAGS"} |
| 957 | |
| 958 | # Allow CC to be a program name with arguments. |
| 959 | compiler=$CC |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 960 | ])# _LT_TAG_COMPILER |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 961 | |
| 962 | |
| 963 | # _LT_COMPILER_BOILERPLATE |
| 964 | # ------------------------ |
| 965 | # Check for compiler boilerplate output or warnings with |
| 966 | # the simple compiler test code. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 967 | m4_defun([_LT_COMPILER_BOILERPLATE], |
| 968 | [m4_require([_LT_DECL_SED])dnl |
| 969 | ac_outfile=conftest.$ac_objext |
| 970 | echo "$lt_simple_compile_test_code" >conftest.$ac_ext |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 971 | eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err |
| 972 | _lt_compiler_boilerplate=`cat conftest.err` |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 973 | $RM conftest* |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 974 | ])# _LT_COMPILER_BOILERPLATE |
| 975 | |
| 976 | |
| 977 | # _LT_LINKER_BOILERPLATE |
| 978 | # ---------------------- |
| 979 | # Check for linker boilerplate output or warnings with |
| 980 | # the simple link test code. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 981 | m4_defun([_LT_LINKER_BOILERPLATE], |
| 982 | [m4_require([_LT_DECL_SED])dnl |
| 983 | ac_outfile=conftest.$ac_objext |
| 984 | echo "$lt_simple_link_test_code" >conftest.$ac_ext |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 985 | eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err |
| 986 | _lt_linker_boilerplate=`cat conftest.err` |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 987 | $RM -r conftest* |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 988 | ])# _LT_LINKER_BOILERPLATE |
| 989 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 990 | # _LT_REQUIRED_DARWIN_CHECKS |
| 991 | # ------------------------- |
| 992 | m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[ |
| 993 | case $host_os in |
| 994 | rhapsody* | darwin*) |
| 995 | AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:]) |
| 996 | AC_CHECK_TOOL([NMEDIT], [nmedit], [:]) |
| 997 | AC_CHECK_TOOL([LIPO], [lipo], [:]) |
| 998 | AC_CHECK_TOOL([OTOOL], [otool], [:]) |
| 999 | AC_CHECK_TOOL([OTOOL64], [otool64], [:]) |
| 1000 | _LT_DECL([], [DSYMUTIL], [1], |
| 1001 | [Tool to manipulate archived DWARF debug symbol files on Mac OS X]) |
| 1002 | _LT_DECL([], [NMEDIT], [1], |
| 1003 | [Tool to change global to local symbols on Mac OS X]) |
| 1004 | _LT_DECL([], [LIPO], [1], |
| 1005 | [Tool to manipulate fat objects and archives on Mac OS X]) |
| 1006 | _LT_DECL([], [OTOOL], [1], |
| 1007 | [ldd/readelf like tool for Mach-O binaries on Mac OS X]) |
| 1008 | _LT_DECL([], [OTOOL64], [1], |
| 1009 | [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4]) |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1010 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1011 | AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod], |
| 1012 | [lt_cv_apple_cc_single_mod=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1013 | if test -z "$LT_MULTI_MODULE"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1014 | # By default we will add the -single_module flag. You can override |
| 1015 | # by either setting the environment variable LT_MULTI_MODULE |
| 1016 | # non-empty at configure time, or by adding -multi_module to the |
| 1017 | # link flags. |
| 1018 | rm -rf libconftest.dylib* |
| 1019 | echo "int foo(void){return 1;}" > conftest.c |
| 1020 | echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ |
| 1021 | -dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD |
| 1022 | $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ |
| 1023 | -dynamiclib -Wl,-single_module conftest.c 2>conftest.err |
| 1024 | _lt_result=$? |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1025 | # If there is a non-empty error log, and "single_module" |
| 1026 | # appears in it, assume the flag caused a linker warning |
| 1027 | if test -s conftest.err && $GREP single_module conftest.err; then |
| 1028 | cat conftest.err >&AS_MESSAGE_LOG_FD |
| 1029 | # Otherwise, if the output was created with a 0 exit code from |
| 1030 | # the compiler, it worked. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1031 | elif test -f libconftest.dylib && test 0 = "$_lt_result"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1032 | lt_cv_apple_cc_single_mod=yes |
| 1033 | else |
| 1034 | cat conftest.err >&AS_MESSAGE_LOG_FD |
| 1035 | fi |
| 1036 | rm -rf libconftest.dylib* |
| 1037 | rm -f conftest.* |
| 1038 | fi]) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1039 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1040 | AC_CACHE_CHECK([for -exported_symbols_list linker flag], |
| 1041 | [lt_cv_ld_exported_symbols_list], |
| 1042 | [lt_cv_ld_exported_symbols_list=no |
| 1043 | save_LDFLAGS=$LDFLAGS |
| 1044 | echo "_main" > conftest.sym |
| 1045 | LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" |
| 1046 | AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], |
| 1047 | [lt_cv_ld_exported_symbols_list=yes], |
| 1048 | [lt_cv_ld_exported_symbols_list=no]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1049 | LDFLAGS=$save_LDFLAGS |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1050 | ]) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1051 | |
| 1052 | AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load], |
| 1053 | [lt_cv_ld_force_load=no |
| 1054 | cat > conftest.c << _LT_EOF |
| 1055 | int forced_loaded() { return 2;} |
| 1056 | _LT_EOF |
| 1057 | echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD |
| 1058 | $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD |
| 1059 | echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD |
| 1060 | $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD |
| 1061 | echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD |
| 1062 | $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD |
| 1063 | cat > conftest.c << _LT_EOF |
| 1064 | int main() { return 0;} |
| 1065 | _LT_EOF |
| 1066 | echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD |
| 1067 | $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err |
| 1068 | _lt_result=$? |
| 1069 | if test -s conftest.err && $GREP force_load conftest.err; then |
| 1070 | cat conftest.err >&AS_MESSAGE_LOG_FD |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1071 | elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1072 | lt_cv_ld_force_load=yes |
| 1073 | else |
| 1074 | cat conftest.err >&AS_MESSAGE_LOG_FD |
| 1075 | fi |
| 1076 | rm -f conftest.err libconftest.a conftest conftest.c |
| 1077 | rm -rf conftest.dSYM |
| 1078 | ]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1079 | case $host_os in |
| 1080 | rhapsody* | darwin1.[[012]]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1081 | _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1082 | darwin1.*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1083 | _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 1084 | darwin*) # darwin 5.x on |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1085 | # if running on 10.5 or later, the deployment target defaults |
| 1086 | # to the OS version, if on x86, and 10.4, the deployment |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 1087 | # target defaults to 10.4. Don't you love it? |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1088 | case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in |
| 1089 | 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1090 | _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; |
Bruce A. Mah | 8634b34 | 2014-09-29 14:03:04 -0700 | [diff] [blame] | 1091 | 10.[[012]][[,.]]*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1092 | _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1093 | 10.*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1094 | _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1095 | esac |
| 1096 | ;; |
| 1097 | esac |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1098 | if test yes = "$lt_cv_apple_cc_single_mod"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1099 | _lt_dar_single_mod='$single_module' |
| 1100 | fi |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1101 | if test yes = "$lt_cv_ld_exported_symbols_list"; then |
| 1102 | _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1103 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1104 | _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1105 | fi |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1106 | if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1107 | _lt_dsymutil='~$DSYMUTIL $lib || :' |
| 1108 | else |
| 1109 | _lt_dsymutil= |
| 1110 | fi |
| 1111 | ;; |
| 1112 | esac |
| 1113 | ]) |
| 1114 | |
| 1115 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1116 | # _LT_DARWIN_LINKER_FEATURES([TAG]) |
| 1117 | # --------------------------------- |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1118 | # Checks for linker and compiler features on darwin |
| 1119 | m4_defun([_LT_DARWIN_LINKER_FEATURES], |
| 1120 | [ |
| 1121 | m4_require([_LT_REQUIRED_DARWIN_CHECKS]) |
| 1122 | _LT_TAGVAR(archive_cmds_need_lc, $1)=no |
| 1123 | _LT_TAGVAR(hardcode_direct, $1)=no |
| 1124 | _LT_TAGVAR(hardcode_automatic, $1)=yes |
| 1125 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1126 | if test yes = "$lt_cv_ld_force_load"; then |
| 1127 | _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\"`' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1128 | m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes], |
| 1129 | [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes]) |
| 1130 | else |
| 1131 | _LT_TAGVAR(whole_archive_flag_spec, $1)='' |
| 1132 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1133 | _LT_TAGVAR(link_all_deplibs, $1)=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1134 | _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 1135 | case $cc_basename in |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1136 | ifort*|nagfor*) _lt_dar_can_shared=yes ;; |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 1137 | *) _lt_dar_can_shared=$GCC ;; |
| 1138 | esac |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1139 | if test yes = "$_lt_dar_can_shared"; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1140 | output_verbose_link_cmd=func_echo_all |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1141 | _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" |
| 1142 | _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" |
| 1143 | _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" |
| 1144 | _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" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1145 | m4_if([$1], [CXX], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1146 | [ if test yes != "$lt_cv_apple_cc_single_mod"; then |
| 1147 | _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" |
| 1148 | _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" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1149 | fi |
| 1150 | ],[]) |
| 1151 | else |
| 1152 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 1153 | fi |
| 1154 | ]) |
| 1155 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1156 | # _LT_SYS_MODULE_PATH_AIX([TAGNAME]) |
| 1157 | # ---------------------------------- |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1158 | # Links a minimal program and checks the executable |
| 1159 | # for the system default hardcoded library path. In most cases, |
| 1160 | # this is /usr/lib:/lib, but when the MPI compilers are used |
| 1161 | # the location of the communication and MPI libs are included too. |
| 1162 | # If we don't find anything, use the default library path according |
| 1163 | # to the aix ld manual. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1164 | # Store the results from the different compilers for each TAGNAME. |
| 1165 | # Allow to override them for all tags through lt_cv_aix_libpath. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1166 | m4_defun([_LT_SYS_MODULE_PATH_AIX], |
| 1167 | [m4_require([_LT_DECL_SED])dnl |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1168 | if test set = "${lt_cv_aix_libpath+set}"; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1169 | aix_libpath=$lt_cv_aix_libpath |
| 1170 | else |
| 1171 | AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])], |
| 1172 | [AC_LINK_IFELSE([AC_LANG_PROGRAM],[ |
| 1173 | lt_aix_libpath_sed='[ |
| 1174 | /Import File Strings/,/^$/ { |
| 1175 | /^0/ { |
| 1176 | s/^0 *\([^ ]*\) *$/\1/ |
| 1177 | p |
| 1178 | } |
| 1179 | }]' |
| 1180 | _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` |
| 1181 | # Check for a 64-bit object if we didn't find anything. |
| 1182 | if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then |
| 1183 | _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` |
| 1184 | fi],[]) |
| 1185 | if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1186 | _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1187 | fi |
| 1188 | ]) |
| 1189 | aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1]) |
| 1190 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1191 | ])# _LT_SYS_MODULE_PATH_AIX |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1192 | |
| 1193 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1194 | # _LT_SHELL_INIT(ARG) |
| 1195 | # ------------------- |
| 1196 | m4_define([_LT_SHELL_INIT], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1197 | [m4_divert_text([M4SH-INIT], [$1 |
| 1198 | ])])# _LT_SHELL_INIT |
| 1199 | |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1200 | |
| 1201 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1202 | # _LT_PROG_ECHO_BACKSLASH |
| 1203 | # ----------------------- |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1204 | # Find how we can fake an echo command that does not interpret backslash. |
| 1205 | # In particular, with Autoconf 2.60 or later we add some code to the start |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1206 | # of the generated configure script that will find a shell with a builtin |
| 1207 | # printf (that we can use as an echo command). |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1208 | m4_defun([_LT_PROG_ECHO_BACKSLASH], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1209 | [ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' |
| 1210 | ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO |
| 1211 | ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1212 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1213 | AC_MSG_CHECKING([how to print strings]) |
| 1214 | # Test print first, because it will be a builtin if present. |
| 1215 | if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ |
| 1216 | test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then |
| 1217 | ECHO='print -r --' |
| 1218 | elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then |
| 1219 | ECHO='printf %s\n' |
| 1220 | else |
| 1221 | # Use this function as a fallback that always works. |
| 1222 | func_fallback_echo () |
| 1223 | { |
| 1224 | eval 'cat <<_LTECHO_EOF |
| 1225 | $[]1 |
| 1226 | _LTECHO_EOF' |
| 1227 | } |
| 1228 | ECHO='func_fallback_echo' |
| 1229 | fi |
| 1230 | |
| 1231 | # func_echo_all arg... |
| 1232 | # Invoke $ECHO with all args, space-separated. |
| 1233 | func_echo_all () |
| 1234 | { |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1235 | $ECHO "$*" |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1236 | } |
| 1237 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1238 | case $ECHO in |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1239 | printf*) AC_MSG_RESULT([printf]) ;; |
| 1240 | print*) AC_MSG_RESULT([print -r]) ;; |
| 1241 | *) AC_MSG_RESULT([cat]) ;; |
Bruce A. Mah | 5d2f2cf | 2014-03-20 09:58:27 -0700 | [diff] [blame] | 1242 | esac |
| 1243 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1244 | m4_ifdef([_AS_DETECT_SUGGESTED], |
| 1245 | [_AS_DETECT_SUGGESTED([ |
| 1246 | test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || ( |
| 1247 | ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' |
| 1248 | ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO |
| 1249 | ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO |
| 1250 | PATH=/empty FPATH=/empty; export PATH FPATH |
| 1251 | test "X`printf %s $ECHO`" = "X$ECHO" \ |
| 1252 | || test "X`print -r -- $ECHO`" = "X$ECHO" )])]) |
Bruce A. Mah | dc1dd2d | 2014-03-04 14:34:40 -0800 | [diff] [blame] | 1253 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1254 | _LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts]) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1255 | _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1256 | ])# _LT_PROG_ECHO_BACKSLASH |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1257 | |
| 1258 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1259 | # _LT_WITH_SYSROOT |
| 1260 | # ---------------- |
| 1261 | AC_DEFUN([_LT_WITH_SYSROOT], |
| 1262 | [AC_MSG_CHECKING([for sysroot]) |
| 1263 | AC_ARG_WITH([sysroot], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1264 | [AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@], |
| 1265 | [Search for dependent libraries within DIR (or the compiler's sysroot |
| 1266 | if not specified).])], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1267 | [], [with_sysroot=no]) |
| 1268 | |
| 1269 | dnl lt_sysroot will always be passed unquoted. We quote it here |
| 1270 | dnl in case the user passed a directory name. |
| 1271 | lt_sysroot= |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1272 | case $with_sysroot in #( |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1273 | yes) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1274 | if test yes = "$GCC"; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1275 | lt_sysroot=`$CC --print-sysroot 2>/dev/null` |
| 1276 | fi |
| 1277 | ;; #( |
| 1278 | /*) |
| 1279 | lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` |
| 1280 | ;; #( |
| 1281 | no|'') |
| 1282 | ;; #( |
| 1283 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1284 | AC_MSG_RESULT([$with_sysroot]) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1285 | AC_MSG_ERROR([The sysroot must be an absolute path.]) |
| 1286 | ;; |
| 1287 | esac |
| 1288 | |
| 1289 | AC_MSG_RESULT([${lt_sysroot:-no}]) |
| 1290 | _LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1291 | [dependent libraries, and where our libraries should be installed.])]) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1292 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1293 | # _LT_ENABLE_LOCK |
| 1294 | # --------------- |
| 1295 | m4_defun([_LT_ENABLE_LOCK], |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1296 | [AC_ARG_ENABLE([libtool-lock], |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1297 | [AS_HELP_STRING([--disable-libtool-lock], |
| 1298 | [avoid locking (might break parallel builds)])]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1299 | test no = "$enable_libtool_lock" || enable_libtool_lock=yes |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1300 | |
| 1301 | # Some flags need to be propagated to the compiler or linker for good |
| 1302 | # libtool support. |
| 1303 | case $host in |
| 1304 | ia64-*-hpux*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1305 | # Find out what ABI is being produced by ac_compile, and set mode |
| 1306 | # options accordingly. |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1307 | echo 'int i;' > conftest.$ac_ext |
| 1308 | if AC_TRY_EVAL(ac_compile); then |
| 1309 | case `/usr/bin/file conftest.$ac_objext` in |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1310 | *ELF-32*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1311 | HPUX_IA64_MODE=32 |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1312 | ;; |
| 1313 | *ELF-64*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1314 | HPUX_IA64_MODE=64 |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1315 | ;; |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1316 | esac |
| 1317 | fi |
| 1318 | rm -rf conftest* |
| 1319 | ;; |
| 1320 | *-*-irix6*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1321 | # Find out what ABI is being produced by ac_compile, and set linker |
| 1322 | # options accordingly. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1323 | echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1324 | if AC_TRY_EVAL(ac_compile); then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1325 | if test yes = "$lt_cv_prog_gnu_ld"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1326 | case `/usr/bin/file conftest.$ac_objext` in |
| 1327 | *32-bit*) |
| 1328 | LD="${LD-ld} -melf32bsmip" |
| 1329 | ;; |
| 1330 | *N32*) |
| 1331 | LD="${LD-ld} -melf32bmipn32" |
| 1332 | ;; |
| 1333 | *64-bit*) |
| 1334 | LD="${LD-ld} -melf64bmip" |
| 1335 | ;; |
| 1336 | esac |
| 1337 | else |
| 1338 | case `/usr/bin/file conftest.$ac_objext` in |
| 1339 | *32-bit*) |
| 1340 | LD="${LD-ld} -32" |
| 1341 | ;; |
| 1342 | *N32*) |
| 1343 | LD="${LD-ld} -n32" |
| 1344 | ;; |
| 1345 | *64-bit*) |
| 1346 | LD="${LD-ld} -64" |
| 1347 | ;; |
| 1348 | esac |
| 1349 | fi |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1350 | fi |
| 1351 | rm -rf conftest* |
| 1352 | ;; |
| 1353 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1354 | mips64*-*linux*) |
| 1355 | # Find out what ABI is being produced by ac_compile, and set linker |
| 1356 | # options accordingly. |
| 1357 | echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext |
| 1358 | if AC_TRY_EVAL(ac_compile); then |
| 1359 | emul=elf |
| 1360 | case `/usr/bin/file conftest.$ac_objext` in |
| 1361 | *32-bit*) |
| 1362 | emul="${emul}32" |
| 1363 | ;; |
| 1364 | *64-bit*) |
| 1365 | emul="${emul}64" |
| 1366 | ;; |
| 1367 | esac |
| 1368 | case `/usr/bin/file conftest.$ac_objext` in |
| 1369 | *MSB*) |
| 1370 | emul="${emul}btsmip" |
| 1371 | ;; |
| 1372 | *LSB*) |
| 1373 | emul="${emul}ltsmip" |
| 1374 | ;; |
| 1375 | esac |
| 1376 | case `/usr/bin/file conftest.$ac_objext` in |
| 1377 | *N32*) |
| 1378 | emul="${emul}n32" |
| 1379 | ;; |
| 1380 | esac |
| 1381 | LD="${LD-ld} -m $emul" |
| 1382 | fi |
| 1383 | rm -rf conftest* |
| 1384 | ;; |
| 1385 | |
| 1386 | x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1387 | s390*-*linux*|s390*-*tpf*|sparc*-*linux*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1388 | # Find out what ABI is being produced by ac_compile, and set linker |
| 1389 | # options accordingly. Note that the listed cases only cover the |
| 1390 | # situations where additional linker options are needed (such as when |
| 1391 | # doing 32-bit compilation for a host where ld defaults to 64-bit, or |
| 1392 | # vice versa); the common cases where no linker options are needed do |
| 1393 | # not appear in the list. |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1394 | echo 'int i;' > conftest.$ac_ext |
| 1395 | if AC_TRY_EVAL(ac_compile); then |
| 1396 | case `/usr/bin/file conftest.o` in |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1397 | *32-bit*) |
| 1398 | case $host in |
| 1399 | x86_64-*kfreebsd*-gnu) |
| 1400 | LD="${LD-ld} -m elf_i386_fbsd" |
| 1401 | ;; |
| 1402 | x86_64-*linux*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1403 | case `/usr/bin/file conftest.o` in |
| 1404 | *x86-64*) |
| 1405 | LD="${LD-ld} -m elf32_x86_64" |
| 1406 | ;; |
| 1407 | *) |
| 1408 | LD="${LD-ld} -m elf_i386" |
| 1409 | ;; |
| 1410 | esac |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1411 | ;; |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1412 | powerpc64le-*linux*) |
| 1413 | LD="${LD-ld} -m elf32lppclinux" |
| 1414 | ;; |
| 1415 | powerpc64-*linux*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1416 | LD="${LD-ld} -m elf32ppclinux" |
| 1417 | ;; |
| 1418 | s390x-*linux*) |
| 1419 | LD="${LD-ld} -m elf_s390" |
| 1420 | ;; |
| 1421 | sparc64-*linux*) |
| 1422 | LD="${LD-ld} -m elf32_sparc" |
| 1423 | ;; |
| 1424 | esac |
| 1425 | ;; |
| 1426 | *64-bit*) |
| 1427 | case $host in |
| 1428 | x86_64-*kfreebsd*-gnu) |
| 1429 | LD="${LD-ld} -m elf_x86_64_fbsd" |
| 1430 | ;; |
| 1431 | x86_64-*linux*) |
| 1432 | LD="${LD-ld} -m elf_x86_64" |
| 1433 | ;; |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1434 | powerpcle-*linux*) |
| 1435 | LD="${LD-ld} -m elf64lppc" |
| 1436 | ;; |
| 1437 | powerpc-*linux*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1438 | LD="${LD-ld} -m elf64ppc" |
| 1439 | ;; |
| 1440 | s390*-*linux*|s390*-*tpf*) |
| 1441 | LD="${LD-ld} -m elf64_s390" |
| 1442 | ;; |
| 1443 | sparc*-*linux*) |
| 1444 | LD="${LD-ld} -m elf64_sparc" |
| 1445 | ;; |
| 1446 | esac |
| 1447 | ;; |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1448 | esac |
| 1449 | fi |
| 1450 | rm -rf conftest* |
| 1451 | ;; |
| 1452 | |
| 1453 | *-*-sco3.2v5*) |
| 1454 | # On SCO OpenServer 5, we need -belf to get full-featured binaries. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1455 | SAVE_CFLAGS=$CFLAGS |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1456 | CFLAGS="$CFLAGS -belf" |
| 1457 | AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, |
| 1458 | [AC_LANG_PUSH(C) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1459 | AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1460 | AC_LANG_POP]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1461 | if test yes != "$lt_cv_cc_needs_belf"; then |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1462 | # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1463 | CFLAGS=$SAVE_CFLAGS |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1464 | fi |
| 1465 | ;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1466 | *-*solaris*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1467 | # Find out what ABI is being produced by ac_compile, and set linker |
| 1468 | # options accordingly. |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1469 | echo 'int i;' > conftest.$ac_ext |
| 1470 | if AC_TRY_EVAL(ac_compile); then |
| 1471 | case `/usr/bin/file conftest.o` in |
| 1472 | *64-bit*) |
| 1473 | case $lt_cv_prog_gnu_ld in |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1474 | yes*) |
| 1475 | case $host in |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1476 | i?86-*-solaris*|x86_64-*-solaris*) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1477 | LD="${LD-ld} -m elf_x86_64" |
| 1478 | ;; |
| 1479 | sparc*-*-solaris*) |
| 1480 | LD="${LD-ld} -m elf64_sparc" |
| 1481 | ;; |
| 1482 | esac |
| 1483 | # GNU ld 2.21 introduced _sol2 emulations. Use them if available. |
| 1484 | if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1485 | LD=${LD-ld}_sol2 |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1486 | fi |
| 1487 | ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1488 | *) |
| 1489 | if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then |
| 1490 | LD="${LD-ld} -64" |
| 1491 | fi |
| 1492 | ;; |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1493 | esac |
| 1494 | ;; |
| 1495 | esac |
| 1496 | fi |
| 1497 | rm -rf conftest* |
| 1498 | ;; |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1499 | esac |
| 1500 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1501 | need_locks=$enable_libtool_lock |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1502 | ])# _LT_ENABLE_LOCK |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 1503 | |
| 1504 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1505 | # _LT_PROG_AR |
| 1506 | # ----------- |
| 1507 | m4_defun([_LT_PROG_AR], |
| 1508 | [AC_CHECK_TOOLS(AR, [ar], false) |
| 1509 | : ${AR=ar} |
| 1510 | : ${AR_FLAGS=cru} |
| 1511 | _LT_DECL([], [AR], [1], [The archiver]) |
| 1512 | _LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive]) |
| 1513 | |
| 1514 | AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file], |
| 1515 | [lt_cv_ar_at_file=no |
| 1516 | AC_COMPILE_IFELSE([AC_LANG_PROGRAM], |
| 1517 | [echo conftest.$ac_objext > conftest.lst |
| 1518 | lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD' |
| 1519 | AC_TRY_EVAL([lt_ar_try]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1520 | if test 0 -eq "$ac_status"; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1521 | # Ensure the archiver fails upon bogus file names. |
| 1522 | rm -f conftest.$ac_objext libconftest.a |
| 1523 | AC_TRY_EVAL([lt_ar_try]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1524 | if test 0 -ne "$ac_status"; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1525 | lt_cv_ar_at_file=@ |
| 1526 | fi |
| 1527 | fi |
| 1528 | rm -f conftest.* libconftest.a |
| 1529 | ]) |
| 1530 | ]) |
| 1531 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1532 | if test no = "$lt_cv_ar_at_file"; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1533 | archiver_list_spec= |
| 1534 | else |
| 1535 | archiver_list_spec=$lt_cv_ar_at_file |
| 1536 | fi |
| 1537 | _LT_DECL([], [archiver_list_spec], [1], |
| 1538 | [How to feed a file listing to the archiver]) |
| 1539 | ])# _LT_PROG_AR |
| 1540 | |
| 1541 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1542 | # _LT_CMD_OLD_ARCHIVE |
| 1543 | # ------------------- |
| 1544 | m4_defun([_LT_CMD_OLD_ARCHIVE], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1545 | [_LT_PROG_AR |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1546 | |
| 1547 | AC_CHECK_TOOL(STRIP, strip, :) |
| 1548 | test -z "$STRIP" && STRIP=: |
| 1549 | _LT_DECL([], [STRIP], [1], [A symbol stripping program]) |
| 1550 | |
| 1551 | AC_CHECK_TOOL(RANLIB, ranlib, :) |
| 1552 | test -z "$RANLIB" && RANLIB=: |
| 1553 | _LT_DECL([], [RANLIB], [1], |
| 1554 | [Commands used to install an old-style archive]) |
| 1555 | |
| 1556 | # Determine commands to create old-style static archives. |
| 1557 | old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' |
| 1558 | old_postinstall_cmds='chmod 644 $oldlib' |
| 1559 | old_postuninstall_cmds= |
| 1560 | |
| 1561 | if test -n "$RANLIB"; then |
| 1562 | case $host_os in |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1563 | bitrig* | openbsd*) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1564 | old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1565 | ;; |
| 1566 | *) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1567 | old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1568 | ;; |
| 1569 | esac |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1570 | old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1571 | fi |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1572 | |
| 1573 | case $host_os in |
| 1574 | darwin*) |
| 1575 | lock_old_archive_extraction=yes ;; |
| 1576 | *) |
| 1577 | lock_old_archive_extraction=no ;; |
| 1578 | esac |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1579 | _LT_DECL([], [old_postinstall_cmds], [2]) |
| 1580 | _LT_DECL([], [old_postuninstall_cmds], [2]) |
| 1581 | _LT_TAGDECL([], [old_archive_cmds], [2], |
| 1582 | [Commands used to build an old-style archive]) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1583 | _LT_DECL([], [lock_old_archive_extraction], [0], |
| 1584 | [Whether to use a lock for old archive extraction]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1585 | ])# _LT_CMD_OLD_ARCHIVE |
| 1586 | |
| 1587 | |
| 1588 | # _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1589 | # [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) |
| 1590 | # ---------------------------------------------------------------- |
| 1591 | # Check whether the given compiler option works |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1592 | AC_DEFUN([_LT_COMPILER_OPTION], |
| 1593 | [m4_require([_LT_FILEUTILS_DEFAULTS])dnl |
| 1594 | m4_require([_LT_DECL_SED])dnl |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1595 | AC_CACHE_CHECK([$1], [$2], |
| 1596 | [$2=no |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1597 | m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) |
| 1598 | echo "$lt_simple_compile_test_code" > conftest.$ac_ext |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1599 | lt_compiler_flag="$3" ## exclude from sc_useless_quotes_in_assignment |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1600 | # Insert the option either (1) after the last *FLAGS variable, or |
| 1601 | # (2) before a word containing "conftest.", or (3) at the end. |
| 1602 | # Note that $ac_compile itself does not contain backslashes and begins |
| 1603 | # with a dollar sign (not a hyphen), so the echo should work correctly. |
| 1604 | # The option is referenced via a variable to avoid confusing sed. |
| 1605 | lt_compile=`echo "$ac_compile" | $SED \ |
| 1606 | -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ |
| 1607 | -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ |
| 1608 | -e 's:$: $lt_compiler_flag:'` |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1609 | (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1610 | (eval "$lt_compile" 2>conftest.err) |
| 1611 | ac_status=$? |
| 1612 | cat conftest.err >&AS_MESSAGE_LOG_FD |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1613 | echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1614 | if (exit $ac_status) && test -s "$ac_outfile"; then |
| 1615 | # The compiler can only warn and ignore the option if not recognized |
| 1616 | # So say no if there are warnings other than the usual output. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1617 | $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1618 | $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 |
| 1619 | if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then |
| 1620 | $2=yes |
| 1621 | fi |
| 1622 | fi |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 1623 | $RM conftest* |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1624 | ]) |
| 1625 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1626 | if test yes = "[$]$2"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1627 | m4_if([$5], , :, [$5]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1628 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1629 | m4_if([$6], , :, [$6]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1630 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1631 | ])# _LT_COMPILER_OPTION |
| 1632 | |
| 1633 | # Old name: |
| 1634 | AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION]) |
| 1635 | dnl aclocal-1.4 backwards compatibility: |
| 1636 | dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], []) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1637 | |
| 1638 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1639 | # _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, |
| 1640 | # [ACTION-SUCCESS], [ACTION-FAILURE]) |
| 1641 | # ---------------------------------------------------- |
| 1642 | # Check whether the given linker option works |
| 1643 | AC_DEFUN([_LT_LINKER_OPTION], |
| 1644 | [m4_require([_LT_FILEUTILS_DEFAULTS])dnl |
| 1645 | m4_require([_LT_DECL_SED])dnl |
| 1646 | AC_CACHE_CHECK([$1], [$2], |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1647 | [$2=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1648 | save_LDFLAGS=$LDFLAGS |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1649 | LDFLAGS="$LDFLAGS $3" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1650 | echo "$lt_simple_link_test_code" > conftest.$ac_ext |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1651 | if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then |
| 1652 | # The linker can only warn and ignore the option if not recognized |
| 1653 | # So say no if there are warnings |
| 1654 | if test -s conftest.err; then |
| 1655 | # Append any errors to the config.log. |
| 1656 | cat conftest.err 1>&AS_MESSAGE_LOG_FD |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1657 | $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1658 | $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 |
| 1659 | if diff conftest.exp conftest.er2 >/dev/null; then |
| 1660 | $2=yes |
| 1661 | fi |
| 1662 | else |
| 1663 | $2=yes |
| 1664 | fi |
| 1665 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1666 | $RM -r conftest* |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1667 | LDFLAGS=$save_LDFLAGS |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1668 | ]) |
| 1669 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1670 | if test yes = "[$]$2"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1671 | m4_if([$4], , :, [$4]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1672 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1673 | m4_if([$5], , :, [$5]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1674 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1675 | ])# _LT_LINKER_OPTION |
| 1676 | |
| 1677 | # Old name: |
| 1678 | AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION]) |
| 1679 | dnl aclocal-1.4 backwards compatibility: |
| 1680 | dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], []) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1681 | |
| 1682 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1683 | # LT_CMD_MAX_LEN |
| 1684 | #--------------- |
| 1685 | AC_DEFUN([LT_CMD_MAX_LEN], |
| 1686 | [AC_REQUIRE([AC_CANONICAL_HOST])dnl |
| 1687 | # find the maximum length of command line arguments |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1688 | AC_MSG_CHECKING([the maximum length of command line arguments]) |
| 1689 | AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl |
| 1690 | i=0 |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1691 | teststring=ABCD |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1692 | |
| 1693 | case $build_os in |
| 1694 | msdosdjgpp*) |
| 1695 | # On DJGPP, this test can blow up pretty badly due to problems in libc |
| 1696 | # (any single argument exceeding 2000 bytes causes a buffer overrun |
| 1697 | # during glob expansion). Even if it were fixed, the result of this |
| 1698 | # check would be larger than it should be. |
| 1699 | lt_cv_sys_max_cmd_len=12288; # 12K is about right |
| 1700 | ;; |
| 1701 | |
| 1702 | gnu*) |
| 1703 | # Under GNU Hurd, this test is not required because there is |
| 1704 | # no limit to the length of command line arguments. |
| 1705 | # Libtool will interpret -1 as no limit whatsoever |
| 1706 | lt_cv_sys_max_cmd_len=-1; |
| 1707 | ;; |
| 1708 | |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 1709 | cygwin* | mingw* | cegcc*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1710 | # On Win9x/ME, this test blows up -- it succeeds, but takes |
| 1711 | # about 5 minutes as the teststring grows exponentially. |
| 1712 | # Worse, since 9x/ME are not pre-emptively multitasking, |
| 1713 | # you end up with a "frozen" computer, even though with patience |
| 1714 | # the test eventually succeeds (with a max line length of 256k). |
| 1715 | # Instead, let's just punt: use the minimum linelength reported by |
| 1716 | # all of the supported platforms: 8192 (on NT/2K/XP). |
| 1717 | lt_cv_sys_max_cmd_len=8192; |
| 1718 | ;; |
| 1719 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1720 | mint*) |
| 1721 | # On MiNT this can take a long time and run out of memory. |
| 1722 | lt_cv_sys_max_cmd_len=8192; |
| 1723 | ;; |
| 1724 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1725 | amigaos*) |
| 1726 | # On AmigaOS with pdksh, this test takes hours, literally. |
| 1727 | # So we just punt and use a minimum line length of 8192. |
| 1728 | lt_cv_sys_max_cmd_len=8192; |
| 1729 | ;; |
| 1730 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1731 | bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1732 | # This has been around since 386BSD, at least. Likely further. |
| 1733 | if test -x /sbin/sysctl; then |
| 1734 | lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` |
| 1735 | elif test -x /usr/sbin/sysctl; then |
| 1736 | lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` |
| 1737 | else |
| 1738 | lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs |
| 1739 | fi |
| 1740 | # And add a safety zone |
| 1741 | lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` |
| 1742 | lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` |
| 1743 | ;; |
| 1744 | |
| 1745 | interix*) |
| 1746 | # We know the value 262144 and hardcode it with a safety zone (like BSD) |
| 1747 | lt_cv_sys_max_cmd_len=196608 |
| 1748 | ;; |
| 1749 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1750 | os2*) |
| 1751 | # The test takes a long time on OS/2. |
| 1752 | lt_cv_sys_max_cmd_len=8192 |
| 1753 | ;; |
| 1754 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1755 | osf*) |
| 1756 | # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure |
| 1757 | # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not |
| 1758 | # nice to cause kernel panics so lets avoid the loop below. |
| 1759 | # First set a reasonable default. |
| 1760 | lt_cv_sys_max_cmd_len=16384 |
| 1761 | # |
| 1762 | if test -x /sbin/sysconfig; then |
| 1763 | case `/sbin/sysconfig -q proc exec_disable_arg_limit` in |
| 1764 | *1*) lt_cv_sys_max_cmd_len=-1 ;; |
| 1765 | esac |
| 1766 | fi |
| 1767 | ;; |
| 1768 | sco3.2v5*) |
| 1769 | lt_cv_sys_max_cmd_len=102400 |
| 1770 | ;; |
| 1771 | sysv5* | sco5v6* | sysv4.2uw2*) |
| 1772 | kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` |
| 1773 | if test -n "$kargmax"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1774 | lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'` |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1775 | else |
| 1776 | lt_cv_sys_max_cmd_len=32768 |
| 1777 | fi |
| 1778 | ;; |
| 1779 | *) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1780 | lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1781 | if test -n "$lt_cv_sys_max_cmd_len" && \ |
| 1782 | test undefined != "$lt_cv_sys_max_cmd_len"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1783 | lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` |
| 1784 | lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` |
| 1785 | else |
| 1786 | # Make teststring a little bigger before we do anything with it. |
| 1787 | # a 1K string should be a reasonable start. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1788 | for i in 1 2 3 4 5 6 7 8; do |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1789 | teststring=$teststring$teststring |
| 1790 | done |
| 1791 | SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} |
| 1792 | # If test is not a shell built-in, we'll probably end up computing a |
| 1793 | # maximum length that is only half of the actual maximum length, but |
| 1794 | # we can't tell. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1795 | while { test X`env echo "$teststring$teststring" 2>/dev/null` \ |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1796 | = "X$teststring$teststring"; } >/dev/null 2>&1 && |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1797 | test 17 != "$i" # 1/2 MB should be enough |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1798 | do |
| 1799 | i=`expr $i + 1` |
| 1800 | teststring=$teststring$teststring |
| 1801 | done |
| 1802 | # Only check the string length outside the loop. |
| 1803 | lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` |
| 1804 | teststring= |
| 1805 | # Add a significant safety factor because C++ compilers can tack on |
| 1806 | # massive amounts of additional arguments before passing them to the |
| 1807 | # linker. It appears as though 1/2 is a usable value. |
| 1808 | lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` |
| 1809 | fi |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1810 | ;; |
| 1811 | esac |
| 1812 | ]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1813 | if test -n "$lt_cv_sys_max_cmd_len"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1814 | AC_MSG_RESULT($lt_cv_sys_max_cmd_len) |
| 1815 | else |
| 1816 | AC_MSG_RESULT(none) |
| 1817 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1818 | max_cmd_len=$lt_cv_sys_max_cmd_len |
| 1819 | _LT_DECL([], [max_cmd_len], [0], |
| 1820 | [What is the maximum length of a command?]) |
| 1821 | ])# LT_CMD_MAX_LEN |
| 1822 | |
| 1823 | # Old name: |
| 1824 | AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN]) |
| 1825 | dnl aclocal-1.4 backwards compatibility: |
| 1826 | dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], []) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1827 | |
| 1828 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1829 | # _LT_HEADER_DLFCN |
| 1830 | # ---------------- |
| 1831 | m4_defun([_LT_HEADER_DLFCN], |
| 1832 | [AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl |
| 1833 | ])# _LT_HEADER_DLFCN |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1834 | |
| 1835 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1836 | # _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, |
| 1837 | # ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) |
| 1838 | # ---------------------------------------------------------------- |
| 1839 | m4_defun([_LT_TRY_DLOPEN_SELF], |
| 1840 | [m4_require([_LT_HEADER_DLFCN])dnl |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1841 | if test yes = "$cross_compiling"; then : |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1842 | [$4] |
| 1843 | else |
| 1844 | lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 |
| 1845 | lt_status=$lt_dlunknown |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1846 | cat > conftest.$ac_ext <<_LT_EOF |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1847 | [#line $LINENO "configure" |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1848 | #include "confdefs.h" |
| 1849 | |
| 1850 | #if HAVE_DLFCN_H |
| 1851 | #include <dlfcn.h> |
| 1852 | #endif |
| 1853 | |
| 1854 | #include <stdio.h> |
| 1855 | |
| 1856 | #ifdef RTLD_GLOBAL |
| 1857 | # define LT_DLGLOBAL RTLD_GLOBAL |
| 1858 | #else |
| 1859 | # ifdef DL_GLOBAL |
| 1860 | # define LT_DLGLOBAL DL_GLOBAL |
| 1861 | # else |
| 1862 | # define LT_DLGLOBAL 0 |
| 1863 | # endif |
| 1864 | #endif |
| 1865 | |
| 1866 | /* We may have to define LT_DLLAZY_OR_NOW in the command line if we |
| 1867 | find out it does not work in some platform. */ |
| 1868 | #ifndef LT_DLLAZY_OR_NOW |
| 1869 | # ifdef RTLD_LAZY |
| 1870 | # define LT_DLLAZY_OR_NOW RTLD_LAZY |
| 1871 | # else |
| 1872 | # ifdef DL_LAZY |
| 1873 | # define LT_DLLAZY_OR_NOW DL_LAZY |
| 1874 | # else |
| 1875 | # ifdef RTLD_NOW |
| 1876 | # define LT_DLLAZY_OR_NOW RTLD_NOW |
| 1877 | # else |
| 1878 | # ifdef DL_NOW |
| 1879 | # define LT_DLLAZY_OR_NOW DL_NOW |
| 1880 | # else |
| 1881 | # define LT_DLLAZY_OR_NOW 0 |
| 1882 | # endif |
| 1883 | # endif |
| 1884 | # endif |
| 1885 | # endif |
| 1886 | #endif |
| 1887 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1888 | /* When -fvisibility=hidden is used, assume the code has been annotated |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1889 | correspondingly for the symbols needed. */ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1890 | #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1891 | int fnord () __attribute__((visibility("default"))); |
| 1892 | #endif |
| 1893 | |
| 1894 | int fnord () { return 42; } |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1895 | int main () |
| 1896 | { |
| 1897 | void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); |
| 1898 | int status = $lt_dlunknown; |
| 1899 | |
| 1900 | if (self) |
| 1901 | { |
| 1902 | if (dlsym (self,"fnord")) status = $lt_dlno_uscore; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 1903 | else |
| 1904 | { |
| 1905 | if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; |
| 1906 | else puts (dlerror ()); |
| 1907 | } |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1908 | /* dlclose (self); */ |
| 1909 | } |
| 1910 | else |
| 1911 | puts (dlerror ()); |
| 1912 | |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 1913 | return status; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1914 | }] |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1915 | _LT_EOF |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1916 | if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1917 | (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null |
| 1918 | lt_status=$? |
| 1919 | case x$lt_status in |
| 1920 | x$lt_dlno_uscore) $1 ;; |
| 1921 | x$lt_dlneed_uscore) $2 ;; |
| 1922 | x$lt_dlunknown|x*) $3 ;; |
| 1923 | esac |
| 1924 | else : |
| 1925 | # compilation failed |
| 1926 | $3 |
| 1927 | fi |
| 1928 | fi |
| 1929 | rm -fr conftest* |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1930 | ])# _LT_TRY_DLOPEN_SELF |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1931 | |
| 1932 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1933 | # LT_SYS_DLOPEN_SELF |
| 1934 | # ------------------ |
| 1935 | AC_DEFUN([LT_SYS_DLOPEN_SELF], |
| 1936 | [m4_require([_LT_HEADER_DLFCN])dnl |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1937 | if test yes != "$enable_dlopen"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1938 | enable_dlopen=unknown |
| 1939 | enable_dlopen_self=unknown |
| 1940 | enable_dlopen_self_static=unknown |
| 1941 | else |
| 1942 | lt_cv_dlopen=no |
| 1943 | lt_cv_dlopen_libs= |
| 1944 | |
| 1945 | case $host_os in |
| 1946 | beos*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1947 | lt_cv_dlopen=load_add_on |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1948 | lt_cv_dlopen_libs= |
| 1949 | lt_cv_dlopen_self=yes |
| 1950 | ;; |
| 1951 | |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 1952 | mingw* | pw32* | cegcc*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1953 | lt_cv_dlopen=LoadLibrary |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1954 | lt_cv_dlopen_libs= |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1955 | ;; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1956 | |
| 1957 | cygwin*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1958 | lt_cv_dlopen=dlopen |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1959 | lt_cv_dlopen_libs= |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1960 | ;; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1961 | |
| 1962 | darwin*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1963 | # if libdl is installed we need to link against it |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1964 | AC_CHECK_LIB([dl], [dlopen], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1965 | [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[ |
| 1966 | lt_cv_dlopen=dyld |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1967 | lt_cv_dlopen_libs= |
| 1968 | lt_cv_dlopen_self=yes |
| 1969 | ]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 1970 | ;; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1971 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1972 | tpf*) |
| 1973 | # Don't try to run any link tests for TPF. We know it's impossible |
| 1974 | # because TPF is a cross-compiler, and we know how we open DSOs. |
| 1975 | lt_cv_dlopen=dlopen |
| 1976 | lt_cv_dlopen_libs= |
| 1977 | lt_cv_dlopen_self=no |
| 1978 | ;; |
| 1979 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1980 | *) |
| 1981 | AC_CHECK_FUNC([shl_load], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1982 | [lt_cv_dlopen=shl_load], |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1983 | [AC_CHECK_LIB([dld], [shl_load], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1984 | [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld], |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1985 | [AC_CHECK_FUNC([dlopen], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1986 | [lt_cv_dlopen=dlopen], |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1987 | [AC_CHECK_LIB([dl], [dlopen], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1988 | [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl], |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1989 | [AC_CHECK_LIB([svld], [dlopen], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1990 | [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld], |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1991 | [AC_CHECK_LIB([dld], [dld_link], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 1992 | [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 1993 | ]) |
| 1994 | ]) |
| 1995 | ]) |
| 1996 | ]) |
| 1997 | ]) |
| 1998 | ;; |
| 1999 | esac |
| 2000 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2001 | if test no = "$lt_cv_dlopen"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2002 | enable_dlopen=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2003 | else |
| 2004 | enable_dlopen=yes |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2005 | fi |
| 2006 | |
| 2007 | case $lt_cv_dlopen in |
| 2008 | dlopen) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2009 | save_CPPFLAGS=$CPPFLAGS |
| 2010 | test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2011 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2012 | save_LDFLAGS=$LDFLAGS |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2013 | wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" |
| 2014 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2015 | save_LIBS=$LIBS |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2016 | LIBS="$lt_cv_dlopen_libs $LIBS" |
| 2017 | |
| 2018 | AC_CACHE_CHECK([whether a program can dlopen itself], |
| 2019 | lt_cv_dlopen_self, [dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2020 | _LT_TRY_DLOPEN_SELF( |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2021 | lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, |
| 2022 | lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) |
| 2023 | ]) |
| 2024 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2025 | if test yes = "$lt_cv_dlopen_self"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2026 | wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" |
| 2027 | AC_CACHE_CHECK([whether a statically linked program can dlopen itself], |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2028 | lt_cv_dlopen_self_static, [dnl |
| 2029 | _LT_TRY_DLOPEN_SELF( |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2030 | lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, |
| 2031 | lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) |
| 2032 | ]) |
| 2033 | fi |
| 2034 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2035 | CPPFLAGS=$save_CPPFLAGS |
| 2036 | LDFLAGS=$save_LDFLAGS |
| 2037 | LIBS=$save_LIBS |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2038 | ;; |
| 2039 | esac |
| 2040 | |
| 2041 | case $lt_cv_dlopen_self in |
| 2042 | yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; |
| 2043 | *) enable_dlopen_self=unknown ;; |
| 2044 | esac |
| 2045 | |
| 2046 | case $lt_cv_dlopen_self_static in |
| 2047 | yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; |
| 2048 | *) enable_dlopen_self_static=unknown ;; |
| 2049 | esac |
| 2050 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2051 | _LT_DECL([dlopen_support], [enable_dlopen], [0], |
| 2052 | [Whether dlopen is supported]) |
| 2053 | _LT_DECL([dlopen_self], [enable_dlopen_self], [0], |
| 2054 | [Whether dlopen of programs is supported]) |
| 2055 | _LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0], |
| 2056 | [Whether dlopen of statically linked programs is supported]) |
| 2057 | ])# LT_SYS_DLOPEN_SELF |
| 2058 | |
| 2059 | # Old name: |
| 2060 | AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF]) |
| 2061 | dnl aclocal-1.4 backwards compatibility: |
| 2062 | dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], []) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2063 | |
| 2064 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2065 | # _LT_COMPILER_C_O([TAGNAME]) |
| 2066 | # --------------------------- |
| 2067 | # Check to see if options -c and -o are simultaneously supported by compiler. |
| 2068 | # This macro does not hard code the compiler like AC_PROG_CC_C_O. |
| 2069 | m4_defun([_LT_COMPILER_C_O], |
| 2070 | [m4_require([_LT_DECL_SED])dnl |
| 2071 | m4_require([_LT_FILEUTILS_DEFAULTS])dnl |
| 2072 | m4_require([_LT_TAG_COMPILER])dnl |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2073 | AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2074 | [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)], |
| 2075 | [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no |
| 2076 | $RM -r conftest 2>/dev/null |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2077 | mkdir conftest |
| 2078 | cd conftest |
| 2079 | mkdir out |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2080 | echo "$lt_simple_compile_test_code" > conftest.$ac_ext |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2081 | |
| 2082 | lt_compiler_flag="-o out/conftest2.$ac_objext" |
| 2083 | # Insert the option either (1) after the last *FLAGS variable, or |
| 2084 | # (2) before a word containing "conftest.", or (3) at the end. |
| 2085 | # Note that $ac_compile itself does not contain backslashes and begins |
| 2086 | # with a dollar sign (not a hyphen), so the echo should work correctly. |
| 2087 | lt_compile=`echo "$ac_compile" | $SED \ |
| 2088 | -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ |
| 2089 | -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ |
| 2090 | -e 's:$: $lt_compiler_flag:'` |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2091 | (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2092 | (eval "$lt_compile" 2>out/conftest.err) |
| 2093 | ac_status=$? |
| 2094 | cat out/conftest.err >&AS_MESSAGE_LOG_FD |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2095 | echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2096 | if (exit $ac_status) && test -s out/conftest2.$ac_objext |
| 2097 | then |
| 2098 | # The compiler can only warn and ignore the option if not recognized |
| 2099 | # So say no if there are warnings |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2100 | $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2101 | $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 |
| 2102 | if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2103 | _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2104 | fi |
| 2105 | fi |
| 2106 | chmod u+w . 2>&AS_MESSAGE_LOG_FD |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 2107 | $RM conftest* |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2108 | # SGI C++ compiler will create directory out/ii_files/ for |
| 2109 | # template instantiation |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2110 | test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files |
| 2111 | $RM out/* && rmdir out |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2112 | cd .. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2113 | $RM -r conftest |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 2114 | $RM conftest* |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2115 | ]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2116 | _LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1], |
| 2117 | [Does compiler simultaneously support -c and -o options?]) |
| 2118 | ])# _LT_COMPILER_C_O |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2119 | |
| 2120 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2121 | # _LT_COMPILER_FILE_LOCKS([TAGNAME]) |
| 2122 | # ---------------------------------- |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2123 | # Check to see if we can do hard links to lock some files if needed |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2124 | m4_defun([_LT_COMPILER_FILE_LOCKS], |
| 2125 | [m4_require([_LT_ENABLE_LOCK])dnl |
| 2126 | m4_require([_LT_FILEUTILS_DEFAULTS])dnl |
| 2127 | _LT_COMPILER_C_O([$1]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2128 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2129 | hard_links=nottested |
| 2130 | if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2131 | # do not overwrite the value of need_locks provided by the user |
| 2132 | AC_MSG_CHECKING([if we can lock with hard links]) |
| 2133 | hard_links=yes |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 2134 | $RM conftest* |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2135 | ln conftest.a conftest.b 2>/dev/null && hard_links=no |
| 2136 | touch conftest.a |
| 2137 | ln conftest.a conftest.b 2>&5 || hard_links=no |
| 2138 | ln conftest.a conftest.b 2>/dev/null && hard_links=no |
| 2139 | AC_MSG_RESULT([$hard_links]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2140 | if test no = "$hard_links"; then |
| 2141 | AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2142 | need_locks=warn |
| 2143 | fi |
| 2144 | else |
| 2145 | need_locks=no |
| 2146 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2147 | _LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?]) |
| 2148 | ])# _LT_COMPILER_FILE_LOCKS |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2149 | |
| 2150 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2151 | # _LT_CHECK_OBJDIR |
| 2152 | # ---------------- |
| 2153 | m4_defun([_LT_CHECK_OBJDIR], |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2154 | [AC_CACHE_CHECK([for objdir], [lt_cv_objdir], |
| 2155 | [rm -f .libs 2>/dev/null |
| 2156 | mkdir .libs 2>/dev/null |
| 2157 | if test -d .libs; then |
| 2158 | lt_cv_objdir=.libs |
| 2159 | else |
| 2160 | # MS-DOS does not allow filenames that begin with a dot. |
| 2161 | lt_cv_objdir=_libs |
| 2162 | fi |
| 2163 | rmdir .libs 2>/dev/null]) |
| 2164 | objdir=$lt_cv_objdir |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2165 | _LT_DECL([], [objdir], [0], |
| 2166 | [The name of the directory that contains temporary libtool files])dnl |
| 2167 | m4_pattern_allow([LT_OBJDIR])dnl |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2168 | AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/", |
| 2169 | [Define to the sub-directory where libtool stores uninstalled libraries.]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2170 | ])# _LT_CHECK_OBJDIR |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2171 | |
| 2172 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2173 | # _LT_LINKER_HARDCODE_LIBPATH([TAGNAME]) |
| 2174 | # -------------------------------------- |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2175 | # Check hardcoding attributes. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2176 | m4_defun([_LT_LINKER_HARDCODE_LIBPATH], |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2177 | [AC_MSG_CHECKING([how to hardcode library paths into programs]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2178 | _LT_TAGVAR(hardcode_action, $1)= |
| 2179 | if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" || |
| 2180 | test -n "$_LT_TAGVAR(runpath_var, $1)" || |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2181 | test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2182 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2183 | # We can hardcode non-existent directories. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2184 | if test no != "$_LT_TAGVAR(hardcode_direct, $1)" && |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2185 | # If the only mechanism to avoid hardcoding is shlibpath_var, we |
| 2186 | # have to relink, otherwise we might link with an installed library |
| 2187 | # when we should be linking with a yet-to-be-installed one |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2188 | ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" && |
| 2189 | test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2190 | # Linking always hardcodes the temporary library directory. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2191 | _LT_TAGVAR(hardcode_action, $1)=relink |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2192 | else |
| 2193 | # We can link without hardcoding, and we can hardcode nonexisting dirs. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2194 | _LT_TAGVAR(hardcode_action, $1)=immediate |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2195 | fi |
| 2196 | else |
| 2197 | # We cannot hardcode anything, or else we can only hardcode existing |
| 2198 | # directories. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2199 | _LT_TAGVAR(hardcode_action, $1)=unsupported |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2200 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2201 | AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2202 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2203 | if test relink = "$_LT_TAGVAR(hardcode_action, $1)" || |
| 2204 | test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2205 | # Fast installation is not supported |
| 2206 | enable_fast_install=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2207 | elif test yes = "$shlibpath_overrides_runpath" || |
| 2208 | test no = "$enable_shared"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2209 | # Fast installation is not necessary |
| 2210 | enable_fast_install=needless |
| 2211 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2212 | _LT_TAGDECL([], [hardcode_action], [0], |
| 2213 | [How to hardcode a shared library path into an executable]) |
| 2214 | ])# _LT_LINKER_HARDCODE_LIBPATH |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2215 | |
| 2216 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2217 | # _LT_CMD_STRIPLIB |
| 2218 | # ---------------- |
| 2219 | m4_defun([_LT_CMD_STRIPLIB], |
| 2220 | [m4_require([_LT_DECL_EGREP]) |
| 2221 | striplib= |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2222 | old_striplib= |
| 2223 | AC_MSG_CHECKING([whether stripping libraries is possible]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2224 | if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2225 | test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" |
| 2226 | test -z "$striplib" && striplib="$STRIP --strip-unneeded" |
| 2227 | AC_MSG_RESULT([yes]) |
| 2228 | else |
| 2229 | # FIXME - insert some real tests, host_os isn't really good enough |
| 2230 | case $host_os in |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2231 | darwin*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2232 | if test -n "$STRIP"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2233 | striplib="$STRIP -x" |
| 2234 | old_striplib="$STRIP -S" |
| 2235 | AC_MSG_RESULT([yes]) |
| 2236 | else |
| 2237 | AC_MSG_RESULT([no]) |
| 2238 | fi |
| 2239 | ;; |
| 2240 | *) |
| 2241 | AC_MSG_RESULT([no]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2242 | ;; |
| 2243 | esac |
| 2244 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2245 | _LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) |
| 2246 | _LT_DECL([], [striplib], [1]) |
| 2247 | ])# _LT_CMD_STRIPLIB |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2248 | |
| 2249 | |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 2250 | # _LT_PREPARE_MUNGE_PATH_LIST |
| 2251 | # --------------------------- |
| 2252 | # Make sure func_munge_path_list() is defined correctly. |
| 2253 | m4_defun([_LT_PREPARE_MUNGE_PATH_LIST], |
| 2254 | [[# func_munge_path_list VARIABLE PATH |
| 2255 | # ----------------------------------- |
| 2256 | # VARIABLE is name of variable containing _space_ separated list of |
| 2257 | # directories to be munged by the contents of PATH, which is string |
| 2258 | # having a format: |
| 2259 | # "DIR[:DIR]:" |
| 2260 | # string "DIR[ DIR]" will be prepended to VARIABLE |
| 2261 | # ":DIR[:DIR]" |
| 2262 | # string "DIR[ DIR]" will be appended to VARIABLE |
| 2263 | # "DIRP[:DIRP]::[DIRA:]DIRA" |
| 2264 | # string "DIRP[ DIRP]" will be prepended to VARIABLE and string |
| 2265 | # "DIRA[ DIRA]" will be appended to VARIABLE |
| 2266 | # "DIR[:DIR]" |
| 2267 | # VARIABLE will be replaced by "DIR[ DIR]" |
| 2268 | func_munge_path_list () |
| 2269 | { |
| 2270 | case x@S|@2 in |
| 2271 | x) |
| 2272 | ;; |
| 2273 | *:) |
| 2274 | eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\" |
| 2275 | ;; |
| 2276 | x:*) |
| 2277 | eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\" |
| 2278 | ;; |
| 2279 | *::*) |
| 2280 | eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" |
| 2281 | eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\" |
| 2282 | ;; |
| 2283 | *) |
| 2284 | eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\" |
| 2285 | ;; |
| 2286 | esac |
| 2287 | } |
| 2288 | ]])# _LT_PREPARE_PATH_LIST |
| 2289 | |
| 2290 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2291 | # _LT_SYS_DYNAMIC_LINKER([TAG]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2292 | # ----------------------------- |
| 2293 | # PORTME Fill in your ld.so characteristics |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2294 | m4_defun([_LT_SYS_DYNAMIC_LINKER], |
| 2295 | [AC_REQUIRE([AC_CANONICAL_HOST])dnl |
| 2296 | m4_require([_LT_DECL_EGREP])dnl |
| 2297 | m4_require([_LT_FILEUTILS_DEFAULTS])dnl |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 2298 | m4_require([_LT_DECL_OBJDUMP])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2299 | m4_require([_LT_DECL_SED])dnl |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2300 | m4_require([_LT_CHECK_SHELL_FEATURES])dnl |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 2301 | m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2302 | AC_MSG_CHECKING([dynamic linker characteristics]) |
| 2303 | m4_if([$1], |
| 2304 | [], [ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2305 | if test yes = "$GCC"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2306 | case $host_os in |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2307 | darwin*) lt_awk_arg='/^libraries:/,/LR/' ;; |
| 2308 | *) lt_awk_arg='/^libraries:/' ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2309 | esac |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2310 | case $host_os in |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2311 | mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;; |
| 2312 | *) lt_sed_strip_eq='s|=/|/|g' ;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2313 | esac |
| 2314 | lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` |
| 2315 | case $lt_search_path_spec in |
| 2316 | *\;*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2317 | # if the path contains ";" then we assume it to be the separator |
| 2318 | # otherwise default to the standard path separator (i.e. ":") - it is |
| 2319 | # assumed that no part of a normal pathname contains ";" but that should |
| 2320 | # okay in the real world where ";" in dirpaths is itself problematic. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2321 | lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'` |
| 2322 | ;; |
| 2323 | *) |
| 2324 | lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` |
| 2325 | ;; |
| 2326 | esac |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2327 | # Ok, now we have the path, separated by spaces, we can step through it |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2328 | # and add multilib dir if necessary... |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2329 | lt_tmp_lt_search_path_spec= |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2330 | lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` |
| 2331 | # ...but if some path component already ends with the multilib dir we assume |
| 2332 | # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer). |
| 2333 | case "$lt_multi_os_dir; $lt_search_path_spec " in |
| 2334 | "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*) |
| 2335 | lt_multi_os_dir= |
| 2336 | ;; |
| 2337 | esac |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2338 | for lt_sys_path in $lt_search_path_spec; do |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2339 | if test -d "$lt_sys_path$lt_multi_os_dir"; then |
| 2340 | lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir" |
| 2341 | elif test -n "$lt_multi_os_dir"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2342 | test -d "$lt_sys_path" && \ |
| 2343 | lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" |
| 2344 | fi |
| 2345 | done |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2346 | lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2347 | BEGIN {RS = " "; FS = "/|\n";} { |
| 2348 | lt_foo = ""; |
| 2349 | lt_count = 0; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2350 | for (lt_i = NF; lt_i > 0; lt_i--) { |
| 2351 | if ($lt_i != "" && $lt_i != ".") { |
| 2352 | if ($lt_i == "..") { |
| 2353 | lt_count++; |
| 2354 | } else { |
| 2355 | if (lt_count == 0) { |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2356 | lt_foo = "/" $lt_i lt_foo; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2357 | } else { |
| 2358 | lt_count--; |
| 2359 | } |
| 2360 | } |
| 2361 | } |
| 2362 | } |
| 2363 | if (lt_foo != "") { lt_freq[[lt_foo]]++; } |
| 2364 | if (lt_freq[[lt_foo]] == 1) { print lt_foo; } |
| 2365 | }'` |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2366 | # AWK program above erroneously prepends '/' to C:/dos/paths |
| 2367 | # for these hosts. |
| 2368 | case $host_os in |
| 2369 | mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2370 | $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2371 | esac |
| 2372 | sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2373 | else |
| 2374 | sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" |
| 2375 | fi]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2376 | library_names_spec= |
| 2377 | libname_spec='lib$name' |
| 2378 | soname_spec= |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2379 | shrext_cmds=.so |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2380 | postinstall_cmds= |
| 2381 | postuninstall_cmds= |
| 2382 | finish_cmds= |
| 2383 | finish_eval= |
| 2384 | shlibpath_var= |
| 2385 | shlibpath_overrides_runpath=unknown |
| 2386 | version_type=none |
| 2387 | dynamic_linker="$host_os ld.so" |
| 2388 | sys_lib_dlsearch_path_spec="/lib /usr/lib" |
| 2389 | need_lib_prefix=unknown |
| 2390 | hardcode_into_libs=no |
| 2391 | |
| 2392 | # when you set need_version to no, make sure it does not cause -set_version |
| 2393 | # flags to be left without arguments |
| 2394 | need_version=unknown |
| 2395 | |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 2396 | AC_ARG_VAR([LT_SYS_LIBRARY_PATH], |
| 2397 | [User-defined run-time library search path.]) |
| 2398 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2399 | case $host_os in |
| 2400 | aix3*) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2401 | version_type=linux # correct to gnu/linux during the next big refactor |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2402 | library_names_spec='$libname$release$shared_ext$versuffix $libname.a' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2403 | shlibpath_var=LIBPATH |
| 2404 | |
| 2405 | # AIX 3 has no versioning support, so we append a major version to the name. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2406 | soname_spec='$libname$release$shared_ext$major' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2407 | ;; |
| 2408 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2409 | aix[[4-9]]*) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2410 | version_type=linux # correct to gnu/linux during the next big refactor |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2411 | need_lib_prefix=no |
| 2412 | need_version=no |
| 2413 | hardcode_into_libs=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2414 | if test ia64 = "$host_cpu"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2415 | # AIX 5 supports IA64 |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2416 | library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2417 | shlibpath_var=LD_LIBRARY_PATH |
| 2418 | else |
| 2419 | # With GCC up to 2.95.x, collect2 would create an import file |
| 2420 | # for dependence libraries. The import file would start with |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2421 | # the line '#! .'. This would cause the generated library to |
| 2422 | # depend on '.', always an invalid library. This was fixed in |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2423 | # development snapshots of GCC prior to 3.0. |
| 2424 | case $host_os in |
| 2425 | aix4 | aix4.[[01]] | aix4.[[01]].*) |
| 2426 | if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' |
| 2427 | echo ' yes ' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2428 | echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2429 | : |
| 2430 | else |
| 2431 | can_build_shared=no |
| 2432 | fi |
| 2433 | ;; |
| 2434 | esac |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2435 | # Using Import Files as archive members, it is possible to support |
| 2436 | # filename-based versioning of shared library archives on AIX. While |
| 2437 | # this would work for both with and without runtime linking, it will |
| 2438 | # prevent static linking of such archives. So we do filename-based |
| 2439 | # shared library versioning with .so extension only, which is used |
| 2440 | # when both runtime linking and shared linking is enabled. |
| 2441 | # Unfortunately, runtime linking may impact performance, so we do |
| 2442 | # not want this to be the default eventually. Also, we use the |
| 2443 | # versioned .so libs for executables only if there is the -brtl |
| 2444 | # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only. |
| 2445 | # To allow for filename-based versioning support, we need to create |
| 2446 | # libNAME.so.V as an archive file, containing: |
| 2447 | # *) an Import File, referring to the versioned filename of the |
| 2448 | # archive as well as the shared archive member, telling the |
| 2449 | # bitwidth (32 or 64) of that shared object, and providing the |
| 2450 | # list of exported symbols of that shared object, eventually |
| 2451 | # decorated with the 'weak' keyword |
| 2452 | # *) the shared object with the F_LOADONLY flag set, to really avoid |
| 2453 | # it being seen by the linker. |
| 2454 | # At run time we better use the real file rather than another symlink, |
| 2455 | # but for link time we create the symlink libNAME.so -> libNAME.so.V |
| 2456 | |
| 2457 | case $with_aix_soname,$aix_use_runtimelinking in |
| 2458 | # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2459 | # soname into executable. Probably we can add versioning support to |
| 2460 | # collect2, so additional links can be useful in future. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2461 | aix,yes) # traditional libtool |
| 2462 | dynamic_linker='AIX unversionable lib.so' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2463 | # If using run time linking (on AIX 4.2 or later) use lib<name>.so |
| 2464 | # instead of lib<name>.a to let people know that these are not |
| 2465 | # typical AIX shared libraries. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2466 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
| 2467 | ;; |
| 2468 | aix,no) # traditional AIX only |
| 2469 | dynamic_linker='AIX lib.a[(]lib.so.V[)]' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2470 | # We preserve .a as extension for shared libraries through AIX4.2 |
| 2471 | # and later when we are not doing run time linking. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2472 | library_names_spec='$libname$release.a $libname.a' |
| 2473 | soname_spec='$libname$release$shared_ext$major' |
| 2474 | ;; |
| 2475 | svr4,*) # full svr4 only |
| 2476 | dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]" |
| 2477 | library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' |
| 2478 | # We do not specify a path in Import Files, so LIBPATH fires. |
| 2479 | shlibpath_overrides_runpath=yes |
| 2480 | ;; |
| 2481 | *,yes) # both, prefer svr4 |
| 2482 | dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]" |
| 2483 | library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' |
| 2484 | # unpreferred sharedlib libNAME.a needs extra handling |
| 2485 | 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"' |
| 2486 | 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"' |
| 2487 | # We do not specify a path in Import Files, so LIBPATH fires. |
| 2488 | shlibpath_overrides_runpath=yes |
| 2489 | ;; |
| 2490 | *,no) # both, prefer aix |
| 2491 | dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]" |
| 2492 | library_names_spec='$libname$release.a $libname.a' |
| 2493 | soname_spec='$libname$release$shared_ext$major' |
| 2494 | # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling |
| 2495 | 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)' |
| 2496 | 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"' |
| 2497 | ;; |
| 2498 | esac |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2499 | shlibpath_var=LIBPATH |
| 2500 | fi |
| 2501 | ;; |
| 2502 | |
| 2503 | amigaos*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2504 | case $host_cpu in |
| 2505 | powerpc) |
| 2506 | # Since July 2007 AmigaOS4 officially supports .so libraries. |
| 2507 | # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2508 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2509 | ;; |
| 2510 | m68k) |
| 2511 | library_names_spec='$libname.ixlibrary $libname.a' |
| 2512 | # Create ${libname}_ixlibrary.a entries in /sys/libs. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2513 | 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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2514 | ;; |
| 2515 | esac |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2516 | ;; |
| 2517 | |
| 2518 | beos*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2519 | library_names_spec='$libname$shared_ext' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2520 | dynamic_linker="$host_os ld.so" |
| 2521 | shlibpath_var=LIBRARY_PATH |
| 2522 | ;; |
| 2523 | |
| 2524 | bsdi[[45]]*) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2525 | version_type=linux # correct to gnu/linux during the next big refactor |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2526 | need_version=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2527 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
| 2528 | soname_spec='$libname$release$shared_ext$major' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2529 | finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' |
| 2530 | shlibpath_var=LD_LIBRARY_PATH |
| 2531 | sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" |
| 2532 | sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" |
| 2533 | # the default ld.so.conf also contains /usr/contrib/lib and |
| 2534 | # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow |
| 2535 | # libtool to hard-code these into programs |
| 2536 | ;; |
| 2537 | |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 2538 | cygwin* | mingw* | pw32* | cegcc*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2539 | version_type=windows |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2540 | shrext_cmds=.dll |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2541 | need_version=no |
| 2542 | need_lib_prefix=no |
| 2543 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2544 | case $GCC,$cc_basename in |
| 2545 | yes,*) |
| 2546 | # gcc |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2547 | library_names_spec='$libname.dll.a' |
| 2548 | # DLL is installed to $(libdir)/../bin by postinstall_cmds |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2549 | postinstall_cmds='base_file=`basename \$file`~ |
| 2550 | dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2551 | dldir=$destdir/`dirname \$dlpath`~ |
| 2552 | test -d \$dldir || mkdir -p \$dldir~ |
| 2553 | $install_prog $dir/$dlname \$dldir/$dlname~ |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2554 | chmod a+x \$dldir/$dlname~ |
| 2555 | if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then |
| 2556 | eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; |
| 2557 | fi' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2558 | postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ |
| 2559 | dlpath=$dir/\$dldll~ |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2560 | $RM \$dlpath' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2561 | shlibpath_overrides_runpath=yes |
| 2562 | |
| 2563 | case $host_os in |
| 2564 | cygwin*) |
| 2565 | # Cygwin DLLs use 'cyg' prefix rather than 'lib' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2566 | soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2567 | m4_if([$1], [],[ |
| 2568 | sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2569 | ;; |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 2570 | mingw* | cegcc*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2571 | # MinGW DLLs use traditional 'lib' prefix |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2572 | soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2573 | ;; |
| 2574 | pw32*) |
| 2575 | # pw32 DLLs use 'pw' prefix rather than 'lib' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2576 | library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2577 | ;; |
| 2578 | esac |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2579 | dynamic_linker='Win32 ld.exe' |
| 2580 | ;; |
| 2581 | |
| 2582 | *,cl*) |
| 2583 | # Native MSVC |
| 2584 | libname_spec='$name' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2585 | soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' |
| 2586 | library_names_spec='$libname.dll.lib' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2587 | |
| 2588 | case $build_os in |
| 2589 | mingw*) |
| 2590 | sys_lib_search_path_spec= |
| 2591 | lt_save_ifs=$IFS |
| 2592 | IFS=';' |
| 2593 | for lt_path in $LIB |
| 2594 | do |
| 2595 | IFS=$lt_save_ifs |
| 2596 | # Let DOS variable expansion print the short 8.3 style file name. |
| 2597 | lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` |
| 2598 | sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" |
| 2599 | done |
| 2600 | IFS=$lt_save_ifs |
| 2601 | # Convert to MSYS style. |
| 2602 | sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` |
| 2603 | ;; |
| 2604 | cygwin*) |
| 2605 | # Convert to unix form, then to dos form, then back to unix form |
| 2606 | # but this time dos style (no spaces!) so that the unix form looks |
| 2607 | # like /cygdrive/c/PROGRA~1:/cygdr... |
| 2608 | sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` |
| 2609 | sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` |
| 2610 | sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` |
| 2611 | ;; |
| 2612 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2613 | sys_lib_search_path_spec=$LIB |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2614 | if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then |
| 2615 | # It is most probably a Windows format PATH. |
| 2616 | sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` |
| 2617 | else |
| 2618 | sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` |
| 2619 | fi |
| 2620 | # FIXME: find the short name or the path components, as spaces are |
| 2621 | # common. (e.g. "Program Files" -> "PROGRA~1") |
| 2622 | ;; |
| 2623 | esac |
| 2624 | |
| 2625 | # DLL is installed to $(libdir)/../bin by postinstall_cmds |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2626 | postinstall_cmds='base_file=`basename \$file`~ |
| 2627 | dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2628 | dldir=$destdir/`dirname \$dlpath`~ |
| 2629 | test -d \$dldir || mkdir -p \$dldir~ |
| 2630 | $install_prog $dir/$dlname \$dldir/$dlname' |
| 2631 | postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ |
| 2632 | dlpath=$dir/\$dldll~ |
| 2633 | $RM \$dlpath' |
| 2634 | shlibpath_overrides_runpath=yes |
| 2635 | dynamic_linker='Win32 link.exe' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2636 | ;; |
| 2637 | |
| 2638 | *) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2639 | # Assume MSVC wrapper |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2640 | library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2641 | dynamic_linker='Win32 ld.exe' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2642 | ;; |
| 2643 | esac |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2644 | # FIXME: first we should search . and the directory the executable is in |
| 2645 | shlibpath_var=PATH |
| 2646 | ;; |
| 2647 | |
| 2648 | darwin* | rhapsody*) |
| 2649 | dynamic_linker="$host_os dyld" |
| 2650 | version_type=darwin |
| 2651 | need_lib_prefix=no |
| 2652 | need_version=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2653 | library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' |
| 2654 | soname_spec='$libname$release$major$shared_ext' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2655 | shlibpath_overrides_runpath=yes |
| 2656 | shlibpath_var=DYLD_LIBRARY_PATH |
| 2657 | shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2658 | m4_if([$1], [],[ |
| 2659 | sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2660 | sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' |
| 2661 | ;; |
| 2662 | |
| 2663 | dgux*) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2664 | version_type=linux # correct to gnu/linux during the next big refactor |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2665 | need_lib_prefix=no |
| 2666 | need_version=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2667 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
| 2668 | soname_spec='$libname$release$shared_ext$major' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2669 | shlibpath_var=LD_LIBRARY_PATH |
| 2670 | ;; |
| 2671 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2672 | freebsd* | dragonfly*) |
| 2673 | # DragonFly does not have aout. When/if they implement a new |
| 2674 | # versioning mechanism, adjust this. |
| 2675 | if test -x /usr/bin/objformat; then |
| 2676 | objformat=`/usr/bin/objformat` |
| 2677 | else |
| 2678 | case $host_os in |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2679 | freebsd[[23]].*) objformat=aout ;; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2680 | *) objformat=elf ;; |
| 2681 | esac |
| 2682 | fi |
| 2683 | version_type=freebsd-$objformat |
| 2684 | case $version_type in |
| 2685 | freebsd-elf*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2686 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 2687 | soname_spec='$libname$release$shared_ext$major' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2688 | need_version=no |
| 2689 | need_lib_prefix=no |
| 2690 | ;; |
| 2691 | freebsd-*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2692 | library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2693 | need_version=yes |
| 2694 | ;; |
| 2695 | esac |
| 2696 | shlibpath_var=LD_LIBRARY_PATH |
| 2697 | case $host_os in |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2698 | freebsd2.*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2699 | shlibpath_overrides_runpath=yes |
| 2700 | ;; |
| 2701 | freebsd3.[[01]]* | freebsdelf3.[[01]]*) |
| 2702 | shlibpath_overrides_runpath=yes |
| 2703 | hardcode_into_libs=yes |
| 2704 | ;; |
| 2705 | freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \ |
| 2706 | freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1) |
| 2707 | shlibpath_overrides_runpath=no |
| 2708 | hardcode_into_libs=yes |
| 2709 | ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2710 | *) # from 4.6 on, and DragonFly |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2711 | shlibpath_overrides_runpath=yes |
| 2712 | hardcode_into_libs=yes |
| 2713 | ;; |
| 2714 | esac |
| 2715 | ;; |
| 2716 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2717 | haiku*) |
| 2718 | version_type=linux # correct to gnu/linux during the next big refactor |
| 2719 | need_lib_prefix=no |
| 2720 | need_version=no |
| 2721 | dynamic_linker="$host_os runtime_loader" |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2722 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
| 2723 | soname_spec='$libname$release$shared_ext$major' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2724 | shlibpath_var=LIBRARY_PATH |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2725 | shlibpath_overrides_runpath=no |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2726 | sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2727 | hardcode_into_libs=yes |
| 2728 | ;; |
| 2729 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2730 | hpux9* | hpux10* | hpux11*) |
| 2731 | # Give a soname corresponding to the major version so that dld.sl refuses to |
| 2732 | # link against other versions. |
| 2733 | version_type=sunos |
| 2734 | need_lib_prefix=no |
| 2735 | need_version=no |
| 2736 | case $host_cpu in |
| 2737 | ia64*) |
| 2738 | shrext_cmds='.so' |
| 2739 | hardcode_into_libs=yes |
| 2740 | dynamic_linker="$host_os dld.so" |
| 2741 | shlibpath_var=LD_LIBRARY_PATH |
| 2742 | shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2743 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
| 2744 | soname_spec='$libname$release$shared_ext$major' |
| 2745 | if test 32 = "$HPUX_IA64_MODE"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2746 | sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 2747 | sys_lib_dlsearch_path_spec=/usr/lib/hpux32 |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2748 | else |
| 2749 | sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 2750 | sys_lib_dlsearch_path_spec=/usr/lib/hpux64 |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2751 | fi |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2752 | ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2753 | hppa*64*) |
| 2754 | shrext_cmds='.sl' |
| 2755 | hardcode_into_libs=yes |
| 2756 | dynamic_linker="$host_os dld.sl" |
| 2757 | shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH |
| 2758 | shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2759 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
| 2760 | soname_spec='$libname$release$shared_ext$major' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2761 | sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" |
| 2762 | sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec |
| 2763 | ;; |
| 2764 | *) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2765 | shrext_cmds='.sl' |
| 2766 | dynamic_linker="$host_os dld.sl" |
| 2767 | shlibpath_var=SHLIB_PATH |
| 2768 | shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2769 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
| 2770 | soname_spec='$libname$release$shared_ext$major' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2771 | ;; |
| 2772 | esac |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2773 | # HP-UX runs *really* slowly unless shared libraries are mode 555, ... |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2774 | postinstall_cmds='chmod 555 $lib' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2775 | # or fails outright, so override atomically: |
| 2776 | install_override_mode=555 |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2777 | ;; |
| 2778 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2779 | interix[[3-9]]*) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2780 | version_type=linux # correct to gnu/linux during the next big refactor |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2781 | need_lib_prefix=no |
| 2782 | need_version=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2783 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
| 2784 | soname_spec='$libname$release$shared_ext$major' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2785 | dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' |
| 2786 | shlibpath_var=LD_LIBRARY_PATH |
| 2787 | shlibpath_overrides_runpath=no |
| 2788 | hardcode_into_libs=yes |
| 2789 | ;; |
| 2790 | |
| 2791 | irix5* | irix6* | nonstopux*) |
| 2792 | case $host_os in |
| 2793 | nonstopux*) version_type=nonstopux ;; |
| 2794 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2795 | if test yes = "$lt_cv_prog_gnu_ld"; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2796 | version_type=linux # correct to gnu/linux during the next big refactor |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2797 | else |
| 2798 | version_type=irix |
| 2799 | fi ;; |
| 2800 | esac |
| 2801 | need_lib_prefix=no |
| 2802 | need_version=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2803 | soname_spec='$libname$release$shared_ext$major' |
| 2804 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2805 | case $host_os in |
| 2806 | irix5* | nonstopux*) |
| 2807 | libsuff= shlibsuff= |
| 2808 | ;; |
| 2809 | *) |
| 2810 | case $LD in # libtool.m4 will add one of these switches to LD |
| 2811 | *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") |
| 2812 | libsuff= shlibsuff= libmagic=32-bit;; |
| 2813 | *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") |
| 2814 | libsuff=32 shlibsuff=N32 libmagic=N32;; |
| 2815 | *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") |
| 2816 | libsuff=64 shlibsuff=64 libmagic=64-bit;; |
| 2817 | *) libsuff= shlibsuff= libmagic=never-match;; |
| 2818 | esac |
| 2819 | ;; |
| 2820 | esac |
| 2821 | shlibpath_var=LD_LIBRARY${shlibsuff}_PATH |
| 2822 | shlibpath_overrides_runpath=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2823 | sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff" |
| 2824 | sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff" |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2825 | hardcode_into_libs=yes |
| 2826 | ;; |
| 2827 | |
| 2828 | # No shared lib support for Linux oldld, aout, or coff. |
| 2829 | linux*oldld* | linux*aout* | linux*coff*) |
| 2830 | dynamic_linker=no |
| 2831 | ;; |
| 2832 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2833 | linux*android*) |
| 2834 | version_type=none # Android doesn't support versioned libraries. |
| 2835 | need_lib_prefix=no |
| 2836 | need_version=no |
| 2837 | library_names_spec='$libname$release$shared_ext' |
| 2838 | soname_spec='$libname$release$shared_ext' |
| 2839 | finish_cmds= |
| 2840 | shlibpath_var=LD_LIBRARY_PATH |
| 2841 | shlibpath_overrides_runpath=yes |
| 2842 | |
| 2843 | # This implies no fast_install, which is unacceptable. |
| 2844 | # Some rework will be needed to allow for fast_install |
| 2845 | # before this can be enabled. |
| 2846 | hardcode_into_libs=yes |
| 2847 | |
| 2848 | dynamic_linker='Android linker' |
| 2849 | # Don't embed -rpath directories since the linker doesn't support them. |
| 2850 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' |
| 2851 | ;; |
| 2852 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2853 | # This must be glibc/ELF. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2854 | linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2855 | version_type=linux # correct to gnu/linux during the next big refactor |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2856 | need_lib_prefix=no |
| 2857 | need_version=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2858 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
| 2859 | soname_spec='$libname$release$shared_ext$major' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2860 | finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' |
| 2861 | shlibpath_var=LD_LIBRARY_PATH |
| 2862 | shlibpath_overrides_runpath=no |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2863 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2864 | # Some binutils ld are patched to set DT_RUNPATH |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2865 | AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath], |
| 2866 | [lt_cv_shlibpath_overrides_runpath=no |
| 2867 | save_LDFLAGS=$LDFLAGS |
| 2868 | save_libdir=$libdir |
| 2869 | eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \ |
| 2870 | LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\"" |
| 2871 | AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], |
| 2872 | [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null], |
| 2873 | [lt_cv_shlibpath_overrides_runpath=yes])]) |
| 2874 | LDFLAGS=$save_LDFLAGS |
| 2875 | libdir=$save_libdir |
| 2876 | ]) |
| 2877 | shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2878 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2879 | # This implies no fast_install, which is unacceptable. |
| 2880 | # Some rework will be needed to allow for fast_install |
| 2881 | # before this can be enabled. |
| 2882 | hardcode_into_libs=yes |
| 2883 | |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 2884 | # Ideally, we could use ldconfig to report *all* directores which are |
| 2885 | # searched for libraries, however this is still not possible. Aside from not |
| 2886 | # being certain /sbin/ldconfig is available, command |
| 2887 | # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, |
| 2888 | # even though it is searched at run-time. Try to do the best guess by |
| 2889 | # appending ld.so.conf contents (and includes) to the search path. |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2890 | if test -f /etc/ld.so.conf; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2891 | 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' ' '` |
| 2892 | sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2893 | fi |
| 2894 | |
| 2895 | # We used to test for /lib/ld.so.1 and disable shared libraries on |
| 2896 | # powerpc, because MkLinux only supported shared libraries with the |
| 2897 | # GNU dynamic linker. Since this was broken with cross compilers, |
| 2898 | # most powerpc-linux boxes support dynamic linking these days and |
| 2899 | # people can always --disable-shared, the test was removed, and we |
| 2900 | # assume the GNU/Linux dynamic linker is in use. |
| 2901 | dynamic_linker='GNU/Linux ld.so' |
| 2902 | ;; |
| 2903 | |
| 2904 | netbsd*) |
| 2905 | version_type=sunos |
| 2906 | need_lib_prefix=no |
| 2907 | need_version=no |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2908 | if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2909 | library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2910 | finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' |
| 2911 | dynamic_linker='NetBSD (a.out) ld.so' |
| 2912 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2913 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
| 2914 | soname_spec='$libname$release$shared_ext$major' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2915 | dynamic_linker='NetBSD ld.elf_so' |
| 2916 | fi |
| 2917 | shlibpath_var=LD_LIBRARY_PATH |
| 2918 | shlibpath_overrides_runpath=yes |
| 2919 | hardcode_into_libs=yes |
| 2920 | ;; |
| 2921 | |
| 2922 | newsos6) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 2923 | version_type=linux # correct to gnu/linux during the next big refactor |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2924 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2925 | shlibpath_var=LD_LIBRARY_PATH |
| 2926 | shlibpath_overrides_runpath=yes |
| 2927 | ;; |
| 2928 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2929 | *nto* | *qnx*) |
| 2930 | version_type=qnx |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2931 | need_lib_prefix=no |
| 2932 | need_version=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2933 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
| 2934 | soname_spec='$libname$release$shared_ext$major' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2935 | shlibpath_var=LD_LIBRARY_PATH |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2936 | shlibpath_overrides_runpath=no |
| 2937 | hardcode_into_libs=yes |
| 2938 | dynamic_linker='ldqnx.so' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2939 | ;; |
| 2940 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2941 | openbsd* | bitrig*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2942 | version_type=sunos |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2943 | sys_lib_dlsearch_path_spec=/usr/lib |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2944 | need_lib_prefix=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2945 | if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then |
| 2946 | need_version=no |
| 2947 | else |
| 2948 | need_version=yes |
| 2949 | fi |
| 2950 | library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2951 | finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' |
| 2952 | shlibpath_var=LD_LIBRARY_PATH |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2953 | shlibpath_overrides_runpath=yes |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2954 | ;; |
| 2955 | |
| 2956 | os2*) |
| 2957 | libname_spec='$name' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2958 | version_type=windows |
| 2959 | shrext_cmds=.dll |
| 2960 | need_version=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2961 | need_lib_prefix=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2962 | # OS/2 can only load a DLL with a base name of 8 characters or less. |
| 2963 | soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; |
| 2964 | v=$($ECHO $release$versuffix | tr -d .-); |
| 2965 | n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); |
| 2966 | $ECHO $n$v`$shared_ext' |
| 2967 | library_names_spec='${libname}_dll.$libext' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2968 | dynamic_linker='OS/2 ld.exe' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2969 | shlibpath_var=BEGINLIBPATH |
| 2970 | sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" |
| 2971 | sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec |
| 2972 | postinstall_cmds='base_file=`basename \$file`~ |
| 2973 | dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~ |
| 2974 | dldir=$destdir/`dirname \$dlpath`~ |
| 2975 | test -d \$dldir || mkdir -p \$dldir~ |
| 2976 | $install_prog $dir/$dlname \$dldir/$dlname~ |
| 2977 | chmod a+x \$dldir/$dlname~ |
| 2978 | if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then |
| 2979 | eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; |
| 2980 | fi' |
| 2981 | postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~ |
| 2982 | dlpath=$dir/\$dldll~ |
| 2983 | $RM \$dlpath' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2984 | ;; |
| 2985 | |
| 2986 | osf3* | osf4* | osf5*) |
| 2987 | version_type=osf |
| 2988 | need_lib_prefix=no |
| 2989 | need_version=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2990 | soname_spec='$libname$release$shared_ext$major' |
| 2991 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2992 | shlibpath_var=LD_LIBRARY_PATH |
| 2993 | sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 2994 | sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 2995 | ;; |
| 2996 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 2997 | rdos*) |
| 2998 | dynamic_linker=no |
| 2999 | ;; |
| 3000 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3001 | solaris*) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3002 | version_type=linux # correct to gnu/linux during the next big refactor |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3003 | need_lib_prefix=no |
| 3004 | need_version=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3005 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
| 3006 | soname_spec='$libname$release$shared_ext$major' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3007 | shlibpath_var=LD_LIBRARY_PATH |
| 3008 | shlibpath_overrides_runpath=yes |
| 3009 | hardcode_into_libs=yes |
| 3010 | # ldd complains unless libraries are executable |
| 3011 | postinstall_cmds='chmod +x $lib' |
| 3012 | ;; |
| 3013 | |
| 3014 | sunos4*) |
| 3015 | version_type=sunos |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3016 | library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3017 | finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' |
| 3018 | shlibpath_var=LD_LIBRARY_PATH |
| 3019 | shlibpath_overrides_runpath=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3020 | if test yes = "$with_gnu_ld"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3021 | need_lib_prefix=no |
| 3022 | fi |
| 3023 | need_version=yes |
| 3024 | ;; |
| 3025 | |
| 3026 | sysv4 | sysv4.3*) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3027 | version_type=linux # correct to gnu/linux during the next big refactor |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3028 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
| 3029 | soname_spec='$libname$release$shared_ext$major' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3030 | shlibpath_var=LD_LIBRARY_PATH |
| 3031 | case $host_vendor in |
| 3032 | sni) |
| 3033 | shlibpath_overrides_runpath=no |
| 3034 | need_lib_prefix=no |
| 3035 | runpath_var=LD_RUN_PATH |
| 3036 | ;; |
| 3037 | siemens) |
| 3038 | need_lib_prefix=no |
| 3039 | ;; |
| 3040 | motorola) |
| 3041 | need_lib_prefix=no |
| 3042 | need_version=no |
| 3043 | shlibpath_overrides_runpath=no |
| 3044 | sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' |
| 3045 | ;; |
| 3046 | esac |
| 3047 | ;; |
| 3048 | |
| 3049 | sysv4*MP*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3050 | if test -d /usr/nec; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3051 | version_type=linux # correct to gnu/linux during the next big refactor |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3052 | library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext' |
| 3053 | soname_spec='$libname$shared_ext.$major' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3054 | shlibpath_var=LD_LIBRARY_PATH |
| 3055 | fi |
| 3056 | ;; |
| 3057 | |
| 3058 | sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3059 | version_type=sco |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3060 | need_lib_prefix=no |
| 3061 | need_version=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3062 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext' |
| 3063 | soname_spec='$libname$release$shared_ext$major' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3064 | shlibpath_var=LD_LIBRARY_PATH |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3065 | shlibpath_overrides_runpath=yes |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3066 | hardcode_into_libs=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3067 | if test yes = "$with_gnu_ld"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3068 | sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' |
| 3069 | else |
| 3070 | sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' |
| 3071 | case $host_os in |
| 3072 | sco3.2v5*) |
| 3073 | sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" |
| 3074 | ;; |
| 3075 | esac |
| 3076 | fi |
| 3077 | sys_lib_dlsearch_path_spec='/usr/lib' |
| 3078 | ;; |
| 3079 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3080 | tpf*) |
| 3081 | # TPF is a cross-target only. Preferred cross-host = GNU/Linux. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3082 | version_type=linux # correct to gnu/linux during the next big refactor |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3083 | need_lib_prefix=no |
| 3084 | need_version=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3085 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3086 | shlibpath_var=LD_LIBRARY_PATH |
| 3087 | shlibpath_overrides_runpath=no |
| 3088 | hardcode_into_libs=yes |
| 3089 | ;; |
| 3090 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3091 | uts4*) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3092 | version_type=linux # correct to gnu/linux during the next big refactor |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3093 | library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' |
| 3094 | soname_spec='$libname$release$shared_ext$major' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3095 | shlibpath_var=LD_LIBRARY_PATH |
| 3096 | ;; |
| 3097 | |
| 3098 | *) |
| 3099 | dynamic_linker=no |
| 3100 | ;; |
| 3101 | esac |
| 3102 | AC_MSG_RESULT([$dynamic_linker]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3103 | test no = "$dynamic_linker" && can_build_shared=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3104 | |
| 3105 | variables_saved_for_relink="PATH $shlibpath_var $runpath_var" |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3106 | if test yes = "$GCC"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3107 | variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" |
| 3108 | fi |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 3109 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3110 | if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then |
| 3111 | sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3112 | fi |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 3113 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3114 | if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then |
| 3115 | sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3116 | fi |
| 3117 | |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 3118 | # remember unaugmented sys_lib_dlsearch_path content for libtool script decls... |
| 3119 | configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec |
| 3120 | |
| 3121 | # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code |
| 3122 | func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" |
| 3123 | |
| 3124 | # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool |
| 3125 | configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH |
| 3126 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3127 | _LT_DECL([], [variables_saved_for_relink], [1], |
| 3128 | [Variables whose values should be saved in libtool wrapper scripts and |
| 3129 | restored at link time]) |
| 3130 | _LT_DECL([], [need_lib_prefix], [0], |
| 3131 | [Do we need the "lib" prefix for modules?]) |
| 3132 | _LT_DECL([], [need_version], [0], [Do we need a version for libraries?]) |
| 3133 | _LT_DECL([], [version_type], [0], [Library versioning type]) |
| 3134 | _LT_DECL([], [runpath_var], [0], [Shared library runtime path variable]) |
| 3135 | _LT_DECL([], [shlibpath_var], [0],[Shared library path variable]) |
| 3136 | _LT_DECL([], [shlibpath_overrides_runpath], [0], |
| 3137 | [Is shlibpath searched before the hard-coded library search path?]) |
| 3138 | _LT_DECL([], [libname_spec], [1], [Format of library name prefix]) |
| 3139 | _LT_DECL([], [library_names_spec], [1], |
| 3140 | [[List of archive names. First name is the real one, the rest are links. |
| 3141 | The last name is the one that the linker finds with -lNAME]]) |
| 3142 | _LT_DECL([], [soname_spec], [1], |
| 3143 | [[The coded name of the library, if different from the real name]]) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3144 | _LT_DECL([], [install_override_mode], [1], |
| 3145 | [Permission mode override for installation of shared libraries]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3146 | _LT_DECL([], [postinstall_cmds], [2], |
| 3147 | [Command to use after installation of a shared archive]) |
| 3148 | _LT_DECL([], [postuninstall_cmds], [2], |
| 3149 | [Command to use after uninstallation of a shared archive]) |
| 3150 | _LT_DECL([], [finish_cmds], [2], |
| 3151 | [Commands used to finish a libtool library installation in a directory]) |
| 3152 | _LT_DECL([], [finish_eval], [1], |
| 3153 | [[As "finish_cmds", except a single script fragment to be evaled but |
| 3154 | not shown]]) |
| 3155 | _LT_DECL([], [hardcode_into_libs], [0], |
| 3156 | [Whether we should hardcode library paths into libraries]) |
| 3157 | _LT_DECL([], [sys_lib_search_path_spec], [2], |
| 3158 | [Compile-time system search path for libraries]) |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 3159 | _LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2], |
| 3160 | [Detected run-time system search path for libraries]) |
| 3161 | _LT_DECL([], [configure_time_lt_sys_library_path], [2], |
| 3162 | [Explicit LT_SYS_LIBRARY_PATH set during ./configure time]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3163 | ])# _LT_SYS_DYNAMIC_LINKER |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3164 | |
| 3165 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3166 | # _LT_PATH_TOOL_PREFIX(TOOL) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3167 | # -------------------------- |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3168 | # find a file program that can recognize shared library |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3169 | AC_DEFUN([_LT_PATH_TOOL_PREFIX], |
| 3170 | [m4_require([_LT_DECL_EGREP])dnl |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3171 | AC_MSG_CHECKING([for $1]) |
| 3172 | AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, |
| 3173 | [case $MAGIC_CMD in |
| 3174 | [[\\/*] | ?:[\\/]*]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3175 | lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3176 | ;; |
| 3177 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3178 | lt_save_MAGIC_CMD=$MAGIC_CMD |
| 3179 | lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3180 | dnl $ac_dummy forces splitting on constant user-supplied paths. |
| 3181 | dnl POSIX.2 word splitting is done only on the output of word expansions, |
| 3182 | dnl not every word. This closes a longstanding sh security hole. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3183 | ac_dummy="m4_if([$2], , $PATH, [$2])" |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3184 | for ac_dir in $ac_dummy; do |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3185 | IFS=$lt_save_ifs |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3186 | test -z "$ac_dir" && ac_dir=. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3187 | if test -f "$ac_dir/$1"; then |
| 3188 | lt_cv_path_MAGIC_CMD=$ac_dir/"$1" |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3189 | if test -n "$file_magic_test_file"; then |
| 3190 | case $deplibs_check_method in |
| 3191 | "file_magic "*) |
| 3192 | file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3193 | MAGIC_CMD=$lt_cv_path_MAGIC_CMD |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3194 | if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | |
| 3195 | $EGREP "$file_magic_regex" > /dev/null; then |
| 3196 | : |
| 3197 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3198 | cat <<_LT_EOF 1>&2 |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3199 | |
| 3200 | *** Warning: the command libtool uses to detect shared libraries, |
| 3201 | *** $file_magic_cmd, produces output that libtool cannot recognize. |
| 3202 | *** The result is that libtool may fail to recognize shared libraries |
| 3203 | *** as such. This will affect the creation of libtool libraries that |
| 3204 | *** depend on shared libraries, but programs linked with such libtool |
| 3205 | *** libraries will work regardless of this problem. Nevertheless, you |
| 3206 | *** may want to report the problem to your system manager and/or to |
| 3207 | *** bug-libtool@gnu.org |
| 3208 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3209 | _LT_EOF |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3210 | fi ;; |
| 3211 | esac |
| 3212 | fi |
| 3213 | break |
| 3214 | fi |
| 3215 | done |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3216 | IFS=$lt_save_ifs |
| 3217 | MAGIC_CMD=$lt_save_MAGIC_CMD |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3218 | ;; |
| 3219 | esac]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3220 | MAGIC_CMD=$lt_cv_path_MAGIC_CMD |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3221 | if test -n "$MAGIC_CMD"; then |
| 3222 | AC_MSG_RESULT($MAGIC_CMD) |
| 3223 | else |
| 3224 | AC_MSG_RESULT(no) |
| 3225 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3226 | _LT_DECL([], [MAGIC_CMD], [0], |
| 3227 | [Used to examine libraries when file_magic_cmd begins with "file"])dnl |
| 3228 | ])# _LT_PATH_TOOL_PREFIX |
| 3229 | |
| 3230 | # Old name: |
| 3231 | AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX]) |
| 3232 | dnl aclocal-1.4 backwards compatibility: |
| 3233 | dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], []) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3234 | |
| 3235 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3236 | # _LT_PATH_MAGIC |
| 3237 | # -------------- |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3238 | # find a file program that can recognize a shared library |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3239 | m4_defun([_LT_PATH_MAGIC], |
| 3240 | [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3241 | if test -z "$lt_cv_path_MAGIC_CMD"; then |
| 3242 | if test -n "$ac_tool_prefix"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3243 | _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3244 | else |
| 3245 | MAGIC_CMD=: |
| 3246 | fi |
| 3247 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3248 | ])# _LT_PATH_MAGIC |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3249 | |
| 3250 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3251 | # LT_PATH_LD |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3252 | # ---------- |
| 3253 | # find the pathname to the GNU or non-GNU linker |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3254 | AC_DEFUN([LT_PATH_LD], |
| 3255 | [AC_REQUIRE([AC_PROG_CC])dnl |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 3256 | AC_REQUIRE([AC_CANONICAL_HOST])dnl |
| 3257 | AC_REQUIRE([AC_CANONICAL_BUILD])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3258 | m4_require([_LT_DECL_SED])dnl |
| 3259 | m4_require([_LT_DECL_EGREP])dnl |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3260 | m4_require([_LT_PROG_ECHO_BACKSLASH])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3261 | |
| 3262 | AC_ARG_WITH([gnu-ld], |
| 3263 | [AS_HELP_STRING([--with-gnu-ld], |
| 3264 | [assume the C compiler uses GNU ld @<:@default=no@:>@])], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3265 | [test no = "$withval" || with_gnu_ld=yes], |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3266 | [with_gnu_ld=no])dnl |
| 3267 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3268 | ac_prog=ld |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3269 | if test yes = "$GCC"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3270 | # Check if gcc -print-prog-name=ld gives a path. |
| 3271 | AC_MSG_CHECKING([for ld used by $CC]) |
| 3272 | case $host in |
| 3273 | *-*-mingw*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3274 | # gcc leaves a trailing carriage return, which upsets mingw |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3275 | ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; |
| 3276 | *) |
| 3277 | ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; |
| 3278 | esac |
| 3279 | case $ac_prog in |
| 3280 | # Accept absolute paths. |
| 3281 | [[\\/]]* | ?:[[\\/]]*) |
| 3282 | re_direlt='/[[^/]][[^/]]*/\.\./' |
| 3283 | # Canonicalize the pathname of ld |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3284 | ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` |
| 3285 | while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do |
| 3286 | ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3287 | done |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3288 | test -z "$LD" && LD=$ac_prog |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3289 | ;; |
| 3290 | "") |
| 3291 | # If it fails, then pretend we aren't using GCC. |
| 3292 | ac_prog=ld |
| 3293 | ;; |
| 3294 | *) |
| 3295 | # If it is relative, then search for the first ld in PATH. |
| 3296 | with_gnu_ld=unknown |
| 3297 | ;; |
| 3298 | esac |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3299 | elif test yes = "$with_gnu_ld"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3300 | AC_MSG_CHECKING([for GNU ld]) |
| 3301 | else |
| 3302 | AC_MSG_CHECKING([for non-GNU ld]) |
| 3303 | fi |
| 3304 | AC_CACHE_VAL(lt_cv_path_LD, |
| 3305 | [if test -z "$LD"; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3306 | lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3307 | for ac_dir in $PATH; do |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3308 | IFS=$lt_save_ifs |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3309 | test -z "$ac_dir" && ac_dir=. |
| 3310 | if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3311 | lt_cv_path_LD=$ac_dir/$ac_prog |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3312 | # Check to see if the program is GNU ld. I'd rather use --version, |
| 3313 | # but apparently some variants of GNU ld only accept -v. |
| 3314 | # Break only if it was the GNU/non-GNU ld that we prefer. |
| 3315 | case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in |
| 3316 | *GNU* | *'with BFD'*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3317 | test no != "$with_gnu_ld" && break |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3318 | ;; |
| 3319 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3320 | test yes != "$with_gnu_ld" && break |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3321 | ;; |
| 3322 | esac |
| 3323 | fi |
| 3324 | done |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3325 | IFS=$lt_save_ifs |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3326 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3327 | lt_cv_path_LD=$LD # Let the user override the test with a path. |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3328 | fi]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3329 | LD=$lt_cv_path_LD |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3330 | if test -n "$LD"; then |
| 3331 | AC_MSG_RESULT($LD) |
| 3332 | else |
| 3333 | AC_MSG_RESULT(no) |
| 3334 | fi |
| 3335 | test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3336 | _LT_PATH_LD_GNU |
| 3337 | AC_SUBST([LD]) |
| 3338 | |
| 3339 | _LT_TAGDECL([], [LD], [1], [The linker used to build libraries]) |
| 3340 | ])# LT_PATH_LD |
| 3341 | |
| 3342 | # Old names: |
| 3343 | AU_ALIAS([AM_PROG_LD], [LT_PATH_LD]) |
| 3344 | AU_ALIAS([AC_PROG_LD], [LT_PATH_LD]) |
| 3345 | dnl aclocal-1.4 backwards compatibility: |
| 3346 | dnl AC_DEFUN([AM_PROG_LD], []) |
| 3347 | dnl AC_DEFUN([AC_PROG_LD], []) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3348 | |
| 3349 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3350 | # _LT_PATH_LD_GNU |
| 3351 | #- -------------- |
| 3352 | m4_defun([_LT_PATH_LD_GNU], |
| 3353 | [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3354 | [# I'd rather use --version here, but apparently some GNU lds only accept -v. |
| 3355 | case `$LD -v 2>&1 </dev/null` in |
| 3356 | *GNU* | *'with BFD'*) |
| 3357 | lt_cv_prog_gnu_ld=yes |
| 3358 | ;; |
| 3359 | *) |
| 3360 | lt_cv_prog_gnu_ld=no |
| 3361 | ;; |
| 3362 | esac]) |
| 3363 | with_gnu_ld=$lt_cv_prog_gnu_ld |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3364 | ])# _LT_PATH_LD_GNU |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3365 | |
| 3366 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3367 | # _LT_CMD_RELOAD |
| 3368 | # -------------- |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3369 | # find reload flag for linker |
| 3370 | # -- PORTME Some linkers may need a different reload flag. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3371 | m4_defun([_LT_CMD_RELOAD], |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3372 | [AC_CACHE_CHECK([for $LD option to reload object files], |
| 3373 | lt_cv_ld_reload_flag, |
| 3374 | [lt_cv_ld_reload_flag='-r']) |
| 3375 | reload_flag=$lt_cv_ld_reload_flag |
| 3376 | case $reload_flag in |
| 3377 | "" | " "*) ;; |
| 3378 | *) reload_flag=" $reload_flag" ;; |
| 3379 | esac |
| 3380 | reload_cmds='$LD$reload_flag -o $output$reload_objs' |
| 3381 | case $host_os in |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3382 | cygwin* | mingw* | pw32* | cegcc*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3383 | if test yes != "$GCC"; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3384 | reload_cmds=false |
| 3385 | fi |
| 3386 | ;; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3387 | darwin*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3388 | if test yes = "$GCC"; then |
| 3389 | reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3390 | else |
| 3391 | reload_cmds='$LD$reload_flag -o $output$reload_objs' |
| 3392 | fi |
| 3393 | ;; |
| 3394 | esac |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3395 | _LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl |
| 3396 | _LT_TAGDECL([], [reload_cmds], [2])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3397 | ])# _LT_CMD_RELOAD |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3398 | |
| 3399 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3400 | # _LT_PATH_DD |
| 3401 | # ----------- |
| 3402 | # find a working dd |
| 3403 | m4_defun([_LT_PATH_DD], |
| 3404 | [AC_CACHE_CHECK([for a working dd], [ac_cv_path_lt_DD], |
| 3405 | [printf 0123456789abcdef0123456789abcdef >conftest.i |
| 3406 | cat conftest.i conftest.i >conftest2.i |
| 3407 | : ${lt_DD:=$DD} |
| 3408 | AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd], |
| 3409 | [if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then |
| 3410 | cmp -s conftest.i conftest.out \ |
| 3411 | && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=: |
| 3412 | fi]) |
| 3413 | rm -f conftest.i conftest2.i conftest.out]) |
| 3414 | ])# _LT_PATH_DD |
| 3415 | |
| 3416 | |
| 3417 | # _LT_CMD_TRUNCATE |
| 3418 | # ---------------- |
| 3419 | # find command to truncate a binary pipe |
| 3420 | m4_defun([_LT_CMD_TRUNCATE], |
| 3421 | [m4_require([_LT_PATH_DD]) |
| 3422 | AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin], |
| 3423 | [printf 0123456789abcdef0123456789abcdef >conftest.i |
| 3424 | cat conftest.i conftest.i >conftest2.i |
| 3425 | lt_cv_truncate_bin= |
| 3426 | if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then |
| 3427 | cmp -s conftest.i conftest.out \ |
| 3428 | && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1" |
| 3429 | fi |
| 3430 | rm -f conftest.i conftest2.i conftest.out |
| 3431 | test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"]) |
| 3432 | _LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1], |
| 3433 | [Command to truncate a binary pipe]) |
| 3434 | ])# _LT_CMD_TRUNCATE |
| 3435 | |
| 3436 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3437 | # _LT_CHECK_MAGIC_METHOD |
| 3438 | # ---------------------- |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3439 | # how to check for library dependencies |
| 3440 | # -- PORTME fill in with the dynamic library characteristics |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3441 | m4_defun([_LT_CHECK_MAGIC_METHOD], |
| 3442 | [m4_require([_LT_DECL_EGREP]) |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 3443 | m4_require([_LT_DECL_OBJDUMP]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3444 | AC_CACHE_CHECK([how to recognize dependent libraries], |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3445 | lt_cv_deplibs_check_method, |
| 3446 | [lt_cv_file_magic_cmd='$MAGIC_CMD' |
| 3447 | lt_cv_file_magic_test_file= |
| 3448 | lt_cv_deplibs_check_method='unknown' |
| 3449 | # Need to set the preceding variable on all platforms that support |
| 3450 | # interlibrary dependencies. |
| 3451 | # 'none' -- dependencies not supported. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3452 | # 'unknown' -- same as none, but documents that we really don't know. |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3453 | # 'pass_all' -- all dependencies passed with no checks. |
| 3454 | # 'test_compile' -- check by making test program. |
| 3455 | # 'file_magic [[regex]]' -- check by looking for files in library path |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3456 | # that responds to the $file_magic_cmd with a given extended regex. |
| 3457 | # If you have 'file' or equivalent on your system and you're not sure |
| 3458 | # whether 'pass_all' will *always* work, you probably want this one. |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3459 | |
| 3460 | case $host_os in |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3461 | aix[[4-9]]*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3462 | lt_cv_deplibs_check_method=pass_all |
| 3463 | ;; |
| 3464 | |
| 3465 | beos*) |
| 3466 | lt_cv_deplibs_check_method=pass_all |
| 3467 | ;; |
| 3468 | |
| 3469 | bsdi[[45]]*) |
| 3470 | lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' |
| 3471 | lt_cv_file_magic_cmd='/usr/bin/file -L' |
| 3472 | lt_cv_file_magic_test_file=/shlib/libc.so |
| 3473 | ;; |
| 3474 | |
| 3475 | cygwin*) |
| 3476 | # func_win32_libid is a shell function defined in ltmain.sh |
| 3477 | lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' |
| 3478 | lt_cv_file_magic_cmd='func_win32_libid' |
| 3479 | ;; |
| 3480 | |
| 3481 | mingw* | pw32*) |
| 3482 | # Base MSYS/MinGW do not provide the 'file' command needed by |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3483 | # func_win32_libid shell function, so use a weaker test based on 'objdump', |
| 3484 | # unless we find 'file', for example because we are cross-compiling. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3485 | if ( file / ) >/dev/null 2>&1; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3486 | lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' |
| 3487 | lt_cv_file_magic_cmd='func_win32_libid' |
| 3488 | else |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3489 | # Keep this pattern in sync with the one in func_win32_libid. |
| 3490 | lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3491 | lt_cv_file_magic_cmd='$OBJDUMP -f' |
| 3492 | fi |
Jon Dugan | 9286415 | 2010-09-20 21:50:12 +0000 | [diff] [blame] | 3493 | ;; |
| 3494 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3495 | cegcc*) |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 3496 | # use the weaker test based on 'objdump'. See mingw*. |
| 3497 | lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' |
| 3498 | lt_cv_file_magic_cmd='$OBJDUMP -f' |
| 3499 | ;; |
| 3500 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3501 | darwin* | rhapsody*) |
| 3502 | lt_cv_deplibs_check_method=pass_all |
| 3503 | ;; |
| 3504 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3505 | freebsd* | dragonfly*) |
| 3506 | if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3507 | case $host_cpu in |
| 3508 | i*86 ) |
| 3509 | # Not sure whether the presence of OpenBSD here was a mistake. |
| 3510 | # Let's accept both of them until this is cleared up. |
| 3511 | lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' |
| 3512 | lt_cv_file_magic_cmd=/usr/bin/file |
| 3513 | lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` |
| 3514 | ;; |
| 3515 | esac |
| 3516 | else |
| 3517 | lt_cv_deplibs_check_method=pass_all |
| 3518 | fi |
| 3519 | ;; |
| 3520 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3521 | haiku*) |
| 3522 | lt_cv_deplibs_check_method=pass_all |
| 3523 | ;; |
| 3524 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3525 | hpux10.20* | hpux11*) |
| 3526 | lt_cv_file_magic_cmd=/usr/bin/file |
| 3527 | case $host_cpu in |
| 3528 | ia64*) |
| 3529 | lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' |
| 3530 | lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so |
| 3531 | ;; |
| 3532 | hppa*64*) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3533 | [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]'] |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3534 | lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl |
| 3535 | ;; |
| 3536 | *) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3537 | lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3538 | lt_cv_file_magic_test_file=/usr/lib/libc.sl |
| 3539 | ;; |
| 3540 | esac |
| 3541 | ;; |
| 3542 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3543 | interix[[3-9]]*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3544 | # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here |
| 3545 | lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$' |
| 3546 | ;; |
| 3547 | |
| 3548 | irix5* | irix6* | nonstopux*) |
| 3549 | case $LD in |
| 3550 | *-32|*"-32 ") libmagic=32-bit;; |
| 3551 | *-n32|*"-n32 ") libmagic=N32;; |
| 3552 | *-64|*"-64 ") libmagic=64-bit;; |
| 3553 | *) libmagic=never-match;; |
| 3554 | esac |
| 3555 | lt_cv_deplibs_check_method=pass_all |
| 3556 | ;; |
| 3557 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3558 | # This must be glibc/ELF. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3559 | linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3560 | lt_cv_deplibs_check_method=pass_all |
| 3561 | ;; |
| 3562 | |
| 3563 | netbsd*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3564 | if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3565 | lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' |
| 3566 | else |
| 3567 | lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' |
| 3568 | fi |
| 3569 | ;; |
| 3570 | |
| 3571 | newos6*) |
| 3572 | lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' |
| 3573 | lt_cv_file_magic_cmd=/usr/bin/file |
| 3574 | lt_cv_file_magic_test_file=/usr/lib/libnls.so |
| 3575 | ;; |
| 3576 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3577 | *nto* | *qnx*) |
| 3578 | lt_cv_deplibs_check_method=pass_all |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3579 | ;; |
| 3580 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3581 | openbsd* | bitrig*) |
| 3582 | if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3583 | lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$' |
| 3584 | else |
| 3585 | lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' |
| 3586 | fi |
| 3587 | ;; |
| 3588 | |
| 3589 | osf3* | osf4* | osf5*) |
| 3590 | lt_cv_deplibs_check_method=pass_all |
| 3591 | ;; |
| 3592 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3593 | rdos*) |
| 3594 | lt_cv_deplibs_check_method=pass_all |
| 3595 | ;; |
| 3596 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3597 | solaris*) |
| 3598 | lt_cv_deplibs_check_method=pass_all |
| 3599 | ;; |
| 3600 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3601 | sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) |
| 3602 | lt_cv_deplibs_check_method=pass_all |
| 3603 | ;; |
| 3604 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3605 | sysv4 | sysv4.3*) |
| 3606 | case $host_vendor in |
| 3607 | motorola) |
| 3608 | 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]]' |
| 3609 | lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` |
| 3610 | ;; |
| 3611 | ncr) |
| 3612 | lt_cv_deplibs_check_method=pass_all |
| 3613 | ;; |
| 3614 | sequent) |
| 3615 | lt_cv_file_magic_cmd='/bin/file' |
| 3616 | lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' |
| 3617 | ;; |
| 3618 | sni) |
| 3619 | lt_cv_file_magic_cmd='/bin/file' |
| 3620 | lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" |
| 3621 | lt_cv_file_magic_test_file=/lib/libc.so |
| 3622 | ;; |
| 3623 | siemens) |
| 3624 | lt_cv_deplibs_check_method=pass_all |
| 3625 | ;; |
| 3626 | pc) |
| 3627 | lt_cv_deplibs_check_method=pass_all |
| 3628 | ;; |
| 3629 | esac |
| 3630 | ;; |
| 3631 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3632 | tpf*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3633 | lt_cv_deplibs_check_method=pass_all |
| 3634 | ;; |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3635 | os2*) |
| 3636 | lt_cv_deplibs_check_method=pass_all |
| 3637 | ;; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3638 | esac |
| 3639 | ]) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3640 | |
| 3641 | file_magic_glob= |
| 3642 | want_nocaseglob=no |
| 3643 | if test "$build" = "$host"; then |
| 3644 | case $host_os in |
| 3645 | mingw* | pw32*) |
| 3646 | if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then |
| 3647 | want_nocaseglob=yes |
| 3648 | else |
| 3649 | file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"` |
| 3650 | fi |
| 3651 | ;; |
| 3652 | esac |
| 3653 | fi |
| 3654 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3655 | file_magic_cmd=$lt_cv_file_magic_cmd |
| 3656 | deplibs_check_method=$lt_cv_deplibs_check_method |
| 3657 | test -z "$deplibs_check_method" && deplibs_check_method=unknown |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3658 | |
| 3659 | _LT_DECL([], [deplibs_check_method], [1], |
| 3660 | [Method to check whether dependent libraries are shared objects]) |
| 3661 | _LT_DECL([], [file_magic_cmd], [1], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3662 | [Command to use when deplibs_check_method = "file_magic"]) |
| 3663 | _LT_DECL([], [file_magic_glob], [1], |
| 3664 | [How to find potential files when deplibs_check_method = "file_magic"]) |
| 3665 | _LT_DECL([], [want_nocaseglob], [1], |
| 3666 | [Find potential files using nocaseglob when deplibs_check_method = "file_magic"]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3667 | ])# _LT_CHECK_MAGIC_METHOD |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3668 | |
| 3669 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3670 | # LT_PATH_NM |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3671 | # ---------- |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3672 | # find the pathname to a BSD- or MS-compatible name lister |
| 3673 | AC_DEFUN([LT_PATH_NM], |
| 3674 | [AC_REQUIRE([AC_PROG_CC])dnl |
| 3675 | AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM, |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3676 | [if test -n "$NM"; then |
| 3677 | # Let the user override the test. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3678 | lt_cv_path_NM=$NM |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3679 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3680 | lt_nm_to_check=${ac_tool_prefix}nm |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3681 | if test -n "$ac_tool_prefix" && test "$build" = "$host"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3682 | lt_nm_to_check="$lt_nm_to_check nm" |
| 3683 | fi |
| 3684 | for lt_tmp_nm in $lt_nm_to_check; do |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3685 | lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3686 | for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3687 | IFS=$lt_save_ifs |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3688 | test -z "$ac_dir" && ac_dir=. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3689 | tmp_nm=$ac_dir/$lt_tmp_nm |
| 3690 | if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3691 | # Check to see if the nm accepts a BSD-compat flag. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3692 | # Adding the 'sed 1q' prevents false positives on HP-UX, which says: |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3693 | # nm: unknown option "B" ignored |
| 3694 | # Tru64's nm complains that /dev/null is an invalid object file |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3695 | # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty |
| 3696 | case $build_os in |
| 3697 | mingw*) lt_bad_file=conftest.nm/nofile ;; |
| 3698 | *) lt_bad_file=/dev/null ;; |
| 3699 | esac |
| 3700 | case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in |
| 3701 | *$lt_bad_file* | *'Invalid file or object type'*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3702 | lt_cv_path_NM="$tmp_nm -B" |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3703 | break 2 |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3704 | ;; |
| 3705 | *) |
| 3706 | case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in |
| 3707 | */dev/null*) |
| 3708 | lt_cv_path_NM="$tmp_nm -p" |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3709 | break 2 |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3710 | ;; |
| 3711 | *) |
| 3712 | lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but |
| 3713 | continue # so that we can try to find one that supports BSD flags |
| 3714 | ;; |
| 3715 | esac |
| 3716 | ;; |
| 3717 | esac |
| 3718 | fi |
| 3719 | done |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3720 | IFS=$lt_save_ifs |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3721 | done |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3722 | : ${lt_cv_path_NM=no} |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3723 | fi]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3724 | if test no != "$lt_cv_path_NM"; then |
| 3725 | NM=$lt_cv_path_NM |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3726 | else |
| 3727 | # Didn't find any BSD compatible name lister, look for dumpbin. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3728 | if test -n "$DUMPBIN"; then : |
| 3729 | # Let the user override the test. |
| 3730 | else |
| 3731 | AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3732 | case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3733 | *COFF*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3734 | DUMPBIN="$DUMPBIN -symbols -headers" |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3735 | ;; |
| 3736 | *) |
| 3737 | DUMPBIN=: |
| 3738 | ;; |
| 3739 | esac |
| 3740 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3741 | AC_SUBST([DUMPBIN]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3742 | if test : != "$DUMPBIN"; then |
| 3743 | NM=$DUMPBIN |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3744 | fi |
| 3745 | fi |
| 3746 | test -z "$NM" && NM=nm |
| 3747 | AC_SUBST([NM]) |
| 3748 | _LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl |
| 3749 | |
| 3750 | AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface], |
| 3751 | [lt_cv_nm_interface="BSD nm" |
| 3752 | echo "int some_variable = 0;" > conftest.$ac_ext |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3753 | (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3754 | (eval "$ac_compile" 2>conftest.err) |
| 3755 | cat conftest.err >&AS_MESSAGE_LOG_FD |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3756 | (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3757 | (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) |
| 3758 | cat conftest.err >&AS_MESSAGE_LOG_FD |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3759 | (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3760 | cat conftest.out >&AS_MESSAGE_LOG_FD |
| 3761 | if $GREP 'External.*some_variable' conftest.out > /dev/null; then |
| 3762 | lt_cv_nm_interface="MS dumpbin" |
| 3763 | fi |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 3764 | rm -f conftest*]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3765 | ])# LT_PATH_NM |
| 3766 | |
| 3767 | # Old names: |
| 3768 | AU_ALIAS([AM_PROG_NM], [LT_PATH_NM]) |
| 3769 | AU_ALIAS([AC_PROG_NM], [LT_PATH_NM]) |
| 3770 | dnl aclocal-1.4 backwards compatibility: |
| 3771 | dnl AC_DEFUN([AM_PROG_NM], []) |
| 3772 | dnl AC_DEFUN([AC_PROG_NM], []) |
jef | 2ab386b | 2012-08-10 12:43:50 -0700 | [diff] [blame] | 3773 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3774 | # _LT_CHECK_SHAREDLIB_FROM_LINKLIB |
| 3775 | # -------------------------------- |
| 3776 | # how to determine the name of the shared library |
| 3777 | # associated with a specific link library. |
| 3778 | # -- PORTME fill in with the dynamic library characteristics |
| 3779 | m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB], |
| 3780 | [m4_require([_LT_DECL_EGREP]) |
| 3781 | m4_require([_LT_DECL_OBJDUMP]) |
| 3782 | m4_require([_LT_DECL_DLLTOOL]) |
| 3783 | AC_CACHE_CHECK([how to associate runtime and link libraries], |
| 3784 | lt_cv_sharedlib_from_linklib_cmd, |
| 3785 | [lt_cv_sharedlib_from_linklib_cmd='unknown' |
| 3786 | |
| 3787 | case $host_os in |
| 3788 | cygwin* | mingw* | pw32* | cegcc*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3789 | # two different shell functions defined in ltmain.sh; |
| 3790 | # decide which one to use based on capabilities of $DLLTOOL |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3791 | case `$DLLTOOL --help 2>&1` in |
| 3792 | *--identify-strict*) |
| 3793 | lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib |
| 3794 | ;; |
| 3795 | *) |
| 3796 | lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback |
| 3797 | ;; |
| 3798 | esac |
| 3799 | ;; |
| 3800 | *) |
| 3801 | # fallback: assume linklib IS sharedlib |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3802 | lt_cv_sharedlib_from_linklib_cmd=$ECHO |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3803 | ;; |
| 3804 | esac |
| 3805 | ]) |
| 3806 | sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd |
| 3807 | test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO |
| 3808 | |
| 3809 | _LT_DECL([], [sharedlib_from_linklib_cmd], [1], |
| 3810 | [Command to associate shared and link libraries]) |
| 3811 | ])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB |
| 3812 | |
| 3813 | |
| 3814 | # _LT_PATH_MANIFEST_TOOL |
| 3815 | # ---------------------- |
| 3816 | # locate the manifest tool |
| 3817 | m4_defun([_LT_PATH_MANIFEST_TOOL], |
| 3818 | [AC_CHECK_TOOL(MANIFEST_TOOL, mt, :) |
| 3819 | test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt |
| 3820 | AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool], |
| 3821 | [lt_cv_path_mainfest_tool=no |
| 3822 | echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD |
| 3823 | $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out |
| 3824 | cat conftest.err >&AS_MESSAGE_LOG_FD |
| 3825 | if $GREP 'Manifest Tool' conftest.out > /dev/null; then |
| 3826 | lt_cv_path_mainfest_tool=yes |
| 3827 | fi |
| 3828 | rm -f conftest*]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3829 | if test yes != "$lt_cv_path_mainfest_tool"; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3830 | MANIFEST_TOOL=: |
| 3831 | fi |
| 3832 | _LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl |
| 3833 | ])# _LT_PATH_MANIFEST_TOOL |
| 3834 | |
jef | 2ab386b | 2012-08-10 12:43:50 -0700 | [diff] [blame] | 3835 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3836 | # _LT_DLL_DEF_P([FILE]) |
| 3837 | # --------------------- |
| 3838 | # True iff FILE is a Windows DLL '.def' file. |
| 3839 | # Keep in sync with func_dll_def_p in the libtool script |
| 3840 | AC_DEFUN([_LT_DLL_DEF_P], |
| 3841 | [dnl |
| 3842 | test DEF = "`$SED -n dnl |
| 3843 | -e '\''s/^[[ ]]*//'\'' dnl Strip leading whitespace |
| 3844 | -e '\''/^\(;.*\)*$/d'\'' dnl Delete empty lines and comments |
| 3845 | -e '\''s/^\(EXPORTS\|LIBRARY\)\([[ ]].*\)*$/DEF/p'\'' dnl |
| 3846 | -e q dnl Only consider the first "real" line |
| 3847 | $1`" dnl |
| 3848 | ])# _LT_DLL_DEF_P |
| 3849 | |
| 3850 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3851 | # LT_LIB_M |
| 3852 | # -------- |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3853 | # check for math library |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3854 | AC_DEFUN([LT_LIB_M], |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3855 | [AC_REQUIRE([AC_CANONICAL_HOST])dnl |
| 3856 | LIBM= |
| 3857 | case $host in |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3858 | *-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3859 | # These system don't have libm, or don't need it |
| 3860 | ;; |
| 3861 | *-ncr-sysv4.3*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3862 | AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3863 | AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") |
| 3864 | ;; |
| 3865 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3866 | AC_CHECK_LIB(m, cos, LIBM=-lm) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3867 | ;; |
| 3868 | esac |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3869 | AC_SUBST([LIBM]) |
| 3870 | ])# LT_LIB_M |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3871 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3872 | # Old name: |
| 3873 | AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M]) |
| 3874 | dnl aclocal-1.4 backwards compatibility: |
| 3875 | dnl AC_DEFUN([AC_CHECK_LIBM], []) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3876 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3877 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3878 | # _LT_COMPILER_NO_RTTI([TAGNAME]) |
| 3879 | # ------------------------------- |
| 3880 | m4_defun([_LT_COMPILER_NO_RTTI], |
| 3881 | [m4_require([_LT_TAG_COMPILER])dnl |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3882 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3883 | _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 3884 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3885 | if test yes = "$GCC"; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3886 | case $cc_basename in |
| 3887 | nvcc*) |
| 3888 | _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;; |
| 3889 | *) |
| 3890 | _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;; |
| 3891 | esac |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 3892 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3893 | _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3894 | lt_cv_prog_compiler_rtti_exceptions, |
| 3895 | [-fno-rtti -fno-exceptions], [], |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3896 | [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3897 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3898 | _LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1], |
| 3899 | [Compiler flag to turn off builtin functions]) |
| 3900 | ])# _LT_COMPILER_NO_RTTI |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3901 | |
| 3902 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3903 | # _LT_CMD_GLOBAL_SYMBOLS |
| 3904 | # ---------------------- |
| 3905 | m4_defun([_LT_CMD_GLOBAL_SYMBOLS], |
| 3906 | [AC_REQUIRE([AC_CANONICAL_HOST])dnl |
| 3907 | AC_REQUIRE([AC_PROG_CC])dnl |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 3908 | AC_REQUIRE([AC_PROG_AWK])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3909 | AC_REQUIRE([LT_PATH_NM])dnl |
| 3910 | AC_REQUIRE([LT_PATH_LD])dnl |
| 3911 | m4_require([_LT_DECL_SED])dnl |
| 3912 | m4_require([_LT_DECL_EGREP])dnl |
| 3913 | m4_require([_LT_TAG_COMPILER])dnl |
| 3914 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3915 | # Check for command to grab the raw symbol name followed by C symbol from nm. |
| 3916 | AC_MSG_CHECKING([command to parse $NM output from $compiler object]) |
| 3917 | AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], |
| 3918 | [ |
| 3919 | # These are sane defaults that work on at least a few old systems. |
| 3920 | # [They come from Ultrix. What could be older than Ultrix?!! ;)] |
| 3921 | |
| 3922 | # Character class describing NM global symbol codes. |
| 3923 | symcode='[[BCDEGRST]]' |
| 3924 | |
| 3925 | # Regexp to match symbols that can be accessed directly from C. |
| 3926 | sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' |
| 3927 | |
| 3928 | # Define system-specific variables. |
| 3929 | case $host_os in |
| 3930 | aix*) |
| 3931 | symcode='[[BCDT]]' |
| 3932 | ;; |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 3933 | cygwin* | mingw* | pw32* | cegcc*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3934 | symcode='[[ABCDGISTW]]' |
| 3935 | ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3936 | hpux*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3937 | if test ia64 = "$host_cpu"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 3938 | symcode='[[ABCDEGRST]]' |
| 3939 | fi |
| 3940 | ;; |
| 3941 | irix* | nonstopux*) |
| 3942 | symcode='[[BCDEGRST]]' |
| 3943 | ;; |
| 3944 | osf*) |
| 3945 | symcode='[[BCDEGQRST]]' |
| 3946 | ;; |
| 3947 | solaris*) |
| 3948 | symcode='[[BDRT]]' |
| 3949 | ;; |
| 3950 | sco3.2v5*) |
| 3951 | symcode='[[DT]]' |
| 3952 | ;; |
| 3953 | sysv4.2uw2*) |
| 3954 | symcode='[[DT]]' |
| 3955 | ;; |
| 3956 | sysv5* | sco5v6* | unixware* | OpenUNIX*) |
| 3957 | symcode='[[ABDT]]' |
| 3958 | ;; |
| 3959 | sysv4) |
| 3960 | symcode='[[DFNSTU]]' |
| 3961 | ;; |
| 3962 | esac |
| 3963 | |
| 3964 | # If we're using GNU nm, then use its standard symbol codes. |
| 3965 | case `$NM -V 2>&1` in |
| 3966 | *GNU* | *'with BFD'*) |
| 3967 | symcode='[[ABCDGIRSTW]]' ;; |
| 3968 | esac |
| 3969 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3970 | if test "$lt_cv_nm_interface" = "MS dumpbin"; then |
| 3971 | # Gets list of data symbols to import. |
| 3972 | lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'" |
| 3973 | # Adjust the below global symbol transforms to fixup imported variables. |
| 3974 | lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" |
| 3975 | lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" |
| 3976 | lt_c_name_lib_hook="\ |
| 3977 | -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\ |
| 3978 | -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'" |
| 3979 | else |
| 3980 | # Disable hooks by default. |
| 3981 | lt_cv_sys_global_symbol_to_import= |
| 3982 | lt_cdecl_hook= |
| 3983 | lt_c_name_hook= |
| 3984 | lt_c_name_lib_hook= |
| 3985 | fi |
| 3986 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3987 | # Transform an extracted symbol line into a proper C declaration. |
| 3988 | # Some systems (esp. on ia64) link data and code symbols differently, |
| 3989 | # so use this general approach. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3990 | lt_cv_sys_global_symbol_to_cdecl="sed -n"\ |
| 3991 | $lt_cdecl_hook\ |
| 3992 | " -e 's/^T .* \(.*\)$/extern int \1();/p'"\ |
| 3993 | " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 3994 | |
| 3995 | # Transform an extracted symbol line into symbol name and symbol address |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 3996 | lt_cv_sys_global_symbol_to_c_name_address="sed -n"\ |
| 3997 | $lt_c_name_hook\ |
| 3998 | " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ |
| 3999 | " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" |
| 4000 | |
| 4001 | # Transform an extracted symbol line into symbol name with lib prefix and |
| 4002 | # symbol address. |
| 4003 | lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\ |
| 4004 | $lt_c_name_lib_hook\ |
| 4005 | " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ |
| 4006 | " -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ |
| 4007 | " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4008 | |
| 4009 | # Handle CRLF in mingw tool chain |
| 4010 | opt_cr= |
| 4011 | case $build_os in |
| 4012 | mingw*) |
| 4013 | opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp |
| 4014 | ;; |
| 4015 | esac |
| 4016 | |
| 4017 | # Try without a prefix underscore, then with it. |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4018 | for ac_symprfx in "" "_"; do |
| 4019 | |
| 4020 | # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. |
| 4021 | symxfrm="\\1 $ac_symprfx\\2 \\2" |
| 4022 | |
| 4023 | # Write the raw and C identifiers. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4024 | if test "$lt_cv_nm_interface" = "MS dumpbin"; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4025 | # Fake it for dumpbin and say T for any non-static function, |
| 4026 | # D for any global variable and I for any imported variable. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4027 | # Also find C++ and __fastcall symbols from MSVC++, |
| 4028 | # which start with @ or ?. |
| 4029 | lt_cv_sys_global_symbol_pipe="$AWK ['"\ |
| 4030 | " {last_section=section; section=\$ 3};"\ |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4031 | " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4032 | " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4033 | " /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\ |
| 4034 | " /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\ |
| 4035 | " /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\ |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4036 | " \$ 0!~/External *\|/{next};"\ |
| 4037 | " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ |
| 4038 | " {if(hide[section]) next};"\ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4039 | " {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\ |
| 4040 | " {split(\$ 0,a,/\||\r/); split(a[2],s)};"\ |
| 4041 | " s[1]~/^[@?]/{print f,s[1],s[1]; next};"\ |
| 4042 | " s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4043 | " ' prfx=^$ac_symprfx]" |
| 4044 | else |
| 4045 | lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" |
| 4046 | fi |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4047 | lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4048 | |
| 4049 | # Check to see that the pipe works correctly. |
| 4050 | pipe_works=no |
| 4051 | |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 4052 | rm -f conftest* |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4053 | cat > conftest.$ac_ext <<_LT_EOF |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4054 | #ifdef __cplusplus |
| 4055 | extern "C" { |
| 4056 | #endif |
| 4057 | char nm_test_var; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4058 | void nm_test_func(void); |
| 4059 | void nm_test_func(void){} |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4060 | #ifdef __cplusplus |
| 4061 | } |
| 4062 | #endif |
| 4063 | int main(){nm_test_var='a';nm_test_func();return(0);} |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4064 | _LT_EOF |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4065 | |
| 4066 | if AC_TRY_EVAL(ac_compile); then |
| 4067 | # Now try to grab the symbols. |
| 4068 | nlist=conftest.nm |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4069 | if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4070 | # Try sorting and uniquifying the output. |
| 4071 | if sort "$nlist" | uniq > "$nlist"T; then |
| 4072 | mv -f "$nlist"T "$nlist" |
| 4073 | else |
| 4074 | rm -f "$nlist"T |
| 4075 | fi |
| 4076 | |
| 4077 | # Make sure that we snagged all the symbols we need. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4078 | if $GREP ' nm_test_var$' "$nlist" >/dev/null; then |
| 4079 | if $GREP ' nm_test_func$' "$nlist" >/dev/null; then |
| 4080 | cat <<_LT_EOF > conftest.$ac_ext |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4081 | /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4082 | #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE |
| 4083 | /* DATA imports from DLLs on WIN32 can't be const, because runtime |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4084 | relocations are performed -- see ld's documentation on pseudo-relocs. */ |
| 4085 | # define LT@&t@_DLSYM_CONST |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4086 | #elif defined __osf__ |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4087 | /* This system does not cope well with relocations in const data. */ |
| 4088 | # define LT@&t@_DLSYM_CONST |
| 4089 | #else |
| 4090 | # define LT@&t@_DLSYM_CONST const |
| 4091 | #endif |
| 4092 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4093 | #ifdef __cplusplus |
| 4094 | extern "C" { |
| 4095 | #endif |
| 4096 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4097 | _LT_EOF |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4098 | # Now generate the symbol file. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4099 | eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4100 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4101 | cat <<_LT_EOF >> conftest.$ac_ext |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4102 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4103 | /* The mapping between symbol names and symbols. */ |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4104 | LT@&t@_DLSYM_CONST struct { |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4105 | const char *name; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4106 | void *address; |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4107 | } |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4108 | lt__PROGRAM__LTX_preloaded_symbols[[]] = |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4109 | { |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4110 | { "@PROGRAM@", (void *) 0 }, |
| 4111 | _LT_EOF |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4112 | $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4113 | cat <<\_LT_EOF >> conftest.$ac_ext |
| 4114 | {0, (void *) 0} |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4115 | }; |
| 4116 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4117 | /* This works around a problem in FreeBSD linker */ |
| 4118 | #ifdef FREEBSD_WORKAROUND |
| 4119 | static const void *lt_preloaded_setup() { |
| 4120 | return lt__PROGRAM__LTX_preloaded_symbols; |
| 4121 | } |
| 4122 | #endif |
| 4123 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4124 | #ifdef __cplusplus |
| 4125 | } |
| 4126 | #endif |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4127 | _LT_EOF |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4128 | # Now try linking the two files. |
| 4129 | mv conftest.$ac_objext conftstm.$ac_objext |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4130 | lt_globsym_save_LIBS=$LIBS |
| 4131 | lt_globsym_save_CFLAGS=$CFLAGS |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4132 | LIBS=conftstm.$ac_objext |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4133 | CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4134 | if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4135 | pipe_works=yes |
| 4136 | fi |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4137 | LIBS=$lt_globsym_save_LIBS |
| 4138 | CFLAGS=$lt_globsym_save_CFLAGS |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4139 | else |
| 4140 | echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD |
| 4141 | fi |
| 4142 | else |
| 4143 | echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD |
| 4144 | fi |
| 4145 | else |
| 4146 | echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD |
| 4147 | fi |
| 4148 | else |
| 4149 | echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD |
| 4150 | cat conftest.$ac_ext >&5 |
| 4151 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4152 | rm -rf conftest* conftst* |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4153 | |
| 4154 | # Do not use the global_symbol_pipe unless it works. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4155 | if test yes = "$pipe_works"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4156 | break |
| 4157 | else |
| 4158 | lt_cv_sys_global_symbol_pipe= |
| 4159 | fi |
| 4160 | done |
| 4161 | ]) |
| 4162 | if test -z "$lt_cv_sys_global_symbol_pipe"; then |
| 4163 | lt_cv_sys_global_symbol_to_cdecl= |
| 4164 | fi |
| 4165 | if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then |
| 4166 | AC_MSG_RESULT(failed) |
| 4167 | else |
| 4168 | AC_MSG_RESULT(ok) |
| 4169 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4170 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4171 | # Response file support. |
| 4172 | if test "$lt_cv_nm_interface" = "MS dumpbin"; then |
| 4173 | nm_file_list_spec='@' |
| 4174 | elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then |
| 4175 | nm_file_list_spec='@' |
| 4176 | fi |
| 4177 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4178 | _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1], |
| 4179 | [Take the output of nm and produce a listing of raw symbols and C names]) |
| 4180 | _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1], |
| 4181 | [Transform the output of nm in a proper C declaration]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4182 | _LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1], |
| 4183 | [Transform the output of nm into a list of symbols to manually relocate]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4184 | _LT_DECL([global_symbol_to_c_name_address], |
| 4185 | [lt_cv_sys_global_symbol_to_c_name_address], [1], |
| 4186 | [Transform the output of nm in a C name address pair]) |
| 4187 | _LT_DECL([global_symbol_to_c_name_address_lib_prefix], |
| 4188 | [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1], |
| 4189 | [Transform the output of nm in a C name address pair when lib prefix is needed]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4190 | _LT_DECL([nm_interface], [lt_cv_nm_interface], [1], |
| 4191 | [The name lister interface]) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4192 | _LT_DECL([], [nm_file_list_spec], [1], |
| 4193 | [Specify filename containing input files for $NM]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4194 | ]) # _LT_CMD_GLOBAL_SYMBOLS |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4195 | |
| 4196 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4197 | # _LT_COMPILER_PIC([TAGNAME]) |
| 4198 | # --------------------------- |
| 4199 | m4_defun([_LT_COMPILER_PIC], |
| 4200 | [m4_require([_LT_TAG_COMPILER])dnl |
| 4201 | _LT_TAGVAR(lt_prog_compiler_wl, $1)= |
| 4202 | _LT_TAGVAR(lt_prog_compiler_pic, $1)= |
| 4203 | _LT_TAGVAR(lt_prog_compiler_static, $1)= |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4204 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4205 | m4_if([$1], [CXX], [ |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4206 | # C++ specific cases for pic, static, wl, etc. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4207 | if test yes = "$GXX"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4208 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4209 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4210 | |
| 4211 | case $host_os in |
| 4212 | aix*) |
| 4213 | # All AIX code is PIC. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4214 | if test ia64 = "$host_cpu"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4215 | # AIX 5 now supports IA64 processor |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4216 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4217 | fi |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4218 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4219 | ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4220 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4221 | amigaos*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4222 | case $host_cpu in |
| 4223 | powerpc) |
| 4224 | # see comment about AmigaOS4 .so support |
| 4225 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' |
| 4226 | ;; |
| 4227 | m68k) |
| 4228 | # FIXME: we need at least 68020 code to build shared libraries, but |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4229 | # adding the '-m68020' flag to GCC prevents building anything better, |
| 4230 | # like '-m68040'. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4231 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' |
| 4232 | ;; |
| 4233 | esac |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4234 | ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4235 | |
| 4236 | beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4237 | # PIC is the default for these OSes. |
| 4238 | ;; |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 4239 | mingw* | cygwin* | os2* | pw32* | cegcc*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4240 | # This hack is so that the source file can tell whether it is being |
| 4241 | # built for inclusion in a dll (and should export symbols for example). |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4242 | # Although the cygwin gcc ignores -fPIC, still need this for old-style |
| 4243 | # (--disable-auto-import) libraries |
| 4244 | m4_if([$1], [GCJ], [], |
| 4245 | [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4246 | case $host_os in |
| 4247 | os2*) |
| 4248 | _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' |
| 4249 | ;; |
| 4250 | esac |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4251 | ;; |
| 4252 | darwin* | rhapsody*) |
| 4253 | # PIC is the default on this platform |
| 4254 | # Common symbols not allowed in MH_DYLIB files |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4255 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4256 | ;; |
| 4257 | *djgpp*) |
| 4258 | # DJGPP does not support shared libraries at all |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4259 | _LT_TAGVAR(lt_prog_compiler_pic, $1)= |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4260 | ;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4261 | haiku*) |
| 4262 | # PIC is the default for Haiku. |
| 4263 | # The "-static" flag exists, but is broken. |
| 4264 | _LT_TAGVAR(lt_prog_compiler_static, $1)= |
| 4265 | ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4266 | interix[[3-9]]*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4267 | # Interix 3.x gcc -fpic/-fPIC options generate broken code. |
| 4268 | # Instead, we relocate shared libraries at runtime. |
| 4269 | ;; |
| 4270 | sysv4*MP*) |
| 4271 | if test -d /usr/nec; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4272 | _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4273 | fi |
| 4274 | ;; |
| 4275 | hpux*) |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 4276 | # PIC is the default for 64-bit PA HP-UX, but not for 32-bit |
| 4277 | # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag |
| 4278 | # sets the default TLS model and affects inlining. |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4279 | case $host_cpu in |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 4280 | hppa*64*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4281 | ;; |
| 4282 | *) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4283 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4284 | ;; |
| 4285 | esac |
| 4286 | ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4287 | *qnx* | *nto*) |
| 4288 | # QNX uses GNU C++, but need to define -shared option too, otherwise |
| 4289 | # it will coredump. |
| 4290 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' |
| 4291 | ;; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4292 | *) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4293 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4294 | ;; |
| 4295 | esac |
| 4296 | else |
| 4297 | case $host_os in |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4298 | aix[[4-9]]*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4299 | # All AIX code is PIC. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4300 | if test ia64 = "$host_cpu"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4301 | # AIX 5 now supports IA64 processor |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4302 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4303 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4304 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4305 | fi |
| 4306 | ;; |
| 4307 | chorus*) |
| 4308 | case $cc_basename in |
| 4309 | cxch68*) |
| 4310 | # Green Hills C++ Compiler |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4311 | # _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" |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4312 | ;; |
| 4313 | esac |
| 4314 | ;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4315 | mingw* | cygwin* | os2* | pw32* | cegcc*) |
| 4316 | # This hack is so that the source file can tell whether it is being |
| 4317 | # built for inclusion in a dll (and should export symbols for example). |
| 4318 | m4_if([$1], [GCJ], [], |
| 4319 | [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) |
| 4320 | ;; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4321 | dgux*) |
| 4322 | case $cc_basename in |
| 4323 | ec++*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4324 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4325 | ;; |
| 4326 | ghcx*) |
| 4327 | # Green Hills C++ Compiler |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4328 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4329 | ;; |
| 4330 | *) |
| 4331 | ;; |
| 4332 | esac |
| 4333 | ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4334 | freebsd* | dragonfly*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4335 | # FreeBSD uses GNU C++ |
| 4336 | ;; |
| 4337 | hpux9* | hpux10* | hpux11*) |
| 4338 | case $cc_basename in |
| 4339 | CC*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4340 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4341 | _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' |
| 4342 | if test ia64 != "$host_cpu"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4343 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4344 | fi |
| 4345 | ;; |
| 4346 | aCC*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4347 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4348 | _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4349 | case $host_cpu in |
| 4350 | hppa*64*|ia64*) |
| 4351 | # +Z the default |
| 4352 | ;; |
| 4353 | *) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4354 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4355 | ;; |
| 4356 | esac |
| 4357 | ;; |
| 4358 | *) |
| 4359 | ;; |
| 4360 | esac |
| 4361 | ;; |
| 4362 | interix*) |
| 4363 | # This is c89, which is MS Visual C++ (no shared libs) |
| 4364 | # Anyone wants to do a port? |
| 4365 | ;; |
| 4366 | irix5* | irix6* | nonstopux*) |
| 4367 | case $cc_basename in |
| 4368 | CC*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4369 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4370 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4371 | # CC pic flag -KPIC is the default. |
| 4372 | ;; |
| 4373 | *) |
| 4374 | ;; |
| 4375 | esac |
| 4376 | ;; |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4377 | linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4378 | case $cc_basename in |
| 4379 | KCC*) |
| 4380 | # KAI C++ Compiler |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4381 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' |
| 4382 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4383 | ;; |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 4384 | ecpc* ) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4385 | # old Intel C++ for x86_64, which still supported -KPIC. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4386 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4387 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' |
| 4388 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4389 | ;; |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 4390 | icpc* ) |
| 4391 | # Intel C++, used to be incompatible with GCC. |
| 4392 | # ICC 10 doesn't accept -KPIC any more. |
| 4393 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4394 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' |
| 4395 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' |
| 4396 | ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4397 | pgCC* | pgcpp*) |
| 4398 | # Portland Group C++ compiler |
| 4399 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4400 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' |
| 4401 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4402 | ;; |
| 4403 | cxx*) |
| 4404 | # Compaq C++ |
| 4405 | # Make sure the PIC flag is empty. It appears that all Alpha |
| 4406 | # Linux and Compaq Tru64 Unix objects are PIC. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4407 | _LT_TAGVAR(lt_prog_compiler_pic, $1)= |
| 4408 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' |
| 4409 | ;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4410 | xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*) |
| 4411 | # IBM XL 8.0, 9.0 on PPC and BlueGene |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4412 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4413 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' |
| 4414 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4415 | ;; |
| 4416 | *) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4417 | case `$CC -V 2>&1 | sed 5q` in |
| 4418 | *Sun\ C*) |
| 4419 | # Sun C++ 5.9 |
| 4420 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' |
| 4421 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
| 4422 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' |
| 4423 | ;; |
| 4424 | esac |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4425 | ;; |
| 4426 | esac |
| 4427 | ;; |
| 4428 | lynxos*) |
| 4429 | ;; |
| 4430 | m88k*) |
| 4431 | ;; |
| 4432 | mvs*) |
| 4433 | case $cc_basename in |
| 4434 | cxx*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4435 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4436 | ;; |
| 4437 | *) |
| 4438 | ;; |
| 4439 | esac |
| 4440 | ;; |
| 4441 | netbsd*) |
| 4442 | ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4443 | *qnx* | *nto*) |
| 4444 | # QNX uses GNU C++, but need to define -shared option too, otherwise |
| 4445 | # it will coredump. |
| 4446 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' |
| 4447 | ;; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4448 | osf3* | osf4* | osf5*) |
| 4449 | case $cc_basename in |
| 4450 | KCC*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4451 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4452 | ;; |
| 4453 | RCC*) |
| 4454 | # Rational C++ 2.4.1 |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4455 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4456 | ;; |
| 4457 | cxx*) |
| 4458 | # Digital/Compaq C++ |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4459 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4460 | # Make sure the PIC flag is empty. It appears that all Alpha |
| 4461 | # Linux and Compaq Tru64 Unix objects are PIC. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4462 | _LT_TAGVAR(lt_prog_compiler_pic, $1)= |
| 4463 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4464 | ;; |
| 4465 | *) |
| 4466 | ;; |
| 4467 | esac |
| 4468 | ;; |
| 4469 | psos*) |
| 4470 | ;; |
| 4471 | solaris*) |
| 4472 | case $cc_basename in |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4473 | CC* | sunCC*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4474 | # Sun C++ 4.2, 5.x and Centerline C++ |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4475 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' |
| 4476 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
| 4477 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4478 | ;; |
| 4479 | gcx*) |
| 4480 | # Green Hills C++ Compiler |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4481 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4482 | ;; |
| 4483 | *) |
| 4484 | ;; |
| 4485 | esac |
| 4486 | ;; |
| 4487 | sunos4*) |
| 4488 | case $cc_basename in |
| 4489 | CC*) |
| 4490 | # Sun C++ 4.x |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4491 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' |
| 4492 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4493 | ;; |
| 4494 | lcc*) |
| 4495 | # Lucid |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4496 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4497 | ;; |
| 4498 | *) |
| 4499 | ;; |
| 4500 | esac |
| 4501 | ;; |
| 4502 | sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) |
| 4503 | case $cc_basename in |
| 4504 | CC*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4505 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4506 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' |
| 4507 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
| 4508 | ;; |
| 4509 | esac |
| 4510 | ;; |
| 4511 | tandem*) |
| 4512 | case $cc_basename in |
| 4513 | NCC*) |
| 4514 | # NonStop-UX NCC 3.20 |
| 4515 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' |
| 4516 | ;; |
| 4517 | *) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4518 | ;; |
| 4519 | esac |
| 4520 | ;; |
| 4521 | vxworks*) |
| 4522 | ;; |
| 4523 | *) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4524 | _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4525 | ;; |
| 4526 | esac |
| 4527 | fi |
| 4528 | ], |
| 4529 | [ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4530 | if test yes = "$GCC"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4531 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4532 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4533 | |
| 4534 | case $host_os in |
| 4535 | aix*) |
| 4536 | # All AIX code is PIC. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4537 | if test ia64 = "$host_cpu"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4538 | # AIX 5 now supports IA64 processor |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4539 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4540 | fi |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4541 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4542 | ;; |
| 4543 | |
| 4544 | amigaos*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4545 | case $host_cpu in |
| 4546 | powerpc) |
| 4547 | # see comment about AmigaOS4 .so support |
| 4548 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' |
| 4549 | ;; |
| 4550 | m68k) |
| 4551 | # FIXME: we need at least 68020 code to build shared libraries, but |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4552 | # adding the '-m68020' flag to GCC prevents building anything better, |
| 4553 | # like '-m68040'. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4554 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' |
| 4555 | ;; |
| 4556 | esac |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4557 | ;; |
| 4558 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4559 | beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4560 | # PIC is the default for these OSes. |
| 4561 | ;; |
| 4562 | |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 4563 | mingw* | cygwin* | pw32* | os2* | cegcc*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4564 | # This hack is so that the source file can tell whether it is being |
| 4565 | # built for inclusion in a dll (and should export symbols for example). |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4566 | # Although the cygwin gcc ignores -fPIC, still need this for old-style |
| 4567 | # (--disable-auto-import) libraries |
| 4568 | m4_if([$1], [GCJ], [], |
| 4569 | [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4570 | case $host_os in |
| 4571 | os2*) |
| 4572 | _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' |
| 4573 | ;; |
| 4574 | esac |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4575 | ;; |
| 4576 | |
| 4577 | darwin* | rhapsody*) |
| 4578 | # PIC is the default on this platform |
| 4579 | # Common symbols not allowed in MH_DYLIB files |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4580 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4581 | ;; |
| 4582 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4583 | haiku*) |
| 4584 | # PIC is the default for Haiku. |
| 4585 | # The "-static" flag exists, but is broken. |
| 4586 | _LT_TAGVAR(lt_prog_compiler_static, $1)= |
| 4587 | ;; |
| 4588 | |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4589 | hpux*) |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 4590 | # PIC is the default for 64-bit PA HP-UX, but not for 32-bit |
| 4591 | # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag |
| 4592 | # sets the default TLS model and affects inlining. |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4593 | case $host_cpu in |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 4594 | hppa*64*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4595 | # +Z the default |
| 4596 | ;; |
| 4597 | *) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4598 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4599 | ;; |
| 4600 | esac |
| 4601 | ;; |
| 4602 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4603 | interix[[3-9]]*) |
| 4604 | # Interix 3.x gcc -fpic/-fPIC options generate broken code. |
| 4605 | # Instead, we relocate shared libraries at runtime. |
| 4606 | ;; |
| 4607 | |
| 4608 | msdosdjgpp*) |
| 4609 | # Just because we use GCC doesn't mean we suddenly get shared libraries |
| 4610 | # on systems that don't support them. |
| 4611 | _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no |
| 4612 | enable_shared=no |
| 4613 | ;; |
| 4614 | |
| 4615 | *nto* | *qnx*) |
| 4616 | # QNX uses GNU C++, but need to define -shared option too, otherwise |
| 4617 | # it will coredump. |
| 4618 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' |
| 4619 | ;; |
| 4620 | |
| 4621 | sysv4*MP*) |
| 4622 | if test -d /usr/nec; then |
| 4623 | _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic |
| 4624 | fi |
| 4625 | ;; |
| 4626 | |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4627 | *) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4628 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4629 | ;; |
| 4630 | esac |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4631 | |
| 4632 | case $cc_basename in |
| 4633 | nvcc*) # Cuda Compiler Driver 2.2 |
| 4634 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker ' |
| 4635 | if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then |
| 4636 | _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)" |
| 4637 | fi |
| 4638 | ;; |
| 4639 | esac |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4640 | else |
| 4641 | # PORTME Check for flag to pass linker flags through the system compiler. |
| 4642 | case $host_os in |
| 4643 | aix*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4644 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4645 | if test ia64 = "$host_cpu"; then |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4646 | # AIX 5 now supports IA64 processor |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4647 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4648 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4649 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4650 | fi |
| 4651 | ;; |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4652 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4653 | darwin* | rhapsody*) |
| 4654 | # PIC is the default on this platform |
| 4655 | # Common symbols not allowed in MH_DYLIB files |
| 4656 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' |
| 4657 | case $cc_basename in |
| 4658 | nagfor*) |
| 4659 | # NAG Fortran compiler |
| 4660 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' |
| 4661 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' |
| 4662 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
| 4663 | ;; |
| 4664 | esac |
| 4665 | ;; |
| 4666 | |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 4667 | mingw* | cygwin* | pw32* | os2* | cegcc*) |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4668 | # This hack is so that the source file can tell whether it is being |
| 4669 | # built for inclusion in a dll (and should export symbols for example). |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4670 | m4_if([$1], [GCJ], [], |
| 4671 | [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4672 | case $host_os in |
| 4673 | os2*) |
| 4674 | _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' |
| 4675 | ;; |
| 4676 | esac |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4677 | ;; |
| 4678 | |
| 4679 | hpux9* | hpux10* | hpux11*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4680 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4681 | # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but |
| 4682 | # not for PA HP-UX. |
| 4683 | case $host_cpu in |
| 4684 | hppa*64*|ia64*) |
| 4685 | # +Z the default |
| 4686 | ;; |
| 4687 | *) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4688 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4689 | ;; |
| 4690 | esac |
| 4691 | # Is there a better lt_prog_compiler_static that works with the bundled CC? |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4692 | _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4693 | ;; |
| 4694 | |
| 4695 | irix5* | irix6* | nonstopux*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4696 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4697 | # PIC (with -KPIC) is the default. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4698 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4699 | ;; |
| 4700 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4701 | linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4702 | case $cc_basename in |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4703 | # old Intel for x86_64, which still supported -KPIC. |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 4704 | ecc*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4705 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4706 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' |
| 4707 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4708 | ;; |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 4709 | # icc used to be incompatible with GCC. |
| 4710 | # ICC 10 doesn't accept -KPIC any more. |
| 4711 | icc* | ifort*) |
| 4712 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4713 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' |
| 4714 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' |
| 4715 | ;; |
| 4716 | # Lahey Fortran 8.1. |
| 4717 | lf95*) |
| 4718 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4719 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared' |
| 4720 | _LT_TAGVAR(lt_prog_compiler_static, $1)='--static' |
| 4721 | ;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4722 | nagfor*) |
| 4723 | # NAG Fortran compiler |
| 4724 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' |
| 4725 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' |
| 4726 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
| 4727 | ;; |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4728 | tcc*) |
| 4729 | # Fabrice Bellard et al's Tiny C Compiler |
| 4730 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4731 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' |
| 4732 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' |
| 4733 | ;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4734 | pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4735 | # Portland Group compilers (*not* the Pentium gcc compiler, |
| 4736 | # which looks to be a dead project) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4737 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4738 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' |
| 4739 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4740 | ;; |
| 4741 | ccc*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4742 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4743 | # All Alpha code is PIC. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4744 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4745 | ;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4746 | xl* | bgxl* | bgf* | mpixl*) |
| 4747 | # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4748 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4749 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' |
| 4750 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' |
| 4751 | ;; |
| 4752 | *) |
| 4753 | case `$CC -V 2>&1 | sed 5q` in |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4754 | *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*) |
| 4755 | # Sun Fortran 8.3 passes all unrecognized flags to the linker |
| 4756 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' |
| 4757 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
| 4758 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='' |
| 4759 | ;; |
| 4760 | *Sun\ F* | *Sun*Fortran*) |
| 4761 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' |
| 4762 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
| 4763 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' |
| 4764 | ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4765 | *Sun\ C*) |
| 4766 | # Sun C 5.9 |
| 4767 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' |
| 4768 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
| 4769 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4770 | ;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4771 | *Intel*\ [[CF]]*Compiler*) |
| 4772 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4773 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' |
| 4774 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' |
| 4775 | ;; |
| 4776 | *Portland\ Group*) |
| 4777 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4778 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4779 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4780 | ;; |
| 4781 | esac |
| 4782 | ;; |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 4783 | esac |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4784 | ;; |
| 4785 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4786 | newsos6) |
| 4787 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' |
| 4788 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
| 4789 | ;; |
| 4790 | |
| 4791 | *nto* | *qnx*) |
| 4792 | # QNX uses GNU C++, but need to define -shared option too, otherwise |
| 4793 | # it will coredump. |
| 4794 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' |
| 4795 | ;; |
| 4796 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4797 | osf3* | osf4* | osf5*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4798 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4799 | # All OSF/1 code is PIC. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4800 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' |
| 4801 | ;; |
| 4802 | |
| 4803 | rdos*) |
| 4804 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4805 | ;; |
| 4806 | |
| 4807 | solaris*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4808 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' |
| 4809 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4810 | case $cc_basename in |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4811 | f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4812 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4813 | *) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4814 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4815 | esac |
| 4816 | ;; |
| 4817 | |
| 4818 | sunos4*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4819 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' |
| 4820 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' |
| 4821 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4822 | ;; |
| 4823 | |
| 4824 | sysv4 | sysv4.2uw2* | sysv4.3*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4825 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4826 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' |
| 4827 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4828 | ;; |
| 4829 | |
| 4830 | sysv4*MP*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4831 | if test -d /usr/nec; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4832 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' |
| 4833 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4834 | fi |
| 4835 | ;; |
| 4836 | |
| 4837 | sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4838 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4839 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' |
| 4840 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4841 | ;; |
| 4842 | |
| 4843 | unicos*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4844 | _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' |
| 4845 | _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4846 | ;; |
| 4847 | |
| 4848 | uts4*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4849 | _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' |
| 4850 | _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4851 | ;; |
| 4852 | |
| 4853 | *) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4854 | _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4855 | ;; |
| 4856 | esac |
| 4857 | fi |
| 4858 | ]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4859 | case $host_os in |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4860 | # For platforms that do not support PIC, -DPIC is meaningless: |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4861 | *djgpp*) |
| 4862 | _LT_TAGVAR(lt_prog_compiler_pic, $1)= |
| 4863 | ;; |
| 4864 | *) |
| 4865 | _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])" |
| 4866 | ;; |
| 4867 | esac |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4868 | |
| 4869 | AC_CACHE_CHECK([for $compiler option to produce PIC], |
| 4870 | [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)], |
| 4871 | [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)]) |
| 4872 | _LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4873 | |
| 4874 | # |
| 4875 | # Check to make sure the PIC flag actually works. |
| 4876 | # |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4877 | if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then |
| 4878 | _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works], |
| 4879 | [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)], |
| 4880 | [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [], |
| 4881 | [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4882 | "" | " "*) ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4883 | *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4884 | esac], |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4885 | [_LT_TAGVAR(lt_prog_compiler_pic, $1)= |
| 4886 | _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4887 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4888 | _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1], |
| 4889 | [Additional compiler flags for building library objects]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4890 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4891 | _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1], |
| 4892 | [How to pass a linker flag through the compiler]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4893 | # |
| 4894 | # Check to make sure the static flag actually works. |
| 4895 | # |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4896 | wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\" |
| 4897 | _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], |
| 4898 | _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1), |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4899 | $lt_tmp_static_flag, |
| 4900 | [], |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4901 | [_LT_TAGVAR(lt_prog_compiler_static, $1)=]) |
| 4902 | _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1], |
| 4903 | [Compiler flag to prevent dynamic linking]) |
| 4904 | ])# _LT_COMPILER_PIC |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4905 | |
| 4906 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4907 | # _LT_LINKER_SHLIBS([TAGNAME]) |
| 4908 | # ---------------------------- |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4909 | # See if the linker supports building shared libraries. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4910 | m4_defun([_LT_LINKER_SHLIBS], |
| 4911 | [AC_REQUIRE([LT_PATH_LD])dnl |
| 4912 | AC_REQUIRE([LT_PATH_NM])dnl |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4913 | m4_require([_LT_PATH_MANIFEST_TOOL])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4914 | m4_require([_LT_FILEUTILS_DEFAULTS])dnl |
| 4915 | m4_require([_LT_DECL_EGREP])dnl |
| 4916 | m4_require([_LT_DECL_SED])dnl |
| 4917 | m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl |
| 4918 | m4_require([_LT_TAG_COMPILER])dnl |
| 4919 | AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) |
| 4920 | m4_if([$1], [CXX], [ |
| 4921 | _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4922 | _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4923 | case $host_os in |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4924 | aix[[4-9]]*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4925 | # If we're using GNU nm, then we don't want the "-C" option. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4926 | # -C means demangle to GNU nm, but means don't demangle to AIX nm. |
| 4927 | # Without the "-l" option, or with the "-B" option, AIX nm treats |
| 4928 | # weak defined symbols like other global defined symbols, whereas |
| 4929 | # GNU nm marks them as "W". |
| 4930 | # While the 'weak' keyword is ignored in the Export File, we need |
| 4931 | # it in the Import File for the 'aix-soname' feature, so we have |
| 4932 | # to replace the "-B" option with "-P" for AIX nm. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4933 | if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4934 | _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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4935 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4936 | _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 == "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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4937 | fi |
| 4938 | ;; |
| 4939 | pw32*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4940 | _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4941 | ;; |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 4942 | cygwin* | mingw* | cegcc*) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4943 | case $cc_basename in |
| 4944 | cl*) |
| 4945 | _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' |
| 4946 | ;; |
| 4947 | *) |
| 4948 | _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' |
| 4949 | _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] |
| 4950 | ;; |
| 4951 | esac |
| 4952 | ;; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4953 | *) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4954 | _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 4955 | ;; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4956 | esac |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4957 | ], [ |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4958 | runpath_var= |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4959 | _LT_TAGVAR(allow_undefined_flag, $1)= |
| 4960 | _LT_TAGVAR(always_export_symbols, $1)=no |
| 4961 | _LT_TAGVAR(archive_cmds, $1)= |
| 4962 | _LT_TAGVAR(archive_expsym_cmds, $1)= |
| 4963 | _LT_TAGVAR(compiler_needs_object, $1)=no |
| 4964 | _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no |
| 4965 | _LT_TAGVAR(export_dynamic_flag_spec, $1)= |
| 4966 | _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' |
| 4967 | _LT_TAGVAR(hardcode_automatic, $1)=no |
| 4968 | _LT_TAGVAR(hardcode_direct, $1)=no |
| 4969 | _LT_TAGVAR(hardcode_direct_absolute, $1)=no |
| 4970 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4971 | _LT_TAGVAR(hardcode_libdir_separator, $1)= |
| 4972 | _LT_TAGVAR(hardcode_minus_L, $1)=no |
| 4973 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported |
| 4974 | _LT_TAGVAR(inherit_rpath, $1)=no |
| 4975 | _LT_TAGVAR(link_all_deplibs, $1)=unknown |
| 4976 | _LT_TAGVAR(module_cmds, $1)= |
| 4977 | _LT_TAGVAR(module_expsym_cmds, $1)= |
| 4978 | _LT_TAGVAR(old_archive_from_new_cmds, $1)= |
| 4979 | _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)= |
| 4980 | _LT_TAGVAR(thread_safe_flag_spec, $1)= |
| 4981 | _LT_TAGVAR(whole_archive_flag_spec, $1)= |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4982 | # include_expsyms should be a list of space-separated symbols to be *always* |
| 4983 | # included in the symbol list |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4984 | _LT_TAGVAR(include_expsyms, $1)= |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4985 | # exclude_expsyms can be an extended regexp of symbols to exclude |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 4986 | # it will be wrapped by ' (' and ')$', so one must not match beginning or |
| 4987 | # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc', |
| 4988 | # as well as any symbol that contains 'd'. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4989 | _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4990 | # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out |
| 4991 | # platforms (ab)use it in PIC code, but their linkers get confused if |
| 4992 | # the symbol is explicitly referenced. Since portable code cannot |
| 4993 | # rely on this symbol name, it's probably fine to never include it in |
| 4994 | # preloaded symbol tables. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4995 | # Exclude shared library initialization/finalization symbols. |
| 4996 | dnl Note also adjust exclude_expsyms for C++ above. |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4997 | extract_expsyms_cmds= |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 4998 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 4999 | case $host_os in |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 5000 | cygwin* | mingw* | pw32* | cegcc*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5001 | # FIXME: the MSVC++ port hasn't been tested in a loooong time |
| 5002 | # When not using gcc, we currently assume that we are using |
| 5003 | # Microsoft Visual C++. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5004 | if test yes != "$GCC"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5005 | with_gnu_ld=no |
| 5006 | fi |
| 5007 | ;; |
| 5008 | interix*) |
| 5009 | # we just hope/assume this is gcc and not c89 (= MSVC++) |
| 5010 | with_gnu_ld=yes |
| 5011 | ;; |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5012 | openbsd* | bitrig*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5013 | with_gnu_ld=no |
| 5014 | ;; |
| 5015 | esac |
| 5016 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5017 | _LT_TAGVAR(ld_shlibs, $1)=yes |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5018 | |
| 5019 | # On some targets, GNU ld is compatible enough with the native linker |
| 5020 | # that we're better off using the native interface for both. |
| 5021 | lt_use_gnu_ld_interface=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5022 | if test yes = "$with_gnu_ld"; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5023 | case $host_os in |
| 5024 | aix*) |
| 5025 | # The AIX port of GNU ld has always aspired to compatibility |
| 5026 | # with the native linker. However, as the warning in the GNU ld |
| 5027 | # block says, versions before 2.19.5* couldn't really create working |
| 5028 | # shared libraries, regardless of the interface used. |
| 5029 | case `$LD -v 2>&1` in |
| 5030 | *\ \(GNU\ Binutils\)\ 2.19.5*) ;; |
| 5031 | *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;; |
| 5032 | *\ \(GNU\ Binutils\)\ [[3-9]]*) ;; |
| 5033 | *) |
| 5034 | lt_use_gnu_ld_interface=yes |
| 5035 | ;; |
| 5036 | esac |
| 5037 | ;; |
| 5038 | *) |
| 5039 | lt_use_gnu_ld_interface=yes |
| 5040 | ;; |
| 5041 | esac |
| 5042 | fi |
| 5043 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5044 | if test yes = "$lt_use_gnu_ld_interface"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5045 | # If archive_cmds runs LD, not CC, wlarc should be empty |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5046 | wlarc='$wl' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5047 | |
| 5048 | # Set some defaults for GNU ld with shared library support. These |
| 5049 | # are reset later if shared libraries are not supported. Putting them |
| 5050 | # here allows them to be overridden if necessary. |
| 5051 | runpath_var=LD_RUN_PATH |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5052 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' |
| 5053 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5054 | # ancient GNU ld didn't support --whole-archive et. al. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5055 | if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5056 | _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5057 | else |
| 5058 | _LT_TAGVAR(whole_archive_flag_spec, $1)= |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5059 | fi |
| 5060 | supports_anon_versioning=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5061 | case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5062 | *GNU\ gold*) supports_anon_versioning=yes ;; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5063 | *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 |
| 5064 | *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... |
| 5065 | *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... |
| 5066 | *\ 2.11.*) ;; # other 2.11 versions |
| 5067 | *) supports_anon_versioning=yes ;; |
| 5068 | esac |
| 5069 | |
| 5070 | # See if GNU ld supports shared libraries. |
| 5071 | case $host_os in |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5072 | aix[[3-9]]*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5073 | # On AIX/PPC, the GNU linker is very broken |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5074 | if test ia64 != "$host_cpu"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5075 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 5076 | cat <<_LT_EOF 1>&2 |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5077 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5078 | *** Warning: the GNU linker, at least up to release 2.19, is reported |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5079 | *** to be unable to reliably create shared libraries on AIX. |
| 5080 | *** Therefore, libtool is disabling shared libraries support. If you |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5081 | *** really care for shared libraries, you may want to install binutils |
| 5082 | *** 2.20 or above, or modify your PATH so that a non-GNU linker is found. |
| 5083 | *** You will then need to restart the configuration process. |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5084 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5085 | _LT_EOF |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5086 | fi |
| 5087 | ;; |
| 5088 | |
| 5089 | amigaos*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5090 | case $host_cpu in |
| 5091 | powerpc) |
| 5092 | # see comment about AmigaOS4 .so support |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5093 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5094 | _LT_TAGVAR(archive_expsym_cmds, $1)='' |
| 5095 | ;; |
| 5096 | m68k) |
| 5097 | _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)' |
| 5098 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' |
| 5099 | _LT_TAGVAR(hardcode_minus_L, $1)=yes |
| 5100 | ;; |
| 5101 | esac |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5102 | ;; |
| 5103 | |
| 5104 | beos*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5105 | if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then |
| 5106 | _LT_TAGVAR(allow_undefined_flag, $1)=unsupported |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5107 | # Joseph Beckenbach <jrb3@best.com> says some releases of gcc |
| 5108 | # support --undefined. This deserves some investigation. FIXME |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5109 | _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5110 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5111 | _LT_TAGVAR(ld_shlibs, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5112 | fi |
| 5113 | ;; |
| 5114 | |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 5115 | cygwin* | mingw* | pw32* | cegcc*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5116 | # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5117 | # as there is no search path for DLLs. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5118 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5119 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5120 | _LT_TAGVAR(allow_undefined_flag, $1)=unsupported |
| 5121 | _LT_TAGVAR(always_export_symbols, $1)=no |
| 5122 | _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5123 | _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' |
| 5124 | _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5125 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5126 | if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5127 | _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' |
| 5128 | # If the export-symbols file already is a .def file, use it as |
| 5129 | # is; otherwise, prepend EXPORTS... |
| 5130 | _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then |
| 5131 | cp $export_symbols $output_objdir/$soname.def; |
| 5132 | else |
| 5133 | echo EXPORTS > $output_objdir/$soname.def; |
| 5134 | cat $export_symbols >> $output_objdir/$soname.def; |
| 5135 | fi~ |
| 5136 | $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5137 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5138 | _LT_TAGVAR(ld_shlibs, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5139 | fi |
| 5140 | ;; |
| 5141 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5142 | haiku*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5143 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5144 | _LT_TAGVAR(link_all_deplibs, $1)=yes |
| 5145 | ;; |
| 5146 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5147 | os2*) |
| 5148 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' |
| 5149 | _LT_TAGVAR(hardcode_minus_L, $1)=yes |
| 5150 | _LT_TAGVAR(allow_undefined_flag, $1)=unsupported |
| 5151 | shrext_cmds=.dll |
| 5152 | _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ |
| 5153 | $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ |
| 5154 | $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ |
| 5155 | $ECHO EXPORTS >> $output_objdir/$libname.def~ |
| 5156 | emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ |
| 5157 | $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ |
| 5158 | emximp -o $lib $output_objdir/$libname.def' |
| 5159 | _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ |
| 5160 | $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ |
| 5161 | $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ |
| 5162 | $ECHO EXPORTS >> $output_objdir/$libname.def~ |
| 5163 | prefix_cmds="$SED"~ |
| 5164 | if test EXPORTS = "`$SED 1q $export_symbols`"; then |
| 5165 | prefix_cmds="$prefix_cmds -e 1d"; |
| 5166 | fi~ |
| 5167 | prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ |
| 5168 | cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ |
| 5169 | $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ |
| 5170 | emximp -o $lib $output_objdir/$libname.def' |
| 5171 | _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' |
| 5172 | _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes |
| 5173 | ;; |
| 5174 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5175 | interix[[3-9]]*) |
| 5176 | _LT_TAGVAR(hardcode_direct, $1)=no |
| 5177 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5178 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' |
| 5179 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5180 | # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. |
| 5181 | # Instead, shared libraries are loaded at an image base (0x10000000 by |
| 5182 | # default) and relocated if they conflict, which is a slow very memory |
| 5183 | # consuming and fragmenting process. To avoid this, we pick a random, |
| 5184 | # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link |
| 5185 | # time. Moving up from 0x10000000 also allows more sbrk(2) space. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5186 | _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' |
| 5187 | _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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5188 | ;; |
| 5189 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5190 | gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5191 | tmp_diet=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5192 | if test linux-dietlibc = "$host_os"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5193 | case $cc_basename in |
| 5194 | diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) |
| 5195 | esac |
| 5196 | fi |
| 5197 | if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5198 | && test no = "$tmp_diet" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5199 | then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5200 | tmp_addflag=' $pic_flag' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5201 | tmp_sharedflag='-shared' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5202 | case $cc_basename,$host_cpu in |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5203 | pgcc*) # Portland Group C compiler |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5204 | _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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5205 | tmp_addflag=' $pic_flag' |
| 5206 | ;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5207 | pgf77* | pgf90* | pgf95* | pgfortran*) |
| 5208 | # Portland Group f77 and f90 compilers |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5209 | _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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5210 | tmp_addflag=' $pic_flag -Mnomain' ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5211 | ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5212 | tmp_addflag=' -i_dynamic' ;; |
| 5213 | efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 |
| 5214 | tmp_addflag=' -i_dynamic -nofor_main' ;; |
| 5215 | ifc* | ifort*) # Intel Fortran compiler |
| 5216 | tmp_addflag=' -nofor_main' ;; |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 5217 | lf95*) # Lahey Fortran 8.1 |
| 5218 | _LT_TAGVAR(whole_archive_flag_spec, $1)= |
| 5219 | tmp_sharedflag='--shared' ;; |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5220 | nagfor*) # NAGFOR 5.3 |
| 5221 | tmp_sharedflag='-Wl,-shared' ;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5222 | xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5223 | tmp_sharedflag='-qmkshrobj' |
| 5224 | tmp_addflag= ;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5225 | nvcc*) # Cuda Compiler Driver 2.2 |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5226 | _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' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5227 | _LT_TAGVAR(compiler_needs_object, $1)=yes |
| 5228 | ;; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5229 | esac |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5230 | case `$CC -V 2>&1 | sed 5q` in |
| 5231 | *Sun\ C*) # Sun C 5.9 |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5232 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5233 | _LT_TAGVAR(compiler_needs_object, $1)=yes |
| 5234 | tmp_sharedflag='-G' ;; |
| 5235 | *Sun\ F*) # Sun Fortran 8.3 |
| 5236 | tmp_sharedflag='-G' ;; |
| 5237 | esac |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5238 | _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5239 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5240 | if test yes = "$supports_anon_versioning"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5241 | _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5242 | cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ |
| 5243 | echo "local: *; };" >> $output_objdir/$libname.ver~ |
| 5244 | $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5245 | fi |
| 5246 | |
| 5247 | case $cc_basename in |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5248 | tcc*) |
| 5249 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic' |
| 5250 | ;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5251 | xlf* | bgf* | bgxlf* | mpixlf*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5252 | # IBM XL Fortran 10.1 on PPC cannot create shared libs itself |
| 5253 | _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5254 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5255 | _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5256 | if test yes = "$supports_anon_versioning"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5257 | _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5258 | cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ |
| 5259 | echo "local: *; };" >> $output_objdir/$libname.ver~ |
| 5260 | $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5261 | fi |
| 5262 | ;; |
| 5263 | esac |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5264 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5265 | _LT_TAGVAR(ld_shlibs, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5266 | fi |
| 5267 | ;; |
| 5268 | |
| 5269 | netbsd*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5270 | if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then |
| 5271 | _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5272 | wlarc= |
| 5273 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5274 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' |
| 5275 | _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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5276 | fi |
| 5277 | ;; |
| 5278 | |
| 5279 | solaris*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5280 | if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then |
| 5281 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 5282 | cat <<_LT_EOF 1>&2 |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5283 | |
| 5284 | *** Warning: The releases 2.8.* of the GNU linker cannot reliably |
| 5285 | *** create shared libraries on Solaris systems. Therefore, libtool |
| 5286 | *** is disabling shared libraries support. We urge you to upgrade GNU |
| 5287 | *** binutils to release 2.9.1 or newer. Another option is to modify |
| 5288 | *** your PATH or compiler configuration so that the native linker is |
| 5289 | *** used, and then restart. |
| 5290 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5291 | _LT_EOF |
| 5292 | elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5293 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' |
| 5294 | _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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5295 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5296 | _LT_TAGVAR(ld_shlibs, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5297 | fi |
| 5298 | ;; |
| 5299 | |
| 5300 | sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) |
| 5301 | case `$LD -v 2>&1` in |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5302 | *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) |
| 5303 | _LT_TAGVAR(ld_shlibs, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5304 | cat <<_LT_EOF 1>&2 |
| 5305 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5306 | *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5307 | *** reliably create shared libraries on SCO systems. Therefore, libtool |
| 5308 | *** is disabling shared libraries support. We urge you to upgrade GNU |
| 5309 | *** binutils to release 2.16.91.0.3 or newer. Another option is to modify |
| 5310 | *** your PATH or compiler configuration so that the native linker is |
| 5311 | *** used, and then restart. |
| 5312 | |
| 5313 | _LT_EOF |
| 5314 | ;; |
| 5315 | *) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5316 | # For security reasons, it is highly recommended that you always |
| 5317 | # use absolute paths for naming shared libraries, and exclude the |
| 5318 | # DT_RUNPATH tag from executables and libraries. But doing so |
| 5319 | # requires that you compile everything twice, which is a pain. |
| 5320 | if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5321 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' |
| 5322 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' |
| 5323 | _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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5324 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5325 | _LT_TAGVAR(ld_shlibs, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5326 | fi |
| 5327 | ;; |
| 5328 | esac |
| 5329 | ;; |
| 5330 | |
| 5331 | sunos4*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5332 | _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5333 | wlarc= |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5334 | _LT_TAGVAR(hardcode_direct, $1)=yes |
| 5335 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5336 | ;; |
| 5337 | |
| 5338 | *) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5339 | if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5340 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' |
| 5341 | _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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5342 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5343 | _LT_TAGVAR(ld_shlibs, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5344 | fi |
| 5345 | ;; |
| 5346 | esac |
| 5347 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5348 | if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5349 | runpath_var= |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5350 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= |
| 5351 | _LT_TAGVAR(export_dynamic_flag_spec, $1)= |
| 5352 | _LT_TAGVAR(whole_archive_flag_spec, $1)= |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5353 | fi |
| 5354 | else |
| 5355 | # PORTME fill in a description of your system's linker (not GNU ld) |
| 5356 | case $host_os in |
| 5357 | aix3*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5358 | _LT_TAGVAR(allow_undefined_flag, $1)=unsupported |
| 5359 | _LT_TAGVAR(always_export_symbols, $1)=yes |
| 5360 | _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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5361 | # Note: this linker hardcodes the directories in LIBPATH if there |
| 5362 | # are no directories specified by -L. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5363 | _LT_TAGVAR(hardcode_minus_L, $1)=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5364 | if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5365 | # Neither direct hardcoding nor static linking is supported with a |
| 5366 | # broken collect2. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5367 | _LT_TAGVAR(hardcode_direct, $1)=unsupported |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5368 | fi |
| 5369 | ;; |
| 5370 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5371 | aix[[4-9]]*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5372 | if test ia64 = "$host_cpu"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5373 | # On IA64, the linker does run time linking by default, so we don't |
| 5374 | # have to do anything special. |
| 5375 | aix_use_runtimelinking=no |
| 5376 | exp_sym_flag='-Bexport' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5377 | no_entry_flag= |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5378 | else |
| 5379 | # If we're using GNU nm, then we don't want the "-C" option. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5380 | # -C means demangle to GNU nm, but means don't demangle to AIX nm. |
| 5381 | # Without the "-l" option, or with the "-B" option, AIX nm treats |
| 5382 | # weak defined symbols like other global defined symbols, whereas |
| 5383 | # GNU nm marks them as "W". |
| 5384 | # While the 'weak' keyword is ignored in the Export File, we need |
| 5385 | # it in the Import File for the 'aix-soname' feature, so we have |
| 5386 | # to replace the "-B" option with "-P" for AIX nm. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5387 | if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5388 | _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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5389 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5390 | _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 == "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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5391 | fi |
| 5392 | aix_use_runtimelinking=no |
| 5393 | |
| 5394 | # Test if we are trying to use run time linking or normal |
| 5395 | # AIX style linking. If -brtl is somewhere in LDFLAGS, we |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5396 | # have runtime linking enabled, and use it for executables. |
| 5397 | # For shared libraries, we enable/disable runtime linking |
| 5398 | # depending on the kind of the shared library created - |
| 5399 | # when "with_aix_soname,aix_use_runtimelinking" is: |
| 5400 | # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables |
| 5401 | # "aix,yes" lib.so shared, rtl:yes, for executables |
| 5402 | # lib.a static archive |
| 5403 | # "both,no" lib.so.V(shr.o) shared, rtl:yes |
| 5404 | # lib.a(lib.so.V) shared, rtl:no, for executables |
| 5405 | # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables |
| 5406 | # lib.a(lib.so.V) shared, rtl:no |
| 5407 | # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables |
| 5408 | # lib.a static archive |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5409 | case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5410 | for ld_flag in $LDFLAGS; do |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5411 | if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5412 | aix_use_runtimelinking=yes |
| 5413 | break |
| 5414 | fi |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5415 | done |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5416 | if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then |
| 5417 | # With aix-soname=svr4, we create the lib.so.V shared archives only, |
| 5418 | # so we don't have lib.a shared libs to link our executables. |
| 5419 | # We have to force runtime linking in this case. |
| 5420 | aix_use_runtimelinking=yes |
| 5421 | LDFLAGS="$LDFLAGS -Wl,-brtl" |
| 5422 | fi |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5423 | ;; |
| 5424 | esac |
| 5425 | |
| 5426 | exp_sym_flag='-bexport' |
| 5427 | no_entry_flag='-bnoentry' |
| 5428 | fi |
| 5429 | |
| 5430 | # When large executables or shared objects are built, AIX ld can |
| 5431 | # have problems creating the table of contents. If linking a library |
| 5432 | # or program results in "error TOC overflow" add -mminimal-toc to |
| 5433 | # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not |
| 5434 | # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. |
| 5435 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5436 | _LT_TAGVAR(archive_cmds, $1)='' |
| 5437 | _LT_TAGVAR(hardcode_direct, $1)=yes |
| 5438 | _LT_TAGVAR(hardcode_direct_absolute, $1)=yes |
| 5439 | _LT_TAGVAR(hardcode_libdir_separator, $1)=':' |
| 5440 | _LT_TAGVAR(link_all_deplibs, $1)=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5441 | _LT_TAGVAR(file_list_spec, $1)='$wl-f,' |
| 5442 | case $with_aix_soname,$aix_use_runtimelinking in |
| 5443 | aix,*) ;; # traditional, no import file |
| 5444 | svr4,* | *,yes) # use import file |
| 5445 | # The Import File defines what to hardcode. |
| 5446 | _LT_TAGVAR(hardcode_direct, $1)=no |
| 5447 | _LT_TAGVAR(hardcode_direct_absolute, $1)=no |
| 5448 | ;; |
| 5449 | esac |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5450 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5451 | if test yes = "$GCC"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5452 | case $host_os in aix4.[[012]]|aix4.[[012]].*) |
| 5453 | # We only want to do this on AIX 4.2 and lower, the check |
| 5454 | # below for broken collect2 doesn't work under 4.3+ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5455 | collect2name=`$CC -print-prog-name=collect2` |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5456 | if test -f "$collect2name" && |
| 5457 | strings "$collect2name" | $GREP resolve_lib_name >/dev/null |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5458 | then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5459 | # We have reworked collect2 |
| 5460 | : |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5461 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5462 | # We have old collect2 |
| 5463 | _LT_TAGVAR(hardcode_direct, $1)=unsupported |
| 5464 | # It fails to find uninstalled libraries when the uninstalled |
| 5465 | # path is not listed in the libpath. Setting hardcode_minus_L |
| 5466 | # to unsupported forces relinking |
| 5467 | _LT_TAGVAR(hardcode_minus_L, $1)=yes |
| 5468 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' |
| 5469 | _LT_TAGVAR(hardcode_libdir_separator, $1)= |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5470 | fi |
| 5471 | ;; |
| 5472 | esac |
| 5473 | shared_flag='-shared' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5474 | if test yes = "$aix_use_runtimelinking"; then |
| 5475 | shared_flag="$shared_flag "'$wl-G' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5476 | fi |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5477 | # Need to ensure runtime linking is disabled for the traditional |
| 5478 | # shared library, or the linker may eventually find shared libraries |
| 5479 | # /with/ Import File - we do not want to mix them. |
| 5480 | shared_flag_aix='-shared' |
| 5481 | shared_flag_svr4='-shared $wl-G' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5482 | else |
| 5483 | # not using gcc |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5484 | if test ia64 = "$host_cpu"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5485 | # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release |
| 5486 | # chokes on -Wl,-G. The following line is correct: |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5487 | shared_flag='-G' |
| 5488 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5489 | if test yes = "$aix_use_runtimelinking"; then |
| 5490 | shared_flag='$wl-G' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5491 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5492 | shared_flag='$wl-bM:SRE' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5493 | fi |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5494 | shared_flag_aix='$wl-bM:SRE' |
| 5495 | shared_flag_svr4='$wl-G' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5496 | fi |
| 5497 | fi |
| 5498 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5499 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5500 | # It seems that -bexpall does not export symbols beginning with |
| 5501 | # underscore (_), so it is better to generate a list of symbols to export. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5502 | _LT_TAGVAR(always_export_symbols, $1)=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5503 | if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5504 | # Warning - without using the other runtime loading flags (-brtl), |
| 5505 | # -berok will link without error, but may produce a broken library. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5506 | _LT_TAGVAR(allow_undefined_flag, $1)='-berok' |
| 5507 | # Determine the default libpath from the value encoded in an |
| 5508 | # empty executable. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5509 | _LT_SYS_MODULE_PATH_AIX([$1]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5510 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" |
| 5511 | _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 |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5512 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5513 | if test ia64 = "$host_cpu"; then |
| 5514 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5515 | _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5516 | _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" |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5517 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5518 | # Determine the default libpath from the value encoded in an |
| 5519 | # empty executable. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5520 | _LT_SYS_MODULE_PATH_AIX([$1]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5521 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5522 | # Warning - without using the other run time loading flags, |
| 5523 | # -berok will link without error, but may produce a broken library. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5524 | _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok' |
| 5525 | _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok' |
| 5526 | if test yes = "$with_gnu_ld"; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5527 | # We only use this code for GNU lds that support --whole-archive. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5528 | _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5529 | else |
| 5530 | # Exported symbols can be pulled into shared objects from archives |
| 5531 | _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' |
| 5532 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5533 | _LT_TAGVAR(archive_cmds_need_lc, $1)=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5534 | _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' |
| 5535 | # -brtl affects multiple linker settings, -berok does not and is overridden later |
| 5536 | compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`' |
| 5537 | if test svr4 != "$with_aix_soname"; then |
| 5538 | # This is similar to how AIX traditionally builds its shared libraries. |
| 5539 | _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' |
| 5540 | fi |
| 5541 | if test aix != "$with_aix_soname"; then |
| 5542 | _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' |
| 5543 | else |
| 5544 | # used by -dlpreopen to get the symbols |
| 5545 | _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir' |
| 5546 | fi |
| 5547 | _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5548 | fi |
| 5549 | fi |
| 5550 | ;; |
| 5551 | |
| 5552 | amigaos*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5553 | case $host_cpu in |
| 5554 | powerpc) |
| 5555 | # see comment about AmigaOS4 .so support |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5556 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5557 | _LT_TAGVAR(archive_expsym_cmds, $1)='' |
| 5558 | ;; |
| 5559 | m68k) |
| 5560 | _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)' |
| 5561 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' |
| 5562 | _LT_TAGVAR(hardcode_minus_L, $1)=yes |
| 5563 | ;; |
| 5564 | esac |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5565 | ;; |
| 5566 | |
| 5567 | bsdi[[45]]*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5568 | _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5569 | ;; |
| 5570 | |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 5571 | cygwin* | mingw* | pw32* | cegcc*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5572 | # When not using gcc, we currently assume that we are using |
| 5573 | # Microsoft Visual C++. |
| 5574 | # hardcode_libdir_flag_spec is actually meaningless, as there is |
| 5575 | # no search path for DLLs. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5576 | case $cc_basename in |
| 5577 | cl*) |
| 5578 | # Native MSVC |
| 5579 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' |
| 5580 | _LT_TAGVAR(allow_undefined_flag, $1)=unsupported |
| 5581 | _LT_TAGVAR(always_export_symbols, $1)=yes |
| 5582 | _LT_TAGVAR(file_list_spec, $1)='@' |
| 5583 | # Tell ltmain to make .lib files, not .a files. |
| 5584 | libext=lib |
| 5585 | # Tell ltmain to make .dll files, not .so files. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5586 | shrext_cmds=.dll |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5587 | # FIXME: Setting linknames here is a bad hack. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5588 | _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' |
| 5589 | _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then |
| 5590 | cp "$export_symbols" "$output_objdir/$soname.def"; |
| 5591 | echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; |
| 5592 | else |
| 5593 | $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; |
| 5594 | fi~ |
| 5595 | $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ |
| 5596 | linknames=' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5597 | # The linker will not automatically build a static lib if we build a DLL. |
| 5598 | # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' |
| 5599 | _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes |
| 5600 | _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' |
| 5601 | _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' |
| 5602 | # Don't use ranlib |
| 5603 | _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' |
| 5604 | _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5605 | lt_tool_outputfile="@TOOL_OUTPUT@"~ |
| 5606 | case $lt_outputfile in |
| 5607 | *.exe|*.EXE) ;; |
| 5608 | *) |
| 5609 | lt_outputfile=$lt_outputfile.exe |
| 5610 | lt_tool_outputfile=$lt_tool_outputfile.exe |
| 5611 | ;; |
| 5612 | esac~ |
| 5613 | if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then |
| 5614 | $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; |
| 5615 | $RM "$lt_outputfile.manifest"; |
| 5616 | fi' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5617 | ;; |
| 5618 | *) |
| 5619 | # Assume MSVC wrapper |
| 5620 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' |
| 5621 | _LT_TAGVAR(allow_undefined_flag, $1)=unsupported |
| 5622 | # Tell ltmain to make .lib files, not .a files. |
| 5623 | libext=lib |
| 5624 | # Tell ltmain to make .dll files, not .so files. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5625 | shrext_cmds=.dll |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5626 | # FIXME: Setting linknames here is a bad hack. |
| 5627 | _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' |
| 5628 | # The linker will automatically build a .lib file if we build a DLL. |
| 5629 | _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' |
| 5630 | # FIXME: Should let the user specify the lib program. |
| 5631 | _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs' |
| 5632 | _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes |
| 5633 | ;; |
| 5634 | esac |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5635 | ;; |
| 5636 | |
| 5637 | darwin* | rhapsody*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5638 | _LT_DARWIN_LINKER_FEATURES($1) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5639 | ;; |
| 5640 | |
| 5641 | dgux*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5642 | _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' |
| 5643 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' |
| 5644 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5645 | ;; |
| 5646 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5647 | # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor |
| 5648 | # support. Future versions do this automatically, but an explicit c++rt0.o |
| 5649 | # does not break anything, and helps significantly (at the cost of a little |
| 5650 | # extra space). |
| 5651 | freebsd2.2*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5652 | _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' |
| 5653 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' |
| 5654 | _LT_TAGVAR(hardcode_direct, $1)=yes |
| 5655 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5656 | ;; |
| 5657 | |
| 5658 | # Unfortunately, older versions of FreeBSD 2 do not have this feature. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5659 | freebsd2.*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5660 | _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' |
| 5661 | _LT_TAGVAR(hardcode_direct, $1)=yes |
| 5662 | _LT_TAGVAR(hardcode_minus_L, $1)=yes |
| 5663 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5664 | ;; |
| 5665 | |
| 5666 | # FreeBSD 3 and greater uses gcc -shared to do shared libraries. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5667 | freebsd* | dragonfly*) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5668 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5669 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' |
| 5670 | _LT_TAGVAR(hardcode_direct, $1)=yes |
| 5671 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5672 | ;; |
| 5673 | |
| 5674 | hpux9*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5675 | if test yes = "$GCC"; then |
| 5676 | _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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5677 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5678 | _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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5679 | fi |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5680 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5681 | _LT_TAGVAR(hardcode_libdir_separator, $1)=: |
| 5682 | _LT_TAGVAR(hardcode_direct, $1)=yes |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5683 | |
| 5684 | # hardcode_minus_L: Not really in the search PATH, |
| 5685 | # but as the default location of the library. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5686 | _LT_TAGVAR(hardcode_minus_L, $1)=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5687 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5688 | ;; |
| 5689 | |
| 5690 | hpux10*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5691 | if test yes,no = "$GCC,$with_gnu_ld"; then |
| 5692 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5693 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5694 | _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5695 | fi |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5696 | if test no = "$with_gnu_ld"; then |
| 5697 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5698 | _LT_TAGVAR(hardcode_libdir_separator, $1)=: |
| 5699 | _LT_TAGVAR(hardcode_direct, $1)=yes |
| 5700 | _LT_TAGVAR(hardcode_direct_absolute, $1)=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5701 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5702 | # hardcode_minus_L: Not really in the search PATH, |
| 5703 | # but as the default location of the library. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5704 | _LT_TAGVAR(hardcode_minus_L, $1)=yes |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5705 | fi |
| 5706 | ;; |
| 5707 | |
| 5708 | hpux11*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5709 | if test yes,no = "$GCC,$with_gnu_ld"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5710 | case $host_cpu in |
| 5711 | hppa*64*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5712 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5713 | ;; |
| 5714 | ia64*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5715 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5716 | ;; |
| 5717 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5718 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5719 | ;; |
| 5720 | esac |
| 5721 | else |
| 5722 | case $host_cpu in |
| 5723 | hppa*64*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5724 | _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5725 | ;; |
| 5726 | ia64*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5727 | _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5728 | ;; |
| 5729 | *) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5730 | m4_if($1, [], [ |
| 5731 | # Older versions of the 11.00 compiler do not understand -b yet |
| 5732 | # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) |
| 5733 | _LT_LINKER_OPTION([if $CC understands -b], |
| 5734 | _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5735 | [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5736 | [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5737 | [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags']) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5738 | ;; |
| 5739 | esac |
| 5740 | fi |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5741 | if test no = "$with_gnu_ld"; then |
| 5742 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5743 | _LT_TAGVAR(hardcode_libdir_separator, $1)=: |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5744 | |
| 5745 | case $host_cpu in |
| 5746 | hppa*64*|ia64*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5747 | _LT_TAGVAR(hardcode_direct, $1)=no |
| 5748 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5749 | ;; |
| 5750 | *) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5751 | _LT_TAGVAR(hardcode_direct, $1)=yes |
| 5752 | _LT_TAGVAR(hardcode_direct_absolute, $1)=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5753 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5754 | |
| 5755 | # hardcode_minus_L: Not really in the search PATH, |
| 5756 | # but as the default location of the library. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5757 | _LT_TAGVAR(hardcode_minus_L, $1)=yes |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5758 | ;; |
| 5759 | esac |
| 5760 | fi |
| 5761 | ;; |
| 5762 | |
| 5763 | irix5* | irix6* | nonstopux*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5764 | if test yes = "$GCC"; then |
| 5765 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5766 | # Try to use the -exported_symbol ld option, if it does not |
| 5767 | # work, assume that -exports_file does not work either and |
| 5768 | # implicitly export all symbols. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5769 | # This should be the same for all languages, so no per-tag cache variable. |
| 5770 | AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol], |
| 5771 | [lt_cv_irix_exported_symbol], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5772 | [save_LDFLAGS=$LDFLAGS |
| 5773 | LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null" |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5774 | AC_LINK_IFELSE( |
| 5775 | [AC_LANG_SOURCE( |
| 5776 | [AC_LANG_CASE([C], [[int foo (void) { return 0; }]], |
| 5777 | [C++], [[int foo (void) { return 0; }]], |
| 5778 | [Fortran 77], [[ |
| 5779 | subroutine foo |
| 5780 | end]], |
| 5781 | [Fortran], [[ |
| 5782 | subroutine foo |
| 5783 | end]])])], |
| 5784 | [lt_cv_irix_exported_symbol=yes], |
| 5785 | [lt_cv_irix_exported_symbol=no]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5786 | LDFLAGS=$save_LDFLAGS]) |
| 5787 | if test yes = "$lt_cv_irix_exported_symbol"; then |
| 5788 | _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' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 5789 | fi |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5790 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5791 | _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' |
| 5792 | _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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5793 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5794 | _LT_TAGVAR(archive_cmds_need_lc, $1)='no' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5795 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5796 | _LT_TAGVAR(hardcode_libdir_separator, $1)=: |
| 5797 | _LT_TAGVAR(inherit_rpath, $1)=yes |
| 5798 | _LT_TAGVAR(link_all_deplibs, $1)=yes |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5799 | ;; |
| 5800 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5801 | linux*) |
| 5802 | case $cc_basename in |
| 5803 | tcc*) |
| 5804 | # Fabrice Bellard et al's Tiny C Compiler |
| 5805 | _LT_TAGVAR(ld_shlibs, $1)=yes |
| 5806 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' |
| 5807 | ;; |
| 5808 | esac |
| 5809 | ;; |
| 5810 | |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5811 | netbsd*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5812 | if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then |
| 5813 | _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5814 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5815 | _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5816 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5817 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' |
| 5818 | _LT_TAGVAR(hardcode_direct, $1)=yes |
| 5819 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5820 | ;; |
| 5821 | |
| 5822 | newsos6) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5823 | _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' |
| 5824 | _LT_TAGVAR(hardcode_direct, $1)=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5825 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5826 | _LT_TAGVAR(hardcode_libdir_separator, $1)=: |
| 5827 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
| 5828 | ;; |
| 5829 | |
| 5830 | *nto* | *qnx*) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5831 | ;; |
| 5832 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5833 | openbsd* | bitrig*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5834 | if test -f /usr/libexec/ld.so; then |
| 5835 | _LT_TAGVAR(hardcode_direct, $1)=yes |
| 5836 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
| 5837 | _LT_TAGVAR(hardcode_direct_absolute, $1)=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5838 | if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5839 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5840 | _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols' |
| 5841 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' |
| 5842 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5843 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5844 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' |
| 5845 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5846 | fi |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5847 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5848 | _LT_TAGVAR(ld_shlibs, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5849 | fi |
| 5850 | ;; |
| 5851 | |
| 5852 | os2*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5853 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' |
| 5854 | _LT_TAGVAR(hardcode_minus_L, $1)=yes |
| 5855 | _LT_TAGVAR(allow_undefined_flag, $1)=unsupported |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5856 | shrext_cmds=.dll |
| 5857 | _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ |
| 5858 | $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ |
| 5859 | $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ |
| 5860 | $ECHO EXPORTS >> $output_objdir/$libname.def~ |
| 5861 | emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ |
| 5862 | $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ |
| 5863 | emximp -o $lib $output_objdir/$libname.def' |
| 5864 | _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ |
| 5865 | $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ |
| 5866 | $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ |
| 5867 | $ECHO EXPORTS >> $output_objdir/$libname.def~ |
| 5868 | prefix_cmds="$SED"~ |
| 5869 | if test EXPORTS = "`$SED 1q $export_symbols`"; then |
| 5870 | prefix_cmds="$prefix_cmds -e 1d"; |
| 5871 | fi~ |
| 5872 | prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ |
| 5873 | cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ |
| 5874 | $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ |
| 5875 | emximp -o $lib $output_objdir/$libname.def' |
| 5876 | _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' |
| 5877 | _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5878 | ;; |
| 5879 | |
| 5880 | osf3*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5881 | if test yes = "$GCC"; then |
| 5882 | _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' |
| 5883 | _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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5884 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5885 | _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5886 | _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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5887 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5888 | _LT_TAGVAR(archive_cmds_need_lc, $1)='no' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5889 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5890 | _LT_TAGVAR(hardcode_libdir_separator, $1)=: |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5891 | ;; |
| 5892 | |
| 5893 | osf4* | osf5*) # as osf3* with the addition of -msym flag |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5894 | if test yes = "$GCC"; then |
| 5895 | _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' |
| 5896 | _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' |
| 5897 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5898 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5899 | _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5900 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5901 | _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~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5902 | $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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5903 | |
| 5904 | # Both c and cxx compiler support -rpath directly |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5905 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5906 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5907 | _LT_TAGVAR(archive_cmds_need_lc, $1)='no' |
| 5908 | _LT_TAGVAR(hardcode_libdir_separator, $1)=: |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5909 | ;; |
| 5910 | |
| 5911 | solaris*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5912 | _LT_TAGVAR(no_undefined_flag, $1)=' -z defs' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5913 | if test yes = "$GCC"; then |
| 5914 | wlarc='$wl' |
| 5915 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5916 | _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5917 | $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' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5918 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5919 | case `$CC -V 2>&1` in |
| 5920 | *"Compilers 5.0"*) |
| 5921 | wlarc='' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5922 | _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5923 | _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5924 | $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5925 | ;; |
| 5926 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5927 | wlarc='$wl' |
| 5928 | _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5929 | _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5930 | $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5931 | ;; |
| 5932 | esac |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5933 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5934 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' |
| 5935 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5936 | case $host_os in |
| 5937 | solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; |
| 5938 | *) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5939 | # The compiler driver will combine and reorder linker options, |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5940 | # but understands '-z linker_flag'. GCC discards it without '$wl', |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5941 | # but is careful enough not to reorder. |
| 5942 | # Supported since Solaris 2.6 (maybe 2.5.1?) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5943 | if test yes = "$GCC"; then |
| 5944 | _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5945 | else |
| 5946 | _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' |
| 5947 | fi |
| 5948 | ;; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5949 | esac |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5950 | _LT_TAGVAR(link_all_deplibs, $1)=yes |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5951 | ;; |
| 5952 | |
| 5953 | sunos4*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5954 | if test sequent = "$host_vendor"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5955 | # Use $CC to link under sequent, because it throws in some extra .o |
| 5956 | # files that make .init and .fini sections work. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 5957 | _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5958 | else |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5959 | _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5960 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5961 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' |
| 5962 | _LT_TAGVAR(hardcode_direct, $1)=yes |
| 5963 | _LT_TAGVAR(hardcode_minus_L, $1)=yes |
| 5964 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5965 | ;; |
| 5966 | |
| 5967 | sysv4) |
| 5968 | case $host_vendor in |
| 5969 | sni) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5970 | _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' |
| 5971 | _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true??? |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5972 | ;; |
| 5973 | siemens) |
| 5974 | ## LD is ld it makes a PLAMLIB |
| 5975 | ## CC just makes a GrossModule. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5976 | _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' |
| 5977 | _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' |
| 5978 | _LT_TAGVAR(hardcode_direct, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5979 | ;; |
| 5980 | motorola) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5981 | _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' |
| 5982 | _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5983 | ;; |
| 5984 | esac |
| 5985 | runpath_var='LD_RUN_PATH' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5986 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5987 | ;; |
| 5988 | |
| 5989 | sysv4.3*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5990 | _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' |
| 5991 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
| 5992 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5993 | ;; |
| 5994 | |
| 5995 | sysv4*MP*) |
| 5996 | if test -d /usr/nec; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 5997 | _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' |
| 5998 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 5999 | runpath_var=LD_RUN_PATH |
| 6000 | hardcode_runpath_var=yes |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6001 | _LT_TAGVAR(ld_shlibs, $1)=yes |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6002 | fi |
| 6003 | ;; |
| 6004 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6005 | sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6006 | _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6007 | _LT_TAGVAR(archive_cmds_need_lc, $1)=no |
| 6008 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6009 | runpath_var='LD_RUN_PATH' |
| 6010 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6011 | if test yes = "$GCC"; then |
| 6012 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' |
| 6013 | _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6014 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6015 | _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' |
| 6016 | _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6017 | fi |
| 6018 | ;; |
| 6019 | |
| 6020 | sysv5* | sco3.2v5* | sco5v6*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6021 | # Note: We CANNOT use -z defs as we might desire, because we do not |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6022 | # link with -lc, and that would cause any symbols used from libc to |
| 6023 | # always be unresolved, which means just about no library would |
| 6024 | # ever link correctly. If we're not using GNU ld we use -z text |
| 6025 | # though, which does catch some bad symbols but isn't as heavy-handed |
| 6026 | # as -z defs. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6027 | _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' |
| 6028 | _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6029 | _LT_TAGVAR(archive_cmds_need_lc, $1)=no |
| 6030 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6031 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6032 | _LT_TAGVAR(hardcode_libdir_separator, $1)=':' |
| 6033 | _LT_TAGVAR(link_all_deplibs, $1)=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6034 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6035 | runpath_var='LD_RUN_PATH' |
| 6036 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6037 | if test yes = "$GCC"; then |
| 6038 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' |
| 6039 | _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6040 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6041 | _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' |
| 6042 | _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6043 | fi |
| 6044 | ;; |
| 6045 | |
| 6046 | uts4*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6047 | _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' |
| 6048 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' |
| 6049 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6050 | ;; |
| 6051 | |
| 6052 | *) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6053 | _LT_TAGVAR(ld_shlibs, $1)=no |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6054 | ;; |
| 6055 | esac |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6056 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6057 | if test sni = "$host_vendor"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6058 | case $host in |
| 6059 | sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6060 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6061 | ;; |
| 6062 | esac |
| 6063 | fi |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6064 | fi |
| 6065 | ]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6066 | AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6067 | test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6068 | |
| 6069 | _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld |
| 6070 | |
| 6071 | _LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl |
| 6072 | _LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl |
| 6073 | _LT_DECL([], [extract_expsyms_cmds], [2], |
| 6074 | [The commands to extract the exported symbol list from a shared archive]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6075 | |
| 6076 | # |
| 6077 | # Do we need to explicitly link libc? |
| 6078 | # |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6079 | case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6080 | x|xyes) |
| 6081 | # Assume -lc should be added |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6082 | _LT_TAGVAR(archive_cmds_need_lc, $1)=yes |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6083 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6084 | if test yes,yes = "$GCC,$enable_shared"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6085 | case $_LT_TAGVAR(archive_cmds, $1) in |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6086 | *'~'*) |
| 6087 | # FIXME: we may have to deal with multi-command sequences. |
| 6088 | ;; |
| 6089 | '$CC '*) |
| 6090 | # Test whether the compiler implicitly links with -lc since on some |
| 6091 | # systems, -lgcc has to come before -lc. If gcc already passes -lc |
| 6092 | # to ld, don't add -lc before -lgcc. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6093 | AC_CACHE_CHECK([whether -lc should be explicitly linked in], |
| 6094 | [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1), |
| 6095 | [$RM conftest* |
| 6096 | echo "$lt_simple_compile_test_code" > conftest.$ac_ext |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6097 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6098 | if AC_TRY_EVAL(ac_compile) 2>conftest.err; then |
| 6099 | soname=conftest |
| 6100 | lib=conftest |
| 6101 | libobjs=conftest.$ac_objext |
| 6102 | deplibs= |
| 6103 | wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) |
| 6104 | pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1) |
| 6105 | compiler_flags=-v |
| 6106 | linker_flags=-v |
| 6107 | verstring= |
| 6108 | output_objdir=. |
| 6109 | libname=conftest |
| 6110 | lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1) |
| 6111 | _LT_TAGVAR(allow_undefined_flag, $1)= |
| 6112 | if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) |
| 6113 | then |
| 6114 | lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no |
| 6115 | else |
| 6116 | lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes |
| 6117 | fi |
| 6118 | _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag |
| 6119 | else |
| 6120 | cat conftest.err 1>&5 |
| 6121 | fi |
| 6122 | $RM conftest* |
| 6123 | ]) |
| 6124 | _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6125 | ;; |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6126 | esac |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 6127 | fi |
| 6128 | ;; |
| 6129 | esac |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6130 | |
| 6131 | _LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0], |
| 6132 | [Whether or not to add -lc for building shared libraries]) |
| 6133 | _LT_TAGDECL([allow_libtool_libs_with_static_runtimes], |
| 6134 | [enable_shared_with_static_runtimes], [0], |
| 6135 | [Whether or not to disallow shared libs when runtime libs are static]) |
| 6136 | _LT_TAGDECL([], [export_dynamic_flag_spec], [1], |
| 6137 | [Compiler flag to allow reflexive dlopens]) |
| 6138 | _LT_TAGDECL([], [whole_archive_flag_spec], [1], |
| 6139 | [Compiler flag to generate shared objects directly from archives]) |
| 6140 | _LT_TAGDECL([], [compiler_needs_object], [1], |
| 6141 | [Whether the compiler copes with passing no objects directly]) |
| 6142 | _LT_TAGDECL([], [old_archive_from_new_cmds], [2], |
| 6143 | [Create an old-style archive from a shared archive]) |
| 6144 | _LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2], |
| 6145 | [Create a temporary old-style archive to link instead of a shared archive]) |
| 6146 | _LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive]) |
| 6147 | _LT_TAGDECL([], [archive_expsym_cmds], [2]) |
| 6148 | _LT_TAGDECL([], [module_cmds], [2], |
| 6149 | [Commands used to build a loadable module if different from building |
| 6150 | a shared archive.]) |
| 6151 | _LT_TAGDECL([], [module_expsym_cmds], [2]) |
| 6152 | _LT_TAGDECL([], [with_gnu_ld], [1], |
| 6153 | [Whether we are building with GNU ld or not]) |
| 6154 | _LT_TAGDECL([], [allow_undefined_flag], [1], |
| 6155 | [Flag that allows shared libraries with undefined symbols to be built]) |
| 6156 | _LT_TAGDECL([], [no_undefined_flag], [1], |
| 6157 | [Flag that enforces no undefined symbols]) |
| 6158 | _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1], |
| 6159 | [Flag to hardcode $libdir into a binary during linking. |
| 6160 | This must work even if $libdir does not exist]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6161 | _LT_TAGDECL([], [hardcode_libdir_separator], [1], |
| 6162 | [Whether we need a single "-rpath" flag with a separated argument]) |
| 6163 | _LT_TAGDECL([], [hardcode_direct], [0], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6164 | [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6165 | DIR into the resulting binary]) |
| 6166 | _LT_TAGDECL([], [hardcode_direct_absolute], [0], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6167 | [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6168 | DIR into the resulting binary and the resulting library dependency is |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6169 | "absolute", i.e impossible to change by setting $shlibpath_var if the |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6170 | library is relocated]) |
| 6171 | _LT_TAGDECL([], [hardcode_minus_L], [0], |
| 6172 | [Set to "yes" if using the -LDIR flag during linking hardcodes DIR |
| 6173 | into the resulting binary]) |
| 6174 | _LT_TAGDECL([], [hardcode_shlibpath_var], [0], |
| 6175 | [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR |
| 6176 | into the resulting binary]) |
| 6177 | _LT_TAGDECL([], [hardcode_automatic], [0], |
| 6178 | [Set to "yes" if building a shared library automatically hardcodes DIR |
| 6179 | into the library and all subsequent libraries and executables linked |
| 6180 | against it]) |
| 6181 | _LT_TAGDECL([], [inherit_rpath], [0], |
| 6182 | [Set to yes if linker adds runtime paths of dependent libraries |
| 6183 | to runtime path list]) |
| 6184 | _LT_TAGDECL([], [link_all_deplibs], [0], |
| 6185 | [Whether libtool must link a program against all its dependency libraries]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6186 | _LT_TAGDECL([], [always_export_symbols], [0], |
| 6187 | [Set to "yes" if exported symbols are required]) |
| 6188 | _LT_TAGDECL([], [export_symbols_cmds], [2], |
| 6189 | [The commands to list exported symbols]) |
| 6190 | _LT_TAGDECL([], [exclude_expsyms], [1], |
| 6191 | [Symbols that should not be listed in the preloaded symbols]) |
| 6192 | _LT_TAGDECL([], [include_expsyms], [1], |
| 6193 | [Symbols that must always be exported]) |
| 6194 | _LT_TAGDECL([], [prelink_cmds], [2], |
| 6195 | [Commands necessary for linking programs (against libraries) with templates]) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6196 | _LT_TAGDECL([], [postlink_cmds], [2], |
| 6197 | [Commands necessary for finishing linking programs]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6198 | _LT_TAGDECL([], [file_list_spec], [1], |
| 6199 | [Specify filename containing input files]) |
| 6200 | dnl FIXME: Not yet implemented |
| 6201 | dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1], |
| 6202 | dnl [Compiler flag to generate thread safe objects]) |
| 6203 | ])# _LT_LINKER_SHLIBS |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 6204 | |
| 6205 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6206 | # _LT_LANG_C_CONFIG([TAG]) |
| 6207 | # ------------------------ |
| 6208 | # Ensure that the configuration variables for a C compiler are suitably |
| 6209 | # defined. These variables are subsequently used by _LT_CONFIG to write |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6210 | # the compiler configuration to 'libtool'. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6211 | m4_defun([_LT_LANG_C_CONFIG], |
| 6212 | [m4_require([_LT_DECL_EGREP])dnl |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6213 | lt_save_CC=$CC |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6214 | AC_LANG_PUSH(C) |
| 6215 | |
| 6216 | # Source file extension for C test sources. |
| 6217 | ac_ext=c |
| 6218 | |
| 6219 | # Object file extension for compiled C test sources. |
| 6220 | objext=o |
| 6221 | _LT_TAGVAR(objext, $1)=$objext |
| 6222 | |
| 6223 | # Code to be used in simple compile tests |
| 6224 | lt_simple_compile_test_code="int some_variable = 0;" |
| 6225 | |
| 6226 | # Code to be used in simple link tests |
| 6227 | lt_simple_link_test_code='int main(){return(0);}' |
| 6228 | |
| 6229 | _LT_TAG_COMPILER |
| 6230 | # Save the default compiler, since it gets overwritten when the other |
| 6231 | # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. |
| 6232 | compiler_DEFAULT=$CC |
| 6233 | |
| 6234 | # save warnings/boilerplate of simple test code |
| 6235 | _LT_COMPILER_BOILERPLATE |
| 6236 | _LT_LINKER_BOILERPLATE |
| 6237 | |
| 6238 | if test -n "$compiler"; then |
| 6239 | _LT_COMPILER_NO_RTTI($1) |
| 6240 | _LT_COMPILER_PIC($1) |
| 6241 | _LT_COMPILER_C_O($1) |
| 6242 | _LT_COMPILER_FILE_LOCKS($1) |
| 6243 | _LT_LINKER_SHLIBS($1) |
| 6244 | _LT_SYS_DYNAMIC_LINKER($1) |
| 6245 | _LT_LINKER_HARDCODE_LIBPATH($1) |
| 6246 | LT_SYS_DLOPEN_SELF |
| 6247 | _LT_CMD_STRIPLIB |
| 6248 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6249 | # Report what library types will actually be built |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6250 | AC_MSG_CHECKING([if libtool supports shared libraries]) |
| 6251 | AC_MSG_RESULT([$can_build_shared]) |
| 6252 | |
| 6253 | AC_MSG_CHECKING([whether to build shared libraries]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6254 | test no = "$can_build_shared" && enable_shared=no |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6255 | |
| 6256 | # On AIX, shared libraries and static libraries use the same namespace, and |
| 6257 | # are all built from PIC. |
| 6258 | case $host_os in |
| 6259 | aix3*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6260 | test yes = "$enable_shared" && enable_static=no |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6261 | if test -n "$RANLIB"; then |
| 6262 | archive_cmds="$archive_cmds~\$RANLIB \$lib" |
| 6263 | postinstall_cmds='$RANLIB $lib' |
| 6264 | fi |
| 6265 | ;; |
| 6266 | |
| 6267 | aix[[4-9]]*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6268 | if test ia64 != "$host_cpu"; then |
| 6269 | case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in |
| 6270 | yes,aix,yes) ;; # shared object as lib.so file only |
| 6271 | yes,svr4,*) ;; # shared object as lib.so archive member only |
| 6272 | yes,*) enable_static=no ;; # shared object in lib.a archive as well |
| 6273 | esac |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6274 | fi |
| 6275 | ;; |
| 6276 | esac |
| 6277 | AC_MSG_RESULT([$enable_shared]) |
| 6278 | |
| 6279 | AC_MSG_CHECKING([whether to build static libraries]) |
| 6280 | # Make sure either enable_shared or enable_static is yes. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6281 | test yes = "$enable_shared" || enable_static=yes |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6282 | AC_MSG_RESULT([$enable_static]) |
| 6283 | |
| 6284 | _LT_CONFIG($1) |
| 6285 | fi |
| 6286 | AC_LANG_POP |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6287 | CC=$lt_save_CC |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6288 | ])# _LT_LANG_C_CONFIG |
jef | 2ab386b | 2012-08-10 12:43:50 -0700 | [diff] [blame] | 6289 | |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 6290 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6291 | # _LT_LANG_CXX_CONFIG([TAG]) |
| 6292 | # -------------------------- |
| 6293 | # Ensure that the configuration variables for a C++ compiler are suitably |
| 6294 | # defined. These variables are subsequently used by _LT_CONFIG to write |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6295 | # the compiler configuration to 'libtool'. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6296 | m4_defun([_LT_LANG_CXX_CONFIG], |
| 6297 | [m4_require([_LT_FILEUTILS_DEFAULTS])dnl |
| 6298 | m4_require([_LT_DECL_EGREP])dnl |
| 6299 | m4_require([_LT_PATH_MANIFEST_TOOL])dnl |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6300 | if test -n "$CXX" && ( test no != "$CXX" && |
| 6301 | ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) || |
| 6302 | (test g++ != "$CXX"))); then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6303 | AC_PROG_CXXCPP |
| 6304 | else |
| 6305 | _lt_caught_CXX_error=yes |
| 6306 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6307 | |
| 6308 | AC_LANG_PUSH(C++) |
| 6309 | _LT_TAGVAR(archive_cmds_need_lc, $1)=no |
| 6310 | _LT_TAGVAR(allow_undefined_flag, $1)= |
| 6311 | _LT_TAGVAR(always_export_symbols, $1)=no |
| 6312 | _LT_TAGVAR(archive_expsym_cmds, $1)= |
| 6313 | _LT_TAGVAR(compiler_needs_object, $1)=no |
| 6314 | _LT_TAGVAR(export_dynamic_flag_spec, $1)= |
| 6315 | _LT_TAGVAR(hardcode_direct, $1)=no |
| 6316 | _LT_TAGVAR(hardcode_direct_absolute, $1)=no |
| 6317 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6318 | _LT_TAGVAR(hardcode_libdir_separator, $1)= |
| 6319 | _LT_TAGVAR(hardcode_minus_L, $1)=no |
| 6320 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported |
| 6321 | _LT_TAGVAR(hardcode_automatic, $1)=no |
| 6322 | _LT_TAGVAR(inherit_rpath, $1)=no |
| 6323 | _LT_TAGVAR(module_cmds, $1)= |
| 6324 | _LT_TAGVAR(module_expsym_cmds, $1)= |
| 6325 | _LT_TAGVAR(link_all_deplibs, $1)=unknown |
| 6326 | _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6327 | _LT_TAGVAR(reload_flag, $1)=$reload_flag |
| 6328 | _LT_TAGVAR(reload_cmds, $1)=$reload_cmds |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6329 | _LT_TAGVAR(no_undefined_flag, $1)= |
| 6330 | _LT_TAGVAR(whole_archive_flag_spec, $1)= |
| 6331 | _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no |
| 6332 | |
| 6333 | # Source file extension for C++ test sources. |
| 6334 | ac_ext=cpp |
| 6335 | |
| 6336 | # Object file extension for compiled C++ test sources. |
| 6337 | objext=o |
| 6338 | _LT_TAGVAR(objext, $1)=$objext |
| 6339 | |
| 6340 | # No sense in running all these tests if we already determined that |
| 6341 | # the CXX compiler isn't working. Some variables (like enable_shared) |
| 6342 | # are currently assumed to apply to all compilers on this platform, |
| 6343 | # and will be corrupted by setting them based on a non-working compiler. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6344 | if test yes != "$_lt_caught_CXX_error"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6345 | # Code to be used in simple compile tests |
| 6346 | lt_simple_compile_test_code="int some_variable = 0;" |
| 6347 | |
| 6348 | # Code to be used in simple link tests |
| 6349 | lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }' |
| 6350 | |
| 6351 | # ltmain only uses $CC for tagged configurations so make sure $CC is set. |
| 6352 | _LT_TAG_COMPILER |
| 6353 | |
| 6354 | # save warnings/boilerplate of simple test code |
| 6355 | _LT_COMPILER_BOILERPLATE |
| 6356 | _LT_LINKER_BOILERPLATE |
| 6357 | |
| 6358 | # Allow CC to be a program name with arguments. |
| 6359 | lt_save_CC=$CC |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6360 | lt_save_CFLAGS=$CFLAGS |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6361 | lt_save_LD=$LD |
| 6362 | lt_save_GCC=$GCC |
| 6363 | GCC=$GXX |
| 6364 | lt_save_with_gnu_ld=$with_gnu_ld |
| 6365 | lt_save_path_LD=$lt_cv_path_LD |
| 6366 | if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then |
| 6367 | lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx |
| 6368 | else |
| 6369 | $as_unset lt_cv_prog_gnu_ld |
| 6370 | fi |
| 6371 | if test -n "${lt_cv_path_LDCXX+set}"; then |
| 6372 | lt_cv_path_LD=$lt_cv_path_LDCXX |
| 6373 | else |
| 6374 | $as_unset lt_cv_path_LD |
| 6375 | fi |
| 6376 | test -z "${LDCXX+set}" || LD=$LDCXX |
| 6377 | CC=${CXX-"c++"} |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6378 | CFLAGS=$CXXFLAGS |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6379 | compiler=$CC |
| 6380 | _LT_TAGVAR(compiler, $1)=$CC |
| 6381 | _LT_CC_BASENAME([$compiler]) |
| 6382 | |
| 6383 | if test -n "$compiler"; then |
| 6384 | # We don't want -fno-exception when compiling C++ code, so set the |
| 6385 | # no_builtin_flag separately |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6386 | if test yes = "$GXX"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6387 | _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' |
| 6388 | else |
| 6389 | _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= |
| 6390 | fi |
| 6391 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6392 | if test yes = "$GXX"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6393 | # Set up default GNU C++ configuration |
| 6394 | |
| 6395 | LT_PATH_LD |
| 6396 | |
| 6397 | # Check if GNU C++ uses GNU ld as the underlying linker, since the |
| 6398 | # archiving commands below assume that GNU ld is being used. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6399 | if test yes = "$with_gnu_ld"; then |
| 6400 | _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' |
| 6401 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6402 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6403 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' |
| 6404 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6405 | |
| 6406 | # If archive_cmds runs LD, not CC, wlarc should be empty |
| 6407 | # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to |
| 6408 | # investigate it a little bit more. (MM) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6409 | wlarc='$wl' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6410 | |
| 6411 | # ancient GNU ld didn't support --whole-archive et. al. |
| 6412 | if eval "`$CC -print-prog-name=ld` --help 2>&1" | |
| 6413 | $GREP 'no-whole-archive' > /dev/null; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6414 | _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6415 | else |
| 6416 | _LT_TAGVAR(whole_archive_flag_spec, $1)= |
| 6417 | fi |
| 6418 | else |
| 6419 | with_gnu_ld=no |
| 6420 | wlarc= |
| 6421 | |
| 6422 | # A generic and very simple default shared library creation |
| 6423 | # command for GNU C++ for the case where it uses the native |
| 6424 | # linker, instead of GNU ld. If possible, this setting should |
| 6425 | # overridden to take advantage of the native linker features on |
| 6426 | # the platform it is being used on. |
| 6427 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' |
| 6428 | fi |
| 6429 | |
| 6430 | # Commands to make compiler produce verbose output that lists |
| 6431 | # what "hidden" libraries, object files and flags are used when |
| 6432 | # linking a shared library. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6433 | output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6434 | |
| 6435 | else |
| 6436 | GXX=no |
| 6437 | with_gnu_ld=no |
| 6438 | wlarc= |
| 6439 | fi |
| 6440 | |
| 6441 | # PORTME: fill in a description of your system's C++ link characteristics |
| 6442 | AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) |
| 6443 | _LT_TAGVAR(ld_shlibs, $1)=yes |
| 6444 | case $host_os in |
| 6445 | aix3*) |
| 6446 | # FIXME: insert proper C++ library support |
| 6447 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 6448 | ;; |
| 6449 | aix[[4-9]]*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6450 | if test ia64 = "$host_cpu"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6451 | # On IA64, the linker does run time linking by default, so we don't |
| 6452 | # have to do anything special. |
| 6453 | aix_use_runtimelinking=no |
| 6454 | exp_sym_flag='-Bexport' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6455 | no_entry_flag= |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6456 | else |
| 6457 | aix_use_runtimelinking=no |
| 6458 | |
| 6459 | # Test if we are trying to use run time linking or normal |
| 6460 | # AIX style linking. If -brtl is somewhere in LDFLAGS, we |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6461 | # have runtime linking enabled, and use it for executables. |
| 6462 | # For shared libraries, we enable/disable runtime linking |
| 6463 | # depending on the kind of the shared library created - |
| 6464 | # when "with_aix_soname,aix_use_runtimelinking" is: |
| 6465 | # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables |
| 6466 | # "aix,yes" lib.so shared, rtl:yes, for executables |
| 6467 | # lib.a static archive |
| 6468 | # "both,no" lib.so.V(shr.o) shared, rtl:yes |
| 6469 | # lib.a(lib.so.V) shared, rtl:no, for executables |
| 6470 | # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables |
| 6471 | # lib.a(lib.so.V) shared, rtl:no |
| 6472 | # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables |
| 6473 | # lib.a static archive |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6474 | case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) |
| 6475 | for ld_flag in $LDFLAGS; do |
| 6476 | case $ld_flag in |
| 6477 | *-brtl*) |
| 6478 | aix_use_runtimelinking=yes |
| 6479 | break |
| 6480 | ;; |
| 6481 | esac |
| 6482 | done |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6483 | if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then |
| 6484 | # With aix-soname=svr4, we create the lib.so.V shared archives only, |
| 6485 | # so we don't have lib.a shared libs to link our executables. |
| 6486 | # We have to force runtime linking in this case. |
| 6487 | aix_use_runtimelinking=yes |
| 6488 | LDFLAGS="$LDFLAGS -Wl,-brtl" |
| 6489 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6490 | ;; |
| 6491 | esac |
| 6492 | |
| 6493 | exp_sym_flag='-bexport' |
| 6494 | no_entry_flag='-bnoentry' |
| 6495 | fi |
| 6496 | |
| 6497 | # When large executables or shared objects are built, AIX ld can |
| 6498 | # have problems creating the table of contents. If linking a library |
| 6499 | # or program results in "error TOC overflow" add -mminimal-toc to |
| 6500 | # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not |
| 6501 | # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. |
| 6502 | |
| 6503 | _LT_TAGVAR(archive_cmds, $1)='' |
| 6504 | _LT_TAGVAR(hardcode_direct, $1)=yes |
| 6505 | _LT_TAGVAR(hardcode_direct_absolute, $1)=yes |
| 6506 | _LT_TAGVAR(hardcode_libdir_separator, $1)=':' |
| 6507 | _LT_TAGVAR(link_all_deplibs, $1)=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6508 | _LT_TAGVAR(file_list_spec, $1)='$wl-f,' |
| 6509 | case $with_aix_soname,$aix_use_runtimelinking in |
| 6510 | aix,*) ;; # no import file |
| 6511 | svr4,* | *,yes) # use import file |
| 6512 | # The Import File defines what to hardcode. |
| 6513 | _LT_TAGVAR(hardcode_direct, $1)=no |
| 6514 | _LT_TAGVAR(hardcode_direct_absolute, $1)=no |
| 6515 | ;; |
| 6516 | esac |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6517 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6518 | if test yes = "$GXX"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6519 | case $host_os in aix4.[[012]]|aix4.[[012]].*) |
| 6520 | # We only want to do this on AIX 4.2 and lower, the check |
| 6521 | # below for broken collect2 doesn't work under 4.3+ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6522 | collect2name=`$CC -print-prog-name=collect2` |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6523 | if test -f "$collect2name" && |
| 6524 | strings "$collect2name" | $GREP resolve_lib_name >/dev/null |
| 6525 | then |
| 6526 | # We have reworked collect2 |
| 6527 | : |
| 6528 | else |
| 6529 | # We have old collect2 |
| 6530 | _LT_TAGVAR(hardcode_direct, $1)=unsupported |
| 6531 | # It fails to find uninstalled libraries when the uninstalled |
| 6532 | # path is not listed in the libpath. Setting hardcode_minus_L |
| 6533 | # to unsupported forces relinking |
| 6534 | _LT_TAGVAR(hardcode_minus_L, $1)=yes |
| 6535 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' |
| 6536 | _LT_TAGVAR(hardcode_libdir_separator, $1)= |
| 6537 | fi |
| 6538 | esac |
| 6539 | shared_flag='-shared' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6540 | if test yes = "$aix_use_runtimelinking"; then |
| 6541 | shared_flag=$shared_flag' $wl-G' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6542 | fi |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6543 | # Need to ensure runtime linking is disabled for the traditional |
| 6544 | # shared library, or the linker may eventually find shared libraries |
| 6545 | # /with/ Import File - we do not want to mix them. |
| 6546 | shared_flag_aix='-shared' |
| 6547 | shared_flag_svr4='-shared $wl-G' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6548 | else |
| 6549 | # not using gcc |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6550 | if test ia64 = "$host_cpu"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6551 | # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release |
| 6552 | # chokes on -Wl,-G. The following line is correct: |
| 6553 | shared_flag='-G' |
| 6554 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6555 | if test yes = "$aix_use_runtimelinking"; then |
| 6556 | shared_flag='$wl-G' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6557 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6558 | shared_flag='$wl-bM:SRE' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6559 | fi |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6560 | shared_flag_aix='$wl-bM:SRE' |
| 6561 | shared_flag_svr4='$wl-G' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6562 | fi |
| 6563 | fi |
| 6564 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6565 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6566 | # It seems that -bexpall does not export symbols beginning with |
| 6567 | # underscore (_), so it is better to generate a list of symbols to |
| 6568 | # export. |
| 6569 | _LT_TAGVAR(always_export_symbols, $1)=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6570 | if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6571 | # Warning - without using the other runtime loading flags (-brtl), |
| 6572 | # -berok will link without error, but may produce a broken library. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6573 | # The "-G" linker flag allows undefined symbols. |
| 6574 | _LT_TAGVAR(no_undefined_flag, $1)='-bernotok' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6575 | # Determine the default libpath from the value encoded in an empty |
| 6576 | # executable. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6577 | _LT_SYS_MODULE_PATH_AIX([$1]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6578 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6579 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6580 | _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 |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6581 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6582 | if test ia64 = "$host_cpu"; then |
| 6583 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6584 | _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6585 | _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" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6586 | else |
| 6587 | # Determine the default libpath from the value encoded in an |
| 6588 | # empty executable. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6589 | _LT_SYS_MODULE_PATH_AIX([$1]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6590 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6591 | # Warning - without using the other run time loading flags, |
| 6592 | # -berok will link without error, but may produce a broken library. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6593 | _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok' |
| 6594 | _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok' |
| 6595 | if test yes = "$with_gnu_ld"; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6596 | # We only use this code for GNU lds that support --whole-archive. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6597 | _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6598 | else |
| 6599 | # Exported symbols can be pulled into shared objects from archives |
| 6600 | _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' |
| 6601 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6602 | _LT_TAGVAR(archive_cmds_need_lc, $1)=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6603 | _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' |
| 6604 | # -brtl affects multiple linker settings, -berok does not and is overridden later |
| 6605 | compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`' |
| 6606 | if test svr4 != "$with_aix_soname"; then |
| 6607 | # This is similar to how AIX traditionally builds its shared |
| 6608 | # libraries. Need -bnortl late, we may have -brtl in LDFLAGS. |
| 6609 | _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' |
| 6610 | fi |
| 6611 | if test aix != "$with_aix_soname"; then |
| 6612 | _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' |
| 6613 | else |
| 6614 | # used by -dlpreopen to get the symbols |
| 6615 | _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir' |
| 6616 | fi |
| 6617 | _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6618 | fi |
| 6619 | fi |
| 6620 | ;; |
| 6621 | |
| 6622 | beos*) |
| 6623 | if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then |
| 6624 | _LT_TAGVAR(allow_undefined_flag, $1)=unsupported |
| 6625 | # Joseph Beckenbach <jrb3@best.com> says some releases of gcc |
| 6626 | # support --undefined. This deserves some investigation. FIXME |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6627 | _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6628 | else |
| 6629 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 6630 | fi |
| 6631 | ;; |
| 6632 | |
| 6633 | chorus*) |
| 6634 | case $cc_basename in |
| 6635 | *) |
| 6636 | # FIXME: insert proper C++ library support |
| 6637 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 6638 | ;; |
| 6639 | esac |
| 6640 | ;; |
| 6641 | |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 6642 | cygwin* | mingw* | pw32* | cegcc*) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6643 | case $GXX,$cc_basename in |
| 6644 | ,cl* | no,cl*) |
| 6645 | # Native MSVC |
| 6646 | # hardcode_libdir_flag_spec is actually meaningless, as there is |
| 6647 | # no search path for DLLs. |
| 6648 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' |
| 6649 | _LT_TAGVAR(allow_undefined_flag, $1)=unsupported |
| 6650 | _LT_TAGVAR(always_export_symbols, $1)=yes |
| 6651 | _LT_TAGVAR(file_list_spec, $1)='@' |
| 6652 | # Tell ltmain to make .lib files, not .a files. |
| 6653 | libext=lib |
| 6654 | # Tell ltmain to make .dll files, not .so files. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6655 | shrext_cmds=.dll |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6656 | # FIXME: Setting linknames here is a bad hack. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6657 | _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' |
| 6658 | _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then |
| 6659 | cp "$export_symbols" "$output_objdir/$soname.def"; |
| 6660 | echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; |
| 6661 | else |
| 6662 | $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; |
| 6663 | fi~ |
| 6664 | $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ |
| 6665 | linknames=' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6666 | # The linker will not automatically build a static lib if we build a DLL. |
| 6667 | # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' |
| 6668 | _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes |
| 6669 | # Don't use ranlib |
| 6670 | _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' |
| 6671 | _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6672 | lt_tool_outputfile="@TOOL_OUTPUT@"~ |
| 6673 | case $lt_outputfile in |
| 6674 | *.exe|*.EXE) ;; |
| 6675 | *) |
| 6676 | lt_outputfile=$lt_outputfile.exe |
| 6677 | lt_tool_outputfile=$lt_tool_outputfile.exe |
| 6678 | ;; |
| 6679 | esac~ |
| 6680 | func_to_tool_file "$lt_outputfile"~ |
| 6681 | if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then |
| 6682 | $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; |
| 6683 | $RM "$lt_outputfile.manifest"; |
| 6684 | fi' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6685 | ;; |
| 6686 | *) |
| 6687 | # g++ |
| 6688 | # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, |
| 6689 | # as there is no search path for DLLs. |
| 6690 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6691 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6692 | _LT_TAGVAR(allow_undefined_flag, $1)=unsupported |
| 6693 | _LT_TAGVAR(always_export_symbols, $1)=no |
| 6694 | _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6695 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6696 | if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6697 | _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' |
| 6698 | # If the export-symbols file already is a .def file, use it as |
| 6699 | # is; otherwise, prepend EXPORTS... |
| 6700 | _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then |
| 6701 | cp $export_symbols $output_objdir/$soname.def; |
| 6702 | else |
| 6703 | echo EXPORTS > $output_objdir/$soname.def; |
| 6704 | cat $export_symbols >> $output_objdir/$soname.def; |
| 6705 | fi~ |
| 6706 | $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' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6707 | else |
| 6708 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 6709 | fi |
| 6710 | ;; |
| 6711 | esac |
| 6712 | ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6713 | darwin* | rhapsody*) |
| 6714 | _LT_DARWIN_LINKER_FEATURES($1) |
| 6715 | ;; |
| 6716 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6717 | os2*) |
| 6718 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' |
| 6719 | _LT_TAGVAR(hardcode_minus_L, $1)=yes |
| 6720 | _LT_TAGVAR(allow_undefined_flag, $1)=unsupported |
| 6721 | shrext_cmds=.dll |
| 6722 | _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ |
| 6723 | $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ |
| 6724 | $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ |
| 6725 | $ECHO EXPORTS >> $output_objdir/$libname.def~ |
| 6726 | emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ |
| 6727 | $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ |
| 6728 | emximp -o $lib $output_objdir/$libname.def' |
| 6729 | _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ |
| 6730 | $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ |
| 6731 | $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ |
| 6732 | $ECHO EXPORTS >> $output_objdir/$libname.def~ |
| 6733 | prefix_cmds="$SED"~ |
| 6734 | if test EXPORTS = "`$SED 1q $export_symbols`"; then |
| 6735 | prefix_cmds="$prefix_cmds -e 1d"; |
| 6736 | fi~ |
| 6737 | prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ |
| 6738 | cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ |
| 6739 | $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ |
| 6740 | emximp -o $lib $output_objdir/$libname.def' |
| 6741 | _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' |
| 6742 | _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes |
| 6743 | ;; |
| 6744 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6745 | dgux*) |
| 6746 | case $cc_basename in |
| 6747 | ec++*) |
| 6748 | # FIXME: insert proper C++ library support |
| 6749 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 6750 | ;; |
| 6751 | ghcx*) |
| 6752 | # Green Hills C++ Compiler |
| 6753 | # FIXME: insert proper C++ library support |
| 6754 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 6755 | ;; |
| 6756 | *) |
| 6757 | # FIXME: insert proper C++ library support |
| 6758 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 6759 | ;; |
| 6760 | esac |
| 6761 | ;; |
| 6762 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6763 | freebsd2.*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6764 | # C++ shared libraries reported to be fairly broken before |
| 6765 | # switch to ELF |
| 6766 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 6767 | ;; |
| 6768 | |
| 6769 | freebsd-elf*) |
| 6770 | _LT_TAGVAR(archive_cmds_need_lc, $1)=no |
| 6771 | ;; |
| 6772 | |
| 6773 | freebsd* | dragonfly*) |
| 6774 | # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF |
| 6775 | # conventions |
| 6776 | _LT_TAGVAR(ld_shlibs, $1)=yes |
| 6777 | ;; |
| 6778 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6779 | haiku*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6780 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6781 | _LT_TAGVAR(link_all_deplibs, $1)=yes |
| 6782 | ;; |
| 6783 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6784 | hpux9*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6785 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6786 | _LT_TAGVAR(hardcode_libdir_separator, $1)=: |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6787 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6788 | _LT_TAGVAR(hardcode_direct, $1)=yes |
| 6789 | _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, |
| 6790 | # but as the default |
| 6791 | # location of the library. |
| 6792 | |
| 6793 | case $cc_basename in |
| 6794 | CC*) |
| 6795 | # FIXME: insert proper C++ library support |
| 6796 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 6797 | ;; |
| 6798 | aCC*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6799 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6800 | # Commands to make compiler produce verbose output that lists |
| 6801 | # what "hidden" libraries, object files and flags are used when |
| 6802 | # linking a shared library. |
| 6803 | # |
| 6804 | # There doesn't appear to be a way to prevent this compiler from |
| 6805 | # explicitly linking system object files so we need to strip them |
| 6806 | # from the output so that they don't get included in the library |
| 6807 | # dependencies. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6808 | 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"' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6809 | ;; |
| 6810 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6811 | if test yes = "$GXX"; then |
| 6812 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6813 | else |
| 6814 | # FIXME: insert proper C++ library support |
| 6815 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 6816 | fi |
| 6817 | ;; |
| 6818 | esac |
| 6819 | ;; |
| 6820 | |
| 6821 | hpux10*|hpux11*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6822 | if test no = "$with_gnu_ld"; then |
| 6823 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6824 | _LT_TAGVAR(hardcode_libdir_separator, $1)=: |
| 6825 | |
| 6826 | case $host_cpu in |
| 6827 | hppa*64*|ia64*) |
| 6828 | ;; |
| 6829 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6830 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6831 | ;; |
| 6832 | esac |
| 6833 | fi |
| 6834 | case $host_cpu in |
| 6835 | hppa*64*|ia64*) |
| 6836 | _LT_TAGVAR(hardcode_direct, $1)=no |
| 6837 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
| 6838 | ;; |
| 6839 | *) |
| 6840 | _LT_TAGVAR(hardcode_direct, $1)=yes |
| 6841 | _LT_TAGVAR(hardcode_direct_absolute, $1)=yes |
| 6842 | _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, |
| 6843 | # but as the default |
| 6844 | # location of the library. |
| 6845 | ;; |
| 6846 | esac |
| 6847 | |
| 6848 | case $cc_basename in |
| 6849 | CC*) |
| 6850 | # FIXME: insert proper C++ library support |
| 6851 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 6852 | ;; |
| 6853 | aCC*) |
| 6854 | case $host_cpu in |
| 6855 | hppa*64*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6856 | _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6857 | ;; |
| 6858 | ia64*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6859 | _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6860 | ;; |
| 6861 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6862 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6863 | ;; |
| 6864 | esac |
| 6865 | # Commands to make compiler produce verbose output that lists |
| 6866 | # what "hidden" libraries, object files and flags are used when |
| 6867 | # linking a shared library. |
| 6868 | # |
| 6869 | # There doesn't appear to be a way to prevent this compiler from |
| 6870 | # explicitly linking system object files so we need to strip them |
| 6871 | # from the output so that they don't get included in the library |
| 6872 | # dependencies. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6873 | 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"' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6874 | ;; |
| 6875 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6876 | if test yes = "$GXX"; then |
| 6877 | if test no = "$with_gnu_ld"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6878 | case $host_cpu in |
| 6879 | hppa*64*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6880 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6881 | ;; |
| 6882 | ia64*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6883 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6884 | ;; |
| 6885 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6886 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6887 | ;; |
| 6888 | esac |
| 6889 | fi |
| 6890 | else |
| 6891 | # FIXME: insert proper C++ library support |
| 6892 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 6893 | fi |
| 6894 | ;; |
| 6895 | esac |
| 6896 | ;; |
| 6897 | |
| 6898 | interix[[3-9]]*) |
| 6899 | _LT_TAGVAR(hardcode_direct, $1)=no |
| 6900 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6901 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' |
| 6902 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6903 | # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. |
| 6904 | # Instead, shared libraries are loaded at an image base (0x10000000 by |
| 6905 | # default) and relocated if they conflict, which is a slow very memory |
| 6906 | # consuming and fragmenting process. To avoid this, we pick a random, |
| 6907 | # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link |
| 6908 | # time. Moving up from 0x10000000 also allows more sbrk(2) space. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6909 | _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' |
| 6910 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6911 | ;; |
| 6912 | irix5* | irix6*) |
| 6913 | case $cc_basename in |
| 6914 | CC*) |
| 6915 | # SGI C++ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6916 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6917 | |
| 6918 | # Archives containing C++ object files must be created using |
| 6919 | # "CC -ar", where "CC" is the IRIX C++ compiler. This is |
| 6920 | # necessary to make sure instantiated templates are included |
| 6921 | # in the archive. |
| 6922 | _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' |
| 6923 | ;; |
| 6924 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6925 | if test yes = "$GXX"; then |
| 6926 | if test no = "$with_gnu_ld"; then |
| 6927 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6928 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6929 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6930 | fi |
| 6931 | fi |
| 6932 | _LT_TAGVAR(link_all_deplibs, $1)=yes |
| 6933 | ;; |
| 6934 | esac |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6935 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6936 | _LT_TAGVAR(hardcode_libdir_separator, $1)=: |
| 6937 | _LT_TAGVAR(inherit_rpath, $1)=yes |
| 6938 | ;; |
| 6939 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6940 | linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6941 | case $cc_basename in |
| 6942 | KCC*) |
| 6943 | # Kuck and Associates, Inc. (KAI) C++ Compiler |
| 6944 | |
| 6945 | # KCC will only create a shared library if the output file |
| 6946 | # ends with ".so" (or ".sl" for HP-UX), so rename the library |
| 6947 | # to its proper name (with version) after linking. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6948 | _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' |
| 6949 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6950 | # Commands to make compiler produce verbose output that lists |
| 6951 | # what "hidden" libraries, object files and flags are used when |
| 6952 | # linking a shared library. |
| 6953 | # |
| 6954 | # There doesn't appear to be a way to prevent this compiler from |
| 6955 | # explicitly linking system object files so we need to strip them |
| 6956 | # from the output so that they don't get included in the library |
| 6957 | # dependencies. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6958 | 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"' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6959 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6960 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' |
| 6961 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6962 | |
| 6963 | # Archives containing C++ object files must be created using |
| 6964 | # "CC -Bstatic", where "CC" is the KAI C++ compiler. |
| 6965 | _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' |
| 6966 | ;; |
| 6967 | icpc* | ecpc* ) |
| 6968 | # Intel C++ |
| 6969 | with_gnu_ld=yes |
| 6970 | # version 8.0 and above of icpc choke on multiply defined symbols |
| 6971 | # if we add $predep_objects and $postdep_objects, however 7.1 and |
| 6972 | # earlier do not add the objects themselves. |
| 6973 | case `$CC -V 2>&1` in |
| 6974 | *"Version 7."*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6975 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' |
| 6976 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6977 | ;; |
| 6978 | *) # Version 8.0 or newer |
| 6979 | tmp_idyn= |
| 6980 | case $host_cpu in |
| 6981 | ia64*) tmp_idyn=' -i_dynamic';; |
| 6982 | esac |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6983 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' |
| 6984 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6985 | ;; |
| 6986 | esac |
| 6987 | _LT_TAGVAR(archive_cmds_need_lc, $1)=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6988 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' |
| 6989 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' |
| 6990 | _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6991 | ;; |
| 6992 | pgCC* | pgcpp*) |
| 6993 | # Portland Group C++ compiler |
| 6994 | case `$CC -V` in |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 6995 | *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 6996 | _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 6997 | rm -rf $tpldir~ |
| 6998 | $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ |
| 6999 | compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7000 | _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7001 | rm -rf $tpldir~ |
| 7002 | $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ |
| 7003 | $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~ |
| 7004 | $RANLIB $oldlib' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7005 | _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7006 | rm -rf $tpldir~ |
| 7007 | $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ |
| 7008 | $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7009 | _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7010 | rm -rf $tpldir~ |
| 7011 | $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ |
| 7012 | $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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7013 | ;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7014 | *) # Version 6 and above use weak symbols |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7015 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' |
| 7016 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7017 | ;; |
| 7018 | esac |
| 7019 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7020 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir' |
| 7021 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' |
| 7022 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7023 | ;; |
| 7024 | cxx*) |
| 7025 | # Compaq C++ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7026 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' |
| 7027 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7028 | |
| 7029 | runpath_var=LD_RUN_PATH |
| 7030 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' |
| 7031 | _LT_TAGVAR(hardcode_libdir_separator, $1)=: |
| 7032 | |
| 7033 | # Commands to make compiler produce verbose output that lists |
| 7034 | # what "hidden" libraries, object files and flags are used when |
| 7035 | # linking a shared library. |
| 7036 | # |
| 7037 | # There doesn't appear to be a way to prevent this compiler from |
| 7038 | # explicitly linking system object files so we need to strip them |
| 7039 | # from the output so that they don't get included in the library |
| 7040 | # dependencies. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7041 | 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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7042 | ;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7043 | xl* | mpixl* | bgxl*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7044 | # IBM XL 8.0 on PPC, with GNU ld |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7045 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' |
| 7046 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' |
| 7047 | _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' |
| 7048 | if test yes = "$supports_anon_versioning"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7049 | _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7050 | cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ |
| 7051 | echo "local: *; };" >> $output_objdir/$libname.ver~ |
| 7052 | $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7053 | fi |
| 7054 | ;; |
| 7055 | *) |
| 7056 | case `$CC -V 2>&1 | sed 5q` in |
| 7057 | *Sun\ C*) |
| 7058 | # Sun C++ 5.9 |
| 7059 | _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7060 | _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' |
| 7061 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7062 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7063 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7064 | _LT_TAGVAR(compiler_needs_object, $1)=yes |
| 7065 | |
| 7066 | # Not sure whether something based on |
| 7067 | # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 |
| 7068 | # would be better. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7069 | output_verbose_link_cmd='func_echo_all' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7070 | |
| 7071 | # Archives containing C++ object files must be created using |
| 7072 | # "CC -xar", where "CC" is the Sun C++ compiler. This is |
| 7073 | # necessary to make sure instantiated templates are included |
| 7074 | # in the archive. |
| 7075 | _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' |
| 7076 | ;; |
| 7077 | esac |
| 7078 | ;; |
| 7079 | esac |
| 7080 | ;; |
| 7081 | |
| 7082 | lynxos*) |
| 7083 | # FIXME: insert proper C++ library support |
| 7084 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 7085 | ;; |
| 7086 | |
| 7087 | m88k*) |
| 7088 | # FIXME: insert proper C++ library support |
| 7089 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 7090 | ;; |
| 7091 | |
| 7092 | mvs*) |
| 7093 | case $cc_basename in |
| 7094 | cxx*) |
| 7095 | # FIXME: insert proper C++ library support |
| 7096 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 7097 | ;; |
| 7098 | *) |
| 7099 | # FIXME: insert proper C++ library support |
| 7100 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 7101 | ;; |
| 7102 | esac |
| 7103 | ;; |
| 7104 | |
| 7105 | netbsd*) |
| 7106 | if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then |
| 7107 | _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' |
| 7108 | wlarc= |
| 7109 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' |
| 7110 | _LT_TAGVAR(hardcode_direct, $1)=yes |
| 7111 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
| 7112 | fi |
| 7113 | # Workaround some broken pre-1.5 toolchains |
| 7114 | output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' |
| 7115 | ;; |
| 7116 | |
| 7117 | *nto* | *qnx*) |
| 7118 | _LT_TAGVAR(ld_shlibs, $1)=yes |
| 7119 | ;; |
| 7120 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7121 | openbsd* | bitrig*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7122 | if test -f /usr/libexec/ld.so; then |
| 7123 | _LT_TAGVAR(hardcode_direct, $1)=yes |
| 7124 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
| 7125 | _LT_TAGVAR(hardcode_direct_absolute, $1)=yes |
| 7126 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7127 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' |
| 7128 | if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then |
| 7129 | _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' |
| 7130 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' |
| 7131 | _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7132 | fi |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7133 | output_verbose_link_cmd=func_echo_all |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7134 | else |
| 7135 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 7136 | fi |
| 7137 | ;; |
| 7138 | |
| 7139 | osf3* | osf4* | osf5*) |
| 7140 | case $cc_basename in |
| 7141 | KCC*) |
| 7142 | # Kuck and Associates, Inc. (KAI) C++ Compiler |
| 7143 | |
| 7144 | # KCC will only create a shared library if the output file |
| 7145 | # ends with ".so" (or ".sl" for HP-UX), so rename the library |
| 7146 | # to its proper name (with version) after linking. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7147 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7148 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7149 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7150 | _LT_TAGVAR(hardcode_libdir_separator, $1)=: |
| 7151 | |
| 7152 | # Archives containing C++ object files must be created using |
| 7153 | # the KAI C++ compiler. |
| 7154 | case $host in |
| 7155 | osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; |
| 7156 | *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;; |
| 7157 | esac |
| 7158 | ;; |
| 7159 | RCC*) |
| 7160 | # Rational C++ 2.4.1 |
| 7161 | # FIXME: insert proper C++ library support |
| 7162 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 7163 | ;; |
| 7164 | cxx*) |
| 7165 | case $host in |
| 7166 | osf3*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7167 | _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' |
| 7168 | _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' |
| 7169 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7170 | ;; |
| 7171 | *) |
| 7172 | _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7173 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7174 | _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7175 | echo "-hidden">> $lib.exp~ |
| 7176 | $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~ |
| 7177 | $RM $lib.exp' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7178 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' |
| 7179 | ;; |
| 7180 | esac |
| 7181 | |
| 7182 | _LT_TAGVAR(hardcode_libdir_separator, $1)=: |
| 7183 | |
| 7184 | # Commands to make compiler produce verbose output that lists |
| 7185 | # what "hidden" libraries, object files and flags are used when |
| 7186 | # linking a shared library. |
| 7187 | # |
| 7188 | # There doesn't appear to be a way to prevent this compiler from |
| 7189 | # explicitly linking system object files so we need to strip them |
| 7190 | # from the output so that they don't get included in the library |
| 7191 | # dependencies. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7192 | 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"' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7193 | ;; |
| 7194 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7195 | if test yes,no = "$GXX,$with_gnu_ld"; then |
| 7196 | _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7197 | case $host in |
| 7198 | osf3*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7199 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7200 | ;; |
| 7201 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7202 | _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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7203 | ;; |
| 7204 | esac |
| 7205 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7206 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7207 | _LT_TAGVAR(hardcode_libdir_separator, $1)=: |
| 7208 | |
| 7209 | # Commands to make compiler produce verbose output that lists |
| 7210 | # what "hidden" libraries, object files and flags are used when |
| 7211 | # linking a shared library. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7212 | output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7213 | |
| 7214 | else |
| 7215 | # FIXME: insert proper C++ library support |
| 7216 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 7217 | fi |
| 7218 | ;; |
| 7219 | esac |
| 7220 | ;; |
| 7221 | |
| 7222 | psos*) |
| 7223 | # FIXME: insert proper C++ library support |
| 7224 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 7225 | ;; |
| 7226 | |
| 7227 | sunos4*) |
| 7228 | case $cc_basename in |
| 7229 | CC*) |
| 7230 | # Sun C++ 4.x |
| 7231 | # FIXME: insert proper C++ library support |
| 7232 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 7233 | ;; |
| 7234 | lcc*) |
| 7235 | # Lucid |
| 7236 | # FIXME: insert proper C++ library support |
| 7237 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 7238 | ;; |
| 7239 | *) |
| 7240 | # FIXME: insert proper C++ library support |
| 7241 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 7242 | ;; |
| 7243 | esac |
| 7244 | ;; |
| 7245 | |
| 7246 | solaris*) |
| 7247 | case $cc_basename in |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7248 | CC* | sunCC*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7249 | # Sun C++ 4.2, 5.x and Centerline C++ |
| 7250 | _LT_TAGVAR(archive_cmds_need_lc,$1)=yes |
| 7251 | _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7252 | _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7253 | _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7254 | $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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7255 | |
| 7256 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' |
| 7257 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
| 7258 | case $host_os in |
| 7259 | solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; |
| 7260 | *) |
| 7261 | # The compiler driver will combine and reorder linker options, |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7262 | # but understands '-z linker_flag'. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7263 | # Supported since Solaris 2.6 (maybe 2.5.1?) |
| 7264 | _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' |
| 7265 | ;; |
| 7266 | esac |
| 7267 | _LT_TAGVAR(link_all_deplibs, $1)=yes |
| 7268 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7269 | output_verbose_link_cmd='func_echo_all' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7270 | |
| 7271 | # Archives containing C++ object files must be created using |
| 7272 | # "CC -xar", where "CC" is the Sun C++ compiler. This is |
| 7273 | # necessary to make sure instantiated templates are included |
| 7274 | # in the archive. |
| 7275 | _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' |
| 7276 | ;; |
| 7277 | gcx*) |
| 7278 | # Green Hills C++ Compiler |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7279 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7280 | |
| 7281 | # The C++ compiler must be used to create the archive. |
| 7282 | _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' |
| 7283 | ;; |
| 7284 | *) |
| 7285 | # GNU C++ compiler with Solaris linker |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7286 | if test yes,no = "$GXX,$with_gnu_ld"; then |
| 7287 | _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7288 | if $CC --version | $GREP -v '^2\.7' > /dev/null; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7289 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7290 | _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7291 | $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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7292 | |
| 7293 | # Commands to make compiler produce verbose output that lists |
| 7294 | # what "hidden" libraries, object files and flags are used when |
| 7295 | # linking a shared library. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7296 | output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7297 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7298 | # g++ 2.7 appears to require '-G' NOT '-shared' on this |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7299 | # platform. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7300 | _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7301 | _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7302 | $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' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7303 | |
| 7304 | # Commands to make compiler produce verbose output that lists |
| 7305 | # what "hidden" libraries, object files and flags are used when |
| 7306 | # linking a shared library. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7307 | output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7308 | fi |
| 7309 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7310 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7311 | case $host_os in |
| 7312 | solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; |
| 7313 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7314 | _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7315 | ;; |
| 7316 | esac |
| 7317 | fi |
| 7318 | ;; |
| 7319 | esac |
| 7320 | ;; |
| 7321 | |
| 7322 | sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7323 | _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7324 | _LT_TAGVAR(archive_cmds_need_lc, $1)=no |
| 7325 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
| 7326 | runpath_var='LD_RUN_PATH' |
| 7327 | |
| 7328 | case $cc_basename in |
| 7329 | CC*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7330 | _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' |
| 7331 | _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7332 | ;; |
| 7333 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7334 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' |
| 7335 | _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7336 | ;; |
| 7337 | esac |
| 7338 | ;; |
| 7339 | |
| 7340 | sysv5* | sco3.2v5* | sco5v6*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7341 | # Note: We CANNOT use -z defs as we might desire, because we do not |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7342 | # link with -lc, and that would cause any symbols used from libc to |
| 7343 | # always be unresolved, which means just about no library would |
| 7344 | # ever link correctly. If we're not using GNU ld we use -z text |
| 7345 | # though, which does catch some bad symbols but isn't as heavy-handed |
| 7346 | # as -z defs. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7347 | _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' |
| 7348 | _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7349 | _LT_TAGVAR(archive_cmds_need_lc, $1)=no |
| 7350 | _LT_TAGVAR(hardcode_shlibpath_var, $1)=no |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7351 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7352 | _LT_TAGVAR(hardcode_libdir_separator, $1)=':' |
| 7353 | _LT_TAGVAR(link_all_deplibs, $1)=yes |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7354 | _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7355 | runpath_var='LD_RUN_PATH' |
| 7356 | |
| 7357 | case $cc_basename in |
| 7358 | CC*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7359 | _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' |
| 7360 | _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7361 | _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7362 | '"$_LT_TAGVAR(old_archive_cmds, $1)" |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7363 | _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7364 | '"$_LT_TAGVAR(reload_cmds, $1)" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7365 | ;; |
| 7366 | *) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7367 | _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' |
| 7368 | _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7369 | ;; |
| 7370 | esac |
| 7371 | ;; |
| 7372 | |
| 7373 | tandem*) |
| 7374 | case $cc_basename in |
| 7375 | NCC*) |
| 7376 | # NonStop-UX NCC 3.20 |
| 7377 | # FIXME: insert proper C++ library support |
| 7378 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 7379 | ;; |
| 7380 | *) |
| 7381 | # FIXME: insert proper C++ library support |
| 7382 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 7383 | ;; |
| 7384 | esac |
| 7385 | ;; |
| 7386 | |
| 7387 | vxworks*) |
| 7388 | # FIXME: insert proper C++ library support |
| 7389 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 7390 | ;; |
| 7391 | |
| 7392 | *) |
| 7393 | # FIXME: insert proper C++ library support |
| 7394 | _LT_TAGVAR(ld_shlibs, $1)=no |
| 7395 | ;; |
| 7396 | esac |
| 7397 | |
| 7398 | AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7399 | test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7400 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7401 | _LT_TAGVAR(GCC, $1)=$GXX |
| 7402 | _LT_TAGVAR(LD, $1)=$LD |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7403 | |
| 7404 | ## CAVEAT EMPTOR: |
| 7405 | ## There is no encapsulation within the following macros, do not change |
| 7406 | ## the running order or otherwise move them around unless you know exactly |
| 7407 | ## what you are doing... |
| 7408 | _LT_SYS_HIDDEN_LIBDEPS($1) |
| 7409 | _LT_COMPILER_PIC($1) |
| 7410 | _LT_COMPILER_C_O($1) |
| 7411 | _LT_COMPILER_FILE_LOCKS($1) |
| 7412 | _LT_LINKER_SHLIBS($1) |
| 7413 | _LT_SYS_DYNAMIC_LINKER($1) |
| 7414 | _LT_LINKER_HARDCODE_LIBPATH($1) |
| 7415 | |
| 7416 | _LT_CONFIG($1) |
| 7417 | fi # test -n "$compiler" |
| 7418 | |
| 7419 | CC=$lt_save_CC |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7420 | CFLAGS=$lt_save_CFLAGS |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7421 | LDCXX=$LD |
| 7422 | LD=$lt_save_LD |
| 7423 | GCC=$lt_save_GCC |
| 7424 | with_gnu_ld=$lt_save_with_gnu_ld |
| 7425 | lt_cv_path_LDCXX=$lt_cv_path_LD |
| 7426 | lt_cv_path_LD=$lt_save_path_LD |
| 7427 | lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld |
| 7428 | lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7429 | fi # test yes != "$_lt_caught_CXX_error" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7430 | |
| 7431 | AC_LANG_POP |
| 7432 | ])# _LT_LANG_CXX_CONFIG |
| 7433 | |
| 7434 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7435 | # _LT_FUNC_STRIPNAME_CNF |
| 7436 | # ---------------------- |
| 7437 | # func_stripname_cnf prefix suffix name |
| 7438 | # strip PREFIX and SUFFIX off of NAME. |
| 7439 | # PREFIX and SUFFIX must not contain globbing or regex special |
| 7440 | # characters, hashes, percent signs, but SUFFIX may contain a leading |
| 7441 | # dot (in which case that matches only a dot). |
| 7442 | # |
| 7443 | # This function is identical to the (non-XSI) version of func_stripname, |
| 7444 | # except this one can be used by m4 code that may be executed by configure, |
| 7445 | # rather than the libtool script. |
| 7446 | m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl |
| 7447 | AC_REQUIRE([_LT_DECL_SED]) |
| 7448 | AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH]) |
| 7449 | func_stripname_cnf () |
| 7450 | { |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7451 | case @S|@2 in |
| 7452 | .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;; |
| 7453 | *) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7454 | esac |
| 7455 | } # func_stripname_cnf |
| 7456 | ])# _LT_FUNC_STRIPNAME_CNF |
| 7457 | |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 7458 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7459 | # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME]) |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 7460 | # --------------------------------- |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7461 | # Figure out "hidden" library dependencies from verbose |
| 7462 | # compiler output when linking a shared library. |
| 7463 | # Parse the compiler output and extract the necessary |
| 7464 | # objects, libraries and library flags. |
| 7465 | m4_defun([_LT_SYS_HIDDEN_LIBDEPS], |
| 7466 | [m4_require([_LT_FILEUTILS_DEFAULTS])dnl |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7467 | AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7468 | # Dependencies to place before and after the object being linked: |
| 7469 | _LT_TAGVAR(predep_objects, $1)= |
| 7470 | _LT_TAGVAR(postdep_objects, $1)= |
| 7471 | _LT_TAGVAR(predeps, $1)= |
| 7472 | _LT_TAGVAR(postdeps, $1)= |
| 7473 | _LT_TAGVAR(compiler_lib_search_path, $1)= |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 7474 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7475 | dnl we can't use the lt_simple_compile_test_code here, |
| 7476 | dnl because it contains code intended for an executable, |
| 7477 | dnl not a library. It's possible we should let each |
| 7478 | dnl tag define a new lt_????_link_test_code variable, |
| 7479 | dnl but it's only used here... |
| 7480 | m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF |
| 7481 | int a; |
| 7482 | void foo (void) { a = 0; } |
| 7483 | _LT_EOF |
| 7484 | ], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF |
| 7485 | class Foo |
| 7486 | { |
| 7487 | public: |
| 7488 | Foo (void) { a = 0; } |
| 7489 | private: |
| 7490 | int a; |
| 7491 | }; |
| 7492 | _LT_EOF |
| 7493 | ], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF |
| 7494 | subroutine foo |
| 7495 | implicit none |
| 7496 | integer*4 a |
| 7497 | a=0 |
| 7498 | return |
| 7499 | end |
| 7500 | _LT_EOF |
| 7501 | ], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF |
| 7502 | subroutine foo |
| 7503 | implicit none |
| 7504 | integer a |
| 7505 | a=0 |
| 7506 | return |
| 7507 | end |
| 7508 | _LT_EOF |
| 7509 | ], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF |
| 7510 | public class foo { |
| 7511 | private int a; |
| 7512 | public void bar (void) { |
| 7513 | a = 0; |
| 7514 | } |
| 7515 | }; |
| 7516 | _LT_EOF |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7517 | ], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF |
| 7518 | package foo |
| 7519 | func foo() { |
| 7520 | } |
| 7521 | _LT_EOF |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7522 | ]) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7523 | |
| 7524 | _lt_libdeps_save_CFLAGS=$CFLAGS |
| 7525 | case "$CC $CFLAGS " in #( |
| 7526 | *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;; |
| 7527 | *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;; |
| 7528 | *\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;; |
| 7529 | esac |
| 7530 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7531 | dnl Parse the compiler output and extract the necessary |
| 7532 | dnl objects, libraries and library flags. |
| 7533 | if AC_TRY_EVAL(ac_compile); then |
| 7534 | # Parse the compiler output and extract the necessary |
| 7535 | # objects, libraries and library flags. |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 7536 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7537 | # Sentinel used to keep track of whether or not we are before |
| 7538 | # the conftest object file. |
| 7539 | pre_test_object_deps_done=no |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 7540 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7541 | for p in `eval "$output_verbose_link_cmd"`; do |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7542 | case $prev$p in |
jef | 56a97f9 | 2012-08-20 14:35:58 -0700 | [diff] [blame] | 7543 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7544 | -L* | -R* | -l*) |
| 7545 | # Some compilers place space between "-{L,R}" and the path. |
| 7546 | # Remove the space. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7547 | if test x-L = "$p" || |
| 7548 | test x-R = "$p"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7549 | prev=$p |
| 7550 | continue |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7551 | fi |
| 7552 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7553 | # Expand the sysroot to ease extracting the directories later. |
| 7554 | if test -z "$prev"; then |
| 7555 | case $p in |
| 7556 | -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;; |
| 7557 | -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;; |
| 7558 | -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;; |
| 7559 | esac |
| 7560 | fi |
| 7561 | case $p in |
| 7562 | =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;; |
| 7563 | esac |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7564 | if test no = "$pre_test_object_deps_done"; then |
| 7565 | case $prev in |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7566 | -L | -R) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7567 | # Internal compiler library paths should come after those |
| 7568 | # provided the user. The postdeps already come after the |
| 7569 | # user supplied libs so there is no need to process them. |
| 7570 | if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7571 | _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7572 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7573 | _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7574 | fi |
| 7575 | ;; |
| 7576 | # The "-l" case would never come before the object being |
| 7577 | # linked, so don't bother handling this case. |
| 7578 | esac |
| 7579 | else |
| 7580 | if test -z "$_LT_TAGVAR(postdeps, $1)"; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7581 | _LT_TAGVAR(postdeps, $1)=$prev$p |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7582 | else |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7583 | _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7584 | fi |
| 7585 | fi |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7586 | prev= |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7587 | ;; |
| 7588 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7589 | *.lto.$objext) ;; # Ignore GCC LTO objects |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7590 | *.$objext) |
| 7591 | # This assumes that the test object file only shows up |
| 7592 | # once in the compiler output. |
| 7593 | if test "$p" = "conftest.$objext"; then |
| 7594 | pre_test_object_deps_done=yes |
| 7595 | continue |
| 7596 | fi |
| 7597 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7598 | if test no = "$pre_test_object_deps_done"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7599 | if test -z "$_LT_TAGVAR(predep_objects, $1)"; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7600 | _LT_TAGVAR(predep_objects, $1)=$p |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7601 | else |
| 7602 | _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p" |
| 7603 | fi |
| 7604 | else |
| 7605 | if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7606 | _LT_TAGVAR(postdep_objects, $1)=$p |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7607 | else |
| 7608 | _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p" |
| 7609 | fi |
| 7610 | fi |
| 7611 | ;; |
| 7612 | |
| 7613 | *) ;; # Ignore the rest. |
| 7614 | |
| 7615 | esac |
| 7616 | done |
| 7617 | |
| 7618 | # Clean up. |
| 7619 | rm -f a.out a.exe |
| 7620 | else |
| 7621 | echo "libtool.m4: error: problem compiling $1 test program" |
| 7622 | fi |
| 7623 | |
| 7624 | $RM -f confest.$objext |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7625 | CFLAGS=$_lt_libdeps_save_CFLAGS |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7626 | |
| 7627 | # PORTME: override above test on systems where it is broken |
| 7628 | m4_if([$1], [CXX], |
| 7629 | [case $host_os in |
| 7630 | interix[[3-9]]*) |
| 7631 | # Interix 3.5 installs completely hosed .la files for C++, so rather than |
| 7632 | # hack all around it, let's just trust "g++" to DTRT. |
| 7633 | _LT_TAGVAR(predep_objects,$1)= |
| 7634 | _LT_TAGVAR(postdep_objects,$1)= |
| 7635 | _LT_TAGVAR(postdeps,$1)= |
| 7636 | ;; |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7637 | esac |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 7638 | ]) |
jef | 2ab386b | 2012-08-10 12:43:50 -0700 | [diff] [blame] | 7639 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7640 | case " $_LT_TAGVAR(postdeps, $1) " in |
| 7641 | *" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; |
| 7642 | esac |
| 7643 | _LT_TAGVAR(compiler_lib_search_dirs, $1)= |
| 7644 | if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7645 | _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'` |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7646 | fi |
| 7647 | _LT_TAGDECL([], [compiler_lib_search_dirs], [1], |
| 7648 | [The directories searched by this compiler when creating a shared library]) |
| 7649 | _LT_TAGDECL([], [predep_objects], [1], |
| 7650 | [Dependencies to place before and after the objects being linked to |
| 7651 | create a shared library]) |
| 7652 | _LT_TAGDECL([], [postdep_objects], [1]) |
| 7653 | _LT_TAGDECL([], [predeps], [1]) |
| 7654 | _LT_TAGDECL([], [postdeps], [1]) |
| 7655 | _LT_TAGDECL([], [compiler_lib_search_path], [1], |
| 7656 | [The library search path used internally by the compiler when linking |
| 7657 | a shared library]) |
| 7658 | ])# _LT_SYS_HIDDEN_LIBDEPS |
| 7659 | |
| 7660 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7661 | # _LT_LANG_F77_CONFIG([TAG]) |
| 7662 | # -------------------------- |
| 7663 | # Ensure that the configuration variables for a Fortran 77 compiler are |
| 7664 | # suitably defined. These variables are subsequently used by _LT_CONFIG |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7665 | # to write the compiler configuration to 'libtool'. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7666 | m4_defun([_LT_LANG_F77_CONFIG], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7667 | [AC_LANG_PUSH(Fortran 77) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7668 | if test -z "$F77" || test no = "$F77"; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7669 | _lt_disable_F77=yes |
| 7670 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7671 | |
| 7672 | _LT_TAGVAR(archive_cmds_need_lc, $1)=no |
| 7673 | _LT_TAGVAR(allow_undefined_flag, $1)= |
| 7674 | _LT_TAGVAR(always_export_symbols, $1)=no |
| 7675 | _LT_TAGVAR(archive_expsym_cmds, $1)= |
| 7676 | _LT_TAGVAR(export_dynamic_flag_spec, $1)= |
| 7677 | _LT_TAGVAR(hardcode_direct, $1)=no |
| 7678 | _LT_TAGVAR(hardcode_direct_absolute, $1)=no |
| 7679 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7680 | _LT_TAGVAR(hardcode_libdir_separator, $1)= |
| 7681 | _LT_TAGVAR(hardcode_minus_L, $1)=no |
| 7682 | _LT_TAGVAR(hardcode_automatic, $1)=no |
| 7683 | _LT_TAGVAR(inherit_rpath, $1)=no |
| 7684 | _LT_TAGVAR(module_cmds, $1)= |
| 7685 | _LT_TAGVAR(module_expsym_cmds, $1)= |
| 7686 | _LT_TAGVAR(link_all_deplibs, $1)=unknown |
| 7687 | _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7688 | _LT_TAGVAR(reload_flag, $1)=$reload_flag |
| 7689 | _LT_TAGVAR(reload_cmds, $1)=$reload_cmds |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7690 | _LT_TAGVAR(no_undefined_flag, $1)= |
| 7691 | _LT_TAGVAR(whole_archive_flag_spec, $1)= |
| 7692 | _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no |
| 7693 | |
| 7694 | # Source file extension for f77 test sources. |
| 7695 | ac_ext=f |
| 7696 | |
| 7697 | # Object file extension for compiled f77 test sources. |
| 7698 | objext=o |
| 7699 | _LT_TAGVAR(objext, $1)=$objext |
| 7700 | |
| 7701 | # No sense in running all these tests if we already determined that |
| 7702 | # the F77 compiler isn't working. Some variables (like enable_shared) |
| 7703 | # are currently assumed to apply to all compilers on this platform, |
| 7704 | # and will be corrupted by setting them based on a non-working compiler. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7705 | if test yes != "$_lt_disable_F77"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7706 | # Code to be used in simple compile tests |
| 7707 | lt_simple_compile_test_code="\ |
| 7708 | subroutine t |
| 7709 | return |
| 7710 | end |
| 7711 | " |
| 7712 | |
| 7713 | # Code to be used in simple link tests |
| 7714 | lt_simple_link_test_code="\ |
| 7715 | program t |
| 7716 | end |
| 7717 | " |
| 7718 | |
| 7719 | # ltmain only uses $CC for tagged configurations so make sure $CC is set. |
| 7720 | _LT_TAG_COMPILER |
| 7721 | |
| 7722 | # save warnings/boilerplate of simple test code |
| 7723 | _LT_COMPILER_BOILERPLATE |
| 7724 | _LT_LINKER_BOILERPLATE |
| 7725 | |
| 7726 | # Allow CC to be a program name with arguments. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7727 | lt_save_CC=$CC |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7728 | lt_save_GCC=$GCC |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7729 | lt_save_CFLAGS=$CFLAGS |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7730 | CC=${F77-"f77"} |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7731 | CFLAGS=$FFLAGS |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7732 | compiler=$CC |
| 7733 | _LT_TAGVAR(compiler, $1)=$CC |
| 7734 | _LT_CC_BASENAME([$compiler]) |
| 7735 | GCC=$G77 |
| 7736 | if test -n "$compiler"; then |
| 7737 | AC_MSG_CHECKING([if libtool supports shared libraries]) |
| 7738 | AC_MSG_RESULT([$can_build_shared]) |
| 7739 | |
| 7740 | AC_MSG_CHECKING([whether to build shared libraries]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7741 | test no = "$can_build_shared" && enable_shared=no |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7742 | |
| 7743 | # On AIX, shared libraries and static libraries use the same namespace, and |
| 7744 | # are all built from PIC. |
| 7745 | case $host_os in |
| 7746 | aix3*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7747 | test yes = "$enable_shared" && enable_static=no |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7748 | if test -n "$RANLIB"; then |
| 7749 | archive_cmds="$archive_cmds~\$RANLIB \$lib" |
| 7750 | postinstall_cmds='$RANLIB $lib' |
| 7751 | fi |
| 7752 | ;; |
| 7753 | aix[[4-9]]*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7754 | if test ia64 != "$host_cpu"; then |
| 7755 | case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in |
| 7756 | yes,aix,yes) ;; # shared object as lib.so file only |
| 7757 | yes,svr4,*) ;; # shared object as lib.so archive member only |
| 7758 | yes,*) enable_static=no ;; # shared object in lib.a archive as well |
| 7759 | esac |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7760 | fi |
| 7761 | ;; |
| 7762 | esac |
| 7763 | AC_MSG_RESULT([$enable_shared]) |
| 7764 | |
| 7765 | AC_MSG_CHECKING([whether to build static libraries]) |
| 7766 | # Make sure either enable_shared or enable_static is yes. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7767 | test yes = "$enable_shared" || enable_static=yes |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7768 | AC_MSG_RESULT([$enable_static]) |
| 7769 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7770 | _LT_TAGVAR(GCC, $1)=$G77 |
| 7771 | _LT_TAGVAR(LD, $1)=$LD |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7772 | |
| 7773 | ## CAVEAT EMPTOR: |
| 7774 | ## There is no encapsulation within the following macros, do not change |
| 7775 | ## the running order or otherwise move them around unless you know exactly |
| 7776 | ## what you are doing... |
| 7777 | _LT_COMPILER_PIC($1) |
| 7778 | _LT_COMPILER_C_O($1) |
| 7779 | _LT_COMPILER_FILE_LOCKS($1) |
| 7780 | _LT_LINKER_SHLIBS($1) |
| 7781 | _LT_SYS_DYNAMIC_LINKER($1) |
| 7782 | _LT_LINKER_HARDCODE_LIBPATH($1) |
| 7783 | |
| 7784 | _LT_CONFIG($1) |
| 7785 | fi # test -n "$compiler" |
| 7786 | |
| 7787 | GCC=$lt_save_GCC |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7788 | CC=$lt_save_CC |
| 7789 | CFLAGS=$lt_save_CFLAGS |
| 7790 | fi # test yes != "$_lt_disable_F77" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7791 | |
| 7792 | AC_LANG_POP |
| 7793 | ])# _LT_LANG_F77_CONFIG |
| 7794 | |
| 7795 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7796 | # _LT_LANG_FC_CONFIG([TAG]) |
| 7797 | # ------------------------- |
| 7798 | # Ensure that the configuration variables for a Fortran compiler are |
| 7799 | # suitably defined. These variables are subsequently used by _LT_CONFIG |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7800 | # to write the compiler configuration to 'libtool'. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7801 | m4_defun([_LT_LANG_FC_CONFIG], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7802 | [AC_LANG_PUSH(Fortran) |
| 7803 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7804 | if test -z "$FC" || test no = "$FC"; then |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7805 | _lt_disable_FC=yes |
| 7806 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7807 | |
| 7808 | _LT_TAGVAR(archive_cmds_need_lc, $1)=no |
| 7809 | _LT_TAGVAR(allow_undefined_flag, $1)= |
| 7810 | _LT_TAGVAR(always_export_symbols, $1)=no |
| 7811 | _LT_TAGVAR(archive_expsym_cmds, $1)= |
| 7812 | _LT_TAGVAR(export_dynamic_flag_spec, $1)= |
| 7813 | _LT_TAGVAR(hardcode_direct, $1)=no |
| 7814 | _LT_TAGVAR(hardcode_direct_absolute, $1)=no |
| 7815 | _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7816 | _LT_TAGVAR(hardcode_libdir_separator, $1)= |
| 7817 | _LT_TAGVAR(hardcode_minus_L, $1)=no |
| 7818 | _LT_TAGVAR(hardcode_automatic, $1)=no |
| 7819 | _LT_TAGVAR(inherit_rpath, $1)=no |
| 7820 | _LT_TAGVAR(module_cmds, $1)= |
| 7821 | _LT_TAGVAR(module_expsym_cmds, $1)= |
| 7822 | _LT_TAGVAR(link_all_deplibs, $1)=unknown |
| 7823 | _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7824 | _LT_TAGVAR(reload_flag, $1)=$reload_flag |
| 7825 | _LT_TAGVAR(reload_cmds, $1)=$reload_cmds |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7826 | _LT_TAGVAR(no_undefined_flag, $1)= |
| 7827 | _LT_TAGVAR(whole_archive_flag_spec, $1)= |
| 7828 | _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no |
| 7829 | |
| 7830 | # Source file extension for fc test sources. |
| 7831 | ac_ext=${ac_fc_srcext-f} |
| 7832 | |
| 7833 | # Object file extension for compiled fc test sources. |
| 7834 | objext=o |
| 7835 | _LT_TAGVAR(objext, $1)=$objext |
| 7836 | |
| 7837 | # No sense in running all these tests if we already determined that |
| 7838 | # the FC compiler isn't working. Some variables (like enable_shared) |
| 7839 | # are currently assumed to apply to all compilers on this platform, |
| 7840 | # and will be corrupted by setting them based on a non-working compiler. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7841 | if test yes != "$_lt_disable_FC"; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7842 | # Code to be used in simple compile tests |
| 7843 | lt_simple_compile_test_code="\ |
| 7844 | subroutine t |
| 7845 | return |
| 7846 | end |
| 7847 | " |
| 7848 | |
| 7849 | # Code to be used in simple link tests |
| 7850 | lt_simple_link_test_code="\ |
| 7851 | program t |
| 7852 | end |
| 7853 | " |
| 7854 | |
| 7855 | # ltmain only uses $CC for tagged configurations so make sure $CC is set. |
| 7856 | _LT_TAG_COMPILER |
| 7857 | |
| 7858 | # save warnings/boilerplate of simple test code |
| 7859 | _LT_COMPILER_BOILERPLATE |
| 7860 | _LT_LINKER_BOILERPLATE |
| 7861 | |
| 7862 | # Allow CC to be a program name with arguments. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7863 | lt_save_CC=$CC |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7864 | lt_save_GCC=$GCC |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7865 | lt_save_CFLAGS=$CFLAGS |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7866 | CC=${FC-"f95"} |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7867 | CFLAGS=$FCFLAGS |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7868 | compiler=$CC |
| 7869 | GCC=$ac_cv_fc_compiler_gnu |
| 7870 | |
| 7871 | _LT_TAGVAR(compiler, $1)=$CC |
| 7872 | _LT_CC_BASENAME([$compiler]) |
| 7873 | |
| 7874 | if test -n "$compiler"; then |
| 7875 | AC_MSG_CHECKING([if libtool supports shared libraries]) |
| 7876 | AC_MSG_RESULT([$can_build_shared]) |
| 7877 | |
| 7878 | AC_MSG_CHECKING([whether to build shared libraries]) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7879 | test no = "$can_build_shared" && enable_shared=no |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7880 | |
| 7881 | # On AIX, shared libraries and static libraries use the same namespace, and |
| 7882 | # are all built from PIC. |
| 7883 | case $host_os in |
| 7884 | aix3*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7885 | test yes = "$enable_shared" && enable_static=no |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7886 | if test -n "$RANLIB"; then |
| 7887 | archive_cmds="$archive_cmds~\$RANLIB \$lib" |
| 7888 | postinstall_cmds='$RANLIB $lib' |
| 7889 | fi |
| 7890 | ;; |
| 7891 | aix[[4-9]]*) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7892 | if test ia64 != "$host_cpu"; then |
| 7893 | case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in |
| 7894 | yes,aix,yes) ;; # shared object as lib.so file only |
| 7895 | yes,svr4,*) ;; # shared object as lib.so archive member only |
| 7896 | yes,*) enable_static=no ;; # shared object in lib.a archive as well |
| 7897 | esac |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7898 | fi |
| 7899 | ;; |
| 7900 | esac |
| 7901 | AC_MSG_RESULT([$enable_shared]) |
| 7902 | |
| 7903 | AC_MSG_CHECKING([whether to build static libraries]) |
| 7904 | # Make sure either enable_shared or enable_static is yes. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7905 | test yes = "$enable_shared" || enable_static=yes |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7906 | AC_MSG_RESULT([$enable_static]) |
| 7907 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7908 | _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu |
| 7909 | _LT_TAGVAR(LD, $1)=$LD |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7910 | |
| 7911 | ## CAVEAT EMPTOR: |
| 7912 | ## There is no encapsulation within the following macros, do not change |
| 7913 | ## the running order or otherwise move them around unless you know exactly |
| 7914 | ## what you are doing... |
| 7915 | _LT_SYS_HIDDEN_LIBDEPS($1) |
| 7916 | _LT_COMPILER_PIC($1) |
| 7917 | _LT_COMPILER_C_O($1) |
| 7918 | _LT_COMPILER_FILE_LOCKS($1) |
| 7919 | _LT_LINKER_SHLIBS($1) |
| 7920 | _LT_SYS_DYNAMIC_LINKER($1) |
| 7921 | _LT_LINKER_HARDCODE_LIBPATH($1) |
| 7922 | |
| 7923 | _LT_CONFIG($1) |
| 7924 | fi # test -n "$compiler" |
| 7925 | |
| 7926 | GCC=$lt_save_GCC |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7927 | CC=$lt_save_CC |
| 7928 | CFLAGS=$lt_save_CFLAGS |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7929 | fi # test yes != "$_lt_disable_FC" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7930 | |
| 7931 | AC_LANG_POP |
| 7932 | ])# _LT_LANG_FC_CONFIG |
| 7933 | |
| 7934 | |
| 7935 | # _LT_LANG_GCJ_CONFIG([TAG]) |
| 7936 | # -------------------------- |
| 7937 | # Ensure that the configuration variables for the GNU Java Compiler compiler |
| 7938 | # are suitably defined. These variables are subsequently used by _LT_CONFIG |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7939 | # to write the compiler configuration to 'libtool'. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7940 | m4_defun([_LT_LANG_GCJ_CONFIG], |
| 7941 | [AC_REQUIRE([LT_PROG_GCJ])dnl |
| 7942 | AC_LANG_SAVE |
| 7943 | |
| 7944 | # Source file extension for Java test sources. |
| 7945 | ac_ext=java |
| 7946 | |
| 7947 | # Object file extension for compiled Java test sources. |
| 7948 | objext=o |
| 7949 | _LT_TAGVAR(objext, $1)=$objext |
| 7950 | |
| 7951 | # Code to be used in simple compile tests |
| 7952 | lt_simple_compile_test_code="class foo {}" |
| 7953 | |
| 7954 | # Code to be used in simple link tests |
| 7955 | lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }' |
| 7956 | |
| 7957 | # ltmain only uses $CC for tagged configurations so make sure $CC is set. |
| 7958 | _LT_TAG_COMPILER |
| 7959 | |
| 7960 | # save warnings/boilerplate of simple test code |
| 7961 | _LT_COMPILER_BOILERPLATE |
| 7962 | _LT_LINKER_BOILERPLATE |
| 7963 | |
| 7964 | # Allow CC to be a program name with arguments. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7965 | lt_save_CC=$CC |
| 7966 | lt_save_CFLAGS=$CFLAGS |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7967 | lt_save_GCC=$GCC |
| 7968 | GCC=yes |
| 7969 | CC=${GCJ-"gcj"} |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7970 | CFLAGS=$GCJFLAGS |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7971 | compiler=$CC |
| 7972 | _LT_TAGVAR(compiler, $1)=$CC |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 7973 | _LT_TAGVAR(LD, $1)=$LD |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7974 | _LT_CC_BASENAME([$compiler]) |
| 7975 | |
| 7976 | # GCJ did not exist at the time GCC didn't implicitly link libc in. |
| 7977 | _LT_TAGVAR(archive_cmds_need_lc, $1)=no |
| 7978 | |
| 7979 | _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7980 | _LT_TAGVAR(reload_flag, $1)=$reload_flag |
| 7981 | _LT_TAGVAR(reload_cmds, $1)=$reload_cmds |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7982 | |
| 7983 | if test -n "$compiler"; then |
| 7984 | _LT_COMPILER_NO_RTTI($1) |
| 7985 | _LT_COMPILER_PIC($1) |
| 7986 | _LT_COMPILER_C_O($1) |
| 7987 | _LT_COMPILER_FILE_LOCKS($1) |
| 7988 | _LT_LINKER_SHLIBS($1) |
| 7989 | _LT_LINKER_HARDCODE_LIBPATH($1) |
| 7990 | |
| 7991 | _LT_CONFIG($1) |
| 7992 | fi |
| 7993 | |
| 7994 | AC_LANG_RESTORE |
| 7995 | |
| 7996 | GCC=$lt_save_GCC |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 7997 | CC=$lt_save_CC |
| 7998 | CFLAGS=$lt_save_CFLAGS |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 7999 | ])# _LT_LANG_GCJ_CONFIG |
| 8000 | |
| 8001 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8002 | # _LT_LANG_GO_CONFIG([TAG]) |
| 8003 | # -------------------------- |
| 8004 | # Ensure that the configuration variables for the GNU Go compiler |
| 8005 | # are suitably defined. These variables are subsequently used by _LT_CONFIG |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8006 | # to write the compiler configuration to 'libtool'. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8007 | m4_defun([_LT_LANG_GO_CONFIG], |
| 8008 | [AC_REQUIRE([LT_PROG_GO])dnl |
| 8009 | AC_LANG_SAVE |
| 8010 | |
| 8011 | # Source file extension for Go test sources. |
| 8012 | ac_ext=go |
| 8013 | |
| 8014 | # Object file extension for compiled Go test sources. |
| 8015 | objext=o |
| 8016 | _LT_TAGVAR(objext, $1)=$objext |
| 8017 | |
| 8018 | # Code to be used in simple compile tests |
| 8019 | lt_simple_compile_test_code="package main; func main() { }" |
| 8020 | |
| 8021 | # Code to be used in simple link tests |
| 8022 | lt_simple_link_test_code='package main; func main() { }' |
| 8023 | |
| 8024 | # ltmain only uses $CC for tagged configurations so make sure $CC is set. |
| 8025 | _LT_TAG_COMPILER |
| 8026 | |
| 8027 | # save warnings/boilerplate of simple test code |
| 8028 | _LT_COMPILER_BOILERPLATE |
| 8029 | _LT_LINKER_BOILERPLATE |
| 8030 | |
| 8031 | # Allow CC to be a program name with arguments. |
| 8032 | lt_save_CC=$CC |
| 8033 | lt_save_CFLAGS=$CFLAGS |
| 8034 | lt_save_GCC=$GCC |
| 8035 | GCC=yes |
| 8036 | CC=${GOC-"gccgo"} |
| 8037 | CFLAGS=$GOFLAGS |
| 8038 | compiler=$CC |
| 8039 | _LT_TAGVAR(compiler, $1)=$CC |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8040 | _LT_TAGVAR(LD, $1)=$LD |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8041 | _LT_CC_BASENAME([$compiler]) |
| 8042 | |
| 8043 | # Go did not exist at the time GCC didn't implicitly link libc in. |
| 8044 | _LT_TAGVAR(archive_cmds_need_lc, $1)=no |
| 8045 | |
| 8046 | _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds |
| 8047 | _LT_TAGVAR(reload_flag, $1)=$reload_flag |
| 8048 | _LT_TAGVAR(reload_cmds, $1)=$reload_cmds |
| 8049 | |
| 8050 | if test -n "$compiler"; then |
| 8051 | _LT_COMPILER_NO_RTTI($1) |
| 8052 | _LT_COMPILER_PIC($1) |
| 8053 | _LT_COMPILER_C_O($1) |
| 8054 | _LT_COMPILER_FILE_LOCKS($1) |
| 8055 | _LT_LINKER_SHLIBS($1) |
| 8056 | _LT_LINKER_HARDCODE_LIBPATH($1) |
| 8057 | |
| 8058 | _LT_CONFIG($1) |
| 8059 | fi |
| 8060 | |
| 8061 | AC_LANG_RESTORE |
| 8062 | |
| 8063 | GCC=$lt_save_GCC |
| 8064 | CC=$lt_save_CC |
| 8065 | CFLAGS=$lt_save_CFLAGS |
| 8066 | ])# _LT_LANG_GO_CONFIG |
| 8067 | |
| 8068 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8069 | # _LT_LANG_RC_CONFIG([TAG]) |
| 8070 | # ------------------------- |
| 8071 | # Ensure that the configuration variables for the Windows resource compiler |
| 8072 | # are suitably defined. These variables are subsequently used by _LT_CONFIG |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8073 | # to write the compiler configuration to 'libtool'. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8074 | m4_defun([_LT_LANG_RC_CONFIG], |
| 8075 | [AC_REQUIRE([LT_PROG_RC])dnl |
| 8076 | AC_LANG_SAVE |
| 8077 | |
| 8078 | # Source file extension for RC test sources. |
| 8079 | ac_ext=rc |
| 8080 | |
| 8081 | # Object file extension for compiled RC test sources. |
| 8082 | objext=o |
| 8083 | _LT_TAGVAR(objext, $1)=$objext |
| 8084 | |
| 8085 | # Code to be used in simple compile tests |
| 8086 | lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }' |
| 8087 | |
| 8088 | # Code to be used in simple link tests |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8089 | lt_simple_link_test_code=$lt_simple_compile_test_code |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8090 | |
| 8091 | # ltmain only uses $CC for tagged configurations so make sure $CC is set. |
| 8092 | _LT_TAG_COMPILER |
| 8093 | |
| 8094 | # save warnings/boilerplate of simple test code |
| 8095 | _LT_COMPILER_BOILERPLATE |
| 8096 | _LT_LINKER_BOILERPLATE |
| 8097 | |
| 8098 | # Allow CC to be a program name with arguments. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8099 | lt_save_CC=$CC |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8100 | lt_save_CFLAGS=$CFLAGS |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8101 | lt_save_GCC=$GCC |
| 8102 | GCC= |
| 8103 | CC=${RC-"windres"} |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8104 | CFLAGS= |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8105 | compiler=$CC |
| 8106 | _LT_TAGVAR(compiler, $1)=$CC |
| 8107 | _LT_CC_BASENAME([$compiler]) |
| 8108 | _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes |
| 8109 | |
| 8110 | if test -n "$compiler"; then |
| 8111 | : |
| 8112 | _LT_CONFIG($1) |
| 8113 | fi |
| 8114 | |
| 8115 | GCC=$lt_save_GCC |
| 8116 | AC_LANG_RESTORE |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8117 | CC=$lt_save_CC |
| 8118 | CFLAGS=$lt_save_CFLAGS |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8119 | ])# _LT_LANG_RC_CONFIG |
| 8120 | |
| 8121 | |
| 8122 | # LT_PROG_GCJ |
| 8123 | # ----------- |
| 8124 | AC_DEFUN([LT_PROG_GCJ], |
| 8125 | [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ], |
| 8126 | [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ], |
| 8127 | [AC_CHECK_TOOL(GCJ, gcj,) |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8128 | test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2" |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8129 | AC_SUBST(GCJFLAGS)])])[]dnl |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 8130 | ]) |
| 8131 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8132 | # Old name: |
| 8133 | AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ]) |
| 8134 | dnl aclocal-1.4 backwards compatibility: |
| 8135 | dnl AC_DEFUN([LT_AC_PROG_GCJ], []) |
| 8136 | |
| 8137 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8138 | # LT_PROG_GO |
| 8139 | # ---------- |
| 8140 | AC_DEFUN([LT_PROG_GO], |
| 8141 | [AC_CHECK_TOOL(GOC, gccgo,) |
| 8142 | ]) |
| 8143 | |
| 8144 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8145 | # LT_PROG_RC |
| 8146 | # ---------- |
| 8147 | AC_DEFUN([LT_PROG_RC], |
| 8148 | [AC_CHECK_TOOL(RC, windres,) |
| 8149 | ]) |
| 8150 | |
| 8151 | # Old name: |
| 8152 | AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC]) |
| 8153 | dnl aclocal-1.4 backwards compatibility: |
| 8154 | dnl AC_DEFUN([LT_AC_PROG_RC], []) |
| 8155 | |
| 8156 | |
| 8157 | # _LT_DECL_EGREP |
| 8158 | # -------------- |
| 8159 | # If we don't have a new enough Autoconf to choose the best grep |
| 8160 | # available, choose the one first in the user's PATH. |
| 8161 | m4_defun([_LT_DECL_EGREP], |
| 8162 | [AC_REQUIRE([AC_PROG_EGREP])dnl |
| 8163 | AC_REQUIRE([AC_PROG_FGREP])dnl |
| 8164 | test -z "$GREP" && GREP=grep |
| 8165 | _LT_DECL([], [GREP], [1], [A grep program that handles long lines]) |
| 8166 | _LT_DECL([], [EGREP], [1], [An ERE matcher]) |
| 8167 | _LT_DECL([], [FGREP], [1], [A literal string matcher]) |
| 8168 | dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too |
| 8169 | AC_SUBST([GREP]) |
| 8170 | ]) |
| 8171 | |
| 8172 | |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 8173 | # _LT_DECL_OBJDUMP |
| 8174 | # -------------- |
| 8175 | # If we don't have a new enough Autoconf to choose the best objdump |
| 8176 | # available, choose the one first in the user's PATH. |
| 8177 | m4_defun([_LT_DECL_OBJDUMP], |
| 8178 | [AC_CHECK_TOOL(OBJDUMP, objdump, false) |
| 8179 | test -z "$OBJDUMP" && OBJDUMP=objdump |
| 8180 | _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper]) |
| 8181 | AC_SUBST([OBJDUMP]) |
| 8182 | ]) |
| 8183 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8184 | # _LT_DECL_DLLTOOL |
| 8185 | # ---------------- |
| 8186 | # Ensure DLLTOOL variable is set. |
| 8187 | m4_defun([_LT_DECL_DLLTOOL], |
| 8188 | [AC_CHECK_TOOL(DLLTOOL, dlltool, false) |
| 8189 | test -z "$DLLTOOL" && DLLTOOL=dlltool |
| 8190 | _LT_DECL([], [DLLTOOL], [1], [DLL creation program]) |
| 8191 | AC_SUBST([DLLTOOL]) |
| 8192 | ]) |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 8193 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8194 | # _LT_DECL_SED |
| 8195 | # ------------ |
| 8196 | # Check for a fully-functional sed program, that truncates |
| 8197 | # as few characters as possible. Prefer GNU sed if found. |
| 8198 | m4_defun([_LT_DECL_SED], |
| 8199 | [AC_PROG_SED |
| 8200 | test -z "$SED" && SED=sed |
| 8201 | Xsed="$SED -e 1s/^X//" |
| 8202 | _LT_DECL([], [SED], [1], [A sed program that does not truncate output]) |
| 8203 | _LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"], |
| 8204 | [Sed that helps us avoid accidentally triggering echo(1) options like -n]) |
| 8205 | ])# _LT_DECL_SED |
| 8206 | |
| 8207 | m4_ifndef([AC_PROG_SED], [ |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 8208 | # NOTE: This macro has been submitted for inclusion into # |
| 8209 | # GNU Autoconf as AC_PROG_SED. When it is available in # |
| 8210 | # a released version of Autoconf we should remove this # |
| 8211 | # macro and use it instead. # |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8212 | |
| 8213 | m4_defun([AC_PROG_SED], |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 8214 | [AC_MSG_CHECKING([for a sed that does not truncate output]) |
| 8215 | AC_CACHE_VAL(lt_cv_path_SED, |
| 8216 | [# Loop through the user's path and test for sed and gsed. |
| 8217 | # Then use that list of sed's as ones to test for truncation. |
| 8218 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR |
| 8219 | for as_dir in $PATH |
| 8220 | do |
| 8221 | IFS=$as_save_IFS |
| 8222 | test -z "$as_dir" && as_dir=. |
| 8223 | for lt_ac_prog in sed gsed; do |
| 8224 | for ac_exec_ext in '' $ac_executable_extensions; do |
| 8225 | if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then |
| 8226 | lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" |
| 8227 | fi |
| 8228 | done |
| 8229 | done |
| 8230 | done |
| 8231 | IFS=$as_save_IFS |
| 8232 | lt_ac_max=0 |
| 8233 | lt_ac_count=0 |
| 8234 | # Add /usr/xpg4/bin/sed as it is typically found on Solaris |
| 8235 | # along with /bin/sed that truncates output. |
| 8236 | for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8237 | test ! -f "$lt_ac_sed" && continue |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 8238 | cat /dev/null > conftest.in |
| 8239 | lt_ac_count=0 |
| 8240 | echo $ECHO_N "0123456789$ECHO_C" >conftest.in |
| 8241 | # Check for GNU sed and select it if it is found. |
| 8242 | if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then |
| 8243 | lt_cv_path_SED=$lt_ac_sed |
| 8244 | break |
| 8245 | fi |
| 8246 | while true; do |
| 8247 | cat conftest.in conftest.in >conftest.tmp |
| 8248 | mv conftest.tmp conftest.in |
| 8249 | cp conftest.in conftest.nl |
| 8250 | echo >>conftest.nl |
| 8251 | $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break |
| 8252 | cmp -s conftest.out conftest.nl || break |
| 8253 | # 10000 chars as input seems more than enough |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8254 | test 10 -lt "$lt_ac_count" && break |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 8255 | lt_ac_count=`expr $lt_ac_count + 1` |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8256 | if test "$lt_ac_count" -gt "$lt_ac_max"; then |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 8257 | lt_ac_max=$lt_ac_count |
| 8258 | lt_cv_path_SED=$lt_ac_sed |
| 8259 | fi |
| 8260 | done |
| 8261 | done |
| 8262 | ]) |
| 8263 | SED=$lt_cv_path_SED |
| 8264 | AC_SUBST([SED]) |
| 8265 | AC_MSG_RESULT([$SED]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8266 | ])#AC_PROG_SED |
| 8267 | ])#m4_ifndef |
| 8268 | |
| 8269 | # Old name: |
| 8270 | AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED]) |
| 8271 | dnl aclocal-1.4 backwards compatibility: |
| 8272 | dnl AC_DEFUN([LT_AC_PROG_SED], []) |
| 8273 | |
| 8274 | |
| 8275 | # _LT_CHECK_SHELL_FEATURES |
| 8276 | # ------------------------ |
| 8277 | # Find out whether the shell is Bourne or XSI compatible, |
| 8278 | # or has some other useful features. |
| 8279 | m4_defun([_LT_CHECK_SHELL_FEATURES], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8280 | [if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8281 | lt_unset=unset |
| 8282 | else |
| 8283 | lt_unset=false |
| 8284 | fi |
| 8285 | _LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl |
| 8286 | |
| 8287 | # test EBCDIC or ASCII |
| 8288 | case `echo X|tr X '\101'` in |
| 8289 | A) # ASCII based system |
| 8290 | # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr |
| 8291 | lt_SP2NL='tr \040 \012' |
| 8292 | lt_NL2SP='tr \015\012 \040\040' |
| 8293 | ;; |
| 8294 | *) # EBCDIC based system |
| 8295 | lt_SP2NL='tr \100 \n' |
| 8296 | lt_NL2SP='tr \r\n \100\100' |
| 8297 | ;; |
| 8298 | esac |
| 8299 | _LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl |
| 8300 | _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl |
| 8301 | ])# _LT_CHECK_SHELL_FEATURES |
| 8302 | |
| 8303 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8304 | # _LT_PATH_CONVERSION_FUNCTIONS |
| 8305 | # ----------------------------- |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8306 | # Determine what file name conversion functions should be used by |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8307 | # func_to_host_file (and, implicitly, by func_to_host_path). These are needed |
| 8308 | # for certain cross-compile configurations and native mingw. |
| 8309 | m4_defun([_LT_PATH_CONVERSION_FUNCTIONS], |
| 8310 | [AC_REQUIRE([AC_CANONICAL_HOST])dnl |
| 8311 | AC_REQUIRE([AC_CANONICAL_BUILD])dnl |
| 8312 | AC_MSG_CHECKING([how to convert $build file names to $host format]) |
| 8313 | AC_CACHE_VAL(lt_cv_to_host_file_cmd, |
| 8314 | [case $host in |
| 8315 | *-*-mingw* ) |
| 8316 | case $build in |
| 8317 | *-*-mingw* ) # actually msys |
| 8318 | lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 |
| 8319 | ;; |
| 8320 | *-*-cygwin* ) |
| 8321 | lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 |
| 8322 | ;; |
| 8323 | * ) # otherwise, assume *nix |
| 8324 | lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 |
| 8325 | ;; |
| 8326 | esac |
| 8327 | ;; |
| 8328 | *-*-cygwin* ) |
| 8329 | case $build in |
| 8330 | *-*-mingw* ) # actually msys |
| 8331 | lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin |
| 8332 | ;; |
| 8333 | *-*-cygwin* ) |
| 8334 | lt_cv_to_host_file_cmd=func_convert_file_noop |
| 8335 | ;; |
| 8336 | * ) # otherwise, assume *nix |
| 8337 | lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin |
| 8338 | ;; |
| 8339 | esac |
| 8340 | ;; |
| 8341 | * ) # unhandled hosts (and "normal" native builds) |
| 8342 | lt_cv_to_host_file_cmd=func_convert_file_noop |
| 8343 | ;; |
| 8344 | esac |
| 8345 | ]) |
| 8346 | to_host_file_cmd=$lt_cv_to_host_file_cmd |
| 8347 | AC_MSG_RESULT([$lt_cv_to_host_file_cmd]) |
| 8348 | _LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd], |
| 8349 | [0], [convert $build file names to $host format])dnl |
| 8350 | |
| 8351 | AC_MSG_CHECKING([how to convert $build file names to toolchain format]) |
| 8352 | AC_CACHE_VAL(lt_cv_to_tool_file_cmd, |
| 8353 | [#assume ordinary cross tools, or native build. |
| 8354 | lt_cv_to_tool_file_cmd=func_convert_file_noop |
| 8355 | case $host in |
| 8356 | *-*-mingw* ) |
| 8357 | case $build in |
| 8358 | *-*-mingw* ) # actually msys |
| 8359 | lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 |
| 8360 | ;; |
| 8361 | esac |
| 8362 | ;; |
| 8363 | esac |
| 8364 | ]) |
| 8365 | to_tool_file_cmd=$lt_cv_to_tool_file_cmd |
| 8366 | AC_MSG_RESULT([$lt_cv_to_tool_file_cmd]) |
| 8367 | _LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd], |
| 8368 | [0], [convert $build files to toolchain format])dnl |
| 8369 | ])# _LT_PATH_CONVERSION_FUNCTIONS |
| 8370 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8371 | # Helper functions for option handling. -*- Autoconf -*- |
| 8372 | # |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 8373 | # Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8374 | # Foundation, Inc. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8375 | # Written by Gary V. Vaughan, 2004 |
| 8376 | # |
| 8377 | # This file is free software; the Free Software Foundation gives |
| 8378 | # unlimited permission to copy and/or distribute it, with or without |
| 8379 | # modifications, as long as this notice is preserved. |
| 8380 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8381 | # serial 8 ltoptions.m4 |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8382 | |
| 8383 | # This is to help aclocal find these macros, as it can't see m4_define. |
| 8384 | AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])]) |
| 8385 | |
| 8386 | |
| 8387 | # _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME) |
| 8388 | # ------------------------------------------ |
| 8389 | m4_define([_LT_MANGLE_OPTION], |
| 8390 | [[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])]) |
| 8391 | |
| 8392 | |
| 8393 | # _LT_SET_OPTION(MACRO-NAME, OPTION-NAME) |
| 8394 | # --------------------------------------- |
| 8395 | # Set option OPTION-NAME for macro MACRO-NAME, and if there is a |
| 8396 | # matching handler defined, dispatch to it. Other OPTION-NAMEs are |
| 8397 | # saved as a flag. |
| 8398 | m4_define([_LT_SET_OPTION], |
| 8399 | [m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl |
| 8400 | m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]), |
| 8401 | _LT_MANGLE_DEFUN([$1], [$2]), |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8402 | [m4_warning([Unknown $1 option '$2'])])[]dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8403 | ]) |
| 8404 | |
| 8405 | |
| 8406 | # _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET]) |
| 8407 | # ------------------------------------------------------------ |
| 8408 | # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. |
| 8409 | m4_define([_LT_IF_OPTION], |
| 8410 | [m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])]) |
| 8411 | |
| 8412 | |
| 8413 | # _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET) |
| 8414 | # ------------------------------------------------------- |
| 8415 | # Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME |
| 8416 | # are set. |
| 8417 | m4_define([_LT_UNLESS_OPTIONS], |
| 8418 | [m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), |
| 8419 | [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option), |
| 8420 | [m4_define([$0_found])])])[]dnl |
| 8421 | m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3 |
| 8422 | ])[]dnl |
| 8423 | ]) |
| 8424 | |
| 8425 | |
| 8426 | # _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST) |
| 8427 | # ---------------------------------------- |
| 8428 | # OPTION-LIST is a space-separated list of Libtool options associated |
| 8429 | # with MACRO-NAME. If any OPTION has a matching handler declared with |
| 8430 | # LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about |
| 8431 | # the unknown option and exit. |
| 8432 | m4_defun([_LT_SET_OPTIONS], |
| 8433 | [# Set options |
| 8434 | m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), |
| 8435 | [_LT_SET_OPTION([$1], _LT_Option)]) |
| 8436 | |
| 8437 | m4_if([$1],[LT_INIT],[ |
| 8438 | dnl |
| 8439 | dnl Simply set some default values (i.e off) if boolean options were not |
| 8440 | dnl specified: |
| 8441 | _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no |
| 8442 | ]) |
| 8443 | _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no |
| 8444 | ]) |
| 8445 | dnl |
| 8446 | dnl If no reference was made to various pairs of opposing options, then |
| 8447 | dnl we run the default mode handler for the pair. For example, if neither |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8448 | dnl 'shared' nor 'disable-shared' was passed, we enable building of shared |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8449 | dnl archives by default: |
| 8450 | _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED]) |
| 8451 | _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC]) |
| 8452 | _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC]) |
| 8453 | _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8454 | [_LT_ENABLE_FAST_INSTALL]) |
| 8455 | _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4], |
| 8456 | [_LT_WITH_AIX_SONAME([aix])]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8457 | ]) |
| 8458 | ])# _LT_SET_OPTIONS |
| 8459 | |
| 8460 | |
| 8461 | |
| 8462 | # _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME) |
| 8463 | # ----------------------------------------- |
| 8464 | m4_define([_LT_MANGLE_DEFUN], |
| 8465 | [[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])]) |
| 8466 | |
| 8467 | |
| 8468 | # LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE) |
| 8469 | # ----------------------------------------------- |
| 8470 | m4_define([LT_OPTION_DEFINE], |
| 8471 | [m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl |
| 8472 | ])# LT_OPTION_DEFINE |
| 8473 | |
| 8474 | |
| 8475 | # dlopen |
| 8476 | # ------ |
| 8477 | LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes |
| 8478 | ]) |
| 8479 | |
| 8480 | AU_DEFUN([AC_LIBTOOL_DLOPEN], |
| 8481 | [_LT_SET_OPTION([LT_INIT], [dlopen]) |
| 8482 | AC_DIAGNOSE([obsolete], |
| 8483 | [$0: Remove this warning and the call to _LT_SET_OPTION when you |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8484 | put the 'dlopen' option into LT_INIT's first parameter.]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8485 | ]) |
| 8486 | |
| 8487 | dnl aclocal-1.4 backwards compatibility: |
| 8488 | dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], []) |
| 8489 | |
| 8490 | |
| 8491 | # win32-dll |
| 8492 | # --------- |
| 8493 | # Declare package support for building win32 dll's. |
| 8494 | LT_OPTION_DEFINE([LT_INIT], [win32-dll], |
| 8495 | [enable_win32_dll=yes |
| 8496 | |
| 8497 | case $host in |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8498 | *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8499 | AC_CHECK_TOOL(AS, as, false) |
| 8500 | AC_CHECK_TOOL(DLLTOOL, dlltool, false) |
| 8501 | AC_CHECK_TOOL(OBJDUMP, objdump, false) |
| 8502 | ;; |
| 8503 | esac |
| 8504 | |
| 8505 | test -z "$AS" && AS=as |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8506 | _LT_DECL([], [AS], [1], [Assembler program])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8507 | |
| 8508 | test -z "$DLLTOOL" && DLLTOOL=dlltool |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8509 | _LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8510 | |
| 8511 | test -z "$OBJDUMP" && OBJDUMP=objdump |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8512 | _LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8513 | ])# win32-dll |
| 8514 | |
| 8515 | AU_DEFUN([AC_LIBTOOL_WIN32_DLL], |
| 8516 | [AC_REQUIRE([AC_CANONICAL_HOST])dnl |
| 8517 | _LT_SET_OPTION([LT_INIT], [win32-dll]) |
| 8518 | AC_DIAGNOSE([obsolete], |
| 8519 | [$0: Remove this warning and the call to _LT_SET_OPTION when you |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8520 | put the 'win32-dll' option into LT_INIT's first parameter.]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8521 | ]) |
| 8522 | |
| 8523 | dnl aclocal-1.4 backwards compatibility: |
| 8524 | dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], []) |
| 8525 | |
| 8526 | |
| 8527 | # _LT_ENABLE_SHARED([DEFAULT]) |
| 8528 | # ---------------------------- |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8529 | # implement the --enable-shared flag, and supports the 'shared' and |
| 8530 | # 'disable-shared' LT_INIT options. |
| 8531 | # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8532 | m4_define([_LT_ENABLE_SHARED], |
| 8533 | [m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl |
| 8534 | AC_ARG_ENABLE([shared], |
| 8535 | [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@], |
| 8536 | [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])], |
| 8537 | [p=${PACKAGE-default} |
| 8538 | case $enableval in |
| 8539 | yes) enable_shared=yes ;; |
| 8540 | no) enable_shared=no ;; |
| 8541 | *) |
| 8542 | enable_shared=no |
| 8543 | # Look at the argument we got. We use all the common list separators. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8544 | lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8545 | for pkg in $enableval; do |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8546 | IFS=$lt_save_ifs |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8547 | if test "X$pkg" = "X$p"; then |
| 8548 | enable_shared=yes |
| 8549 | fi |
| 8550 | done |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8551 | IFS=$lt_save_ifs |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8552 | ;; |
| 8553 | esac], |
| 8554 | [enable_shared=]_LT_ENABLE_SHARED_DEFAULT) |
| 8555 | |
| 8556 | _LT_DECL([build_libtool_libs], [enable_shared], [0], |
| 8557 | [Whether or not to build shared libraries]) |
| 8558 | ])# _LT_ENABLE_SHARED |
| 8559 | |
| 8560 | LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])]) |
| 8561 | LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])]) |
| 8562 | |
| 8563 | # Old names: |
| 8564 | AC_DEFUN([AC_ENABLE_SHARED], |
| 8565 | [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared]) |
| 8566 | ]) |
| 8567 | |
| 8568 | AC_DEFUN([AC_DISABLE_SHARED], |
| 8569 | [_LT_SET_OPTION([LT_INIT], [disable-shared]) |
| 8570 | ]) |
| 8571 | |
| 8572 | AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) |
| 8573 | AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) |
| 8574 | |
| 8575 | dnl aclocal-1.4 backwards compatibility: |
| 8576 | dnl AC_DEFUN([AM_ENABLE_SHARED], []) |
| 8577 | dnl AC_DEFUN([AM_DISABLE_SHARED], []) |
| 8578 | |
| 8579 | |
| 8580 | |
| 8581 | # _LT_ENABLE_STATIC([DEFAULT]) |
| 8582 | # ---------------------------- |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8583 | # implement the --enable-static flag, and support the 'static' and |
| 8584 | # 'disable-static' LT_INIT options. |
| 8585 | # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8586 | m4_define([_LT_ENABLE_STATIC], |
| 8587 | [m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl |
| 8588 | AC_ARG_ENABLE([static], |
| 8589 | [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@], |
| 8590 | [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])], |
| 8591 | [p=${PACKAGE-default} |
| 8592 | case $enableval in |
| 8593 | yes) enable_static=yes ;; |
| 8594 | no) enable_static=no ;; |
| 8595 | *) |
| 8596 | enable_static=no |
| 8597 | # Look at the argument we got. We use all the common list separators. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8598 | lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8599 | for pkg in $enableval; do |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8600 | IFS=$lt_save_ifs |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8601 | if test "X$pkg" = "X$p"; then |
| 8602 | enable_static=yes |
| 8603 | fi |
| 8604 | done |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8605 | IFS=$lt_save_ifs |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8606 | ;; |
| 8607 | esac], |
| 8608 | [enable_static=]_LT_ENABLE_STATIC_DEFAULT) |
| 8609 | |
| 8610 | _LT_DECL([build_old_libs], [enable_static], [0], |
| 8611 | [Whether or not to build static libraries]) |
| 8612 | ])# _LT_ENABLE_STATIC |
| 8613 | |
| 8614 | LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])]) |
| 8615 | LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])]) |
| 8616 | |
| 8617 | # Old names: |
| 8618 | AC_DEFUN([AC_ENABLE_STATIC], |
| 8619 | [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static]) |
| 8620 | ]) |
| 8621 | |
| 8622 | AC_DEFUN([AC_DISABLE_STATIC], |
| 8623 | [_LT_SET_OPTION([LT_INIT], [disable-static]) |
| 8624 | ]) |
| 8625 | |
| 8626 | AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) |
| 8627 | AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) |
| 8628 | |
| 8629 | dnl aclocal-1.4 backwards compatibility: |
| 8630 | dnl AC_DEFUN([AM_ENABLE_STATIC], []) |
| 8631 | dnl AC_DEFUN([AM_DISABLE_STATIC], []) |
| 8632 | |
| 8633 | |
| 8634 | |
| 8635 | # _LT_ENABLE_FAST_INSTALL([DEFAULT]) |
| 8636 | # ---------------------------------- |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8637 | # implement the --enable-fast-install flag, and support the 'fast-install' |
| 8638 | # and 'disable-fast-install' LT_INIT options. |
| 8639 | # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8640 | m4_define([_LT_ENABLE_FAST_INSTALL], |
| 8641 | [m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl |
| 8642 | AC_ARG_ENABLE([fast-install], |
| 8643 | [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], |
| 8644 | [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], |
| 8645 | [p=${PACKAGE-default} |
| 8646 | case $enableval in |
| 8647 | yes) enable_fast_install=yes ;; |
| 8648 | no) enable_fast_install=no ;; |
| 8649 | *) |
| 8650 | enable_fast_install=no |
| 8651 | # Look at the argument we got. We use all the common list separators. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8652 | lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8653 | for pkg in $enableval; do |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8654 | IFS=$lt_save_ifs |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8655 | if test "X$pkg" = "X$p"; then |
| 8656 | enable_fast_install=yes |
| 8657 | fi |
| 8658 | done |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8659 | IFS=$lt_save_ifs |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8660 | ;; |
| 8661 | esac], |
| 8662 | [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT) |
| 8663 | |
| 8664 | _LT_DECL([fast_install], [enable_fast_install], [0], |
| 8665 | [Whether or not to optimize for fast installation])dnl |
| 8666 | ])# _LT_ENABLE_FAST_INSTALL |
| 8667 | |
| 8668 | LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])]) |
| 8669 | LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])]) |
| 8670 | |
| 8671 | # Old names: |
| 8672 | AU_DEFUN([AC_ENABLE_FAST_INSTALL], |
| 8673 | [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install]) |
| 8674 | AC_DIAGNOSE([obsolete], |
| 8675 | [$0: Remove this warning and the call to _LT_SET_OPTION when you put |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8676 | the 'fast-install' option into LT_INIT's first parameter.]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8677 | ]) |
| 8678 | |
| 8679 | AU_DEFUN([AC_DISABLE_FAST_INSTALL], |
| 8680 | [_LT_SET_OPTION([LT_INIT], [disable-fast-install]) |
| 8681 | AC_DIAGNOSE([obsolete], |
| 8682 | [$0: Remove this warning and the call to _LT_SET_OPTION when you put |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8683 | the 'disable-fast-install' option into LT_INIT's first parameter.]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8684 | ]) |
| 8685 | |
| 8686 | dnl aclocal-1.4 backwards compatibility: |
| 8687 | dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], []) |
| 8688 | dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], []) |
| 8689 | |
| 8690 | |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8691 | # _LT_WITH_AIX_SONAME([DEFAULT]) |
| 8692 | # ---------------------------------- |
| 8693 | # implement the --with-aix-soname flag, and support the `aix-soname=aix' |
| 8694 | # and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT |
| 8695 | # is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'. |
| 8696 | m4_define([_LT_WITH_AIX_SONAME], |
| 8697 | [m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl |
| 8698 | shared_archive_member_spec= |
| 8699 | case $host,$enable_shared in |
| 8700 | power*-*-aix[[5-9]]*,yes) |
| 8701 | AC_MSG_CHECKING([which variant of shared library versioning to provide]) |
| 8702 | AC_ARG_WITH([aix-soname], |
| 8703 | [AS_HELP_STRING([--with-aix-soname=aix|svr4|both], |
| 8704 | [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])], |
| 8705 | [case $withval in |
| 8706 | aix|svr4|both) |
| 8707 | ;; |
| 8708 | *) |
| 8709 | AC_MSG_ERROR([Unknown argument to --with-aix-soname]) |
| 8710 | ;; |
| 8711 | esac |
| 8712 | lt_cv_with_aix_soname=$with_aix_soname], |
| 8713 | [AC_CACHE_VAL([lt_cv_with_aix_soname], |
| 8714 | [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT) |
| 8715 | with_aix_soname=$lt_cv_with_aix_soname]) |
| 8716 | AC_MSG_RESULT([$with_aix_soname]) |
| 8717 | if test aix != "$with_aix_soname"; then |
| 8718 | # For the AIX way of multilib, we name the shared archive member |
| 8719 | # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o', |
| 8720 | # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File. |
| 8721 | # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag, |
| 8722 | # the AIX toolchain works better with OBJECT_MODE set (default 32). |
| 8723 | if test 64 = "${OBJECT_MODE-32}"; then |
| 8724 | shared_archive_member_spec=shr_64 |
| 8725 | else |
| 8726 | shared_archive_member_spec=shr |
| 8727 | fi |
| 8728 | fi |
| 8729 | ;; |
| 8730 | *) |
| 8731 | with_aix_soname=aix |
| 8732 | ;; |
| 8733 | esac |
| 8734 | |
| 8735 | _LT_DECL([], [shared_archive_member_spec], [0], |
| 8736 | [Shared archive member basename, for filename based shared library versioning on AIX])dnl |
| 8737 | ])# _LT_WITH_AIX_SONAME |
| 8738 | |
| 8739 | LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])]) |
| 8740 | LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])]) |
| 8741 | LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])]) |
| 8742 | |
| 8743 | |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8744 | # _LT_WITH_PIC([MODE]) |
| 8745 | # -------------------- |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8746 | # implement the --with-pic flag, and support the 'pic-only' and 'no-pic' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8747 | # LT_INIT options. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8748 | # MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8749 | m4_define([_LT_WITH_PIC], |
| 8750 | [AC_ARG_WITH([pic], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8751 | [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@], |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8752 | [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8753 | [lt_p=${PACKAGE-default} |
| 8754 | case $withval in |
| 8755 | yes|no) pic_mode=$withval ;; |
| 8756 | *) |
| 8757 | pic_mode=default |
| 8758 | # Look at the argument we got. We use all the common list separators. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8759 | lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8760 | for lt_pkg in $withval; do |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8761 | IFS=$lt_save_ifs |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8762 | if test "X$lt_pkg" = "X$lt_p"; then |
| 8763 | pic_mode=yes |
| 8764 | fi |
| 8765 | done |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8766 | IFS=$lt_save_ifs |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8767 | ;; |
| 8768 | esac], |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8769 | [pic_mode=m4_default([$1], [default])]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8770 | |
| 8771 | _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl |
| 8772 | ])# _LT_WITH_PIC |
| 8773 | |
| 8774 | LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])]) |
| 8775 | LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])]) |
| 8776 | |
| 8777 | # Old name: |
| 8778 | AU_DEFUN([AC_LIBTOOL_PICMODE], |
| 8779 | [_LT_SET_OPTION([LT_INIT], [pic-only]) |
| 8780 | AC_DIAGNOSE([obsolete], |
| 8781 | [$0: Remove this warning and the call to _LT_SET_OPTION when you |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8782 | put the 'pic-only' option into LT_INIT's first parameter.]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8783 | ]) |
| 8784 | |
| 8785 | dnl aclocal-1.4 backwards compatibility: |
| 8786 | dnl AC_DEFUN([AC_LIBTOOL_PICMODE], []) |
| 8787 | |
| 8788 | |
| 8789 | m4_define([_LTDL_MODE], []) |
| 8790 | LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive], |
| 8791 | [m4_define([_LTDL_MODE], [nonrecursive])]) |
| 8792 | LT_OPTION_DEFINE([LTDL_INIT], [recursive], |
| 8793 | [m4_define([_LTDL_MODE], [recursive])]) |
| 8794 | LT_OPTION_DEFINE([LTDL_INIT], [subproject], |
| 8795 | [m4_define([_LTDL_MODE], [subproject])]) |
| 8796 | |
| 8797 | m4_define([_LTDL_TYPE], []) |
| 8798 | LT_OPTION_DEFINE([LTDL_INIT], [installable], |
| 8799 | [m4_define([_LTDL_TYPE], [installable])]) |
| 8800 | LT_OPTION_DEFINE([LTDL_INIT], [convenience], |
| 8801 | [m4_define([_LTDL_TYPE], [convenience])]) |
| 8802 | |
| 8803 | # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- |
| 8804 | # |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 8805 | # Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8806 | # Foundation, Inc. |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 8807 | # Written by Gary V. Vaughan, 2004 |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8808 | # |
| 8809 | # This file is free software; the Free Software Foundation gives |
| 8810 | # unlimited permission to copy and/or distribute it, with or without |
| 8811 | # modifications, as long as this notice is preserved. |
| 8812 | |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 8813 | # serial 6 ltsugar.m4 |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8814 | |
| 8815 | # This is to help aclocal find these macros, as it can't see m4_define. |
| 8816 | AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])]) |
| 8817 | |
| 8818 | |
| 8819 | # lt_join(SEP, ARG1, [ARG2...]) |
| 8820 | # ----------------------------- |
| 8821 | # Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their |
| 8822 | # associated separator. |
| 8823 | # Needed until we can rely on m4_join from Autoconf 2.62, since all earlier |
| 8824 | # versions in m4sugar had bugs. |
| 8825 | m4_define([lt_join], |
| 8826 | [m4_if([$#], [1], [], |
| 8827 | [$#], [2], [[$2]], |
| 8828 | [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])]) |
| 8829 | m4_define([_lt_join], |
| 8830 | [m4_if([$#$2], [2], [], |
| 8831 | [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])]) |
| 8832 | |
| 8833 | |
| 8834 | # lt_car(LIST) |
| 8835 | # lt_cdr(LIST) |
| 8836 | # ------------ |
| 8837 | # Manipulate m4 lists. |
| 8838 | # These macros are necessary as long as will still need to support |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8839 | # Autoconf-2.59, which quotes differently. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8840 | m4_define([lt_car], [[$1]]) |
| 8841 | m4_define([lt_cdr], |
| 8842 | [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], |
| 8843 | [$#], 1, [], |
| 8844 | [m4_dquote(m4_shift($@))])]) |
| 8845 | m4_define([lt_unquote], $1) |
| 8846 | |
| 8847 | |
| 8848 | # lt_append(MACRO-NAME, STRING, [SEPARATOR]) |
| 8849 | # ------------------------------------------ |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8850 | # Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8851 | # Note that neither SEPARATOR nor STRING are expanded; they are appended |
| 8852 | # to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked). |
| 8853 | # No SEPARATOR is output if MACRO-NAME was previously undefined (different |
| 8854 | # than defined and empty). |
| 8855 | # |
| 8856 | # This macro is needed until we can rely on Autoconf 2.62, since earlier |
| 8857 | # versions of m4sugar mistakenly expanded SEPARATOR but not STRING. |
| 8858 | m4_define([lt_append], |
| 8859 | [m4_define([$1], |
| 8860 | m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])]) |
| 8861 | |
| 8862 | |
| 8863 | |
| 8864 | # lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...]) |
| 8865 | # ---------------------------------------------------------- |
| 8866 | # Produce a SEP delimited list of all paired combinations of elements of |
| 8867 | # PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list |
| 8868 | # has the form PREFIXmINFIXSUFFIXn. |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 8869 | # Needed until we can rely on m4_combine added in Autoconf 2.62. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8870 | m4_define([lt_combine], |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 8871 | [m4_if(m4_eval([$# > 3]), [1], |
| 8872 | [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl |
| 8873 | [[m4_foreach([_Lt_prefix], [$2], |
| 8874 | [m4_foreach([_Lt_suffix], |
| 8875 | ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[, |
| 8876 | [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8877 | |
| 8878 | |
| 8879 | # lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ]) |
| 8880 | # ----------------------------------------------------------------------- |
| 8881 | # Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited |
| 8882 | # by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ. |
| 8883 | m4_define([lt_if_append_uniq], |
| 8884 | [m4_ifdef([$1], |
| 8885 | [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1], |
| 8886 | [lt_append([$1], [$2], [$3])$4], |
| 8887 | [$5])], |
| 8888 | [lt_append([$1], [$2], [$3])$4])]) |
| 8889 | |
| 8890 | |
| 8891 | # lt_dict_add(DICT, KEY, VALUE) |
| 8892 | # ----------------------------- |
| 8893 | m4_define([lt_dict_add], |
| 8894 | [m4_define([$1($2)], [$3])]) |
| 8895 | |
| 8896 | |
| 8897 | # lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE) |
| 8898 | # -------------------------------------------- |
| 8899 | m4_define([lt_dict_add_subkey], |
| 8900 | [m4_define([$1($2:$3)], [$4])]) |
| 8901 | |
| 8902 | |
| 8903 | # lt_dict_fetch(DICT, KEY, [SUBKEY]) |
| 8904 | # ---------------------------------- |
| 8905 | m4_define([lt_dict_fetch], |
| 8906 | [m4_ifval([$3], |
| 8907 | m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]), |
| 8908 | m4_ifdef([$1($2)], [m4_defn([$1($2)])]))]) |
| 8909 | |
| 8910 | |
| 8911 | # lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE]) |
| 8912 | # ----------------------------------------------------------------- |
| 8913 | m4_define([lt_if_dict_fetch], |
| 8914 | [m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4], |
| 8915 | [$5], |
| 8916 | [$6])]) |
| 8917 | |
| 8918 | |
| 8919 | # lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...]) |
| 8920 | # -------------------------------------------------------------- |
| 8921 | m4_define([lt_dict_filter], |
| 8922 | [m4_if([$5], [], [], |
| 8923 | [lt_join(m4_quote(m4_default([$4], [[, ]])), |
| 8924 | lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]), |
| 8925 | [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl |
| 8926 | ]) |
| 8927 | |
| 8928 | # ltversion.m4 -- version numbers -*- Autoconf -*- |
| 8929 | # |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 8930 | # Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8931 | # Written by Scott James Remnant, 2004 |
| 8932 | # |
| 8933 | # This file is free software; the Free Software Foundation gives |
| 8934 | # unlimited permission to copy and/or distribute it, with or without |
| 8935 | # modifications, as long as this notice is preserved. |
| 8936 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8937 | # @configure_input@ |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8938 | |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 8939 | # serial 4179 ltversion.m4 |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8940 | # This file is part of GNU Libtool |
| 8941 | |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 8942 | m4_define([LT_PACKAGE_VERSION], [2.4.6]) |
| 8943 | m4_define([LT_PACKAGE_REVISION], [2.4.6]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8944 | |
| 8945 | AC_DEFUN([LTVERSION_VERSION], |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 8946 | [macro_version='2.4.6' |
| 8947 | macro_revision='2.4.6' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8948 | _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) |
| 8949 | _LT_DECL(, macro_revision, 0) |
| 8950 | ]) |
| 8951 | |
| 8952 | # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- |
| 8953 | # |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 8954 | # Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8955 | # Foundation, Inc. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8956 | # Written by Scott James Remnant, 2004. |
| 8957 | # |
| 8958 | # This file is free software; the Free Software Foundation gives |
| 8959 | # unlimited permission to copy and/or distribute it, with or without |
| 8960 | # modifications, as long as this notice is preserved. |
| 8961 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 8962 | # serial 5 lt~obsolete.m4 |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8963 | |
| 8964 | # These exist entirely to fool aclocal when bootstrapping libtool. |
| 8965 | # |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8966 | # In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN), |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8967 | # which have later been changed to m4_define as they aren't part of the |
| 8968 | # exported API, or moved to Autoconf or Automake where they belong. |
| 8969 | # |
| 8970 | # The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN |
| 8971 | # in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us |
| 8972 | # using a macro with the same name in our local m4/libtool.m4 it'll |
| 8973 | # pull the old libtool.m4 in (it doesn't see our shiny new m4_define |
| 8974 | # and doesn't know about Autoconf macros at all.) |
| 8975 | # |
| 8976 | # So we provide this file, which has a silly filename so it's always |
| 8977 | # included after everything else. This provides aclocal with the |
| 8978 | # AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything |
| 8979 | # because those macros already exist, or will be overwritten later. |
Bruce A. Mah | 4874c4a | 2015-01-05 15:23:07 -0800 | [diff] [blame] | 8980 | # We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 8981 | # |
| 8982 | # Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here. |
| 8983 | # Yes, that means every name once taken will need to remain here until |
| 8984 | # we give up compatibility with versions before 1.7, at which point |
| 8985 | # we need to keep only those names which we still refer to. |
| 8986 | |
| 8987 | # This is to help aclocal find these macros, as it can't see m4_define. |
| 8988 | AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])]) |
| 8989 | |
| 8990 | m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])]) |
| 8991 | m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])]) |
| 8992 | m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])]) |
| 8993 | m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])]) |
| 8994 | m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])]) |
| 8995 | m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])]) |
| 8996 | m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])]) |
| 8997 | m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])]) |
| 8998 | m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])]) |
| 8999 | m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])]) |
| 9000 | m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])]) |
| 9001 | m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])]) |
| 9002 | m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])]) |
| 9003 | m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])]) |
| 9004 | m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])]) |
| 9005 | m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])]) |
| 9006 | m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])]) |
| 9007 | m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])]) |
| 9008 | m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])]) |
| 9009 | m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])]) |
| 9010 | m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])]) |
| 9011 | m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])]) |
| 9012 | m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])]) |
| 9013 | m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])]) |
| 9014 | m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])]) |
| 9015 | m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])]) |
| 9016 | m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])]) |
| 9017 | m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])]) |
| 9018 | m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])]) |
| 9019 | m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])]) |
| 9020 | m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])]) |
| 9021 | m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])]) |
| 9022 | m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])]) |
| 9023 | m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])]) |
| 9024 | m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])]) |
| 9025 | m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])]) |
| 9026 | m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])]) |
| 9027 | m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])]) |
| 9028 | m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])]) |
| 9029 | m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])]) |
| 9030 | m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])]) |
| 9031 | m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 9032 | m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])]) |
| 9033 | m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])]) |
| 9034 | m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])]) |
| 9035 | m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])]) |
| 9036 | m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])]) |
| 9037 | m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])]) |
| 9038 | m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])]) |
| 9039 | m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])]) |
| 9040 | m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])]) |
| 9041 | m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])]) |
| 9042 | m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])]) |
| 9043 | m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])]) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9044 | m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])]) |
| 9045 | m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])]) |
| 9046 | m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])]) |
| 9047 | m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])]) |
| 9048 | m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])]) |
| 9049 | m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])]) |
| 9050 | m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 9051 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9052 | # Copyright (C) 2002-2018 Free Software Foundation, Inc. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9053 | # |
| 9054 | # This file is free software; the Free Software Foundation |
| 9055 | # gives unlimited permission to copy and/or distribute it, |
| 9056 | # with or without modifications, as long as this notice is preserved. |
| 9057 | |
| 9058 | # AM_AUTOMAKE_VERSION(VERSION) |
| 9059 | # ---------------------------- |
| 9060 | # Automake X.Y traces this macro to ensure aclocal.m4 has been |
| 9061 | # generated from the m4 files accompanying Automake X.Y. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 9062 | # (This private macro should not be called outside this file.) |
| 9063 | AC_DEFUN([AM_AUTOMAKE_VERSION], |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9064 | [am__api_version='1.16' |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 9065 | dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to |
| 9066 | dnl require some minimum version. Point them to the right macro. |
Bruce A. Mah | 6e9d852 | 2018-06-22 14:10:41 -0700 | [diff] [blame] | 9067 | m4_if([$1], [1.16.1], [], |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 9068 | [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl |
| 9069 | ]) |
| 9070 | |
| 9071 | # _AM_AUTOCONF_VERSION(VERSION) |
| 9072 | # ----------------------------- |
| 9073 | # aclocal traces this macro to find the Autoconf version. |
| 9074 | # This is a private macro too. Using m4_define simplifies |
| 9075 | # the logic in aclocal, which can simply ignore this definition. |
| 9076 | m4_define([_AM_AUTOCONF_VERSION], []) |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9077 | |
| 9078 | # AM_SET_CURRENT_AUTOMAKE_VERSION |
| 9079 | # ------------------------------- |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 9080 | # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9081 | # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9082 | AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], |
Bruce A. Mah | 6e9d852 | 2018-06-22 14:10:41 -0700 | [diff] [blame] | 9083 | [AM_AUTOMAKE_VERSION([1.16.1])dnl |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9084 | m4_ifndef([AC_AUTOCONF_VERSION], |
| 9085 | [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl |
| 9086 | _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9087 | |
| 9088 | # AM_AUX_DIR_EXPAND -*- Autoconf -*- |
| 9089 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9090 | # Copyright (C) 2001-2018 Free Software Foundation, Inc. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9091 | # |
| 9092 | # This file is free software; the Free Software Foundation |
| 9093 | # gives unlimited permission to copy and/or distribute it, |
| 9094 | # with or without modifications, as long as this notice is preserved. |
| 9095 | |
| 9096 | # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9097 | # $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to |
| 9098 | # '$srcdir', '$srcdir/..', or '$srcdir/../..'. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9099 | # |
| 9100 | # Of course, Automake must honor this variable whenever it calls a |
| 9101 | # tool from the auxiliary directory. The problem is that $srcdir (and |
| 9102 | # therefore $ac_aux_dir as well) can be either absolute or relative, |
| 9103 | # depending on how configure is run. This is pretty annoying, since |
| 9104 | # it makes $ac_aux_dir quite unusable in subdirectories: in the top |
| 9105 | # source directory, any form will work fine, but in subdirectories a |
| 9106 | # relative path needs to be adjusted first. |
| 9107 | # |
| 9108 | # $ac_aux_dir/missing |
| 9109 | # fails when called from a subdirectory if $ac_aux_dir is relative |
| 9110 | # $top_srcdir/$ac_aux_dir/missing |
| 9111 | # fails if $ac_aux_dir is absolute, |
| 9112 | # fails when called from a subdirectory in a VPATH build with |
| 9113 | # a relative $ac_aux_dir |
| 9114 | # |
| 9115 | # The reason of the latter failure is that $top_srcdir and $ac_aux_dir |
| 9116 | # are both prefixed by $srcdir. In an in-source build this is usually |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9117 | # harmless because $srcdir is '.', but things will broke when you |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9118 | # start a VPATH build or use an absolute $srcdir. |
| 9119 | # |
| 9120 | # So we could use something similar to $top_srcdir/$ac_aux_dir/missing, |
| 9121 | # iff we strip the leading $srcdir from $ac_aux_dir. That would be: |
| 9122 | # am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` |
| 9123 | # and then we would define $MISSING as |
| 9124 | # MISSING="\${SHELL} $am_aux_dir/missing" |
| 9125 | # This will work as long as MISSING is not called from configure, because |
| 9126 | # unfortunately $(top_srcdir) has no meaning in configure. |
| 9127 | # However there are other variables, like CC, which are often used in |
| 9128 | # configure, and could therefore not use this "fixed" $ac_aux_dir. |
| 9129 | # |
| 9130 | # Another solution, used here, is to always expand $ac_aux_dir to an |
| 9131 | # absolute PATH. The drawback is that using absolute paths prevent a |
| 9132 | # configured tree to be moved without reconfiguration. |
| 9133 | |
| 9134 | AC_DEFUN([AM_AUX_DIR_EXPAND], |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 9135 | [AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl |
| 9136 | # Expand $ac_aux_dir to an absolute path. |
| 9137 | am_aux_dir=`cd "$ac_aux_dir" && pwd` |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9138 | ]) |
| 9139 | |
| 9140 | # AM_CONDITIONAL -*- Autoconf -*- |
| 9141 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9142 | # Copyright (C) 1997-2018 Free Software Foundation, Inc. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9143 | # |
| 9144 | # This file is free software; the Free Software Foundation |
| 9145 | # gives unlimited permission to copy and/or distribute it, |
| 9146 | # with or without modifications, as long as this notice is preserved. |
| 9147 | |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9148 | # AM_CONDITIONAL(NAME, SHELL-CONDITION) |
| 9149 | # ------------------------------------- |
| 9150 | # Define a conditional. |
| 9151 | AC_DEFUN([AM_CONDITIONAL], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9152 | [AC_PREREQ([2.52])dnl |
| 9153 | m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], |
| 9154 | [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 9155 | AC_SUBST([$1_TRUE])dnl |
| 9156 | AC_SUBST([$1_FALSE])dnl |
| 9157 | _AM_SUBST_NOTMAKE([$1_TRUE])dnl |
| 9158 | _AM_SUBST_NOTMAKE([$1_FALSE])dnl |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9159 | m4_define([_AM_COND_VALUE_$1], [$2])dnl |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9160 | if $2; then |
| 9161 | $1_TRUE= |
| 9162 | $1_FALSE='#' |
| 9163 | else |
| 9164 | $1_TRUE='#' |
| 9165 | $1_FALSE= |
| 9166 | fi |
| 9167 | AC_CONFIG_COMMANDS_PRE( |
| 9168 | [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then |
| 9169 | AC_MSG_ERROR([[conditional "$1" was never defined. |
| 9170 | Usually this means the macro was only invoked conditionally.]]) |
| 9171 | fi])]) |
| 9172 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9173 | # Copyright (C) 1999-2018 Free Software Foundation, Inc. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9174 | # |
| 9175 | # This file is free software; the Free Software Foundation |
| 9176 | # gives unlimited permission to copy and/or distribute it, |
| 9177 | # with or without modifications, as long as this notice is preserved. |
| 9178 | |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9179 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9180 | # There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9181 | # written in clear, in which case automake, when reading aclocal.m4, |
| 9182 | # will think it sees a *use*, and therefore will trigger all it's |
| 9183 | # C support machinery. Also note that it means that autoscan, seeing |
| 9184 | # CC etc. in the Makefile, will ask for an AC_PROG_CC use... |
| 9185 | |
| 9186 | |
| 9187 | # _AM_DEPENDENCIES(NAME) |
| 9188 | # ---------------------- |
| 9189 | # See how the compiler implements dependency checking. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9190 | # NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC". |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9191 | # We try a few techniques and use that to set a single cache variable. |
| 9192 | # |
| 9193 | # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was |
| 9194 | # modified to invoke _AM_DEPENDENCIES(CC); we would have a circular |
| 9195 | # dependency, and given that the user is not expected to run this macro, |
| 9196 | # just rely on AC_PROG_CC. |
| 9197 | AC_DEFUN([_AM_DEPENDENCIES], |
| 9198 | [AC_REQUIRE([AM_SET_DEPDIR])dnl |
| 9199 | AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl |
| 9200 | AC_REQUIRE([AM_MAKE_INCLUDE])dnl |
| 9201 | AC_REQUIRE([AM_DEP_TRACK])dnl |
| 9202 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9203 | m4_if([$1], [CC], [depcc="$CC" am_compiler_list=], |
| 9204 | [$1], [CXX], [depcc="$CXX" am_compiler_list=], |
| 9205 | [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'], |
| 9206 | [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'], |
| 9207 | [$1], [UPC], [depcc="$UPC" am_compiler_list=], |
| 9208 | [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'], |
| 9209 | [depcc="$$1" am_compiler_list=]) |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9210 | |
| 9211 | AC_CACHE_CHECK([dependency style of $depcc], |
| 9212 | [am_cv_$1_dependencies_compiler_type], |
| 9213 | [if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then |
| 9214 | # We make a subdir and do the tests there. Otherwise we can end up |
| 9215 | # making bogus files that we don't know about and never remove. For |
| 9216 | # instance it was reported that on HP-UX the gcc test will end up |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9217 | # making a dummy file named 'D' -- because '-MD' means "put the output |
| 9218 | # in D". |
| 9219 | rm -rf conftest.dir |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9220 | mkdir conftest.dir |
| 9221 | # Copy depcomp to subdir because otherwise we won't find it if we're |
| 9222 | # using a relative directory. |
| 9223 | cp "$am_depcomp" conftest.dir |
| 9224 | cd conftest.dir |
| 9225 | # We will build objects and dependencies in a subdirectory because |
| 9226 | # it helps to detect inapplicable dependency modes. For instance |
| 9227 | # both Tru64's cc and ICC support -MD to output dependencies as a |
| 9228 | # side effect of compilation, but ICC will put the dependencies in |
| 9229 | # the current directory while Tru64 will put them in the object |
| 9230 | # directory. |
| 9231 | mkdir sub |
| 9232 | |
| 9233 | am_cv_$1_dependencies_compiler_type=none |
| 9234 | if test "$am_compiler_list" = ""; then |
| 9235 | am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` |
| 9236 | fi |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9237 | am__universal=false |
| 9238 | m4_case([$1], [CC], |
| 9239 | [case " $depcc " in #( |
| 9240 | *\ -arch\ *\ -arch\ *) am__universal=true ;; |
| 9241 | esac], |
| 9242 | [CXX], |
| 9243 | [case " $depcc " in #( |
| 9244 | *\ -arch\ *\ -arch\ *) am__universal=true ;; |
| 9245 | esac]) |
| 9246 | |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9247 | for depmode in $am_compiler_list; do |
| 9248 | # Setup a source with many dependencies, because some compilers |
| 9249 | # like to wrap large dependency lists on column 80 (with \), and |
| 9250 | # we should not choose a depcomp mode which is confused by this. |
| 9251 | # |
| 9252 | # We need to recreate these files for each test, as the compiler may |
| 9253 | # overwrite some of them when testing with obscure command lines. |
| 9254 | # This happens at least with the AIX C compiler. |
| 9255 | : > sub/conftest.c |
| 9256 | for i in 1 2 3 4 5 6; do |
| 9257 | echo '#include "conftst'$i'.h"' >> sub/conftest.c |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9258 | # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with |
| 9259 | # Solaris 10 /bin/sh. |
| 9260 | echo '/* dummy */' > sub/conftst$i.h |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9261 | done |
| 9262 | echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf |
| 9263 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9264 | # We check with '-c' and '-o' for the sake of the "dashmstdout" |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9265 | # mode. It turns out that the SunPro C++ compiler does not properly |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9266 | # handle '-M -o', and we need to detect this. Also, some Intel |
| 9267 | # versions had trouble with output in subdirs. |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9268 | am__obj=sub/conftest.${OBJEXT-o} |
| 9269 | am__minus_obj="-o $am__obj" |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9270 | case $depmode in |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9271 | gcc) |
| 9272 | # This depmode causes a compiler race in universal mode. |
| 9273 | test "$am__universal" = false || continue |
| 9274 | ;; |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9275 | nosideeffect) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9276 | # After this tag, mechanisms are not by side-effect, so they'll |
| 9277 | # only be used when explicitly requested. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9278 | if test "x$enable_dependency_tracking" = xyes; then |
| 9279 | continue |
| 9280 | else |
| 9281 | break |
| 9282 | fi |
| 9283 | ;; |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9284 | msvc7 | msvc7msys | msvisualcpp | msvcmsys) |
| 9285 | # This compiler won't grok '-c -o', but also, the minuso test has |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9286 | # not run yet. These depmodes are late enough in the game, and |
| 9287 | # so weak that their functioning should not be impacted. |
| 9288 | am__obj=conftest.${OBJEXT-o} |
| 9289 | am__minus_obj= |
| 9290 | ;; |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9291 | none) break ;; |
| 9292 | esac |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9293 | if depmode=$depmode \ |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9294 | source=sub/conftest.c object=$am__obj \ |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9295 | depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9296 | $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9297 | >/dev/null 2>conftest.err && |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 9298 | grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9299 | grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9300 | grep $am__obj sub/conftest.Po > /dev/null 2>&1 && |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9301 | ${MAKE-make} -s -f confmf > /dev/null 2>&1; then |
| 9302 | # icc doesn't choke on unknown options, it will just issue warnings |
| 9303 | # or remarks (even with -Werror). So we grep stderr for any message |
| 9304 | # that says an option was ignored or not supported. |
| 9305 | # When given -MP, icc 7.0 and 7.1 complain thusly: |
| 9306 | # icc: Command line warning: ignoring option '-M'; no argument required |
| 9307 | # The diagnosis changed in icc 8.0: |
| 9308 | # icc: Command line remark: option '-MP' not supported |
| 9309 | if (grep 'ignoring option' conftest.err || |
| 9310 | grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else |
| 9311 | am_cv_$1_dependencies_compiler_type=$depmode |
| 9312 | break |
| 9313 | fi |
| 9314 | fi |
| 9315 | done |
| 9316 | |
| 9317 | cd .. |
| 9318 | rm -rf conftest.dir |
| 9319 | else |
| 9320 | am_cv_$1_dependencies_compiler_type=none |
| 9321 | fi |
| 9322 | ]) |
| 9323 | AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) |
| 9324 | AM_CONDITIONAL([am__fastdep$1], [ |
| 9325 | test "x$enable_dependency_tracking" != xno \ |
| 9326 | && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) |
| 9327 | ]) |
| 9328 | |
| 9329 | |
| 9330 | # AM_SET_DEPDIR |
| 9331 | # ------------- |
| 9332 | # Choose a directory name for dependency files. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9333 | # This macro is AC_REQUIREd in _AM_DEPENDENCIES. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9334 | AC_DEFUN([AM_SET_DEPDIR], |
| 9335 | [AC_REQUIRE([AM_SET_LEADING_DOT])dnl |
| 9336 | AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl |
| 9337 | ]) |
| 9338 | |
| 9339 | |
| 9340 | # AM_DEP_TRACK |
| 9341 | # ------------ |
| 9342 | AC_DEFUN([AM_DEP_TRACK], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9343 | [AC_ARG_ENABLE([dependency-tracking], [dnl |
| 9344 | AS_HELP_STRING( |
| 9345 | [--enable-dependency-tracking], |
| 9346 | [do not reject slow dependency extractors]) |
| 9347 | AS_HELP_STRING( |
| 9348 | [--disable-dependency-tracking], |
| 9349 | [speeds up one-time build])]) |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9350 | if test "x$enable_dependency_tracking" != xno; then |
| 9351 | am_depcomp="$ac_aux_dir/depcomp" |
| 9352 | AMDEPBACKSLASH='\' |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9353 | am__nodep='_no' |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9354 | fi |
| 9355 | AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 9356 | AC_SUBST([AMDEPBACKSLASH])dnl |
| 9357 | _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9358 | AC_SUBST([am__nodep])dnl |
| 9359 | _AM_SUBST_NOTMAKE([am__nodep])dnl |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9360 | ]) |
| 9361 | |
| 9362 | # Generate code to set up dependency tracking. -*- Autoconf -*- |
| 9363 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9364 | # Copyright (C) 1999-2018 Free Software Foundation, Inc. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9365 | # |
| 9366 | # This file is free software; the Free Software Foundation |
| 9367 | # gives unlimited permission to copy and/or distribute it, |
| 9368 | # with or without modifications, as long as this notice is preserved. |
| 9369 | |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9370 | # _AM_OUTPUT_DEPENDENCY_COMMANDS |
| 9371 | # ------------------------------ |
| 9372 | AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9373 | [{ |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9374 | # Older Autoconf quotes --file arguments for eval, but not when files |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9375 | # are listed without --file. Let's play safe and only enable the eval |
| 9376 | # if we detect the quoting. |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9377 | # TODO: see whether this extra hack can be removed once we start |
| 9378 | # requiring Autoconf 2.70 or later. |
| 9379 | AS_CASE([$CONFIG_FILES], |
| 9380 | [*\'*], [eval set x "$CONFIG_FILES"], |
| 9381 | [*], [set x $CONFIG_FILES]) |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9382 | shift |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9383 | # Used to flag and report bootstrapping failures. |
| 9384 | am_rc=0 |
| 9385 | for am_mf |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9386 | do |
| 9387 | # Strip MF so we end up with the name of the file. |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9388 | am_mf=`AS_ECHO(["$am_mf"]) | sed -e 's/:.*$//'` |
| 9389 | # Check whether this is an Automake generated Makefile which includes |
| 9390 | # dependency-tracking related rules and includes. |
| 9391 | # Grep'ing the whole file directly is not great: AIX grep has a line |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9392 | # limit of 2048, but all sed's we know have understand at least 4000. |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9393 | sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \ |
| 9394 | || continue |
| 9395 | am_dirpart=`AS_DIRNAME(["$am_mf"])` |
| 9396 | am_filepart=`AS_BASENAME(["$am_mf"])` |
| 9397 | AM_RUN_LOG([cd "$am_dirpart" \ |
| 9398 | && sed -e '/# am--include-marker/d' "$am_filepart" \ |
| 9399 | | $MAKE -f - am--depfiles]) || am_rc=$? |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9400 | done |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9401 | if test $am_rc -ne 0; then |
| 9402 | AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments |
| 9403 | for automatic dependency tracking. Try re-running configure with the |
| 9404 | '--disable-dependency-tracking' option to at least be able to build |
| 9405 | the package (albeit without support for automatic dependency tracking).]) |
| 9406 | fi |
| 9407 | AS_UNSET([am_dirpart]) |
| 9408 | AS_UNSET([am_filepart]) |
| 9409 | AS_UNSET([am_mf]) |
| 9410 | AS_UNSET([am_rc]) |
| 9411 | rm -f conftest-deps.mk |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9412 | } |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9413 | ])# _AM_OUTPUT_DEPENDENCY_COMMANDS |
| 9414 | |
| 9415 | |
| 9416 | # AM_OUTPUT_DEPENDENCY_COMMANDS |
| 9417 | # ----------------------------- |
| 9418 | # This macro should only be invoked once -- use via AC_REQUIRE. |
| 9419 | # |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9420 | # This code is only required when automatic dependency tracking is enabled. |
| 9421 | # This creates each '.Po' and '.Plo' makefile fragment that we'll need in |
| 9422 | # order to bootstrap the dependency handling code. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9423 | AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], |
| 9424 | [AC_CONFIG_COMMANDS([depfiles], |
| 9425 | [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9426 | [AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"])]) |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9427 | |
Bruce A. Mah | 5d2f2cf | 2014-03-20 09:58:27 -0700 | [diff] [blame] | 9428 | # Do all the work for Automake. -*- Autoconf -*- |
| 9429 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9430 | # Copyright (C) 1996-2018 Free Software Foundation, Inc. |
Bruce A. Mah | 5d2f2cf | 2014-03-20 09:58:27 -0700 | [diff] [blame] | 9431 | # |
| 9432 | # This file is free software; the Free Software Foundation |
| 9433 | # gives unlimited permission to copy and/or distribute it, |
| 9434 | # with or without modifications, as long as this notice is preserved. |
| 9435 | |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9436 | # This macro actually does too much. Some checks are only needed if |
| 9437 | # your package does certain things. But this isn't really a big deal. |
| 9438 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9439 | dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O. |
| 9440 | m4_define([AC_PROG_CC], |
| 9441 | m4_defn([AC_PROG_CC]) |
| 9442 | [_AM_PROG_CC_C_O |
| 9443 | ]) |
| 9444 | |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9445 | # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) |
| 9446 | # AM_INIT_AUTOMAKE([OPTIONS]) |
| 9447 | # ----------------------------------------------- |
| 9448 | # The call with PACKAGE and VERSION arguments is the old style |
| 9449 | # call (pre autoconf-2.50), which is being phased out. PACKAGE |
| 9450 | # and VERSION should now be passed to AC_INIT and removed from |
| 9451 | # the call to AM_INIT_AUTOMAKE. |
| 9452 | # We support both call styles for the transition. After |
| 9453 | # the next Automake release, Autoconf can make the AC_INIT |
| 9454 | # arguments mandatory, and then we can depend on a new Autoconf |
| 9455 | # release and drop the old call support. |
| 9456 | AC_DEFUN([AM_INIT_AUTOMAKE], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9457 | [AC_PREREQ([2.65])dnl |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9458 | dnl Autoconf wants to disallow AM_ names. We explicitly allow |
| 9459 | dnl the ones we care about. |
| 9460 | m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl |
| 9461 | AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl |
| 9462 | AC_REQUIRE([AC_PROG_INSTALL])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 9463 | if test "`cd $srcdir && pwd`" != "`pwd`"; then |
| 9464 | # Use -I$(srcdir) only when $(srcdir) != ., so that make's output |
| 9465 | # is not polluted with repeated "-I." |
| 9466 | AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl |
| 9467 | # test to see if srcdir already configured |
| 9468 | if test -f $srcdir/config.status; then |
| 9469 | AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) |
| 9470 | fi |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9471 | fi |
| 9472 | |
| 9473 | # test whether we have cygpath |
| 9474 | if test -z "$CYGPATH_W"; then |
| 9475 | if (cygpath --version) >/dev/null 2>/dev/null; then |
| 9476 | CYGPATH_W='cygpath -w' |
| 9477 | else |
| 9478 | CYGPATH_W=echo |
| 9479 | fi |
| 9480 | fi |
| 9481 | AC_SUBST([CYGPATH_W]) |
| 9482 | |
| 9483 | # Define the identity of the package. |
| 9484 | dnl Distinguish between old-style and new-style calls. |
| 9485 | m4_ifval([$2], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9486 | [AC_DIAGNOSE([obsolete], |
| 9487 | [$0: two- and three-arguments forms are deprecated.]) |
| 9488 | m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9489 | AC_SUBST([PACKAGE], [$1])dnl |
| 9490 | AC_SUBST([VERSION], [$2])], |
| 9491 | [_AM_SET_OPTIONS([$1])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 9492 | dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9493 | m4_if( |
| 9494 | m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]), |
| 9495 | [ok:ok],, |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 9496 | [m4_fatal([AC_INIT should be called with package and version arguments])])dnl |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9497 | AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl |
| 9498 | AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl |
| 9499 | |
| 9500 | _AM_IF_OPTION([no-define],, |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9501 | [AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package]) |
| 9502 | AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9503 | |
| 9504 | # Some tools Automake needs. |
| 9505 | AC_REQUIRE([AM_SANITY_CHECK])dnl |
| 9506 | AC_REQUIRE([AC_ARG_PROGRAM])dnl |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9507 | AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}]) |
| 9508 | AM_MISSING_PROG([AUTOCONF], [autoconf]) |
| 9509 | AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}]) |
| 9510 | AM_MISSING_PROG([AUTOHEADER], [autoheader]) |
| 9511 | AM_MISSING_PROG([MAKEINFO], [makeinfo]) |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9512 | AC_REQUIRE([AM_PROG_INSTALL_SH])dnl |
| 9513 | AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9514 | AC_REQUIRE([AC_PROG_MKDIR_P])dnl |
| 9515 | # For better backward compatibility. To be removed once Automake 1.9.x |
| 9516 | # dies out for good. For more background, see: |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9517 | # <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html> |
| 9518 | # <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html> |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9519 | AC_SUBST([mkdir_p], ['$(MKDIR_P)']) |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 9520 | # We need awk for the "check" target (and possibly the TAP driver). The |
| 9521 | # system "awk" is bad on some platforms. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9522 | AC_REQUIRE([AC_PROG_AWK])dnl |
| 9523 | AC_REQUIRE([AC_PROG_MAKE_SET])dnl |
| 9524 | AC_REQUIRE([AM_SET_LEADING_DOT])dnl |
| 9525 | _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9526 | [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], |
| 9527 | [_AM_PROG_TAR([v7])])]) |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9528 | _AM_IF_OPTION([no-dependencies],, |
| 9529 | [AC_PROVIDE_IFELSE([AC_PROG_CC], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9530 | [_AM_DEPENDENCIES([CC])], |
| 9531 | [m4_define([AC_PROG_CC], |
| 9532 | m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9533 | AC_PROVIDE_IFELSE([AC_PROG_CXX], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9534 | [_AM_DEPENDENCIES([CXX])], |
| 9535 | [m4_define([AC_PROG_CXX], |
| 9536 | m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 9537 | AC_PROVIDE_IFELSE([AC_PROG_OBJC], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9538 | [_AM_DEPENDENCIES([OBJC])], |
| 9539 | [m4_define([AC_PROG_OBJC], |
| 9540 | m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl |
| 9541 | AC_PROVIDE_IFELSE([AC_PROG_OBJCXX], |
| 9542 | [_AM_DEPENDENCIES([OBJCXX])], |
| 9543 | [m4_define([AC_PROG_OBJCXX], |
| 9544 | m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9545 | ]) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9546 | AC_REQUIRE([AM_SILENT_RULES])dnl |
| 9547 | dnl The testsuite driver may need to know about EXEEXT, so add the |
| 9548 | dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This |
| 9549 | dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below. |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9550 | AC_CONFIG_COMMANDS_PRE(dnl |
| 9551 | [m4_provide_if([_AM_COMPILER_EXEEXT], |
| 9552 | [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9553 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9554 | # POSIX will say in a future version that running "rm -f" with no argument |
| 9555 | # is OK; and we want to be able to make that assumption in our Makefile |
| 9556 | # recipes. So use an aggressive probe to check that the usage we want is |
| 9557 | # actually supported "in the wild" to an acceptable degree. |
| 9558 | # See automake bug#10828. |
| 9559 | # To make any issue more visible, cause the running configure to be aborted |
| 9560 | # by default if the 'rm' program in use doesn't match our expectations; the |
| 9561 | # user can still override this though. |
| 9562 | if rm -f && rm -fr && rm -rf; then : OK; else |
| 9563 | cat >&2 <<'END' |
| 9564 | Oops! |
| 9565 | |
| 9566 | Your 'rm' program seems unable to run without file operands specified |
| 9567 | on the command line, even when the '-f' option is present. This is contrary |
| 9568 | to the behaviour of most rm programs out there, and not conforming with |
| 9569 | the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542> |
| 9570 | |
| 9571 | Please tell bug-automake@gnu.org about your system, including the value |
| 9572 | of your $PATH and any error possibly output before this message. This |
| 9573 | can help us improve future automake versions. |
| 9574 | |
| 9575 | END |
| 9576 | if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then |
| 9577 | echo 'Configuration will proceed anyway, since you have set the' >&2 |
| 9578 | echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 |
| 9579 | echo >&2 |
| 9580 | else |
| 9581 | cat >&2 <<'END' |
| 9582 | Aborting the configuration process, to ensure you take notice of the issue. |
| 9583 | |
| 9584 | You can download and install GNU coreutils to get an 'rm' implementation |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9585 | that behaves properly: <https://www.gnu.org/software/coreutils/>. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9586 | |
| 9587 | If you want to complete the configuration process using your problematic |
| 9588 | 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM |
| 9589 | to "yes", and re-run configure. |
| 9590 | |
| 9591 | END |
| 9592 | AC_MSG_ERROR([Your 'rm' program is bad, sorry.]) |
| 9593 | fi |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 9594 | fi |
| 9595 | dnl The trailing newline in this macro's definition is deliberate, for |
| 9596 | dnl backward compatibility and to allow trailing 'dnl'-style comments |
| 9597 | dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841. |
| 9598 | ]) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9599 | |
| 9600 | dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9601 | dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further |
| 9602 | dnl mangled by Autoconf and run in a shell conditional statement. |
| 9603 | m4_define([_AC_COMPILER_EXEEXT], |
| 9604 | m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9605 | |
| 9606 | # When config.status generates a header, we must update the stamp-h file. |
| 9607 | # This file resides in the same directory as the config header |
| 9608 | # that is generated. The stamp files are numbered to have different names. |
| 9609 | |
| 9610 | # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the |
| 9611 | # loop where config.status creates the headers, so we can generate |
| 9612 | # our stamp files there. |
| 9613 | AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], |
| 9614 | [# Compute $1's index in $config_headers. |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9615 | _am_arg=$1 |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9616 | _am_stamp_count=1 |
| 9617 | for _am_header in $config_headers :; do |
| 9618 | case $_am_header in |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9619 | $_am_arg | $_am_arg:* ) |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9620 | break ;; |
| 9621 | * ) |
| 9622 | _am_stamp_count=`expr $_am_stamp_count + 1` ;; |
| 9623 | esac |
| 9624 | done |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9625 | echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9626 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9627 | # Copyright (C) 2001-2018 Free Software Foundation, Inc. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9628 | # |
| 9629 | # This file is free software; the Free Software Foundation |
| 9630 | # gives unlimited permission to copy and/or distribute it, |
| 9631 | # with or without modifications, as long as this notice is preserved. |
| 9632 | |
| 9633 | # AM_PROG_INSTALL_SH |
| 9634 | # ------------------ |
| 9635 | # Define $install_sh. |
| 9636 | AC_DEFUN([AM_PROG_INSTALL_SH], |
| 9637 | [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl |
Bruce A. Mah | 5461579 | 2015-05-11 10:42:44 -0700 | [diff] [blame] | 9638 | if test x"${install_sh+set}" != xset; then |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9639 | case $am_aux_dir in |
| 9640 | *\ * | *\ *) |
| 9641 | install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; |
| 9642 | *) |
| 9643 | install_sh="\${SHELL} $am_aux_dir/install-sh" |
| 9644 | esac |
| 9645 | fi |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9646 | AC_SUBST([install_sh])]) |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9647 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9648 | # Copyright (C) 2003-2018 Free Software Foundation, Inc. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9649 | # |
| 9650 | # This file is free software; the Free Software Foundation |
| 9651 | # gives unlimited permission to copy and/or distribute it, |
| 9652 | # with or without modifications, as long as this notice is preserved. |
| 9653 | |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9654 | # Check whether the underlying file-system supports filenames |
| 9655 | # with a leading dot. For instance MS-DOS doesn't. |
| 9656 | AC_DEFUN([AM_SET_LEADING_DOT], |
| 9657 | [rm -rf .tst 2>/dev/null |
| 9658 | mkdir .tst 2>/dev/null |
| 9659 | if test -d .tst; then |
| 9660 | am__leading_dot=. |
| 9661 | else |
| 9662 | am__leading_dot=_ |
| 9663 | fi |
| 9664 | rmdir .tst 2>/dev/null |
| 9665 | AC_SUBST([am__leading_dot])]) |
| 9666 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9667 | # Add --enable-maintainer-mode option to configure. -*- Autoconf -*- |
| 9668 | # From Jim Meyering |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9669 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9670 | # Copyright (C) 1996-2018 Free Software Foundation, Inc. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9671 | # |
| 9672 | # This file is free software; the Free Software Foundation |
| 9673 | # gives unlimited permission to copy and/or distribute it, |
| 9674 | # with or without modifications, as long as this notice is preserved. |
| 9675 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9676 | # AM_MAINTAINER_MODE([DEFAULT-MODE]) |
| 9677 | # ---------------------------------- |
| 9678 | # Control maintainer-specific portions of Makefiles. |
| 9679 | # Default is to disable them, unless 'enable' is passed literally. |
| 9680 | # For symmetry, 'disable' may be passed as well. Anyway, the user |
| 9681 | # can override the default with the --enable/--disable switch. |
| 9682 | AC_DEFUN([AM_MAINTAINER_MODE], |
| 9683 | [m4_case(m4_default([$1], [disable]), |
| 9684 | [enable], [m4_define([am_maintainer_other], [disable])], |
| 9685 | [disable], [m4_define([am_maintainer_other], [enable])], |
| 9686 | [m4_define([am_maintainer_other], [enable]) |
| 9687 | m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])]) |
| 9688 | AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) |
| 9689 | dnl maintainer-mode's default is 'disable' unless 'enable' is passed |
| 9690 | AC_ARG_ENABLE([maintainer-mode], |
| 9691 | [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode], |
| 9692 | am_maintainer_other[ make rules and dependencies not useful |
| 9693 | (and sometimes confusing) to the casual installer])], |
| 9694 | [USE_MAINTAINER_MODE=$enableval], |
| 9695 | [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes])) |
| 9696 | AC_MSG_RESULT([$USE_MAINTAINER_MODE]) |
| 9697 | AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes]) |
| 9698 | MAINT=$MAINTAINER_MODE_TRUE |
| 9699 | AC_SUBST([MAINT])dnl |
| 9700 | ] |
| 9701 | ) |
| 9702 | |
| 9703 | # Check to see how 'make' treats includes. -*- Autoconf -*- |
| 9704 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9705 | # Copyright (C) 2001-2018 Free Software Foundation, Inc. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9706 | # |
| 9707 | # This file is free software; the Free Software Foundation |
| 9708 | # gives unlimited permission to copy and/or distribute it, |
| 9709 | # with or without modifications, as long as this notice is preserved. |
Bruce A. Mah | 5d2f2cf | 2014-03-20 09:58:27 -0700 | [diff] [blame] | 9710 | |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9711 | # AM_MAKE_INCLUDE() |
| 9712 | # ----------------- |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9713 | # Check whether make has an 'include' directive that can support all |
| 9714 | # the idioms we need for our automatic dependency tracking code. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9715 | AC_DEFUN([AM_MAKE_INCLUDE], |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9716 | [AC_MSG_CHECKING([whether ${MAKE-make} supports the include directive]) |
| 9717 | cat > confinc.mk << 'END' |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9718 | am__doit: |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9719 | @echo this is the am__doit target >confinc.out |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9720 | .PHONY: am__doit |
| 9721 | END |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9722 | am__include="#" |
| 9723 | am__quote= |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9724 | # BSD make does it like this. |
| 9725 | echo '.include "confinc.mk" # ignored' > confmf.BSD |
| 9726 | # Other make implementations (GNU, Solaris 10, AIX) do it like this. |
| 9727 | echo 'include confinc.mk # ignored' > confmf.GNU |
| 9728 | _am_result=no |
| 9729 | for s in GNU BSD; do |
| 9730 | AM_RUN_LOG([${MAKE-make} -f confmf.$s && cat confinc.out]) |
| 9731 | AS_CASE([$?:`cat confinc.out 2>/dev/null`], |
| 9732 | ['0:this is the am__doit target'], |
| 9733 | [AS_CASE([$s], |
| 9734 | [BSD], [am__include='.include' am__quote='"'], |
| 9735 | [am__include='include' am__quote=''])]) |
| 9736 | if test "$am__include" != "#"; then |
| 9737 | _am_result="yes ($s style)" |
| 9738 | break |
| 9739 | fi |
| 9740 | done |
| 9741 | rm -f confinc.* confmf.* |
| 9742 | AC_MSG_RESULT([${_am_result}]) |
| 9743 | AC_SUBST([am__include])]) |
| 9744 | AC_SUBST([am__quote])]) |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9745 | |
| 9746 | # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- |
| 9747 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9748 | # Copyright (C) 1997-2018 Free Software Foundation, Inc. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9749 | # |
| 9750 | # This file is free software; the Free Software Foundation |
| 9751 | # gives unlimited permission to copy and/or distribute it, |
| 9752 | # with or without modifications, as long as this notice is preserved. |
| 9753 | |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9754 | # AM_MISSING_PROG(NAME, PROGRAM) |
| 9755 | # ------------------------------ |
| 9756 | AC_DEFUN([AM_MISSING_PROG], |
| 9757 | [AC_REQUIRE([AM_MISSING_HAS_RUN]) |
| 9758 | $1=${$1-"${am_missing_run}$2"} |
| 9759 | AC_SUBST($1)]) |
| 9760 | |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9761 | # AM_MISSING_HAS_RUN |
| 9762 | # ------------------ |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9763 | # Define MISSING if not defined so far and test if it is modern enough. |
| 9764 | # If it is, set am_missing_run to use it, otherwise, to nothing. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9765 | AC_DEFUN([AM_MISSING_HAS_RUN], |
| 9766 | [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 9767 | AC_REQUIRE_AUX_FILE([missing])dnl |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9768 | if test x"${MISSING+set}" != xset; then |
| 9769 | case $am_aux_dir in |
| 9770 | *\ * | *\ *) |
| 9771 | MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; |
| 9772 | *) |
| 9773 | MISSING="\${SHELL} $am_aux_dir/missing" ;; |
| 9774 | esac |
| 9775 | fi |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9776 | # Use eval to expand $SHELL |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9777 | if eval "$MISSING --is-lightweight"; then |
| 9778 | am_missing_run="$MISSING " |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9779 | else |
| 9780 | am_missing_run= |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9781 | AC_MSG_WARN(['missing' script is too old or missing]) |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9782 | fi |
| 9783 | ]) |
| 9784 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9785 | # -*- Autoconf -*- |
| 9786 | # Obsolete and "removed" macros, that must however still report explicit |
| 9787 | # error messages when used, to smooth transition. |
| 9788 | # |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9789 | # Copyright (C) 1996-2018 Free Software Foundation, Inc. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9790 | # |
| 9791 | # This file is free software; the Free Software Foundation |
| 9792 | # gives unlimited permission to copy and/or distribute it, |
| 9793 | # with or without modifications, as long as this notice is preserved. |
| 9794 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9795 | AC_DEFUN([AM_CONFIG_HEADER], |
| 9796 | [AC_DIAGNOSE([obsolete], |
| 9797 | ['$0': this macro is obsolete. |
| 9798 | You should use the 'AC][_CONFIG_HEADERS' macro instead.])dnl |
| 9799 | AC_CONFIG_HEADERS($@)]) |
| 9800 | |
| 9801 | AC_DEFUN([AM_PROG_CC_STDC], |
| 9802 | [AC_PROG_CC |
| 9803 | am_cv_prog_cc_stdc=$ac_cv_prog_cc_stdc |
| 9804 | AC_DIAGNOSE([obsolete], |
| 9805 | ['$0': this macro is obsolete. |
| 9806 | You should simply use the 'AC][_PROG_CC' macro instead. |
| 9807 | Also, your code should no longer depend upon 'am_cv_prog_cc_stdc', |
| 9808 | but upon 'ac_cv_prog_cc_stdc'.])]) |
| 9809 | |
| 9810 | AC_DEFUN([AM_C_PROTOTYPES], |
| 9811 | [AC_FATAL([automatic de-ANSI-fication support has been removed])]) |
| 9812 | AU_DEFUN([fp_C_PROTOTYPES], [AM_C_PROTOTYPES]) |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9813 | |
| 9814 | # Helper functions for option handling. -*- Autoconf -*- |
| 9815 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9816 | # Copyright (C) 2001-2018 Free Software Foundation, Inc. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9817 | # |
| 9818 | # This file is free software; the Free Software Foundation |
| 9819 | # gives unlimited permission to copy and/or distribute it, |
| 9820 | # with or without modifications, as long as this notice is preserved. |
| 9821 | |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9822 | # _AM_MANGLE_OPTION(NAME) |
| 9823 | # ----------------------- |
| 9824 | AC_DEFUN([_AM_MANGLE_OPTION], |
| 9825 | [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) |
| 9826 | |
| 9827 | # _AM_SET_OPTION(NAME) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9828 | # -------------------- |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9829 | # Set option NAME. Presently that only means defining a flag for this option. |
| 9830 | AC_DEFUN([_AM_SET_OPTION], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9831 | [m4_define(_AM_MANGLE_OPTION([$1]), [1])]) |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9832 | |
| 9833 | # _AM_SET_OPTIONS(OPTIONS) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9834 | # ------------------------ |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9835 | # OPTIONS is a space-separated list of Automake options. |
| 9836 | AC_DEFUN([_AM_SET_OPTIONS], |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9837 | [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9838 | |
| 9839 | # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) |
| 9840 | # ------------------------------------------- |
| 9841 | # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. |
| 9842 | AC_DEFUN([_AM_IF_OPTION], |
| 9843 | [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) |
| 9844 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9845 | # Copyright (C) 1999-2018 Free Software Foundation, Inc. |
Bruce A. Mah | dc1dd2d | 2014-03-04 14:34:40 -0800 | [diff] [blame] | 9846 | # |
| 9847 | # This file is free software; the Free Software Foundation |
| 9848 | # gives unlimited permission to copy and/or distribute it, |
| 9849 | # with or without modifications, as long as this notice is preserved. |
Bruce A. Mah | 1038381 | 2014-02-27 22:40:01 -0800 | [diff] [blame] | 9850 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9851 | # _AM_PROG_CC_C_O |
| 9852 | # --------------- |
| 9853 | # Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC |
| 9854 | # to automatically call this. |
| 9855 | AC_DEFUN([_AM_PROG_CC_C_O], |
| 9856 | [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl |
| 9857 | AC_REQUIRE_AUX_FILE([compile])dnl |
| 9858 | AC_LANG_PUSH([C])dnl |
| 9859 | AC_CACHE_CHECK( |
| 9860 | [whether $CC understands -c and -o together], |
| 9861 | [am_cv_prog_cc_c_o], |
| 9862 | [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])]) |
| 9863 | # Make sure it works both with $CC and with simple cc. |
| 9864 | # Following AC_PROG_CC_C_O, we do the test twice because some |
| 9865 | # compilers refuse to overwrite an existing .o file with -o, |
| 9866 | # though they will create one. |
| 9867 | am_cv_prog_cc_c_o=yes |
| 9868 | for am_i in 1 2; do |
| 9869 | if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \ |
| 9870 | && test -f conftest2.$ac_objext; then |
| 9871 | : OK |
| 9872 | else |
| 9873 | am_cv_prog_cc_c_o=no |
| 9874 | break |
| 9875 | fi |
| 9876 | done |
| 9877 | rm -f core conftest* |
| 9878 | unset am_i]) |
| 9879 | if test "$am_cv_prog_cc_c_o" != yes; then |
| 9880 | # Losing compiler, so override with the script. |
| 9881 | # FIXME: It is wrong to rewrite CC. |
| 9882 | # But if we don't then we get into trouble of one sort or another. |
| 9883 | # A longer-term fix would be to have automake use am__CC in this case, |
| 9884 | # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" |
| 9885 | CC="$am_aux_dir/compile $CC" |
| 9886 | fi |
| 9887 | AC_LANG_POP([C])]) |
| 9888 | |
| 9889 | # For backward compatibility. |
| 9890 | AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])]) |
| 9891 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9892 | # Copyright (C) 2001-2018 Free Software Foundation, Inc. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9893 | # |
| 9894 | # This file is free software; the Free Software Foundation |
| 9895 | # gives unlimited permission to copy and/or distribute it, |
| 9896 | # with or without modifications, as long as this notice is preserved. |
| 9897 | |
| 9898 | # AM_RUN_LOG(COMMAND) |
| 9899 | # ------------------- |
| 9900 | # Run COMMAND, save the exit status in ac_status, and log it. |
| 9901 | # (This has been adapted from Autoconf's _AC_RUN_LOG macro.) |
| 9902 | AC_DEFUN([AM_RUN_LOG], |
| 9903 | [{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD |
| 9904 | ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD |
| 9905 | ac_status=$? |
| 9906 | echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD |
| 9907 | (exit $ac_status); }]) |
| 9908 | |
| 9909 | # Check to make sure that the build environment is sane. -*- Autoconf -*- |
| 9910 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9911 | # Copyright (C) 1996-2018 Free Software Foundation, Inc. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9912 | # |
| 9913 | # This file is free software; the Free Software Foundation |
| 9914 | # gives unlimited permission to copy and/or distribute it, |
| 9915 | # with or without modifications, as long as this notice is preserved. |
Bruce A. Mah | 5d2f2cf | 2014-03-20 09:58:27 -0700 | [diff] [blame] | 9916 | |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9917 | # AM_SANITY_CHECK |
| 9918 | # --------------- |
| 9919 | AC_DEFUN([AM_SANITY_CHECK], |
| 9920 | [AC_MSG_CHECKING([whether build environment is sane]) |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9921 | # Reject unsafe characters in $srcdir or the absolute working directory |
| 9922 | # name. Accept space and tab only in the latter. |
| 9923 | am_lf=' |
| 9924 | ' |
| 9925 | case `pwd` in |
| 9926 | *[[\\\"\#\$\&\'\`$am_lf]]*) |
| 9927 | AC_MSG_ERROR([unsafe absolute working directory name]);; |
| 9928 | esac |
| 9929 | case $srcdir in |
| 9930 | *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9931 | AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);; |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 9932 | esac |
| 9933 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9934 | # Do 'set' in a subshell so we don't clobber the current shell's |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9935 | # arguments. Must try -L first in case configure is actually a |
| 9936 | # symlink; some systems play weird games with the mod time of symlinks |
| 9937 | # (eg FreeBSD returns the mod time of the symlink's containing |
| 9938 | # directory). |
| 9939 | if ( |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9940 | am_has_slept=no |
| 9941 | for am_try in 1 2; do |
| 9942 | echo "timestamp, slept: $am_has_slept" > conftest.file |
| 9943 | set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` |
| 9944 | if test "$[*]" = "X"; then |
| 9945 | # -L didn't work. |
| 9946 | set X `ls -t "$srcdir/configure" conftest.file` |
| 9947 | fi |
| 9948 | if test "$[*]" != "X $srcdir/configure conftest.file" \ |
| 9949 | && test "$[*]" != "X conftest.file $srcdir/configure"; then |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9950 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9951 | # If neither matched, then we have a broken ls. This can happen |
| 9952 | # if, for instance, CONFIG_SHELL is bash and it inherits a |
| 9953 | # broken ls alias from the environment. This has actually |
| 9954 | # happened. Such a system could not be considered "sane". |
| 9955 | AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken |
| 9956 | alias in your environment]) |
| 9957 | fi |
| 9958 | if test "$[2]" = conftest.file || test $am_try -eq 2; then |
| 9959 | break |
| 9960 | fi |
| 9961 | # Just in case. |
| 9962 | sleep 1 |
| 9963 | am_has_slept=yes |
| 9964 | done |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9965 | test "$[2]" = conftest.file |
| 9966 | ) |
| 9967 | then |
| 9968 | # Ok. |
| 9969 | : |
| 9970 | else |
| 9971 | AC_MSG_ERROR([newly created file is older than distributed files! |
| 9972 | Check your system clock]) |
| 9973 | fi |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9974 | AC_MSG_RESULT([yes]) |
| 9975 | # If we didn't sleep, we still need to ensure time stamps of config.status and |
| 9976 | # generated files are strictly newer. |
| 9977 | am_sleep_pid= |
| 9978 | if grep 'slept: no' conftest.file >/dev/null 2>&1; then |
| 9979 | ( sleep 1 ) & |
| 9980 | am_sleep_pid=$! |
| 9981 | fi |
| 9982 | AC_CONFIG_COMMANDS_PRE( |
| 9983 | [AC_MSG_CHECKING([that generated files are newer than configure]) |
| 9984 | if test -n "$am_sleep_pid"; then |
| 9985 | # Hide warnings about reused PIDs. |
| 9986 | wait $am_sleep_pid 2>/dev/null |
| 9987 | fi |
| 9988 | AC_MSG_RESULT([done])]) |
| 9989 | rm -f conftest.file |
| 9990 | ]) |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 9991 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 9992 | # Copyright (C) 2009-2018 Free Software Foundation, Inc. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 9993 | # |
| 9994 | # This file is free software; the Free Software Foundation |
| 9995 | # gives unlimited permission to copy and/or distribute it, |
| 9996 | # with or without modifications, as long as this notice is preserved. |
| 9997 | |
| 9998 | # AM_SILENT_RULES([DEFAULT]) |
| 9999 | # -------------------------- |
| 10000 | # Enable less verbose build rules; with the default set to DEFAULT |
| 10001 | # ("yes" being less verbose, "no" or empty being verbose). |
| 10002 | AC_DEFUN([AM_SILENT_RULES], |
| 10003 | [AC_ARG_ENABLE([silent-rules], [dnl |
| 10004 | AS_HELP_STRING( |
| 10005 | [--enable-silent-rules], |
| 10006 | [less verbose build output (undo: "make V=1")]) |
| 10007 | AS_HELP_STRING( |
| 10008 | [--disable-silent-rules], |
| 10009 | [verbose build output (undo: "make V=0")])dnl |
| 10010 | ]) |
| 10011 | case $enable_silent_rules in @%:@ ((( |
| 10012 | yes) AM_DEFAULT_VERBOSITY=0;; |
| 10013 | no) AM_DEFAULT_VERBOSITY=1;; |
| 10014 | *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; |
| 10015 | esac |
| 10016 | dnl |
| 10017 | dnl A few 'make' implementations (e.g., NonStop OS and NextStep) |
| 10018 | dnl do not support nested variable expansions. |
| 10019 | dnl See automake bug#9928 and bug#10237. |
| 10020 | am_make=${MAKE-make} |
| 10021 | AC_CACHE_CHECK([whether $am_make supports nested variables], |
| 10022 | [am_cv_make_support_nested_variables], |
| 10023 | [if AS_ECHO([['TRUE=$(BAR$(V)) |
| 10024 | BAR0=false |
| 10025 | BAR1=true |
| 10026 | V=1 |
| 10027 | am__doit: |
| 10028 | @$(TRUE) |
| 10029 | .PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then |
| 10030 | am_cv_make_support_nested_variables=yes |
| 10031 | else |
| 10032 | am_cv_make_support_nested_variables=no |
| 10033 | fi]) |
| 10034 | if test $am_cv_make_support_nested_variables = yes; then |
| 10035 | dnl Using '$V' instead of '$(V)' breaks IRIX make. |
| 10036 | AM_V='$(V)' |
| 10037 | AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' |
| 10038 | else |
| 10039 | AM_V=$AM_DEFAULT_VERBOSITY |
| 10040 | AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY |
| 10041 | fi |
| 10042 | AC_SUBST([AM_V])dnl |
| 10043 | AM_SUBST_NOTMAKE([AM_V])dnl |
| 10044 | AC_SUBST([AM_DEFAULT_V])dnl |
| 10045 | AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl |
| 10046 | AC_SUBST([AM_DEFAULT_VERBOSITY])dnl |
| 10047 | AM_BACKSLASH='\' |
| 10048 | AC_SUBST([AM_BACKSLASH])dnl |
| 10049 | _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl |
| 10050 | ]) |
| 10051 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 10052 | # Copyright (C) 2001-2018 Free Software Foundation, Inc. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 10053 | # |
| 10054 | # This file is free software; the Free Software Foundation |
| 10055 | # gives unlimited permission to copy and/or distribute it, |
| 10056 | # with or without modifications, as long as this notice is preserved. |
| 10057 | |
| 10058 | # AM_PROG_INSTALL_STRIP |
| 10059 | # --------------------- |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 10060 | # One issue with vendor 'install' (even GNU) is that you can't |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 10061 | # specify the program used to strip binaries. This is especially |
| 10062 | # annoying in cross-compiling environments, where the build's strip |
| 10063 | # is unlikely to handle the host's binaries. |
| 10064 | # Fortunately install-sh will honor a STRIPPROG variable, so we |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 10065 | # always use install-sh in "make install-strip", and initialize |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 10066 | # STRIPPROG with the value of the STRIP variable (set by the user). |
| 10067 | AC_DEFUN([AM_PROG_INSTALL_STRIP], |
| 10068 | [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 10069 | # Installed binaries are usually stripped using 'strip' when the user |
| 10070 | # run "make install-strip". However 'strip' might not be the right |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 10071 | # tool to use in cross-compilation environments, therefore Automake |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 10072 | # will honor the 'STRIP' environment variable to overrule this program. |
| 10073 | dnl Don't test for $cross_compiling = yes, because it might be 'maybe'. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 10074 | if test "$cross_compiling" != no; then |
| 10075 | AC_CHECK_TOOL([STRIP], [strip], :) |
| 10076 | fi |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 10077 | INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 10078 | AC_SUBST([INSTALL_STRIP_PROGRAM])]) |
| 10079 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 10080 | # Copyright (C) 2006-2018 Free Software Foundation, Inc. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 10081 | # |
| 10082 | # This file is free software; the Free Software Foundation |
| 10083 | # gives unlimited permission to copy and/or distribute it, |
| 10084 | # with or without modifications, as long as this notice is preserved. |
| 10085 | |
| 10086 | # _AM_SUBST_NOTMAKE(VARIABLE) |
| 10087 | # --------------------------- |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 10088 | # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. |
Jef Poskanzer | ba7b91d | 2013-11-26 10:07:32 -0800 | [diff] [blame] | 10089 | # This macro is traced by Automake. |
| 10090 | AC_DEFUN([_AM_SUBST_NOTMAKE]) |
| 10091 | |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 10092 | # AM_SUBST_NOTMAKE(VARIABLE) |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 10093 | # -------------------------- |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 10094 | # Public sister of _AM_SUBST_NOTMAKE. |
| 10095 | AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) |
| 10096 | |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 10097 | # Check how to create a tarball. -*- Autoconf -*- |
| 10098 | |
Bruce A. Mah | ff1ea4e | 2018-02-28 13:24:06 -0800 | [diff] [blame] | 10099 | # Copyright (C) 2004-2018 Free Software Foundation, Inc. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 10100 | # |
| 10101 | # This file is free software; the Free Software Foundation |
| 10102 | # gives unlimited permission to copy and/or distribute it, |
| 10103 | # with or without modifications, as long as this notice is preserved. |
| 10104 | |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 10105 | # _AM_PROG_TAR(FORMAT) |
| 10106 | # -------------------- |
| 10107 | # Check how to create a tarball in format FORMAT. |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 10108 | # FORMAT should be one of 'v7', 'ustar', or 'pax'. |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 10109 | # |
| 10110 | # Substitute a variable $(am__tar) that is a command |
| 10111 | # writing to stdout a FORMAT-tarball containing the directory |
| 10112 | # $tardir. |
| 10113 | # tardir=directory && $(am__tar) > result.tar |
| 10114 | # |
| 10115 | # Substitute a variable $(am__untar) that extract such |
| 10116 | # a tarball read from stdin. |
| 10117 | # $(am__untar) < result.tar |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 10118 | # |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 10119 | AC_DEFUN([_AM_PROG_TAR], |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 10120 | [# Always define AMTAR for backward compatibility. Yes, it's still used |
| 10121 | # in the wild :-( We should find a proper way to deprecate it ... |
| 10122 | AC_SUBST([AMTAR], ['$${TAR-tar}']) |
| 10123 | |
| 10124 | # We'll loop over all known methods to create a tar archive until one works. |
Bruce A. Mah | 5d2f2cf | 2014-03-20 09:58:27 -0700 | [diff] [blame] | 10125 | _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' |
Bruce A. Mah | 60bd98a | 2014-02-14 11:52:16 -0800 | [diff] [blame] | 10126 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 10127 | m4_if([$1], [v7], |
| 10128 | [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'], |
Bruce A. Mah | dc1dd2d | 2014-03-04 14:34:40 -0800 | [diff] [blame] | 10129 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 10130 | [m4_case([$1], |
| 10131 | [ustar], |
| 10132 | [# The POSIX 1988 'ustar' format is defined with fixed-size fields. |
| 10133 | # There is notably a 21 bits limit for the UID and the GID. In fact, |
| 10134 | # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343 |
| 10135 | # and bug#13588). |
| 10136 | am_max_uid=2097151 # 2^21 - 1 |
| 10137 | am_max_gid=$am_max_uid |
| 10138 | # The $UID and $GID variables are not portable, so we need to resort |
| 10139 | # to the POSIX-mandated id(1) utility. Errors in the 'id' calls |
| 10140 | # below are definitely unexpected, so allow the users to see them |
| 10141 | # (that is, avoid stderr redirection). |
| 10142 | am_uid=`id -u || echo unknown` |
| 10143 | am_gid=`id -g || echo unknown` |
| 10144 | AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format]) |
| 10145 | if test $am_uid -le $am_max_uid; then |
| 10146 | AC_MSG_RESULT([yes]) |
| 10147 | else |
| 10148 | AC_MSG_RESULT([no]) |
| 10149 | _am_tools=none |
| 10150 | fi |
| 10151 | AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format]) |
| 10152 | if test $am_gid -le $am_max_gid; then |
| 10153 | AC_MSG_RESULT([yes]) |
| 10154 | else |
| 10155 | AC_MSG_RESULT([no]) |
| 10156 | _am_tools=none |
| 10157 | fi], |
| 10158 | |
| 10159 | [pax], |
| 10160 | [], |
| 10161 | |
| 10162 | [m4_fatal([Unknown tar format])]) |
| 10163 | |
| 10164 | AC_MSG_CHECKING([how to create a $1 tar archive]) |
| 10165 | |
| 10166 | # Go ahead even if we have the value already cached. We do so because we |
| 10167 | # need to set the values for the 'am__tar' and 'am__untar' variables. |
| 10168 | _am_tools=${am_cv_prog_tar_$1-$_am_tools} |
| 10169 | |
| 10170 | for _am_tool in $_am_tools; do |
| 10171 | case $_am_tool in |
| 10172 | gnutar) |
| 10173 | for _am_tar in tar gnutar gtar; do |
| 10174 | AM_RUN_LOG([$_am_tar --version]) && break |
| 10175 | done |
| 10176 | am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' |
| 10177 | am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' |
| 10178 | am__untar="$_am_tar -xf -" |
| 10179 | ;; |
| 10180 | plaintar) |
| 10181 | # Must skip GNU tar: if it does not support --format= it doesn't create |
| 10182 | # ustar tarball either. |
| 10183 | (tar --version) >/dev/null 2>&1 && continue |
| 10184 | am__tar='tar chf - "$$tardir"' |
| 10185 | am__tar_='tar chf - "$tardir"' |
| 10186 | am__untar='tar xf -' |
| 10187 | ;; |
| 10188 | pax) |
| 10189 | am__tar='pax -L -x $1 -w "$$tardir"' |
| 10190 | am__tar_='pax -L -x $1 -w "$tardir"' |
| 10191 | am__untar='pax -r' |
| 10192 | ;; |
| 10193 | cpio) |
| 10194 | am__tar='find "$$tardir" -print | cpio -o -H $1 -L' |
| 10195 | am__tar_='find "$tardir" -print | cpio -o -H $1 -L' |
| 10196 | am__untar='cpio -i -H $1 -d' |
| 10197 | ;; |
| 10198 | none) |
| 10199 | am__tar=false |
| 10200 | am__tar_=false |
| 10201 | am__untar=false |
| 10202 | ;; |
| 10203 | esac |
| 10204 | |
| 10205 | # If the value was cached, stop now. We just wanted to have am__tar |
| 10206 | # and am__untar set. |
| 10207 | test -n "${am_cv_prog_tar_$1}" && break |
| 10208 | |
| 10209 | # tar/untar a dummy directory, and stop if the command works. |
| 10210 | rm -rf conftest.dir |
| 10211 | mkdir conftest.dir |
| 10212 | echo GrepMe > conftest.dir/file |
| 10213 | AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) |
| 10214 | rm -rf conftest.dir |
| 10215 | if test -s conftest.tar; then |
| 10216 | AM_RUN_LOG([$am__untar <conftest.tar]) |
| 10217 | AM_RUN_LOG([cat conftest.dir/file]) |
| 10218 | grep GrepMe conftest.dir/file >/dev/null 2>&1 && break |
| 10219 | fi |
| 10220 | done |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 10221 | rm -rf conftest.dir |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 10222 | |
Bruce A. Mah | 6edfd8d | 2014-05-02 11:32:12 -0700 | [diff] [blame] | 10223 | AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) |
| 10224 | AC_MSG_RESULT([$am_cv_prog_tar_$1])]) |
| 10225 | |
sethdelliott | 01ca972 | 2010-07-19 20:38:40 +0000 | [diff] [blame] | 10226 | AC_SUBST([am__tar]) |
| 10227 | AC_SUBST([am__untar]) |
| 10228 | ]) # _AM_PROG_TAR |
Jon Dugan | e34c20c | 2010-07-08 23:26:52 +0000 | [diff] [blame] | 10229 | |